Live data from Hacker News

Ask HN: Article on software only increasing complexity?

news.ycombinator.com

11–20 of 30 posts

Re: Ask HN: Article on software only increasing complexity?

#11
I think there's a fair argument to be made that computing is the most complex synthetic thing humans have ever conceived all on our own. If we're talking about making systems in the broadest sense, then any category of problems that we create systems for could conceptually be managed on paper and pencil. Let's say "number of things that could go wrong multiplied by the difficulty a layperson would have in fixing such a thing" is what we mean by complexity, a computer would be more complex than a filing cabinet every single time.

There are trade offs for the complexity though, and well managed complexity could disappear behind the interface of a computer. When this is done well it feels seamless, and when it's done poorly it's painful. So maybe I'm arguing the meaning of complexity isn't 1:1 with the meaning of complicated. At the end of the day "did moving this to a computer make it better?" is the question to answer, and a lot of times the answer is no. QR menus at restaurants is my favorite punching bag for this but any home appliance with bluetooth or wifi is an easy target.

Re: Ask HN: Article on software only increasing complexity?

#15
post #6
post #4

It's not only related to software. Any tool that "makes the task easier" will render the task harder in the long run. Modern agriculture got easier for farmers, until so much productivity became the expected norm that it became an extremely hard job. Communication technology made it easy to keep in contact with loved ones, but now jobs expect people to move very far as if it was nothing. Solving a problem through a t…

Your argument doesn't really hold. The task did get easier in the short term and in the long term. The only thing that changed was the task itself. Local job markets were the only practical thing for most people, but if you found a job somewhere else, you wrote a letter. Farming took dozens (or more?) of people per farm, now it's done by a small team if not a couple -- the task isn't to farm to provide a living or fe…

I think if the GP had framed it as "time-saving devices not only don't give us more time for relaxation, as promised, but end up giving us less" it would be closer to the truth.

Re: Ask HN: Article on software only increasing complexity?

#16
post #10

http://www.berglas.org/Articles/ImportantThatSoftwareFails/I...

Good find :)

I find it interesting how this ties in to the "productivity paradox."[0] The idea the author seems to be getting at--that software accelerates the creation of ever more elaborate solutions (often to problems created by prior iterations of software), and in the process leaves a wake of complexity that frustrates and baffles the society it was supposed to serve--is something I'd like to read more about.

[0]: https://en.wikipedia.org/wiki/Productivity_paradox

Re: Ask HN: Article on software only increasing complexity?

#18
post #10

http://www.berglas.org/Articles/ImportantThatSoftwareFails/I...

Related:

Why it is important that software projects fail (2008) - https://news.ycombinator.com/item?id=24390855 - Sept 2020 (72 comments)

Why It Is Important That Software Projects Fail (2008) - https://news.ycombinator.com/item?id=20109316 - June 2019 (18 comments)

Why it is Important that Software Projects Fail - https://news.ycombinator.com/item?id=932956 - Nov 2009 (26 comments)

Re: Ask HN: Article on software only increasing complexity?

#20
> Berglas's corollary, namely that no amount of automation will have any significant effect on the size or efficiency of a bureaucracy

The article you're seeking demonstrates this one way. You can approach it another way: Amdahl's Law.

Any process that takes time T has two parts: a part which can improve and a part which cannot improve. Let p be the percentage of the program which may improve. Symbolically,

T = part that can improve + part that cannot improve

or

T = pT + (1-p)T

Suppose we can introduce an improvement of factor k. Then the improved process time T' is

T' = pT/k + (1-p)T

or

T' = T[p/k + (1-p)]

The overall speedup S, then, is the ratio of the original time to the improved time.

S = T/T'

or

S = 1/[p/k + (1-p)]

It's so simple to derive, I love it. Say you have a bureaucratic process and you're asked to "automate it". You can plug in the numbers and play with them to get a feel for how much overall improvement you can expect. For example, how would the overall process improve in the (unlikely) case that you provided infinite improvement :)

Bureaucracy is not necessarily, although often synonymous with, "composed of many, many parts." This implies that the "part which can improve" is small relative to the part which cannot improve. Amdahl's Law kicks in and improving those tiny parts have minuscule effects overall. No amount of automation will have any significant effect on the size or efficiency of a bureaucracy.

However, this raises an important philosophical question: if you improve a part, do you replace it? How many parts can you replace in a process before it is no longer the same process?

Post reply on HN