Personally I always feel that I don't know enough. I'm now learning more enterprise-y things, architectural patterns (I am a backend developer), systems programming, functional programming sometimes, but the feeling of learning enough is quite short lasting. I believe it's more a mental problem than the problem with my skills, so I just try to enjoy what I am doing and don't hurry!
I totally get you - the feeling that you don't know enough will be there even when you're on top of your game. Things are changing so quickly that by the time you master something new, another version of it has come up.
For me, it was the moment I started solving harder programming problems.
"Ours is the task to remember (and to remind) that, in what is now called “software engineering”, not a single sound engineering principle is involved. (On the contrary: its spokesmen take the trouble of arguing the irrelevance of the engineering principles known.) Software Engineering as it is today is just humbug; from an academic —i.e. scientific and educational— point of view it is a sham, a fraud." 😁
I write about various topics that I'm currently learning, be it front end, back end, cloud, DevOps, etc., you name it!
For any questions you may have, you can reach out to me at: hello@hungvu.tech.
"Engineer" is a legally protected title in many countries and you need substantial experience and knowledge to achieve it. In my country, it is equivalent to a master's degree. Software engineer, even with the keyword in its name, is still not a real "engineer" by the law. Using this perspective, I think I understand why Dijkstra said that.
Many times, I only use the title "software developer" to explain my job to people who are not in the field (e.g., family) to not confuse them. That said, on the job market, "software engineer" may sound fancier and provide better results. 😆
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Personally I always feel that I don't know enough. I'm now learning more enterprise-y things, architectural patterns (I am a backend developer), systems programming, functional programming sometimes, but the feeling of learning enough is quite short lasting. I believe it's more a mental problem than the problem with my skills, so I just try to enjoy what I am doing and don't hurry!
I totally get you - the feeling that you don't know enough will be there even when you're on top of your game. Things are changing so quickly that by the time you master something new, another version of it has come up.
For me, it was the moment I started solving harder programming problems.
From Brian Holt - Having Empathy while Teaching Programming:
As knowledge grows, so does the boundary of "knowing what you don't know".
From that perspective it's never "enough" but just a continual re-assessment of which part of the boundary is most valuable to expand right now.
FYI: E. W. Dijkstra, 1993:
"Ours is the task to remember (and to remind) that, in what is now called “software engineering”, not a single sound engineering principle is involved. (On the contrary: its spokesmen take the trouble of arguing the irrelevance of the engineering principles known.) Software Engineering as it is today is just humbug; from an academic —i.e. scientific and educational— point of view it is a sham, a fraud." 😁
Thank you very much, I didn't thought about it before, great insight!
"Engineer" is a legally protected title in many countries and you need substantial experience and knowledge to achieve it. In my country, it is equivalent to a master's degree. Software engineer, even with the keyword in its name, is still not a real "engineer" by the law. Using this perspective, I think I understand why Dijkstra said that.
Many times, I only use the title "software developer" to explain my job to people who are not in the field (e.g., family) to not confuse them. That said, on the job market, "software engineer" may sound fancier and provide better results. 😆