9 ms·
Ask HN: Most interesting, mildly impractical, well-written books on software?
Books like nand2tetris, Let Over Lambda, Lisp in Small Pieces, Hacker's Delight are iconic. They aren't required reading to do well in software but they are extremely interesting and are fairly easy to read (they are well edited).
What other books are in this vein?
Due to popularity, feel free to skip The Littler Schemer/MLer, HtDP, SICP, On Lisp, Thinking in Forth. And let's skip history, biography books like Soul of a New Machine and Isaacson's Jobs.
And again, let's skip books that you might actually consider required reading for experienced developers.
- the_arun 5y ago“Working Backwards: Insights, Stories, and Secrets from Inside Amazon” - https://www.amazon.com/dp/1250267595 https://www.amazon.com/dp/1250267595 by Amazon executives. Gives overview of Amazon’s core practices that made them successful.
- eatonphil 5y agoI liked this book too! But not at all in the vein I'm talking about here. Thinking books that actually talk about software/programming in technical depth.
- qorrect 5y agoI loved that book I'd recommend it to everyone. It's more of an Information Theory book than a software development book.
- mycl 5y agoThe Art of Prolog is now open access: https://mitpress.mit.edu/books/art-prolog-second-edition https://mitpress.mit.edu/books/art-prolog-second-edition You could think of it as "SICP for Prolog".
- eatonphil 5y agoI own it and have tried to read it but man I have a really hard time getting past the first chapter. I think it would be better for me to study Prolog first for a while before trying to continue reading this. I've always heard good things about it.
- adampk 5y agoDesigning Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321 https://www.amazon.com/Designing-Data-Intensive-Applications... I surprisingly really enjoyed it. Well written and it pulled back the veil on a lot of concepts that I thought were too complex for me to understand/enjoy.
- deleted 5y ago[deleted]
- eatonphil 5y agoI agree it's well written but for me that's way more on the side of required reading. I'm thinking about books you don't _need_ to read but that are just really neat or advanced discussions.
- Arcsech 5y agoI agree that this is a great book, but I think it fails the "impractical" test - DDIA is an immensely practical book that's basically required background reading if you work with distributed data systems.
- kinbiko 5y agoCode: The Hidden Language of Computer Hardware and Software https://en.wikipedia.org/wiki/Code:_The_Hidden_Language_of_Computer_Hardware_and_Software https://en.wikipedia.org/wiki/Code:_The_Hidden_Language_of_C... comes to mind.
- eatonphil 5y agoYes that's in the spirit! I personally did not enjoy it though because it tried to explain at a level that non-programmers could understand so it didn't exactly go fast enough. I got bored reading it so I wouldn't recommend it to other programmers.
- lghh 5y agoI feel the opposite. I read it right after taking a computer organization class in college. Both Code and the course covered very similar topics. I really enjoyed and appreciated how clear and concise and friendly of a read it was even more after taking the course.
- eatonphil 5y agoFair enough!
- jrmiii 5y agoBased on the prompt, I feel like Why’s (Poignant) Guide to Ruby would qualify. https://poignant.guide/ https://poignant.guide/
- eatonphil 5y agoWeird! I like the originality. But does it actually go into depth or is it really just a tutorial to Ruby basics? If it's ultimately just a guide to Ruby basics I wouldn't include it here since I'm thinking of books with some serious technical depth/discussion.
- jrmiii 5y agoOh no, it went quite deep in areas (e.g. eigenclasses) but it was generally in service of some of its more esoteric aims, not a ground-covering tome geared towards complete understanding.
- kingkonz1 5y agodeleted, misread the question
- eatonphil 5y ago> And again, let's skip books that you might actually consider required reading for experienced developers. It would be a totally fine suggestion but it's way too practical! Let's keep this thread off topic!
- mcphage 5y agoThe Little Book of Semaphores: https://greenteapress.com/semaphores/LittleBookOfSemaphores.pdf https://greenteapress.com/semaphores/LittleBookOfSemaphores.... It's about multithreading synchronization issues like the Dining Philosopher's problem, and it's brief, interesting, and very readable.
- eatonphil 5y agoThat looks awesome. Thanks!
- Pelic4n 5y agoA list of this exact kind of books is presented here: https://blog.fogus.me/2015/04/27/six-works-of-computer-science-fiction/ https://blog.fogus.me/2015/04/27/six-works-of-computer-scien...
- Rochus 5y ago> Project Oberon: The design of an operating system and compiler - Wirth’s magnum opus is the quintessential example of Computer Science alternative-history world-building. hilarious
- eatonphil 5y agoAwesome! Specifically not on my list already there's: Concepts, Techniques, and Models of Computer Programming; Smalltalk-80: The language and its implementation; The Architecture of Symbolic Computers and Project Oberon: The design of an operating system and compiler. This reminds me Niklaus Wirth's Compiler Construction probably belongs in this thread.
- tephra 5y agoI thought Knuts Literate Programming book (https://www-cs-faculty.stanford.edu/~knuth/lp.html https://www-cs-faculty.stanford.edu/~knuth/lp.html) was extremely interesting, the paper "the errors of TeX" which is a part of it is one of the more interesting papers I've read. Joe Armstrong used to recommend Algorithms + Data structures = Programs (https://en.wikipedia.org/wiki/Algorithms_%2B_Data_Structures_%3D_Programs https://en.wikipedia.org/wiki/Algorithms_%2B_Data_Structures...) but I haven't read it. Okay I know you said no to the little schemer but you technically didn't mention The Reasoned Schemer which is just amazingly fun to go through and wrap your head around (https://mitpress.mit.edu/books/reasoned-schemer-second-edition https://mitpress.mit.edu/books/reasoned-schemer-second-editi...). Also see Will Byrds latest strangeloop keynote: https://www.youtube.com/watch?v=AffW-7ika0E https://www.youtube.com/watch?v=AffW-7ika0E
- eatonphil 5y ago> I thought Knuts Literate Programming book (https://www-cs-faculty.stanford.edu/~knuth/lp.html https://www-cs-faculty.stanford.edu/~knuth/lp.html) was extremely interesting, the paper "the errors of TeX" which is a part of it is one of the more interesting papers I've read. I haven't read any of Knuth's stuff because doesn't having 7 volumes kinda imply it can't possibly be well edited? Or maybe I really do just need to suck it up and read these books. I know it's not the same exact book but I took his style to be to generate encyclopedic tomes rather than interesting reading. > Algorithms + Data structures = Programs Oo a Wirth book. Those are always good. > I know you said no to the little schemer but you technically didn't mention The Reasoned Schemer Man you're cutting it close there!
- tephra 5y ago> I haven't read any of Knuth's stuff because doesn't having 7 volumes kinda imply it can't possibly be well edited? Or maybe I really do just need to suck it up and read these books. I know it's not the same exact book but I took his style to be to generate encyclopedic tomes rather than interesting reading. Of the Knuth I've read (which includes [a tiny] _some_ of AoCP, lets not kid ourselves) I think he is a very good writer with great sense of humour between the academicness of some of his writing. Take the Surreal Numbers book for example.
- cloogshicer 5y agoIf you're interested in compilers and programming language design, I highly recommend Bob Nystrom's "Crafting Interpreters". One of the best written programming books I've read. Free to read online: http://craftinginterpreters.com/contents.html http://craftinginterpreters.com/contents.html
- eatonphil 5y agoIt's been on my list to read for a while! I wonder if it really is one of the best books on interpreters or if it just hit the right spot of being free online and in a mainstream language (i.e. not Haskell, OCaml, or Scheme) and with code you could actually run whereas most PL _textbooks_ stay too abstract and don't walk you through building a working thing.
- stefanos82 5y agoIt is by far the best book (website content?) I read around compilers. It's extremely accessible, easy to follow and digest, plus it challenges you to experiment to see how things work by adding new features or breaking existing ones; fascinating stuff! Now...if it wasn't the Java part and was fully dedicated in C it would be awesome! :-D
- ai_ia 5y agoWhen I was learning Racket, I really liked Beautiful Racket[0] by Mathew Butterick. The book is accessible, well structured and the web design & typography is outstanding (IMHO). The author created a Racket Package (Pollen) and used it to write this book. I have special admiration for craftsmanship and this book is certainly one of them. [0]: https://beautifulracket.com/ https://beautifulracket.com/
- eatonphil 5y agoDefinite props for beauty.
- jpgvm 5y agoLearn you a Haskell for Great Good. Not required reading but entertaining and only somewhat practical unless you happen to write Haskell for a living, in which case yeah - too bad.
- carapace 5y agoNot quite in the vein, but I think Ted Nelson's "Computer Lib/Dream Machines" deserves mention (although it's partly history.) https://computerlibbook.com/ https://computerlibbook.com/ https://en.wikipedia.org/wiki/Computer_Lib/Dream_Machines https://en.wikipedia.org/wiki/Computer_Lib/Dream_Machines https://archive.org/details/computer-lib-dream-machines https://archive.org/details/computer-lib-dream-machines - - - - Also "Scalable Internet Architectures" by Theo Schlossnagle
- eatonphil 5y ago> Not quite in the vein, but I think Ted Nelson's "Computer Lib/Dream Machines" deserves mention (although it's partly history.) That does look very interesting!
- thoughtFrame 5y agoSomewhat varied but I think some of these may fit your criteria. Programming Erlang by Joe Armstrong Communicating Sequential Processes by Hoare The algorithmic beauty of plants by Prusinkiewicz, Lindenmayer Network Performance Analysis Using the J Programming Language by Alan Holt Relational Programming in miniKanren by William Byrd Exercises in Programming Style by Cristina Videira Lopes edit: also "SAT/SMT by example" by Dennis Yurichev
- eatonphil 5y agoNice list! Anything with Hoare has my ear.
- DashAnimal 5y agoHere are the few I've really enjoyed. Inside the Machine: An Illustrated Introduction to Microprocessors and Computer Architecture Explains how Microprocessors operate, going from operands and building up a lot of the execution tricks used, all whilst going through popular examples of CPUs (thee pentium chips, PowerPCs, etc), discussing their history, their specs, their capabilities, etc. Hardware and Support Support for Virtualization This one corners on useful, but it's short and it's free and unless you work in virtualization it probably won't be much use but I found it helpful in getting a grasp on what is actually happening. ------ Edit: Removed history books but, for anyone interested, the ones I listed previously were The Idea Factory, Valley of Genius, and Android: The Team that Built the Android OS
- eatonphil 5y ago> Hardware and Support Support for Virtualization This whole series is truly awesome. > Inside the Machine: An Illustrated Introduction to Microprocessors and Computer Architecture I'm always looking for more like nand2tetris or Harris and Harris' book on comp arch to suggest. Thank you!
- hyperman1 5y agoThere was one about Mockingbirds I read a few decades ago. I think this is the one: https://en.wikipedia.org/wiki/To_Mock_a_Mockingbird https://en.wikipedia.org/wiki/To_Mock_a_Mockingbird Nothing explicit computery or even technical in there. Only all kinds of invented birds with specific weird behavior. You need to know nothing above what a 10 year old knows (and be interested in logic). And yet, when you're at the end, it turns out you know what 'Y combinator' actually means.
- eatonphil 5y ago> And yet, when you're at the end, it turns out you know what 'Y combinator' actually means. Sweet. I just learned about this book earlier today. It's on my list now!
- Jtsummers 5y agoPretty much everything by Smullyan is interesting (probably all, but I haven't read it all yet).
- eatonphil 5y agoWhat else have you read of his that you recommend (related or not to this thread)?
- Jtsummers 5y agohttps://en.wikipedia.org/wiki/Raymond_Smullyan https://en.wikipedia.org/wiki/Raymond_Smullyan Under "Logic Puzzles", through To Mock a Mockingbird (about to reread it because I read it years ago and a lot of things didn't stick at that point). I picked up his books to flesh out my home library (I'd read some of them back in college) and started rereading from the beginning. Have a notepad and pencil to help puzzle through the problems (or index cards, I have a few stuck in the books). They span from riddles, to logic puzzles (the classic Knight & Knave puzzles), to computation-based puzzles with combinators.
- carapace 5y ago"Planet Without Laughter" > excerpted from This Book Needs No Title: A Budget of Living Paradoxes by Raymund Smullyan https://www-cs-faculty.stanford.edu/~knuth/smullyan.html https://www-cs-faculty.stanford.edu/~knuth/smullyan.html
- sombremesa 5y agoSince you want impractical suggestions, you might enjoy “if Hemingway wrote JavaScript”
- eatonphil 5y agoWow I love both Hemingway and JavaScript. I look forward to this book.
- mindcrime 5y agoMaybe Clever Algorithms: Nature-Inspired Programming Recipes[1]. These techniques might not be useful to everybody, all the time, but they can be very handy in places. Edit: A couple of other suggestions. Managing Gigabytes: Compressing and Indexing Documents and Images[2] Mining of Massive Datasets[3] Algorithm Design Manual[4] Network Algorithmics[5] Neural Network Design[6] I think all of these fall into the category of "Won't be applicable to everyone, but can be good for those who need this kind of stuff." [1]: https://github.com/clever-algorithms/CleverAlgorithms https://github.com/clever-algorithms/CleverAlgorithms [2]: https://people.eng.unimelb.edu.au/ammoffat/mg/ https://people.eng.unimelb.edu.au/ammoffat/mg/ [3]: http://www.mmds.org/ http://www.mmds.org/ [4]: https://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1849967202 https://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena... [5]: https://www.amazon.com/Network-Algorithmics-Interdisciplinary-Designing-Networking/dp/0120884771 https://www.amazon.com/Network-Algorithmics-Interdisciplinar... [6]: https://hagan.okstate.edu/NNDesign.pdf https://hagan.okstate.edu/NNDesign.pdf
- eatonphil 5y agoThat looks good! Thanks!
- onemoresoop 5y agoSimply Scheme[0] as an intro to scheme and a good bridge for taking on SICP. It is available for free online. [0] https://people.eecs.berkeley.edu/~bh/ss-toc2.html https://people.eecs.berkeley.edu/~bh/ss-toc2.html
- eatonphil 5y agoNeat! I haven't heard of this one.
- tjr 5y agoThe requirements seem a bit unclear to me, but I'll toss a couple of titles into the ring: The Inmates Are Running the Asylum (Alan Cooper) makes the case that user interfaces can and should be easier to understand. I think in the years since this book was written, there has been much improvement in the UI world overall, but still worth thinking about. Expert C Programming (Deep C Secrets) (Peter van der Linden) goes into some fascinating technical (and historical) tidbits related to C.
- eatonphil 5y agoAdded both to my personal lists! Thank you!
- rglover 5y agoNot about software per se but The Systems Bible/Systemantics (original title) is a good read: https://www.amazon.com/SYSTEMANTICS-SYSTEMS-BIBLE-John-Gall-ebook/dp/B00AK1BIDM https://www.amazon.com/SYSTEMANTICS-SYSTEMS-BIBLE-John-Gall-...
- eatonphil 5y agoYeah that is a very fun read for sure!
- cenazoic 5y agoRuby Under the Microscope: http://patshaughnessy.net/ruby-under-a-microscope http://patshaughnessy.net/ruby-under-a-microscope The CS Detective: https://nostarch.com/csdetective https://nostarch.com/csdetective Mazes for Programmers: http://www.mazesforprogrammers.com/ http://www.mazesforprogrammers.com/ A Curious Moon: https://bigmachine.io/products/a-curious-moon/ https://bigmachine.io/products/a-curious-moon/ xchg rax,rax: https://www.xorpd.net/pages/xchg_rax/snip_00.html https://www.xorpd.net/pages/xchg_rax/snip_00.html
- eatonphil 5y ago> xchg rax,rax Yes!!! Great list, thanks for sharing.
- pcthrowaway 5y agoI must be missing something here. Care to explain what this is?
- thijsvandien 5y agoMore info here: https://www.amazon.com/dp/1502958082 https://www.amazon.com/dp/1502958082
- teapot7 5y agoSeems it's a book of assembler snippets. The Amazon page is less cryptic: https://www.amazon.com/dp/1502958082 https://www.amazon.com/dp/1502958082
- eatonphil 5y agoI'll add Shellcoder's Handbook to the list. Great intro to compiler/language flaws for programmers who don't know much about software security (like me).
- itpragmatik 5y agoPragmatic Programmer https://pragprog.com/titles/tpp20/the-pragmatic-programmer-20th-anniversary-edition/ https://pragprog.com/titles/tpp20/the-pragmatic-programmer-2...
- eatonphil 5y ago> And again, let's skip books that you might actually consider required reading for experienced developers. Would be a great suggestion in a generic good books list but this one is about books that are not pragmatic!
- Jtsummers 5y agoThe Psychology of Computer Programming by Gerald Weinberg. There's a silver anniversary edition, that's the one to get. It has the author's commentary framing each chapter where he reflects on the contents.
- eatonphil 5y agoThat looks very interesting. Thanks!
- dSebastien 5y agoI don't know if mine qualify and how HN feels about self-promotion, but I can't resist the opportunity to mention my project. I'm working on a collection of 12 books about software development and IT: https://dev-concepts.dev/table-of-contents https://dev-concepts.dev/table-of-contents I try not to get down to the level of atoms and molecules, but I'm going deep down the rabbit hole, and it's quite fun!
- eatonphil 5y agoSelf promotion in general is fine on HN but I think it's pretty hard to objectively say anything you write yourself is well written!
- dSebastien 5y agoI fully agree with you. Quite the opposite actually, it's hard to know when what you write is good enough for others to read ;-)
- adamkl 5y agoHow about "The Land of Lisp"? [0] It comes with a bonus music video! [1] [0] http://landoflisp.com http://landoflisp.com [1] https://www.youtube.com/watch?v=HM1Zb3xmvMc https://www.youtube.com/watch?v=HM1Zb3xmvMc
- eatonphil 5y agoThat is a pretty fun one indeed. :)
- markus_zhang 5y agoIs GEB considered to be one? It's not exactly CS but can be related, plus it was very well written.
- eatonphil 5y agoIt's definitely interesting! I don't know if I've ever met someone who finished the book though. It's a skewed definition maybe, but I don't personally consider things well written if it requires inhuman dedication to finish. :D
- atribecalledqst 5y agoI finished it. But I was in high school and a lot of it likely flew over my head.
- bear8642 5y agocould you explain why it's meant to be so important? Heard little about it and tried reading start but didn't seem very groundbreaking
- rgrmrts 5y agoI recently added some books by Nils M Holms[0] to my library. Given some of the titles you mentioned, I think you might like them. I enjoy their writing style. [0]: https://www.t3x.org/ https://www.t3x.org/
- eatonphil 5y agoYeah! I loved LISP System Implementation.
- carapace 5y ago"The Algorithmic Beauty of Plants" > ... is a book by Przemyslaw Prusinkiewicz and Aristid Lindenmayer. It's notable as it is the first comprehensive volume on the computer simulation of certain patterns in nature found in plant development (L-systems). > The book is no longer in print but is available free online. https://en.wikipedia.org/wiki/The_Algorithmic_Beauty_of_Plants https://en.wikipedia.org/wiki/The_Algorithmic_Beauty_of_Plan... http://algorithmicbotany.org/papers/#abop http://algorithmicbotany.org/papers/#abop
- withinboredom 5y agoNot a book, but I truly enjoy this guy’s videos: https://youtu.be/h7apO7q16V0 https://youtu.be/h7apO7q16V0. I usually watch them while eating lunch. He does a truly fantastic job.
- linguae 5y agoFor a great introduction to file systems, I highly recommend Practical File System Design with the Be File System by Dominic Giampaolo, creator of the Be File System who ended up moving to Apple and designed Spotlight, the file indexing and search system that was introduced in Mac OS X Tiger. It's very well written and you'll learn a lot. When I was hired in 2006 as a summer undergraduate research intern at an academic storage systems lab, I used this book to study up on file systems design and implementation. At the time I haven't even taken an operating systems class (I had just completed my freshman year), though I already knew a lot about operating systems by reading a lot of papers and books on Unix as well as writing C programs that used POSIX system calls. This book helped me a lot on my very first research project: exploring the use of SQLite as the basis of a non-hierarchical file system. That was a fun project that helped start my research career. I still refer to this book from time to time to brush up on file system basics.
- diehunde 5y agoVery interesting! Do you know if this book also talks about the basics of distributed file systems or is it only for single machine?
- linguae 5y agoIf I recall correctly, I don't believe the book covers distributed file systems. For those, I highly recommend reading the research papers describing modern distributed file systems such as HDFS, Google's various storage systems and databases (such as Bigtable and Spanner), and Ceph, making sure to check the bibliographies and read the cited papers to get a better understanding of the background material. That's how I learned the basics of distributed file systems when I worked on a research project involving Ceph back when it was brand new.
- jcynix 5y agoProgramming Pearls and More Programming Pearls by Jon Bentley contain short articles "in the realm of insight and creativity." These articles appeared during the 80s in Communications of the ACM, but I think they are still mostly relevant and inspiring today. The second edition from 2000 is online available at https://archive.org/details/ProgrammingPearls2ndEditionJonBentley https://archive.org/details/ProgrammingPearls2ndEditionJonBe...
- bear8642 5y ago> the realm of insight Definitely helped understand in place quicksort and need to swap pivot value. For those still confused remember the invariants Start with:[????????????p?????], end with:[|<=p|p|>p|] Partition via:[p|<=p|???|>p] (pivot|less than or equal to pivot|untested values|greater than pivot). Giving: [|p|<=p|>p|] pivot|less than or equal pivot|greater than. This requires swapping pivot at end of partition step
- mixedCase 5y agoType-Driven Development with Idris. If you haven't delved into dependent typing before, you absolutely owe it to yourself.
- scruple 5y agoI think these meet the criteria... P. J. Plauger's "Programming on Purpose" series of essays. Purely Functional Data Structures by Chris Okasaki. I would put both of these alongside Bentley's "Programming Pearls" books which I saw mentioned in another comment.
- eatonphil 5y ago> Purely Functional Data Structures A classic! Good suggestion. I'm curious to check out Programming on Purpose.
- guilhermeasg 5y agoThe Feynman Lectures on Computation, Goedel's Proof, maybe Crafting Interpreters? I've been following the development of http://browser.engineering/ http://browser.engineering/ and it's so much fun to go through. Highly recommended! Mazes for Programmers is on my bookshelf. I've gone through the first few chapters coding along in Go and going on weird diversions. It's totally pointless, and I love it. There's also "The Ray Tracer Challenge" by the same author, which looks phenomenal.
- kazinator 5y agoThe psychology of Computer Programming, Gerald Weinberg, 1971.
- kazinator 5y agoI read this some quarter century ago. It was about a quarter century old then. It was a big influence. Prompted by this comment, I'm reading it again. Holy cow, this is better than I remembered. So relevant too; it's hard to keep in mind that this is from before Unix. The author was involved in numerous cognitive experiments with programmers, and also as a teacher. His group researched programming language development. So a lot of it is from that angle. The book is full of interesting anecdotes and gems of wisdom.
- kazinator 5y agoExcerpt from one of my favorite passages, Chapter 7, p. 136: To detect errors, the programmer must have a conniving mind, one that delights in uncovering flaws where beauty and perfection were once thought to lie. Perhaps a touch of paranoia helps---the kind of thinking that automatically conjures up the worst imaginable cases. For locating errors, however, we want a person who has the persistence of a mother-in-law and the collecting instincts of a pack rat. In one project, for instance, a bug in the operating system was known to exist for six months before it was finally tracked down by one programmer who had saved every dump taken in that period---three nine-foot stacks of paper! Late at night he could be found poring over his dumps---searching, groping, rummaging about for some slight clue that would have escaped the eye of a Sherlock Holmes. Months went by, and then, in one dump, a single bit which didn't seem quite right. Back he went through all the other dumps, until he had ferreted out two more cases, then five, then a dozen out of the hundreds. These twelve cases he arranged on a large table, first in one pattern, then another until some threads of connection became visible. By this time, his mind was so specialized to the cases at hand that it was fruitless for him to try to explain his hypothesis to anyone else. It seemed to him that one of the data channels---when certain conditions were just right---was picking up a bit in one of the positions of its address register, thus causing a single character to be stored out of its regular sequence. Since this error usually occurred in the middle of a large data block, the stray character was usually wiped out by subsequent characters in the block, but in a few cases---the twelve---the character was found just past the end of the block. He tried to convince the engineers, but they would not listen. Programmers always say that there are machine errors. So, finally, he constructed a program that would force the channel into just the right circumstances with an increased frequency. Then, when made the error occur with more regularity, he was able to define the circumstances with enough precision to find on the schematic exactly the circuit card that must be in error. The engineers were impressed with his diligence, so they finally granted him a test of the card---and found he was right! Such programming sleuths are not rewarded for their discoveries with the fame of a Pasteur or a Salk. Nonetheless, they are satisfied--beyond the comprehension of ordinary men---with the work itself.
- megameter 5y agoJ Paul Morrison "Flow-based Programming", while not really about documenting historical methods, got my head thinking about programming in terms of the pre-CPU paradigms of data processing with unit record machines, since that is what this style draws on most strongly. Along the same lines, while not a book, videos and documents about debugging electromechanical pinballs and modular analog synthesizers provide great reference points for what digital systems could look like or strive to emulate, and physical engineering, woodworking and construction decenter the computer as the whole of the process while still being very logical and systematic. At the top level it's usually finding the right structural metaphor that dogs practical programming and gets it into a loop of endless data collection and reprocessing, so it helps to have other things in mind and try to discern ultimate aims.
- James112 5y agoI have been looking for this. https://my-estub.fyi/ https://my-estub.fyi/
- James112 5y agoKeep sharing such. https://fmcdealer.site/ https://fmcdealer.site/
- defaultcompany 5y agoJust today my wife asked me if we could get rid of "The Magic Garden, Explained", since I never use it. I told her it's just one of those books I like knowing is there even if I never crack it open again. Highly impractical in that it is so out of date (historical at this point) and from what I remember very well put together. It was so eye opening when I read it to see the inner workings of SVR4 and how every little bit of information had it's neat little place.
- kamaal 5y agoTurtle Geometry, is a very interesting book: https://mitpress.mit.edu/books/turtle-geometry https://mitpress.mit.edu/books/turtle-geometry
- deleted 5y ago[deleted]