Modern Operating Systems
Andrew Tanenbaum and Herbert Bos
4.3 on Amazon
5 HN comments
The Bitcoin Standard: The Decentralized Alternative to Central Banking
Saifedean Ammous, James Fouhey, et al.
4.7 on Amazon
5 HN comments
Thinking in Systems: A Primer
Donella H. Meadows and Diana Wright
4.6 on Amazon
5 HN comments
A World Without Email: Reimagining Work in an Age of Communication Overload
Cal Newport, Kevin R. Free, et al.
4.5 on Amazon
5 HN comments
Software Design for Flexibility: How to Avoid Programming Yourself into a Corner
Chris Hanson and Gerald Jay Sussman
4.3 on Amazon
4 HN comments
Domain-Driven Design: Tackling Complexity in the Heart of Software
Eric Evans
4.6 on Amazon
4 HN comments
This Is How They Tell Me the World Ends: The Cyberweapons Arms Race
Nicole Perlroth
4.6 on Amazon
4 HN comments
Software Engineering
Ian Sommerville
4.3 on Amazon
4 HN comments
Fluent Python: Clear, Concise, and Effective Programming
Luciano Ramalho
4.6 on Amazon
4 HN comments
Test Driven Development: By Example
Kent Beck
4.4 on Amazon
4 HN comments
Compilers: Principles, Techniques, and Tools
Alfred Aho, Monica Lam, et al.
4.1 on Amazon
4 HN comments
The Everything Store: Jeff Bezos and the Age of Amazon
Brad Stone, Pete Larkin, et al.
4.6 on Amazon
3 HN comments
Bitcoin: Hard Money You Can't F*ck With: Why Bitcoin Will Be the Next Global Reserve Currency
Jason A. Williams and Jessica Walker
4.8 on Amazon
3 HN comments
Sandworm: A New Era of Cyberwar and the Hunt for the Kremlin's Most Dangerous Hackers
Andy Greenberg, Mark Bramhall, et al.
4.7 on Amazon
3 HN comments
Programming: Principles and Practice Using C++ (2nd Edition)
Bjarne Stroustrup
4.5 on Amazon
3 HN comments
pjmorrisonMar 26, 2021
I'm reminded of 'The Medical Detectives', Roueche, but only by reputation (I own a copy I haven't read.) "In each true story, local health authorities and epidemiologists race against time to find the clue to an unknown and possibly fatal disease."
If you interpret 'The enemy might get the bomb before we do' as a crisis, 'The Making of the Atomic Bomb', Rhodes, is a detailed (and Pulitzer Prize-winning) examination of how we got from discovering the atom's nucleus to the consequences of deploying city-destroying weapons in a generation or so.
You might find general systems theory interesting, maybe 'Thinking In Systems', Meadows, and/or 'An Introduction to General Systems Thinking', Weinberg.
emiphilonJune 5, 2021
It's also really ubiquitous across a bunch of disciplines, from Drucker's Management & Gerber's E-Myth & Dalio's Principles in business/org development (not even mentioning the huge field of ops management) to the broader field of systems thinking like Donnelly's Thinking in Systems. Even frameworks like the Scientific Method are a form of this type of thinking, and it's easy to forget that these are all human concepts of trying to bring order to chaos. In the software world you have contemporaries like Larson's An Elegant Puzzle focusing on the management aspect and so so so many classics like GoF/Pragmatic Programmer/Code Complete that focusing on the developer. It's neat that the same ideas apply at different levels of the bigger systems (company, project, individual contributor).
It's also easy to forget that the cogs of many of these machines are people, and this article does a good job of bringing that aspect to the forefront.
endiangrouponJune 14, 2021
To expand on 'out of date' - systems thinking is centred around command and control, IIRC it came out of Cybernetics ala Norbert Weiner, Ashby and others. The command and control angle is based on the assumption that with enough information any system can be mapped, predicted and controlled. Whilst not wrong, it excludes another type of system which is truly complex and precludes mapping and prediction by the fact there are either/all too many variables to model or the very act of measuring or acting changes the system or the agents of the system can change the rules of the system.
These systems are deemed by the sense-making community to be Complex Adaptive Systems or Anthro-Complex (specifically for human systems). To approach these systems you have to become comfortable with uncertainty and re-arrange your thoughts on cause-and-effect, which is a whole new world view for many of us in software.
https://cynefin.io/ is great resource, Dave Snowden is a big name in naturalising sense-making and these broader views of complexity.
amirkdvonJune 19, 2021
- The Manager's Path, by Camille Fournier
- An Elegant Puzzle, by Will Larson
- Team Topologies, by Matthew Skelton and Manuel Pais
- Thinking in Systems, by Donella Meadows
- Also see: references cited in the above and other works by same authors
Disclaimer: Not a seasoned EM and definitely not the first to recommend these on HN.
beaconstudiosonMar 31, 2021
It's a fairly large collection of fields, from mathematical (systems dynamics, chaos theory) to philosophical (constructivism, second-order cybernetics which is a form of epistemology) to practical (systems thinking, automation, feedback mechanisms etc). It was by far the most influential school of thought in the 20th century. It was a revolution at the time but nonetheless died out before its time.
A good place to start would be W Ross Ashby's "An Introduction to Cybernetics", or Donella Meadows' "Thinking in Systems" for the systems theory side.
FWIW, Stephen Hawking claimed the 21st century would be defined by complexity theory. I'm disappointed to say that's not yet been the case.
As for the metaphysics comment - all of reality is emergent and arises from interactions at a lower level - newtonian physics emerge from quantum mechanics, chemistry emerges from newtonian physics, biology from chemistry, sociology from biology and so on (though things of course don't stack quite as neatly as that!) - so to understand how systems work in an abstract sense is very useful for understanding reality - it's like knowing physics, if knowing physics was still useful at the macro-level.