4 ms·
I appreciate the thought process here, but to my reading the understanding of economies/diseconomies of scale is quite wrong. (a) The author correctly point ou
by threepipeproblm 10y ago
I appreciate the thought process here, but to my reading the understanding of economies/diseconomies of scale is quite wrong.
(a) The author correctly point out some diseconomies of scale in software, i.e. things that cost more when you do more of them.
(b) The author fails to identify that economies of scale typically far outweigh the aforementioned diseconomies. The main error seems to be basing the argument on this statement --
"This happens because each time you add to software software work the marginal cost per unit increases"
-- without considering the idea of dividing the expense by the number of users, which can increase dramatically for projects reaching a critical mass. To take a trivial example, most 10-employee businesses can't afford to pay for a 10,000 line software application. A company with 100 employees may need to write a 30,000 application due to increased complexity of their environment, but they can afford it because the project now involves 300 lines of code per employee rather than a 1,000.
In short this author accounts for both the numerator and denominiator in the milk analogy that's up front, but then effectively ignores the denominator in the discussion of software costs.
Of course this is why most programmers work for large organizations, at least relative to the average employee. It's also why a handful of large software projects make most of the money in the software business. I'm not happy about this, btw, but it is the case.
To my reading the author's use of "economies of scope" and "economies of specialization" are even further off base. For example, the trend over the last 50 years or so has been towards increasing specialization (which again, benefits larger teams, although the app economy may have provided a brief counterpoint, the same forces are at work there).
- kartickv 10y agoMany apps do have diseconomies of scope — they have too many features, and are therefore hard to use. And the company spent more resources to build a more featureful app, like hiring more people, but this extra investment has had a negative return. Overspecialisation also causes problems, like engineers who don't understand user experience or empathise with the user or even stop to ask whether the flow they're building is needlessly complex. Or designers who propose ideas that are not technically feasible given the platform. If you can increase scale without increasing scope, like WhatsApp supporting 900 million users with 50 or so engineers, great. If you're increasing scope in order to increase scale, you can't assume that the former leads the latter.