Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I thought the original article was very poor. There's no real data, no references (except Fred Brooks), and the graphs are just nice shaded opinions based on nothing much.

It fails to ask why the complexity of tools and systems grows over time, and whether this is matched by improvements in UX.

It also fails to note that one of the goals of abstraction is to hide inherent complexity. And in fact this happens time and time again in engineering and product design - an insight that starts off requiring near-genius levels of original mathematical creativity is packaged into commodified tools that make it easy to do a certain job.

Sometimes the tools are aimed at engineers, and sometimes they're built for the public. But because no one expects to literally reinvent the wheel, they all package genius in their different ways.

Except software. In software teams keep working to reinvent wheels completely every few years. Some are arguably more refined than existing wheels. But they're all wheels.

They're not a new kind of thing - like an engine. Or wings.

So I agree. Software has mediocre lumpy wheels They're mostly back-references to existing software, and not so much attempts to commodify and simplify standard problems - like security, reliability, scalability, and UX.

There are packages for all of the above, but they're rarely clean and elegant - in the sense that someone has really understood the problem and designed a maximally effective but minimally complex automated solution.

Worse, there are no processes for efficiently abstracting a domain. And that's what's missing.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: