
Why Software Sucks - Sankra
https://hjerpbakk.com/blog/2019/05/31/why-software-sucks
======
ducttape12
It's always bothered me how software teams view internal and external users
differently. We'll spend lavishly on designing an amazing experience for
customers... But internal users are stuck clicking through 500 VB6 forms to
get anything done.

Companies forget that selling more isn't the only way to make money; cutting
internal costs can also make you more money. A happy team is a productive
team, and a streamlined team is a productive team. More productivity means
less people you have to hire and train.

But hey, that comes out of a different budget and our internal people are
already being paid peanuts, so work on this feature the sales team claims will
help them sell more. Operations people are just there to clean up the crap no
one else will, right? (/sarcasm)

------
lioeters
I'm sure many of us can relate to this article. There's only a very small
handful of real-life software that I've felt embodied our ideals of design,
contruction, clarity of organization, performance, reliability..

> Software development has borrowed its working language in part from
> _architects and builders_ , but this is the worst mistake we ever did. The
> language itself makes everybody underestimate the difficulty in everything
> we do.

I wonder what other metaphors we can use, which would be more
appropriate/insightful to describe and understand the software development
process.

~~~
lubujackson
I think architecture is a fine metaphor for actually constructing software,
just no one treats software the way we treat architecture.

Imagine putting an architect on a plane, and during the flight briefly
explaining some elements of a house to be built: It needs to be 2 stories and
have a big kitchen, open concept, 4 bedrooms. Something like that, yes? How
long will that take?

I couldn't possibly say! Well, just give me a range. Etc.

So the plane lands and the architect wonders exactly where he is. This is a
plot in a forest. Before we can begin we need to clear these trees and get
plumbing and electricity hooked up... Hey, you didn't mention any of this in
your estimate!

Now we are months behind schedule but the groundwork is finally laid. We are
really behind the 8 ball schedule-wise! Just do a quickie job the rest of the
way, ok?

But when the architect goes to hire carpenters he discovers they only speak
French! Didn't you know you this house is being built in France? I forgot to
mention it. You speak that language, right? Well, figure it out. You are the
architect after all.

~~~
lioeters
My goodness, you're right.. And the poor architect often doubles as the
carpenter, plumber, unqualified electrician..

When the house is halfway built, we ask the architect to add a basement floor
with temperature remotely controlled via a spotty WiFi signal. Oh, and a
satellite dish on the roof too, after all we're practicing "agile
architecture"!

