Microsoft is not the problem. Microsoft is the symptom.
When you lose interest in a program, your last duty to it is to hand it off to a competent successor.
If you have the right attitude, interesting problems will find you.
Complexity control is the central problem of writing software in the real world.
Why the hell hasn’t wxPython become the standard GUI for Python yet?
Berkeley hackers liked to see themselves as rebels against soulless corporate empires.
A critical factor in its success was that the X developers were willing to give the sources away for free in accordance with the hacker ethic, and able to distribute them over the Internet.
For the first time, individual hackers could afford to have home machines comparable in power and storage capacity to the minicomputers of ten years earlier – Unix engines capable of supporting a full development environment and talking to the Internet.
Software is largely a service industry operating under the persistent but unfounded delusion that it is a manufacturing industry.
A software system is transparent when you can look at it and immediately see what is going on. It is simple when what is going on is uncomplicated enough for a human brain to reason about all the potential cases without strain.
The only way to write complex software that won’t fall on its face is to hold its global complexity down – to build it out of simple pieces connected by well-defined interfaces, so that most problems are local and you can have some hope of fixing or optimizing a part without breaking the whole.
Of course, C proved indispensible to the developers of all its alternatives. Dig down through enough implementation layers under any of the other languages surveyed here and you will find a core implemented in pure, portable C.
Prototype, then polish. Get it working before you optimize it.
Programmer time is expensive; conserve it in preference to machine time.
It is widely grokked that cats have the hacker nature.
Python language is one example. As we noted above, it is also heavily used for mathematical and scientific papers, and will probably dominate that niche for some years yet. 18.3.3.
Anyway, in a world of cheap PCs and fast Internet links, we find pretty consistently that the only really limiting resource is skilled attention.
Transparency is therefore more than an esthetic triumph; it is a victory that will be reflected in lower costs throughout the software’s life cycle. 6.2.2.
There is a flip side to this. In the Unix world, libraries which are delivered as libraries should come with exerciser programs.
Investors are still thinking through the consequences of reinventing the software industry as one with an explicit focus on service rather than closed intellectual property, and will be for some time to come.