Being what they call a “senior developer”, I should have invested some time helping younger colleagues learn. (I may have shied away from teaching them because they usually have real Computer Science degrees, while I’m just an Information Scientist-turned-programmer with lots of self-education and training on the job. But not all real-world wisdom seems to be taught in Comp Sci courses.)
The best advice I could give: Don’t take my advice, learn from the masters instead. There’s so much more to the craft of programming than just getting your code to run. No matter what language you will be programming in, read these three books:
Then make sure you know these phrases, you might need them from time to time:
- Worse is better.
- You aren’t gonna need it (YAGNI).
- Keep it simple stupid (KISS).
- Do the simplest thing that could possibly work.
- Complexity kills.
- A complex system that works is invariably found to have evolved from a simple system that worked.
- Premature optimization is the root of all evil.
- All non-trivial abstractions, to some degree, are leaky.
- Eat your own dog food.
- Don’t repeat yourself (DRY).
- There’s no silver bullet [PDF].
- Don’t make me think.
Have fun and good luck!