Many things change every year in the world of software development. But there are certainly things that were true 10 years ago and will be true 10 years from now.
What are some truths you've learned as it applies to the actual act of designing code, writing code, testing, debugging, refactoring and generally working hands on with code day to day?
Here are some of mine:
- There is no such thing as perfect bug-free code (there are just bugs that you haven't found yet or ones that don't really matter to the end user)
- If some code 'works' but you don't understand why it works, there will come a time when you'll need to :)
- When debugging, start with the observable truth, the machine doesn't lie. If you can't believe what you're observing because all of your mental models point to 'this is impossible', believe it! Start with the facts and question your assumptions to find out which one is flawed. The machine doesn't lie, there is always a reason :)
I would love to hear wisdom from others!