4 ms·
That sounds nice, but I think that there are significant factors that separate the work of programmers from pure thought. Some constraints that I can think of:
by greenyoda 5y ago
That sounds nice, but I think that there are significant factors that separate the work of programmers from pure thought. Some constraints that I can think of:
- Physical reality: A computer has a maximum amount of memory, a machine instruction takes a minimum amount of time to complete, etc. These physical realities were quite harsh in the 1960s, when the development of the IBM System/360 (which Brooks described in his book) took place: "The slowest System/360 model announced in 1964, the Model 30, could perform up to 34,500 instructions per second, with memory from 8 to 64 KB. High performance models came later. The 1967 IBM System/360 Model 91 could execute up to 16.6 million instructions per second. The larger 360 models could have up to 8 MB of main memory, though that much main memory was unusual..."[1]
- Mathematical reality: A polynomial-time algorithm's run time may be too slow to be practical; the fact that it's more elegant than the alternative n log n algorithm is irrelevant if it's unusable. Also, floating point numbers stored in a fixed number of bits behave differently from abstract mathematical variables in significant ways.
- Economic reality: If the software is too expensive to develop, or it takes so long that your competitors get to market first, your project may get cancelled before anyone can ever run your code.
That sounds a lot like engineering to me, not at all like writing poetry - a poet can easily write a poem in which immortal beings travel between galaxies faster than the speed of light.
[1] https://en.wikipedia.org/wiki/IBM_System/360 https://en.wikipedia.org/wiki/IBM_System/360
- muzani 5y agoOn the contrary, I like the analogy because I feel like poets are restricted to rules as well. The very concept of a poem means to be artificially limited in some way.
- Ma8ee 5y agoOr you could see a poem as a program that is run on meat hardware to invoke some emotional reaction. There’s no standardisation and hardly any documentation, so only the absolute best manages to make any program function on more than of a handful of targeted machines, if even that.
- diatone 5y agoConstrained by, yes. Defined by, no.
- yesenadam 5y agoprint "You are an immortal being travelling between galaxies faster than the speed of light."