Front end developer specialising in JavaScript and React. Experienced in all aspects of modern front end development. Passionate about making accessible, secure and performant software.
I started feeling like a proper software engineer after I learned the reasoning behind common programming principles and what makes good / clean code.
At one point in my job, I was wondering which approach would be best between two approaches proposed by me and another developer. I realised that I couldn't really make a strong argument for why one of them would be preferable. To me, that meant that I had gaps in my knowledge.
So I spent some time thinking about clean code and the reasoning behind it. I tried to reason about it from "first principles", as Elon Musk has also mentioned. Things like "what makes code easy to work with", "why is certain code easier to work with" (hint: it's because we, humans, have certain disadvantages that make certain things very difficult to work with), what are our limitations, what would result in optimal software development both in the short term and long term, etc.
So, from that, I learned the first principles of what makes good code. That was when, in my mind, I levelled up significantly as a programmer.
Now it's like, it doesn't matter what I don't know yet. I can learn it. New framework? No problem. Learning new things is basic programming teritory. New code pattern? No problem. It makes perfect sense if you understand clean code principles. Entirely new architecture pattern like top-down unidirectional architecture, MVC, hexagonal architecture? No problem, it follows from the basic programming principles.
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.
I started feeling like a proper software engineer after I learned the reasoning behind common programming principles and what makes good / clean code.
At one point in my job, I was wondering which approach would be best between two approaches proposed by me and another developer. I realised that I couldn't really make a strong argument for why one of them would be preferable. To me, that meant that I had gaps in my knowledge.
So I spent some time thinking about clean code and the reasoning behind it. I tried to reason about it from "first principles", as Elon Musk has also mentioned. Things like "what makes code easy to work with", "why is certain code easier to work with" (hint: it's because we, humans, have certain disadvantages that make certain things very difficult to work with), what are our limitations, what would result in optimal software development both in the short term and long term, etc.
So, from that, I learned the first principles of what makes good code. That was when, in my mind, I levelled up significantly as a programmer.
Now it's like, it doesn't matter what I don't know yet. I can learn it. New framework? No problem. Learning new things is basic programming teritory. New code pattern? No problem. It makes perfect sense if you understand clean code principles. Entirely new architecture pattern like top-down unidirectional architecture, MVC, hexagonal architecture? No problem, it follows from the basic programming principles.