What is good code? Evaluating code quality

Workshop
Fri 10:10 - 11:55
You need a laptop
Merope
Technical Leadership

Summary

After introducing the main topic (“What is good code?”), participants are asked to solve a simple algorithmic problem (the kata) pairing in their programming language of choice.

Once the coding session is over, it’s time for the “show & discuss” section, where volunteers show and explain their solutions to the group. Together, we discuss tradeoffs, design choices, etc.

Afterwards, concepts like software metrics and static code analysis are gently introduced before discussing even more solutions to the original problem and checking if the numbers align with the previously stated opinions.

The wide range of potential approaches (under slight time pressure, in several programming languages and with different development environments) provides an interesting context to discuss topics like:

– Software development concepts such as duplication tolerance, refactor aggressivity, layers of indirection, conditionals usage, KISS (Keep It Simple, Stupid) / DRY (Don’t Repeat Yourself), etc.

– (XP) eXtreme Programming practices: simple design, pair programming, refactoring, TDD (Test-Driven Development), etc.

Attendees should bring:

1. Laptop with a development environment setup in advance (since participants work in pairs, enough with one out of two)
2. Motivation to learn, have fun and be nice to each other 🙂

Who is it for?

AlbertArchitect
 
ChrisCTO
 
DianaDevOps
 
MeganManager
 
TamaraTeam
Leader
DavidDeveloper
BiancaBusiness
Analyst
TudorTester

Leave a Reply

Your email address will not be published.

*