====== Things you should never do writing software ====== See also: [[patterns|Patterns]], [[concepts|Concepts]] ===== Bikeshedding ===== Discussing over miniscule details of the project which leads to a situation where no progress is made due to the time consuming nature of the discussion. ===== Use all patterns ===== If you use software programming [[patterns|patterns]] a lot without thinking about whether you should use them, you're probably creating code smells. Best practices become worse and worse when they're used just for their ends in themselves. ===== Litter ===== There's the boy scout rule[([[https://www.cs.dartmouth.edu/~cs50/Reading/97_Things_Every_Programmer_Should_Know.pdf#p39|97 things every programmer should know, p.39]])] for code refactorings: always leave the code in a better condition than you found it in. ===== Copy and paste ===== Copying and pasting makes your code really, really [[dry|wet]].