Saturday, April 7, 2012

Craftsmanship antipatterns

Craftsmanship is young buzzword and pretends to second software development methodology proposed by (enough expected) developers. First was XP.

Scrum and Kanban from other hand are products of managers.

I had fantastic experience of work with team driven by craftsmen last 6 months. It's very interesting that they almost not used boards and meetings. All activity was around code, commits, refactorings and spikes.

We're living in Middle Ages of counting age of our industry. We have a lot of missconceptions and wrong stereotypes.

I'll try to describe those missconceptions which I saw in my personal work of team lead.

It's not polished and raw set of examples. But I want to share and discuss them at this early stage. Blogs were invented for this purpose, right?)

So... first antipattern (in ruby style).

:only_senior_developers_needed

Imagine existing project with big amount of really bad code. Previous team was fired because they have no ability to support acceptable performance due catastrophic state of code. Customer is expecting several very important releases and adoptions for big clients and killing solution was... hire new team consisting only form senior developers. Primary task for this new team is adding more features.

Actually managers tend to resolve in old industrial method many problems in development process or even ideology of existing team - by hiring super star developers.

What is final of this story? Even superstar team can't resolve big technical debt in the project. Several business plans around new features was broken and finally project was cancelled.

Solution: use right ideology and right system of values. Right test suite and continuous refactoring are only possible solutions here.




No comments:

Post a Comment