"Code smell" refers to hints and patterns within code that can be a tip off that something is wrong. Learning to recognize code smells is a critical skill in software engineering. If you can sniff out a bad code smell early, you can eliminate a bugs before they even happen. If not, you may find yourself needing to rip out large swaths of code (not to mention your hair) because you ran into a wall, muttering to yourself "I knew that was too hacky an approach..."
Recognizing code smells is also an important skill in Quality Assurance, code review, and evaluating potential modules to use. It can help identify code that will be difficult to unit test, and therefore easy to break.
This session will provide a practical overview of a number of key "code smells", anti-patterns, and other bad things to watch out for, in both your own code and in someone else's. Along the way we'll learn about aspects of good coding patterns and how to avoid stinky code in the first place.
Developers that want to rewrite their code fewer times. Evaluators who want to pick the right modules the first time. Tech Leads and QA teams that want to know when to push back on code that is going to be a problem long-term.
Questions answered by this session
How can I recognize a problem before it becomes a problem?
If I spot a potential problem lurking, what do I do?
Just how pedantic should I be about good code when I have a deadline to meet?
What habits can I develop to write less stinky code?
What is a true unit test, and why does it help me?