This is not the event year you are looking for. For details of our next event, please visit agilemanchester.net
To view the latest event website please visit agilemanchester.net
For the latest event: agilemanchester.net
The "refactor" step in TDD is deceptively simple: you just have to improve the code without changing what it does, right? The experts make it look so easy: "Look", they say, "here's some duplication, which I will remove by <insert magic incantation here>".
But how do you know which refactoring move is best? How should you decide which "duplication" to remove first? What happens if you fix the "wrong" smell? And how do you even see that duplication in the first place?
In this hands-on session, two programmers will pair on a well-known problem, using TDD and focusing on the Refactor step. We will explore how Connascence lets us evaluate what problems our code has and what to refactor first. We will discuss whether the TDD community has provided us with adequate techniques for removing "duplication" and we will demonstrate effective use of many of those techniques we do have.
This session will be a live coding event, liberally sprinkled with participation, wrong turns and diagrams with boxes and arrows.
Dr Kevin Rutherford is a software development coach, trainer and extreme programmer. He is the creator of the vastly under-rated Reek code smell detector and the vastly over-rated book ‘Refactoring in Ruby’.
If you have ever used Unix System V or transferred money between bank accounts, you’ve unwittingly used his code. He was using vi before you were born.
I'm a polyglot programmer who has worked on everything from robotics and network automation to insurance quotes and data analytics. I'm interested in how we can build better, more maintainable code in more effective ways.
Need help planning which sessions to attend? We've provided a breakdown of our various session types below.
A presentation and discussion of real-life (not theoretical) experiences of the application (or mis-application) of Agile and Lean practices. Case studies and experience reports include some discussion of lessons learned and an indication of how novel the work is.
Participants learn a new approach, tool or technology through using it to solve one or more practical exercises. Any software/hardware requirements are disclosed in the session description.
A session focused around some specific tool, technique or issue. Primarily led by the speaker, tutorials usually include some elements of interactivity or individual / group exercise.
An in-depth working session on a specific topic. May include paper presentations.