|
|
|
|
|
by greatzebu
4552 days ago
|
|
One of the biggest ways I became a better programmer in 2013 was essentially the opposite of this advice from item 3: "Don’t be afraid of your code. Who cares if something gets temporarily broken while you move things around? A paralyzing fear of change is what got your project into this state to begin with." I was formerly working in an environment where no one was really responsible for making sure that features worked consistently or that new features didn't incidentally break old features, and the result was a huge amount of frustration and wasted time. Learning to spend some time and effort up front to make sure that new features and small-scale redesigns won't break old code has really clarified my thinking about system design. Taking it for granted that no one really cares if things are broken for a bit while you refactor really presumes a lot about the problem domain you're working in. |
|
I've been working with some pretty bad programmers lately, roughly sub-fizzbuzz or close to it, and one of the most stunning differences I've noticed is how terrified they are of their code. They program like they're building a house of cards. Once it seems to work, the idea of refactoring it for readability is completely foreign to them (of course, so is the idea of unit testing).
I think it's that kind of programmer this article is aimed at. Sure, you should make sure you don't break things, but you should also have some confidence in your code and be willing to constantly improve it.