Live data from Hacker News

Software Development Has Diseconomies of Scale

allankelly.blogspot.com

51–60 of 89 posts

Re: Software Development Has Diseconomies of Scale

#51

Bootloaders are small, but very important software. k/q is small but a very useful interpreter. There are so many examples, but it appears that to "the market" the most valued software development is large scale. The sentiment is create and contribute to large projects or go home. Stupid, but true. "Do one thing well" is more than just a UNIX philosophy. It is an essential truth. Most programs are lucky if they can d…

> "Do one thing well" is more than just a UNIX philosophy. It is an essential truth.

Yes, thanks. My eye detects light and passes the signal on to my brain. It does it quite well. My liver removes toxins from my blood. It does it quite well. The big ball o mud made by BigCo is a hammer that reads the ambient temperature, weighs my nails, tells me the time, and predicts the outcome of futures markets. Is it any wonder it doesn't work worth a damn?

Re: Software Development Has Diseconomies of Scale

#52
post #19
post #13

Earlier quoted context omitted.

> How many so-called "engineers" are afraid to write small, trivial programs lest they be laughed at? Very few. Engineers love simple and reliable stuff. You might be thinking CS graduates.

KISS has been a cherished principle for most of the past century and for good reason.

Maybe within a small bubble of people who understand. I thought the idea was self-evident, but after working with people whose instinctive response to every problem is to throw code at it, I can assure you it is not.

Re: Software Development Has Diseconomies of Scale

#53
> And if you don’t know, the UK is a proudly bi-measurement country. Countries like Canada, The Netherlands and Switzerland teach their people to speak two languages. In the UK we teach our people to use two systems of measurement!

The Netherlands? We only speak Dutch here. :-)

I guess the author means Belgium, where they speak (at least) two languages: Vlaams and French.

Re: Software Development Has Diseconomies of Scale

#54
post #53

> And if you don’t know, the UK is a proudly bi-measurement country. Countries like Canada, The Netherlands and Switzerland teach their people to speak two languages. In the UK we teach our people to use two systems of measurement! The Netherlands? We only speak Dutch here. :-) I guess the author means Belgium, where they speak (at least) two languages: Vlaams and French.

Tell that to the folks in Friesland (they speak West Frisian).

Re: Software Development Has Diseconomies of Scale

#55
If you had to build a windows GUI from assembly code, almost all software projects would be too expensive. Instead we reuse high level languages and frameworks to start with the basics a program needs.

To extend the metaphor to milk, what if the milk industry had to invent the glass industry in order to make the bottles which it comes delivered in? Consumers would have cows not refrigerators.

The dis-economies-of-scale-software are programs where normal glass simply can't be used to hold the milk. A whole new custom type of glass has to be developed. And this usually for a type of milk only like 1,000 people even drink it.

Re: Software Development Has Diseconomies of Scale

#56
> Four, get good at working in the small, optimise your processes, tool, approaches to do lots of small things rather than a few big things.

Why, I think I've heard that before...

"Do One Thing and Do It Well" from https://en.wikipedia.org/wiki/Unix_philosophy

Edit: Strange post to be down voted on. It was an interesting connection to me.

Re: Software Development Has Diseconomies of Scale

#57
Every time software economies of scale come up, I can't help but be reminded of Jira's pricing model (https://www.atlassian.com/software/jira/pricing?tab=host-in-...):

  (Per month:)

  Users	Total 	Per user
  ----- ------- --------
  1	$10	$10
  5	$10	$2
  10	$10	$1
  15	$75	$5
  25	$150	$6
  50	$300	$6
  100	$450	$5
  500	$750	$2
  2000	$1500	$1

Re: Software Development Has Diseconomies of Scale

#58

Unix command-line tools

In my experience, many if not most command-line tools and programs we use on UNIX are not great examples of simple, small, focused design. Lots of Swiss army knives packed with options. And the interface is limited in frustrating ways.

One example: I started using email with mh, which used command-line tools to slice and dice your mailbox. Each of these tools was relatively easy to use. But who uses this approach anymore to read email?

It's a more interesting design question I think to study when UNIX tools are subject to the same diseconomies of scale as everything else...

Re: Software Development Has Diseconomies of Scale

#59
post #49

Earlier quoted context omitted.

That's true, but if you architect it well you should still be able to have an overview with every program as a functional block and inside the programs the scope should be limited enough that they are easy to understand. It's all a matter of balance. Good examples of such systems: message switches, telephone installations, routers, large scale web applications and so on. These are all very suitable to such decomposit…

> These are all very suitable to such decomposition into communicating processes. That doesn't make them cheap to build; only possible.

Better expensive than not for sale.

Re: Software Development Has Diseconomies of Scale

#60
post #46
post #10

Software has economies of scale in distribution. In fact the economies of scale of software are the key point of how software businesses are causing disruption. A single software program can be replicated infinitely at zero cost and allow anybody who has 1 liter of milk to have 1000 liters of milk at no additional cost. So in the author's example, software would be the same price for both 1 and 2 liters. Complexity i…

You're responding to an argument the author doesn't make with a fact he is aware of. That's why he wrote: "once the software is developed then economies of scale are rampant". You can't distribute something before it is developed. Most of this HN thread seems merely a reaction to the title—specifically the failure to say "development" in the title—which is a shame, because the point it makes about staying small is a…

For what it's worth, the actual term for this is the 'marginal product of labor'. It is a type of economy of scale, so I wouldn't say it's confusing, but it is a little weird to describe this way.
Post reply on HN