#agile #scrum

A different way to run the daily scrum

Have you ever felt that the daily scrum offers no value? That we are wasting some precious time and getting everybody tired at the same time? I decided to write this blog post, in order to challenge the formalistic way in which the daily scrum is often run and share an alternative format for it. I have been using this format for over 3 years now. I had to find myself as a new team member to an existing team to notice how useful it has been and to remember that it is not the default way to go. ...

#agile

Agile theater

Almost 20 years past the authorship and signature of the Agile manifesto and its true message has gone astray. The residual believers of the original ideas of the Agile manifesto have found shelter in the Software Craftsmanship movement, but nowadays the roots of the problem lie far deeper than the lost ideas and the wasted potential to do things better. The misinterpretation of the philosophy of the agile manifesto combined with the creation of a number of frameworks, certifications and job titles has resulted in a chaotic situation. ...

#pair programming #xp

Pair programming: making the whole greater than the sum of its parts

When was the last time that you did some pair programming? How often do you practice it and why? Is it actually pair programming or is it just two people sitting side by side? Software engineering is a young and rapidly moving profession. Things have changed radically over the past few decades and we have to realize that it is a team sport. Great software is produced by great teams and I cannot imagine a team being great without members that are interacting a lot. ...

#software design #functional programming

Software design with lambda expressions

Lambda expressions are powerful and allow us to write concise, elegant, declarative code. A lot of people has already adopted them, mainly leveraging the power of streams in iterations, but lambda’s toolkit is far richer than that. This is why I decided to write this blog post and explore some aspects of how lambda expressions can prove useful in software design. We will do this exploration via a real world case study in order to demonstrate how we can apply these principles in our everyday work. ...

#tdd #xp

Comparing TDD flavours

A few days ago, right after my talk/demo on hands-on Test Driven Development (TDD) on the JHUG meetup, I noticed that a lot of conversation was about applying TDD in real world systems. Somehow people felt that it was great for a short demo or for implementing a small, algorithmic piece of code, but could not see how it could be applied to a greater scale. Conversation quickly shifted to Outside-In TDD and I decided to try and organize my thoughts concerning the two approaches. ...