4 ms·
Aside from the obvious factors like desire and technical ability, the single greatest motivator to being an excellent programmer is the pursuit of perfection wh
by methodin 12y ago
Aside from the obvious factors like desire and technical ability, the single greatest motivator to being an excellent programmer is the pursuit of perfection while simultaneously understanding that it is impossible. Building something that is never complete and ever-changing really boils down to how many bad ways you've done it before and knowing which ones to avoid in situations.
The only excellent programmers are the ones who've written a million lines of terrible code and understand which methods have the best probability of achieving a decent deal of success before the inevitable refactor (anyone can pick up a book and turn everything into a Factory).
Write shitty code - each session is a brick in the foundation of an endless skyscraper which gets more complex the higher you go. At some point you'll start to program with the foresight to make your code easier to change down the road without breaking everything and causing headaches. That's really all that anyone needs in a programmer - making the future easier while allowing the present to function as it needs to with as little issues as possible.
At some point you'll work on code made by inexperienced programmers that's been built upon for years. If you are experienced enough, that code is actually the most interesting thing in the world to transform and simplify.
tl;dr: Languages, tools, ides, setups are all insignificant if you've implementing patterns in every wrong way as possible. Knowing what not to do is more valuable than knowing one way to do it.
- legedemon 12y agoI'm right now working on the type of code you've mentioned. I have 5000 lines long classes in Ruby and arcane names for methods and variables. The person who hired me warned me that it'll be a very frustrating experience but as you've rightly pointed out, it has been very interesting to refactor that code into neat little libraries and other classes.