6 ms·
Srsly, I hate the complacent acceptance—even proud embrace—of unsafe unreliable irresponsible tools in this profession. It’s like a badge of pride, and very unh
by hhas01 7y ago
Srsly, I hate the complacent acceptance—even proud embrace—of unsafe unreliable irresponsible tools in this profession. It’s like a badge of pride, and very unhealthy. Because while you may get away with it when your programs are small and simple and manually verifiable, it is an approach to software construction does not—can not—scale.
Worse, it breeds a culture of casual contempt and responsibility shirking that permeates everything we make and do. It’s not just developers—I’ve got plenty choice words for modern management too—but ultimately it’s the developers who are meant to be the domain experts in converting users’ problems into solutions. Too often they convert them into more problems.
As a user who got so hacked off at programmers’ failures to deliver the solutions I need that I eventually taught myself how to do the damn job myself, I’m well aware of all the pitfalls and mistakes on both sides—and have made most of them myself. But at least I learn by it and do my damndest to improve.
..
Now some of my bad attitude may be jealousy, as I really envy your big powerful capable Mk10 programmer brains while I’m struggling to emulate Programmer 1.0 on the wetware equivalent of a Timex 1000 with the wobbly rampack. But mostly it’s furious disbelief with a huge side of frustration as I see all you smart people squander your smarts lazily brute-forcing bloated ugly crappy not-quite solutions, instead of using your smarts to figure out much better ways of doing it and then doing that.
K&R worked under massive, crushing limitations (obsolescent 60s hardware) and turned those limitation to their advantage. Those limitations forced them to work small, smart, and fast; and that paid in spades. Delivered UNIX in record time, which had its flaws, but by golly unlike the “superior” MULTICS it shipped. Creating their own dedicated kernel-implementing language just to do that job, instead of bodging it in some unsatisfactory off-the-shelf language? Yeah, the follow through is not so great (Unix’s faults are well railed on elsewhere), but that original process of creation? Brilliant. #GreatArtists