Live data from Hacker News

Why does it take so long to build software? (2020)

simplethread.com

171–180 of 180 posts

Re: Why does it take so long to build software? (2020)

#171
This answer is facile, but missing:

It takes so long to build software because it can. One can't construct a building forever. A novel is published and done. But software can be developed over its useful lifetime.

Similar followup:

The parts that take a long time, do so because the quick parts were finished quickly.

Lengthy software development isn't a problem with software, but rather reflects the frictionless malleability of code.

"Why does software dev take so long," isn't the same question as, "How to develop software more quickly?"

Re: Why does it take so long to build software? (2020)

#172

Software takes a long time to build because it's always new. That is, software is trivially copy-able, so there is no reason to spend effort duplicating any software that already exists. (Legal reasons and "not-invented-here" syndrome notwithstanding.) This is a huge different from how the "real" world works, where almost all of the work involved in building, say, a car, is actually just the work of assembling identi…

To note. All engineering has this problem. Yes, building cars in a factory yields repetitive results, but what about all the different engineering projects. The truth is that this is not a new problem, we just lack discipline of fields that have been refined over thousands of years. Because of the quick idea to prototype rate, product research and refinement takes a back seat. All engineering projects have massive re…

> I would also like to note, nobody is gonna give a self-taught architect who's 19 the ability to build that skyscraper foundation. Each building technique is developed, tested, and then once determined good, is actually used by others, and supervised by an industry veteran with underlings who learn and eventually themselves supervise such projects. Meanwhile in software it is the opposite.

It's a bit less black and white: Any 6+ year old might build his own tree house, while in reality no one will let a self-taught kid write the control software for a nuclear power plant.

Re: Why does it take so long to build software? (2020)

#173

Software takes a long time to build because it's always new. That is, software is trivially copy-able, so there is no reason to spend effort duplicating any software that already exists. (Legal reasons and "not-invented-here" syndrome notwithstanding.) This is a huge different from how the "real" world works, where almost all of the work involved in building, say, a car, is actually just the work of assembling identi…

And add to that the number of custom software are many times more than most things in real life. Nobody will asks for their BMW to transport a cow, or for their BMW to connect / communicate with other's Mercedes. But we often asked for accounting app to able to handle employee's payroll and paid leaves. Then with that many demand for custom software, we also got many times software manufacturer than car manufacturer.…

Every once in a while when I see an example of an absurdity that wouldn't happen, I head off to Google to see what I can find.

> Nobody will asks for their BMW to transport a cow

How about a cow transporting a BMW?

https://carnewschina.com/2013/02/22/bmw-owner-in-china-is-an...

Re: Why does it take so long to build software? (2020)

#174

I fundamentally disagree with the conclusions of this article. It doesn't take long to "build software" - git was built in a weekend, Facebook a similar timeline. When the environment is right there's no upper bound on the pace of delivery, it's just that modern day dev is, in many places, less about quality of the output (in terms of product/market fit and user value, not code quality) and more about the satisfactio…

Nope. Linus spend years developing the software in his head before writing anything. Writing software is thinking not typing.

Re: Why does it take so long to build software? (2020)

#175

Software takes a long time to build because it's always new. That is, software is trivially copy-able, so there is no reason to spend effort duplicating any software that already exists. (Legal reasons and "not-invented-here" syndrome notwithstanding.) This is a huge different from how the "real" world works, where almost all of the work involved in building, say, a car, is actually just the work of assembling identi…

[deleted]

Re: Why does it take so long to build software? (2020)

#176
post #14
post #10

Earlier quoted context omitted.

I guess the main thing is that there is basically infinite demand for more things in software. Law is very similar to software in this way. They both also take a long time to write & are never actually "finished."

This is an interesting analogy. However, I would argue that Law is less constrained by the laws of nature. If a program is broken, even the best programmer in the world may not be able to fix it if they can't diagnose the underlying problem. Whereas in law; there is no such problem. If a law is found to be bad, you change it. Most reasonably competent lawyers could come up with a solution. Not to say that creativity…

Law loopholes can be hard to diagnose and fix.

Re: Why does it take so long to build software? (2020)

#177
Why does it take so long to make a movie/software? Because it is an act of invention. Yes the camera/widgets, lights/libraries are all reused. But the way they are reused is unique for each movie/application. And a large number of external constraints/forces impact how the movie/application is made. Yes you can quickly make an amateur movie/app in a few hours. People do it all the time. But that’s not the same as making AAA movies/software.

Re: Why does it take so long to build software? (2020)

#178
Typical internal CRUD applications took about 1/3 the time and 1/3 the coding to produce in my experience with the desktop IDE's of the late 90's. The web bloated things up so that you spend time hooking layers to more layers and debugging layers instead of focusing on business logic and UI in terms of users' needs. Now you micromanage technology instead of actual work.

People often say, "yes, but we have so much wonderful choice now!" Perhaps, but organizations are paying dearly for that choice.

Oracle Forms may have been esthetically ugly, but it did the CRUD job fairly well without fuss and muss, and developers were quite productive with it. The client was kind of a GUI browser so that you didn't need to install each application on each user's PC. It was also multi-platform. (Oracle mucked up the client by migrating it to Java applets.)

Some point out they don't work well on phones, but few of our apps are used on phones at our org. The UI was crippled to be mobile-friendly, but nobody is mobile-ing for real-work stuff. Make a special phone portal for the 5% or so of apps that need it instead of tangle up the 95% "incase" someday someone will want mobile. YAGNI.

If the industry would just learn to live with ugly K.I.S.S., they could save a lot of money and time. Warren Buffett says one of his greatest strengths is the courage to say "no". Few have that, and bloat the IT world as a result. Maybe fear of missing the Buzzword of the Week turns our stacks into buzzword pack-rats.

Re: Why does it take so long to build software? (2020)

#179
post #51

Earlier quoted context omitted.

I think a problem here might be that those aren't exactly "Ami Pro" (or word processor in general) features, they're just tacked on the word processor even though it has nothing to do with word processing (even the multiple editors at the same time is essentially about having multiple views - not too different than opening two MDI windows in Office 97 or whatever with the same document but different positions - that…

Simultaneous editing of the same document over the Internet is a fundamentally different problem than having multiple views on a local machine: 1) On a local machine, only one view has the input focus, and 2) you don't have to deal with high-latency, unreliable communication and synchronization. > the underlying system should allow for such uses That's not possible in the general case. It's a hard enough problem for…

I do not see as a different problem really, what you are describing is having a separate cursor per view (which is something programs already do).

Also i'm talking about an ideal hypothetical system here, not something that exists - but it is certainly possible to do something like that, you are way too quick to dismiss something as not possible.

Re: Why does it take so long to build software? (2020)

#180

Earlier quoted context omitted.

I think a problem here might be that those aren't exactly "Ami Pro" (or word processor in general) features, they're just tacked on the word processor even though it has nothing to do with word processing (even the multiple editors at the same time is essentially about having multiple views - not too different than opening two MDI windows in Office 97 or whatever with the same document but different positions - that…

Sounds like a No True Scotsman argument for what counts as word processing features. I know plenty of scenarios where collaborative document editing is a killer feature as part of writing a document.

I didn't argue that it wouldn't be a good (or "killer") feature, i argued that it could be a feature that is provided at a different level that lets the word processor focus on word processing (ie. what word processors are and should be about) while simultaneous/collaborative data editing is also provided for other applications (e.g. collaborative spreadsheet editing, or image editing, list editing or whatever else would make sense).
Post reply on HN