4 ms·
Agreed. And Dan is doing nothing with ANY essential complexity here. Seriously: he's copying logs and generating plots from them. That's no different from copyi
by dominicjj 6y ago
Agreed. And Dan is doing nothing with ANY essential complexity here. Seriously: he's copying logs and generating plots from them. That's no different from copying logs and generating plots in 1986. Only the underlying software and hardware infrastructure has advanced. Conceptually it's an identical problem. And touchingly he thinks that having a grasp of how to use sophisticated tools to achieve what is a very simple task is somehow essential complexity. It isn't. It's still just copying logs from one place to another and generating a plot from them.
And you and Brooks have been absolutely right: there was no one improvement in language design that gave a 10x boost in productivity.
- sanxiyn 6y agoI think you misunderstood. Dan agrees there is no essential complexity. On logs: "this task ... is still nearly entirely accidental complexity". On query and plot: "I think it's unbelievable that essential complexity could have been more than 1% of the complexity I had to deal with". Brooks claimed in No Silver Bullet that 2x programming productivity improvement is unlikely because now essential complexity dominates over accidential complexity. Dan is trying to demonstrate that it is completely untrue.
- pron 6y agoBut you can't demonstrate it to be untrue by picking specifically crafted examples (which, BTW, are simple not because of any advancements Brooks was talking about in PL design and programming methodology, but due to hardware improvements and availability of OTS components). You could only demonstrate that by showing that most of the effort in software at large is of this kind, and that the improvement is due to language design and/or programming methodology. When distilled, Brooks's claim is that the relative size of accidental complexity in programming overall is (or was) "low", i.e. less than 90%, while Dan wants to claim it is (or was) "high", i.e. more than 90%. His experiment does not establish that.
- dominicjj 6y agoExactly. Developing an operating system for example still has the same ratio of essential complexity to accidental as it ever did and guess what: OSs are still written in C and assembler. Has there been an order of magnitude improvement in productivity because of program language design in either of those two languages since 1986? Nope.