Hacker News new | ask | show | jobs
by ljf 1186 days ago
Good article.

I think the issue is the often 'higher ups' want 'Agile' as they've heard it is faster and/or cheaper - missing the part that it is faster and cheaper to fail with agile. If you know exactly what you want and are happy to wait, then an agile methodology probably isn't for you.

If you need to test something out or scratch an itch now, then agile might be a good fit (depending on the skills/buy in/experiences/interest of the team(s)). Forcing people to be Agile! does not work.

-

I like to point out that very few house builders use agile methodologies to build a home.

But, if there was a storm tonight and you lost your home, then you might use an agile approach of borrowing a tent, then buying a trailer, then getting a static caravan, while you start building a basic toilet block, then adding on a kitchen and building a home iteratively, adding and releasing value early, that way.

The result would cost more than just building a house, but you'd have value sooner in terms of a place to sleep, wash and eat.

4 comments

The comparison to home building is not a good one - houses are things which are repeated, with customizations and slight modifications, and people are deeply familiar with houses. The closest analogy in the software world would be simple websites such as blog or easy shops, where e.g. a WordPress plus some customizations would be enough.

Software is completely different though. Building chatgpt is vastly different from building Google Maps, for instance. And on top of that, most interesting software projects are not mere copies of other projects, so the whole idea of the customer knowing what they want does not apply.

I hear this a lot. The counter argument is virtually no one is going from implementing chat gpt as project 1 to implementing google maps as project 2. In fact they are going from implementing v1 of google Maps to v1.1.

When I worked as a kitchen fitter there was a much greater difference between projects that anything I've experienced with a single employer as a dev. Fitting a top end kitchen in a listed 500 year old cottage is vastly different to fitting a budget kitchen in a new build, to fitting a period appropriate kitchen in a 1930s town house. Building out the next version of an API or writing a rendered, not so much.

I think a lot of Devs have a vastly inflated sense of the "uniqueness" of what they are implementing, and I think a lot of that derives from the industries obsession with reinventing the wheel, NIH syndrome and fashion driven development.

Having fitted two kitchens, buildings are crooked... You need shimming and planning far ahead, and lots of measuring if you want to get something that is mostly straight.
That completely depends on the size of the employer. Small shops give devs more variety, as they simply have less resources to go around.
Exactly - as I say: If you know exactly what you want and are happy to wait, then an agile methodology probably isn't for you.

I think you missed my point, (sorry if it wasn't clear). An agile way of working can be right if you want to test and learn and you need to unlock value quickly (or more quickly than building a whole).

But the industry I work in, even 'agile' projects come with 6 month planning 'sprint zero', and then basically just use sprints to work through a waterfall plan. Getting no value from 'agile'.

You can build a house with agile methodology. And I think many have been...

You might be able to live in one, but surely you don't want to buy one. As these are probably not legal in this day and age and mostly done by do-it-yourself self-builders. That is they are not code compliant. Like electricity might or might not burn down the house, there might or might not be leaks all over the place. And mold and so on is probably common... Also I doubt every door closes or is straight and so on...

Actually that really describes most of software we use.

Yes you can do it, and it is exactly what my father did while living in a caravan on his land. Sorted a place to wash, then cook, then sleep for each of the children. I never said you can't do it, just it isn't how it is normally done.

But it is not what is normally done, as it comes with its own costs. The benefits to him were clear, but most people just want to move in once it is built and not have the extra expense of iterative 'releases' of their house.

> I like to point out that very few house builders use agile methodologies to build a home.

Home construction often has milestones that are fairly comparable: 1) competition of the structural components, 2) drying in, 3) utilities, 3) drywall and Paint, and 4) Finishing.

Each of these are phases where they could theoretically stop. There are times in history and places in the present where people live in structures that don’t have windows and doors, or without utilities, etc.

However I would agree that they’re not marketed as viable until they’re close to finished.

True - and yes you 'could' move in to a building that has just the structural components completed, but the value for the home owner is rarely released at that point.
> heard it is faster and/or cheaper

This has been my experience with agile - it works OK if you have more expensive experienced staff who can make smart decisions and work autonomously.

The problem is the company wants to hire/outsource the cheapest staff possible who do better with defined processes and standards.