Bad and outdated software practices come up with their own headache for the developer. Developers must keep them up-to date both technologically and functionally to have fun in programming.1. Follow good software development practices like Test Driven Development. A very good test coverage (End To End and Unit Tests) keeps a developer away from last minute stress at production deployment time.
2. Automate all the mundane tasks related to development/deployment.
3. Take a software change request only if it is really required.
4. Keep refactoring your code base time to time, don't leave any duplicate code inside code base. Follow DRY (don't repeat yourself) strictly. Every object must have a single authoritative representation in the system.
5. Add an automated test case for every new bug found.
6. Document interfaces and reasons instead of implementation.
7. Use profiler to identify bottlenecks.
8. Use pair programming when bringing someone new up to speed and when tackling particularly tricky problems
9. Use tools to find the duplicates and refactor to reuse the existing code.
10. Work in small steps with frequent feedback and correction to avoid the last minute surprises.
11. Continuous Integration environment is must for rapid bug free development.