Yesterday I attended the 2nd Software Craftsmanship meeting, led by Uri Lavi, held in the headquarters of PicScout. The main agenda for the evening was Bad Code: identifying bad code, code smells, and using tools to identify bad code. Uri gave an in-depth presentation about most common code smells, such as huge nested switch/case statements, and explained how to refactor them into a working, beautiful code. After the talk, the group had split into two: Java and .NET developers, and they were given a Dojo-style assignment: Create a class which displays a given integer as...