logoalt Hacker News

Animatstoday at 2:39 AM2 repliesview on HN

The decline of programming books removed a constraint on programming language complexity. At one point, the basic set of books for Java was six volumes. That's when language books broke down from sheer complexity. The combination of Google search and Stack Overflow allowed programming to become more complex than anyone could keep in their head. C++ bloated to the point that people who used to be C++ language lawyers couldn't keep up.

This follows a general trend. Areas which used to be bounded by the limits of the human mind stopped being bounded that way some time back. This first appeared in corporate structure. Through the 1970s or so, there was an upper limit on corporate complexity. Beyond some point, connectivity problems started to choke the organization. There were classic ways around this, mainly dividing companies into sub-companies with their own profit lines. "The Concept of the Corporation" by Peter Drucker describes how General Motors did that. GM was at the time a group of loosely connected car companies under one corporate roof.

A few companies figured out scaling early. Sears was famous for having developed the "Schedule System", which reduced fulfillment overhead from O(N * M) to O(N log M). This allowed Sears to run a giant ordering plant out of Chicago to serve the whole country. But many companies didn't scale well, and choked as they grew. Westinghouse is a classic example.

As computers came in, the scaling problems receded. Airlines got their reservation systems under control, and seat utilization went up. Logistics went from warehouses to fulfillment centers, with much shorter holding times in inventory. Chains no longer were limited in size - WalMart, McDonalds, and the big banks could expand to planetary scale. The giant corporate paper-pushing plants disappeared.

So did forced organizational simplicity. Companies had, at some level, to be simple. Otherwise they became unmanageable. As computerization proceeded, that constraint was relaxed.

Finance achieved previously unimaginable levels of complexity. Until the 1980s, most financial products were rather simple. Now, there's no limit, and the tail wags the dog. Futures markets are far bigger than the volume in the underlying commodity, and zero-sum activity dominates.

AI will accelerate this. There will be businesses no human can comprehend or manage. This may not be productive but will be profitable for someone.


Replies

hibikirtoday at 4:02 AM

When we go back to early Java, the death of books just came from better IDEs, not even stack overflow (which wasn't there) or Google search (which had little to find). Something like IntelliJ made the very large reference section irrelevant, as you got to see source and Javadocs right there. Intellisense also found most of what you needed blindly. That was 90% of those 6 java books. You'd still see a need for specifics good explanations like, say, Java concurrency in practice for all the original low level primitives. Maybe some madman that could explain the initial implementation of the Calendar classes.

Either way, one needed far smaller books the moment all of that came in, especially because in Java, library code is very readable. Compare that to looking inside a C++ standard library: It's not impossible, but it's of a completely different nature of normal C++ we might write for a business.

show 1 reply
teeraytoday at 2:55 AM

> There will be businesses no human can comprehend or manage. This may not be productive but will be profitable for someone.

Which also means that it will probably outstrip our ability to comprehend whether or not such things are actually crimes or whether they should be considered as such.