Andy Marks


Principal Consultant for ThoughtWorks

Andy Marks is Principal Consultant for ThoughtWorks Melbourne. Originally an itinerant teacher of programming at university, Andy has been writing code professionally since 1996 in Melbourne, Brisbane, San Francisco, Leeds and Singapore. Joining ThoughtWorks as a technical lead in 2002, Andy has deep experience in agile development and has, since 2013, become one of those dreary functional programming evangelists you dread speaking to at parties.

Andy is a regular speaker at conferences in Australia and user groups in Melbourne, even though he does not understand monads… not even a little bit. Andy has also long harboured a desire to become a “struggling musician” and is awaiting this destiny by struggling to play bass for the ThoughtWorks Melbourne band. Andy is a huge fan of the E minor scale.

YOW! West 2017 Perth

Does smelly code also sound bad? Using audio cues to indicate code quality


This is a demonstration of a code quality analysis tool that doesn’t visualise the metrics – it “audiolises” them.

The concepts of poor code having smell and colour (usually red) is commonly accepted, but what about appealing to our sense of hearing as well as eyes and nose? Aeolian is an open source tool (written by the author) that generates MIDI music from code quality metrics, which begs the question:

  • What does poor quality code sound like? Justin Beiber’s latest? A Phillip Glass soundtrack? A Phil Spector wall of sound cacophony? Modern Jazz? 🙂
  • Likewise, what does good quality code sound like? Mozart? White noise?
  • How do commonly accepted musical concepts (keys, tempo, verse, chorus) apply when illustrating code quality.

The author (an amateur musician and long time producer of smelly code) will talk through the concepts of Aeolian and provide plenty of examples of how you can map code quality to music. This will be a light hearted talk and no knowledge of music theory is needed.