Archive for the ‘XP’ Category

Simple beats complicated

Sunday, April 5th, 2009

Peter Krantz sent this clip from a Capoeira fight (rating: violent) which I see as a really good analogy for XP’s YAGNI and the simplest thing that could possibly work.

When Revolutions Stagnate

Thursday, October 18th, 2007

I am subscriber of the Test Driven Development mailing list as well as the RSpec ones. One thing that strikes me continually is the lack of innovation and new ideas in the former one, as opposed to the flurry of brilliant ideas constantly coming out of the RSpec one. It seems to me that communities stagnate and that the people who once were the revolutionaries turn into keepers of their own revolutions ideas. The free thinkers become conservative.

Guy Kawasaki gave a brilliant keynote on the MySQL conference, talking about innovation. He said that the only way most people think about how to improve themselves is by using the tools they know more proficiently. No makers of horse carriages became car manufacturers. And the original TDD’ers are still talking about the same things they did five years ago. The revolution has moved on.

Early Extreme Programming: The Original Mac Team

Tuesday, August 15th, 2006

From Revolution in The Valley:

Instead of arguing about new software ideas, we actually tried them out by writing quick prototypes, keeping the ideas that worked best and discarding the others. We always had something running that represented our best thinking at the time.

XP 1.0 is better than XP 2.0

Friday, August 11th, 2006
Alan Francis: Jobs, etc.: “[...] being an old-school XP-er who thinks Kent got right the first time and only dug a deeper hole trying to re-explain himself. ”

Well put. XP 1.0 is mostly brilliant, whereas the additional value of 2.0 could could have been published in a short addendum.

Kent Beck is probably the hero of the geeky part of my life and I am sorry to say that I find the quality of his work receding. Whatever he wrote or spoke about before, it was always empirically based and with a very appealing rebel touch. It seems to me that he is becoming more and more theoretical. For example, I found his keynote at XP2006 about “responsible developing” very abstract.

Let’s hope that the book he is releasing this fall proves me wrong.

(Via Planet TW – Alumni.)

Why I don’t like Fit

Thursday, August 10th, 2006

I don’t like Fit. Believe me, I want to like it, I have tried to like it. I mean, Ward Cunningham created it for crying out loud, the man is a genius, so I am probably just missing something – right?

Every time I have looked at Fit, I always like the parts that handle column fixtures. They are clean and easy to read and generally does a really good job. Buth then we get to weird cousin Row Fixture which is not at all that easy to read and uncle Action Fixture which just won’t stop and finally family FitLibrary which does all good things but are utterly unreadble – which probably is due to my lack of experience, but then again wasn’t this intended for non-programmers?

Geoff Bache told me at XP2006 to look into FitLibrary and Erik Lundh suggested that I read the book on Fit. So now I have done just that, and I still don’t like Fit. As a language that is.

What the book did explain clearly, which I find the truly awesome part of Wards invention, is the idea of executable requirements written in advance. It is soo XP that you just have to love it. And I finally get why you should test the logic layer and not through the UI. Happy now?

But the book did not address all my concerns. It does not talk about the problems with version control; if you choose to work with Excel based Fit tests you will not be able to track changes as they are binary files. Neither does it suggest how Fitnesse pages are to be kept in version control. Also, all Fit formats are hard to follow if you track changes by commit messages by email.

The Fit syntax is in my opinion a table based DSL for writing acceptance tests. How many other programming languages do you regularly use that are table based? Excel? It is awesome for column based calculations which is the same as Column Fixtures, which I like. I alreay wrote that. But the rest is just … ugly.

A better solution in my opinion would be a Markdown based documentation format, where code formatted text, the indented one, is executed as tests just like tables in Fit. Could probably easily be turned into a Wiki if needed. For testdata I would use Yaml. Now if I could just find the time :)