Take Back Agile

I have been an agilist for a long time. Approximately 15 years now. In the early days people just laughed at us. It started of as a thing for developers. Only the past four or five years it has grown to become something big. It’s considered mainstream now by many.

I can’t tell it has done the name ‘agile’ much good. Consultants and certificate horny people got attracted to it and that got worse when management bought into the some of the ideas. Some people really know what they are talking about and what they are doing, but many if not most don’t. The values that brought humanity to software development have been scrapped for mechanics, processes and certification.

We can do better. I value the agile manifesto over building a consultancy. I value real craftsmanship over certification. You get my point. I want our agile back.

Tim Ottinger (@tottinge – http://agileotter.blogspot.nl/) and some other folks and myself started Take Back Agile. We’ve created a domain, claimed the twitter, created a Google Plus community and group. We are ready to discuss this and see where it will take us. It’s free. We do not start this discussion with the intention to make any money out of it. Let that be clear. We just want our agile back.

Learning new programming languages and technology makes TDD and BDD hard (for me)

Today I find myself struggling. I have always been a backend server developer, c++, java, c# developer. I am trying to learn web development and mobile (web) development. I have never done any web development with javascript, html, css and that kind of stuff.

For over fifteen years I am a big fan of TDD and BDD. What I want is to development an application for a friend using Ruby on Rails for the backend server development and using Sencha Touch for the mobile web application. One of the reasons I stayed away from web development for a long time is the vast amount of technologies involved. As an eXtreme Programmer I love the idea of keeping things simple and I just never saw how the web development world was keeping things simple. And as a matter of fact this event of wanting to develop a web application for a friend has reminded me in not such a gentle way that this has basically never improved over the past ten year. I believe it only got worse.

Anyway… this is not what this blog is about. Forget about my whining about web development.

This blog is about an interesting phenomena that I ran into the last few weeks. While learning new programming languages, scripting languages and what else I find myself thinking time and again that it is just much easier and much faster to just write the damn code than to fiddle around and writing a proper unit test and applying TDD and BDD. Not only do I have to learn the language I also find myself struggling and learning how to write test for the new languages and technologies I am using.

This makes me wonder if this is a similar experience most people learning TDD and BDD have when they are completely new to these concepts. This probably even worse when you’re actually not an expert in the programming language that you have to use for your work.

I consider myself quite an expert on TDD, but I find myself struggling doing TDD in the new environment that I am working in. I am simply overwhelmed by the vast amount of other things I also need to learn.

I once was an agilist

Agile is hot. Hotter than ever. I have been an agilist for over ten years. Last year I got the privilege to start working with Joshua Kerievsky founder of Industrial Logic.

Last year Joshua found the overarching principle that we all at Industrial Logic believe is the one key element that has not received a lot of the attention, but has always implicitly been build in in most of the agile practices. That key element is safety. In Japanse this word translates to anzen.

Our job has changed from teaching and coaching people agile practices to protecting peopleWe are now anzeneers.

You can find Joshua’s blog about anzeneering here.