On 10/25/2016 5:19 PM, bluecat wrote:
Interesting, that's going in my tips.txt file. Quick question, if you don't
mind. What would be the top three things you've learned that significantly made
you a better programmer?

Ha, great question. Never thought about it before. Off the top of my head:

1. Never try to do two things at once, i.e. never mix:

   refactoring
   translation
   more than one bug fix at at time
   optimization
   feature addition

I sure endlessly beat people on github with clue-by-fours over this.


2. If the code looks ugly, it is guaranteed to not work properly. If you're stuck debugging someone else's code, look at the ugly bits first. (I've had several experienced developers tell me this, too.)


3. Anybody can write clever, complex code. It takes genius to write simple code.


4. Macros are like crack. The first hit feels great, but macros inevitably turn everything they touch into crap. It took me a loooong time to learn this. Some years ago I made a concerted effort to purge macros from the dmd front end, and have been purging them from the back end. I've been very pleased with the results.


5. Global variables are the Spawn of Satan. (They make code very hard to reason about.)


6. Nearly all bugs can be fixed with under 10 lines of code, and quite a few with 1 line. It's always a red flag for me when a fix PR has 200+ lines of code (test case lines of code don't count, neither do comments).


7. If you're stuck on a programming problem, go out for a jog. I often find the answer that way. What can I say, it works for me.

Reply via email to