10 ms·
Ask HN: Good books on philosophy of engineering?
I am a software engineer by passion. I love computers, I am curious. I love to learn new things / concepts. I love to see the beauty in existing concepts being applied in completely unexpected ways, which makes you wonder that every boring thing has myriad of variations which are not obvious.
Through my college education & industry experience & curiosity, I have learned a lot. But, even after trying to search about books on the philosophy of engineering or the art / craft of engineering - I have fallen short.
I would love to hear what books / and projects that you have seen that have inspired you as an engineer & have provided you with your own philosophy of engineering.
I am talking about general "engineering" here, not just specifically "software engineering".
Requesting the universe to enlighten me :)
- crabmusket 3y agoThe Beginning of Infinity by David Deutsch is more broadly about science and epistemology, but I think it has a lot to say about how we do engineering.
- jpiburn 3y agoThe Design Of Everyday Things by Don Norman might be something of interest https://www.goodreads.com/en/book/show/840 https://www.goodreads.com/en/book/show/840
- Minor49er 3y agoSeconding this. It's an important book for all kinds of design I would also recommend "Clean Code: A Handbook of Agile Software Craftsmanship" by Robert C. Martin. It focuses on crafting higher quality code, which is the property of it not only running well, but being easy to understand and to work on
- NukedOne 3y agoI'm curious as to how you feel about this[1]? [1]: https://qntm.org/clean https://qntm.org/clean
- Minor49er 3y agoWhile the criticism is valid, I think it misses the points of the book. It's worth reading both but the book definitely has helpful perspectives that eclipse what's mentioned on that webpage
- jjice 3y agoI personally don't like Clean Code, but understand that a lot of people I respect do. I do want to throw Clean Architecture into the ring though since we're in the topic. That book is a top three software book for me. It made me understand why OO is a thing and what concepts I should pretty much always use from that ecosystem. The concept of interfaces (not just the programming construct, but the general idea) was massive and it changed my view on the testability of code. Martin has some other good stuff related to professionalism as a programmer. He has a few talks and The Clean Coder and those are absolutely worth it as well.
- lngnmn2 3y ago[dead]
- c6400sc 3y agoNormal Accidents and To Engineer is Human are two popular and great books.
- mezod 3y agoProbably not what you are asking for but thought they might be worth a look - https://www.goodreads.com/book/show/61899637-philosophy-of-computer-science https://www.goodreads.com/book/show/61899637-philosophy-of-c... - https://www.goodreads.com/book/show/60965426-the-creative-act https://www.goodreads.com/book/show/60965426-the-creative-ac... - https://www.goodreads.com/book/show/530415.The_Art_of_Doing_Science_and_Engineering https://www.goodreads.com/book/show/530415.The_Art_of_Doing_...
- jpiburn 3y agoI second Rick Rubins book
- throwaway888abc 3y agoTrying to stick to bellow as much as possible all the time: "Keep it simple, stupid!" https://en.wikipedia.org/wiki/KISS_principle https://en.wikipedia.org/wiki/KISS_principle The Basecamp's books are enjoyable, recommending https://basecamp.com/books/rework https://basecamp.com/books/rework
- mtillman 3y ago* The Art of Unix Programming * The Art of Computer Programming
- deleted 3y ago[deleted]
- hide1713 3y agoZen and the Art of Motorcycle Maintenance
- aristofun 3y agoI've never understood what engineers find in this book. It looks like a shallow kitchen philosophy of a guy next door to me. What you think is so good about this book for engineers, in a nutshell?
- hyggetrold 3y agoDid you read the whole book yourself or just skim it? (asking sincerely)
- detourdog 3y agoI read the book completely. The book was on a second year reading list for my industrial design department. I absorbed as an introduction to the philosophical aspects of quality. Quality is truly a tough concept if approached as a universal truth.
- hyggetrold 3y agoThat makes sense to me. I'm not sure how to articulate what I got out of that book exactly but I did enjoy it. Some of the more 'spiritual' books I find, the value of them doesn't really hit you until you're older or have had some tragic life experiences happen. Until then some of it can just make you feel "this is some vapid feel-good hippie crap." Not saying that was your reaction of course but it makes sense to me why you might not vibe with it if you read it in a university setting.
- aristofun 3y agoi've tried few times to fight through first several pages - it gets dead boring and meaningless right from beginning
- weyj4 3y agoI've just purchased Richard Hamming's "The Art of Doing Science and Engineering" but haven't read it all yet, it looks pretty great.
- hyggetrold 3y agoI read it last year and it is fantastic - super absolutely ultra highly recommend that everybody read it. Run, don't walk, towards this book!
- Tangurena2 3y agoIt is a great book, and it includes an amazing essay by him titled You and Your Research [0][1] - which explains why it is important to "always be learning". 0 - https://www.cs.virginia.edu/~robins/YouAndYourResearch.html https://www.cs.virginia.edu/~robins/YouAndYourResearch.html 1 - https://www.youtube.com/watch?v=e3msMuwqp-o https://www.youtube.com/watch?v=e3msMuwqp-o (lecture version)
- ignoramous 3y ago> [Richard Hamming's] You and Your Research Add Edsger Dijkstra's The Humble Programmer (1972 Turing Lecture) as a companion read for software engs: https://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340.html https://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340... / https://archive.is/U8GwX https://archive.is/U8GwX
- random3 3y agoIf you seek elightment, you seek truth. Look down towards foundations like physics, mathematics, logic and look back towards the past. It' smaybe check out the Computer History Museum. Read Feynman's (or about) books. "Surely you're joking, Mr Feynman" is light but profound. Max Tegmark's "Our Mathematical Universe" is great. "I am a strange loop" by Douglas Hofstadter will connect many dots. If you want to peek deeper - "Through two doors at once" describes experiments at the edge of our reality. "The singularity is near" is a good perspective that connects dots through time back many years to many in the future. These are just some incomplete starter points. It's deep, beautiful rabbit hole. Enjoy it.
- dankco 3y agoI like to recommend "Kill It With Fire" by Marianne Bellotti. It is full of insights far beyond managing legacy systems (as the subtitle would have you believe) and does a great job of analyzing the technology and the people/organizations who build it.
- deleted 3y ago[deleted]
- javiramos 3y agoThe Art of Doing Science and Engineering
- walterbell 3y agoThe Ancient Engineers by L. Sprague de Camp (1963), https://news.ycombinator.com/item?id=8158385 https://news.ycombinator.com/item?id=8158385
- max_ 3y agoLewis Mumford's Books; - Technics & Civilization - The Culture of Cities - The Story of Utopias Lewis Mumford talks about technology, but from an anthropological pint of view. Another book I would recommend is The Nature of Technology by Brian Arthur The other I would recommend is James Burk's Connections he's has some books but I but the documentary is highly recommended.
- gooseyard 3y agoSimon Winchester's "The Perfectionists" is worth reading
- ics 3y agoI enjoyed Engineering and the Mind's Eye by Eugene Ferguson https://mitpress.mit.edu/9780262560788/engineering-and-the-minds-eye/ https://mitpress.mit.edu/9780262560788/engineering-and-the-m...
- nshunter 3y agoCame here looking for this one to be mentioned
- stared 3y agoTao Te Ching, seriously There is a lot of emphasis on simplicity and that things are the best when they work seamlessly. Chapter 17, from the translation by Derek Lin, which I wholeheartedly recommend: The highest rulers, people do not know they have them The next level, people love them and praise them The next level, people fear them The next level, people despise them
- drannex 3y agoAnd if you want something a bit more relaxed and updated, The Dude De Ching[1], is quite good. It's a rewrite based around the core concepts of Dudeism, a fan-made spiritual practice based on the character "The Dude" from The Big Lebowski. > The rug is a fabrication which ties our ruminations together. 1. https://dudeism.com/thedudedeching/ https://dudeism.com/thedudedeching/ Edit: There is an online version available as well, https://aui.me/text/the-dude-de-ching/ https://aui.me/text/the-dude-de-ching/
- hyggetrold 3y agoAnother great translation is by Witter Bynner - the book is titled The Way of Life rather than Tao Te Ching.
- morelisp 3y agoDiscussed most recently/productively here at https://news.ycombinator.com/item?id=37686713 https://news.ycombinator.com/item?id=37686713 I think.
- stared 3y agoThis very thread inspired me to read not only this book, but also this particular translation.
- therealmocker 3y agoRead through the thread and didn't see references to the translation by Derek Lin, could you point to why you selected that version?
- Cloudly 3y agoI would recommend "The Things We Make" for an outlook into engineering mindsets through history. A good reminder that a lot of useful engineering comes before the theory can fully explain it :) https://www.goodreads.com/en/book/show/75598048 https://www.goodreads.com/en/book/show/75598048
- drannex 3y agoI can't understate just how great "Waking Up: Overcoming the Obstacles to Human Potential" by Charles Tart (2001) is. It's a cross between engineering and the spirituality (although I argue, it's more on the philosophy and psychoanalysis of engineering than spiritual). I wrote a (short) review on the book directly after reading it here[1]. I've since reread the book, and while some of my opinions on it are the same, some I understand the nuance much more in context of the rest of the book, I need to update it. 1. https://macleodsawyer.com/books/waking-up/ https://macleodsawyer.com/books/waking-up/
- kjqgqkejbfefn 3y agoHeidegger's https://en.wikipedia.org/wiki/The_Question_Concerning_Technology https://en.wikipedia.org/wiki/The_Question_Concerning_Techno...
- DanielBMarkham 3y agoI wrote one which I do not promote, but I dropped by the forum and you asked. https://leanpub.com/info-ops/c/LeanpubWeeklySale2024Jan19 https://leanpub.com/info-ops/c/LeanpubWeeklySale2024Jan19 Note: Book 2 is more code-centric, with active strategies to minimize solution complexity. This book is all about how to minimize to-do list complexity and tracking (which arguably is more important)
- mcbishop 3y agoA Philosophy of Software Design by John Ousterhout. The principles / approaches (e.g. problem disaggregation) apply to other engineering disciplines.
- jdelacueva 3y agoAnything written by Langdon Winner https://en.wikipedia.org/wiki/Langdon_Winner https://en.wikipedia.org/wiki/Langdon_Winner I would begin with "Do Artifacts Have Politics?" and continue with "Autonomous Technology: Technics-out-of-Control as a Theme in Political Thought", M.I.T. Press, 1977.
- DyslexicAtheist 3y agoA city is not a tree. It is more about the limits of systems thinking. Must read for Smart-City IoT but applies to anything where you might think Tech is an easy fix to some social problem: http://worrydream.com/refs/Alexander%20-%20A%20City%20Is%20Not%20A%20Tree.pdf http://worrydream.com/refs/Alexander%20-%20A%20City%20Is%20N...
- hyggetrold 3y agoYes! Christopher Alexander is a must-read for engineers. Notes on the Synthesis of Form is also very excellent.
- jonjacky 3y agoDon't overlook books that are critical of engineering as it is often practiced and how it fits into our society: Computer Power and Human Reason by Joseph Weizenbaum (1976). Weizenbaum wrote Eliza, the first AI chatbot, almost sixty years ago and was appalled at the reception. This book is still very pertinent, especially the Introduction, Chapter 1 On Tools, chapter 9, Incomprehensible Programs, and chapter 10, Against the Imperialism of Instrumental Reason. Chapter 4, Science and the Compulsive Programmer, is one of the first written accounts of the hacker culture. Weizenbaum's original paper on Eliza (1966) [0] is still very pertinent to the present generation of chatbots, especially the introduction and discussion. Tools for Conviviality, Ivan Illich (1973) [1]. Influenced recent work by the computer scientists Steven Kell [2],[3] and Kartik Agaram [4]. Computation and Human Experience, Phil Agre (1997) (excerpt at [5]). Agre got a PhD in AI at MIT in the 80s and 90s and became very critical of the field. I think his shorter writings [6][7] are a better introduction, especially the personal memoir at [6]: "about how I became (relatively speaking, and in a small way) a better person through philosophy." 0. https://dl.acm.org/doi/10.1145/365153.365168 https://dl.acm.org/doi/10.1145/365153.365168 1. http://akkartik.name/illich.pdf http://akkartik.name/illich.pdf 2. https://www.humprog.org/~stephen//research/talks/kell19de-escalating-intro-script.txt https://www.humprog.org/~stephen//research/talks/kell19de-es... 3. https://www.humprog.org/~stephen//research/talks/kell19software-slides.pdf https://www.humprog.org/~stephen//research/talks/kell19softw... 4. http://akkartik.name/akkartik-convivial-20200607.pdf http://akkartik.name/akkartik-convivial-20200607.pdf 5. https://pages.gseis.ucla.edu/faculty/agre/che-intro.html https://pages.gseis.ucla.edu/faculty/agre/che-intro.html 6. https://pages.gseis.ucla.edu/faculty/agre/notes/00-7-12.html https://pages.gseis.ucla.edu/faculty/agre/notes/00-7-12.html 7. https://pages.gseis.ucla.edu/faculty/agre/critical.html https://pages.gseis.ucla.edu/faculty/agre/critical.html
- undershirt 3y agoI’ll second this. A philosophy for engineering is nestled I think in the larger “philosophy of technology”, but this field of philosophy has traditionally been a lot more critical of technology than most of us can stomach today. This is a really good map of the field that not many know about, written in 1995: https://shaunlebron.github.io/chandler-1995.pdf https://shaunlebron.github.io/chandler-1995.pdf
- morelisp 3y agoAramis, or the Love of Technology.
- buildsjets 3y agoSystemantics, AKA "The Systems Bible: The Beginner's Guide to Systems Large and Small" by John Gall. It is offered from the perspective of how not to design systems, based on system engineering failures. The primary precept of the treatise is that large complex systems are extremely difficult to design correctly despite best intentions, so care must be taken to design smaller, less-complex systems and to do so with incremental functionality based on close and continual touch with user needs and measures of effectiveness. https://en.wikipedia.org/wiki/Systemantics https://en.wikipedia.org/wiki/Systemantics
- wenc 3y ago“The effective engineer” by Edmond Lau is a good book for the IC software engineer working in an engineering organization. The most influential content on engineering in my life is not in a book but a YouTube talk entitled How Complex Systems Fail by Richard Cook, which is about designing resilient systems. I’ve applied these ideas to many aspects of life, not just engineering.
- shagie 3y agoPhilosophy of Computer Science: An Introduction to the Issues and the Literature by William J. Rapaport - ( https://www.apaonline.org/news/254862/William-Rapaport-is-the-2015-Barwise-Prize-winner.htm https://www.apaonline.org/news/254862/William-Rapaport-is-th... ) > The APA is pleased to announce that William Rapaport (University at Buffalo) has been selected by the APA committee on philosophy and computers as the winner of the 2015 Barwise Prize! This corresponds to the class https://cse.buffalo.edu/~rapaport/510.html https://cse.buffalo.edu/~rapaport/510.html https://hn.algolia.com/?dateRange=all&page=0&prefix=true&query=Rapaport&sort=byPopularity&type=story https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que... The table of contents can be read at https://www.wiley.com/en-us/Philosophy+of+Computer+Science%3A+An+Introduction+to+the+Issues+and+the+Literature-p-9781119891901 https://www.wiley.com/en-us/Philosophy+of+Computer+Science%3... You are likely interested in sections 3.12 through 3.18 3.12 CS as Engineering 64 3.13 Science xor Engineering? 66 3.14 CS as “Both” 66 3.15 CS as “More” 68 3.15.1 CS as a New Kind of Science 68 3.15.2 CS as a New Kind of Engineering 70 3.16 CS as “Neither” 71 3.16.1 CS as Art 71 3.16.2 CS as the Study of Complexity 71 3.16.3 CS as the Philosophy(!) of Procedures 72 3.16.4 CS as Computational Thinking 72 3.16.5 CS as AI 73 3.16.6 Is CS Magic? 74 3.17 Summary 76 3.18 Questions for the Reader 77 And section 5 which starts out with: 5 Engineering 95 5.1 Defining ‘Engineering’ 95 5.2 Engineering as Science 97 5.3 A Brief History of Engineering 98 5.4 Conceptions of Engineering 99 5.5 What Engineers Do 100
- kaycebasques 3y agoCoincidentally I just started reading Engineering: A Very Short Introduction by David Blockley. I was very excited after the first chapter: it has a lot of profound ideas about engineering at large. Did you know that "engineer" does not derive from "someone who cares for Industrial Revolution era engines" but rather stems from a Latin / old French word for "ingenious"?? The second chapter feels a bit thrown together; i.e. the author seems to struggle a bit to unite all the events coherently. I think it's safe to say however that this book will give a broad overview of the long-term historical trends in the discipline, which is foundational for any type of philosophical understanding. P.S. I love the VSI series. Fits in my back pocket and usually gives a satisfying overview of a discipline. I always get a few fascinating ideas from every book. I've read probably 20 from the series at this point.
- deleted 3y ago[deleted]
- kesavvaranasi 3y agoFor software engineering, I recommend A Philosophy of Software Design. It has principles that I think translate well to other engineering fields. For engineering in general: To Engineer is Human - Henry Petroski The Art of Doing Science and Engineering - Richard Hamming Structures: Or Why Things Don't Fall Down - J.E. Gordon
- ChicagoBoy11 3y agoNot totally what you are looking for, but I'd highlghly recommend "Apollo" by Murray and Cox. It focuses on the engineering history of the Apollo program, and it is a superbly well written and researched worked and so many of the stories are about engineering philosophy that I think it'll really be worth your while.
- roarcher 3y agoIn a similar vein, there's "Skunk Works" by Ben Rich and Leo Janos, which covers the development of the U-2, F-117, and SR-17 aircraft. Not about the philosophy of engineering per se, but it's a great perspective into how problems were solved in a very unique program with extreme goals, before modern computer-aided tools.
- pjmorris 3y agoSeconded, phenomenal book and suggestion. IMO in a similar vein is 'The Making of the Atomic Bomb', Richard Rhodes, another industry- and world-reshaping project.
- philip1209 3y agoI recommend Shop Class as Soulcraft, which contrasts blue-collar work (motorcycle repair) with knowledge work. It's not specifically "tech"-related, but it does a good job of exploring how corporatization has diminished the ability to be a craftsperson in modern careers.
- trentnix 3y ago+1 I thought Shop Class as Soulcraft was excellent and found the author's theories on the lack of job and life satisfaction among those doing "knowledge work" compelling. It reminded me of the movie Margin Call when Kevin Spacey's character, who manages a trading floor for a wall street investment firm, laments that if he'd been a ditch digger, at least he'd have a bunch of holes left behind as evidence he accomplished something.
- Pamar 3y agoYou can get an overview of "Shop Class as Soulcraft" here: https://news.ycombinator.com/item?id=8280379 https://news.ycombinator.com/item?id=8280379
- jsf01 3y agoRichard Hamming’s The Art of Doing Science and Engineering is one that’s really shaped my philosophy on CS. It pushes for the importance of reasoning from first principles, experimentation, and taking on extraordinary work. There’s also a fascinating and prescient section on AI and the limits of computers and how we think about them. Stripe Press makes a nicely bound hardcover edition of the book, too: https://press.stripe.com/the-art-of-doing-science-and-engineering https://press.stripe.com/the-art-of-doing-science-and-engine... Heartily recommend!
- bgnn 3y agoOh Hamming is amazing to read! His "the art of probability" too is an amazing read. As the title says, he explains why probability isn't math but an art and philosophy!
- pcvarmint 3y agoThat was the one I was going to recommend. https://www.youtube.com/watch?v=AD4b-52jtos https://www.youtube.com/watch?v=AD4b-52jtos
- demondemidi 3y agoI read this and I was really surprised by how dismissive he was of his peers! Like it was almost catty. Great book tho.
- s3micolon0 3y agoI am so happy to get all these responses! All of the resources look interesting!! I am going to start with Richard Hamming's The Art of Doing Science & Engineering. It looks to be something to get started. I have been wondering this question ever since, I wish I had reached out to request help earlier. I am glad I did, nonetheless. I am 26, hope there is a lot more to learn, apply & build. I am grateful to the universe (and the internet/hackernews). Thank you :)
- saintblasphemer 3y agoThe Sciences of the Artificial by Herbert A. Simon. Absolutely foundational.
- matesitox 3y agoThe Things We Make by Bill Hammack
- matesitox 3y agoThe Things We Make by Bill Hammack Changed my way of understanding what engineering is. Read the chaoter on designing cathedrals without math, science or modelling.
- NegatioN 3y agoI'm not sure if these books really are what you're looking for, because each of them is a mix of engineering history, and the description of how a group of people end up doing amazing things. In each of the books, there were nuggets of wisdom that I've tried to bring along with me in my job (as best I can). Like: - Doing things as simply as possible to start off - Keeping iteration time to a minimum, for maximum exploration of ideas - Being willing to think outside the box My takeaways above, hardly do these books justice, but they are as follows: - Skunk Works: A Personal Memoir of My Years at Lockheed [0] - Hackers: Heroes of the Computer Revolution. [1] - The Dream Machine: J.C.R. Licklider and the Revolution That Made Computing Personal [2] [0]: https://www.goodreads.com/book/show/101438.Skunk_Works https://www.goodreads.com/book/show/101438.Skunk_Works [1]: https://www.goodreads.com/book/show/56829.Hackers https://www.goodreads.com/book/show/56829.Hackers [2]: https://www.goodreads.com/book/show/722412.The_Dream_Machine https://www.goodreads.com/book/show/722412.The_Dream_Machine
- dstroot 3y ago+1 for Skunk Works. Great story, well written and the engineering challenges they overcame were astounding.
- a_c 3y agoThe Secret of Our Success: How Culture Is Driving Human Evolution, Domesticating Our Species, and Making Us Smarter Engineers (and scientists) often boast ourselves as master of causality. We solve problem by understanding the domain. We laugh people as cargo-culting - not knowing why one does things. The Secret of Our Success shows it is a feature rather than a bug. The effect of "culture" takes much longer to manifest, often beyond our comprehension. One example given by the book is how we process cassava, lots of superfluous ritual. Without those processing culture, people get poisoned slowly. Only with modern chemistry do we comprehend the full extend of those ritual. But people have been eating cassava way before modern science were available. Similar can be said about medicine, lots of folk remedies don't work. But when they do, they do. Is not understanding a feature or a bug? With the advent of LLM, things seem to come in full cycle. We now prompt the engine and get a result/an opinion of sort. No longer is understanding required. I see the use of LLM in software engineering very anti-engineering, hindrance to learning and understanding. But it might not be a bug after all.
- R41 3y agoI recommend Marvin Minisckys society of minds book. He was one of founding fathers of AI tech, the book tells lot about human mind an Interesting read.
- RyanHamilton 3y agoI can recommend a Philosophy of Software Design Paperback by John Ousterhout. I've been programming for 15 years and it closely parallels my own current beliefs about programming. He stands above the lower aspects of programming/code/modules, raising the discussion to a conceptual level, that you seem to be wanting. I think there were only 2 areas out of approximately 10 that I thought I had a few better ideas but a)He may have simplifying it to more easily allow explanation. b) His explanations are much better than mine and if I tried to explain it, maybe I'd fail.
- computerdork 3y agoHaven't read this, but based on looking through the table of contents (so take what I'm saying with a grain of salt), I agree with your choice. You mentioned that you've been programming for awhile, you might have heard of Grady Booch and "Object-Oriented Analysis and Design with Applications." Object oriented techniques has fallen a little out of fashion now, which may be part of the reason why this book isn't as popular, but it was big around 20 years ago. It also discusses on the many topics of your choice: - Complexity, what it is and how to manage it - Encapsulation (Information Hiding). - Interfaces - contracts for your encapsulated code - Abstraction And am certain that Grady Booch's book was itself mostly based on older material. I also really like any really good book on doing requirements (they all have 80% of the same info). Getting the true needs of all your stakeholders (your users, the business people, the devs themselves, and the technical needs of the system) is probably the step that is done the poorest in most organizations, and the one that could save project the most time and money if done well.
- ducharmdev 3y agoI was about to recommend the same book - lots of good nuggets of wisdom in here, without the dogma you sometimes find in this kind of literature.
- ATMLOTTOBEER 3y agoHis idea to keep interfaces small and powerful bothered me - I don’t think it expresses any truth about programming despite being a good rule of thumb. I kept feeling frustrated while reading. The lambda calculus has the best interface to functionality ratio possible but you don’t see humans using it to program. This objection led me to the conclusion that a better heuristic would be: programs should try to communicate intent primarily to another reader, and then to the computer. He does touch on this a little by saying aim for ease of reading over ease of writing, but I don’t think it was a main point. I agreed with almost everything else he had to say including the “taking it too far” chapter (I don’t actually think we should be using lambda calculus to program lol). Curious to know which parts you disagreed with. I am only 2yoe
- yourcelf 3y agoIt may be a bit more zoomed out than what you're looking for if you're specifically looking at philosophical treatments of the practice of engineering, but Andrew Feenberg's "Questioning Technology" is excellent introduction to the philosophy of technology, particularly exploring the interplay between technological constraint and political/economic/social drivers of its development. "Philosophy of Technology" in general is a pretty rich field with a long history, and you might find more references in it than in engineering specifically.
- MPSimmons 3y agoRisk Society by Ulrich Beck is one that I enjoyed. Make sure to get it used; the new prices are crazy https://www.amazon.com/Risk-Society-Modernity-Published-association/dp/0803983468 https://www.amazon.com/Risk-Society-Modernity-Published-asso...
- waingake 3y agoZen and the art of motorcycle maintenance
- pjmorris 3y agoA couple favorites that haven't been mentioned: 'An Introduction to General Systems Thinking', Weinberg, and he's got a dozen more worthwhile books behind it. 'The Logic of Failure: Recognizing and Avoiding Error in Complex Situations', Dietrich Dorner
- pixelmonkey 3y agoI love your passion! When I was CTO of a software startup, I wrote a blog post reviewing various books about engineering and software teams, neatly organized into six sections. The three sections that you might find interesting, each featuring a few relevant books: - Debugging dysfunctional product cultures: https://amontalenti.com/2020/11/28/definitive-reading-list#debugging https://amontalenti.com/2020/11/28/definitive-reading-list#d... - The psychology of deep work: https://amontalenti.com/2020/11/28/definitive-reading-list#psychology https://amontalenti.com/2020/11/28/definitive-reading-list#p... - Programmer mindset and philosophy: https://amontalenti.com/2020/11/28/definitive-reading-list#philosophy https://amontalenti.com/2020/11/28/definitive-reading-list#p...
- robto 3y agoThey say naming is one of the hard problems of computer science, but there's not much concrete work addressing it. I'd recommend Elements of Clojure[0]. Don't be fooled by the title, it's not really about Clojure, it just uses Clojure as an illustration as it discusses a very subtle general problem. From the website: > The first chapter, Names, explains why names define the structure of our software, and how to judge whether a name is any good. > The second chapter, Idioms, provides specific, syntactic advice for writing Clojure which is clean and readable. > The third chapter, Indirection, looks at how code can be made simpler and more robust through separation. > The final chapter, Composition, explores how the constituent pieces of our code can be combined into an effective whole. I find it a thoughtful and considerate overview of an area that everybody has some implicit knowledge of, and something that leads to a more abstract concept of quality. [0]https://elementsofclojure.com/ https://elementsofclojure.com/
- Loic 3y agoIn How to Build Impossible Things, Ellison tells the story of his unconventional education in the world of architecture and design, and how he learned the satisfaction and joy that comes from doing something well for a long time. https://www.penguin.co.uk/books/447751/how-to-build-impossible-things-by-ellison-mark/9781529151633 https://www.penguin.co.uk/books/447751/how-to-build-impossib... Enjoyable, not a philosophy of engineering but philosophy with engineering.
- JojoFatsani 3y agoThe Phoenix Project.
- nikhilsimha 3y agocannot recommend sicp enough: https://mitp-content-server.mit.edu/books/content/sectbyfn/books_pres_0/6515/sicp.zip/full-text/book/book.html https://mitp-content-server.mit.edu/books/content/sectbyfn/b... uses scheme to illustrate how to think about computation abstractly.
- troupe 3y agoTwo books that did for me what I think you are looking for: - From Mathematics to Generic Programming by Stepanov & Rose - Gödel, Escher, Bach: an Eternal Golden Braid by Hofstadter - The Little Schemer / The Seasoned Schemer
- tracerbulletx 3y agoI enjoyed The Art of Doing Science and Engineering: Learning to Learn by Richard Hamming a lot. https://www.amazon.com/Art-Doing-Science-Engineering-Learning/dp/1732265178 https://www.amazon.com/Art-Doing-Science-Engineering-Learnin...
- rjrodger 3y agoYou did say philosophy of engineering, right? Look no further than “The Specialist” by Charles Sale “YOU'VE heard a lot of pratin' and prattlin' about this bein' the age of specialization. I'm a carpenter by trade. At one time I could of built a house, barn, church, or chicken coop. But I seen the need of a specialist in my line, so I studied her. I got her, she's mine. Gentlemen, you are face to face with the champion privybuilder of Sangamon County.” Sometimes the best books are also the shortest. https://www.toiletrevolution.com/wp-content/uploads/The-Specialist-by-Charles-Sale.pdf https://www.toiletrevolution.com/wp-content/uploads/The-Spec...
- I_complete_me 3y agoThank you so much for that. It is wonderful. So therefore you must be. I am from Ireland and the whole sense of it resonates with me; the soft humour, the self-confidence, the sheer loveliness of his outlook, the different times. And the beautiful "nartural" language used is a joy. Cheers.
- bitzun 3y agoI found an small old copy of The Specialist without any attribution in a junk shop a few years ago and went down a short research rabbit hole about Chic Sale. Thanks for the reminder!
- rmk 3y agoThat was a great read! Thank you for posting this gem.
- Ezku 3y agoThis book is probably about a very different kind of ”engineering” than what you had in mind, but it’s been highly influential to my thinking: “The Social Construction of Reality: A Treatise in the Sociology of Knowledge.” Berger & Luckmann 1966. Perhaps the core insight to me is that not only does every practice of engineering exist as embedded in the context of a socially constructed reality, but the practice of engineering itself also fundamentally involves the continual construction of such realities. In other words, for a software engineer to be able to do their job, they must among other things be a kind of applied social epistemologist. I expect this framing doesn’t make much sense to many readers — I’m hoping the following articles might serve to illustrate: “Programming as Theory Building.” Peter Naur, Microprocessing and Microprogramming 1985 (https://doi.org/10.1016/0165-6074(85)90032-8 https://doi.org/10.1016/0165-6074(85)90032-8) > … suggests that programming properly should be regarded as an activity by which the programmers form or achieve a certain kind of insight, a theory, of the matters at hand. This suggestion is in contrast to what appears to be a more common notion, that programming should be regarded as a production of a program and certain other texts. “Interpretation, Interaction and Reality Construction in Software Engineering: An Explanatory Model.” Kari Rönkkö, Information and Software Technology 2007 (https://doi.org/10.1016/j.infsof.2007.02.014 https://doi.org/10.1016/j.infsof.2007.02.014) > Floyd’s paper Outline of a Paradigm Change in Software Engineering requested that we move from a product oriented paradigm to a process oriented paradigm. > Naur’s paper Programming as Theory Building made it painfully clear to us that exemplary resources in the form of material and available support are not enough when modifying others’ programs. In fact, if Floyd’s claims had been taken seriously by the software developers in Naur’s study, and if the same developers had access to an explanatory model … their difficulties could have been both anticipated and prevented. > This article … explains from a natural language point of view, how interpretation takes place, and discusses the consequences of this in relation to interaction and reality construction in software engineering practice.
- HeyLaughingBoy 3y agoSafeware by Nancy Leveson.
- softwaredoug 3y agoNobody has mentioned the “Do Committees invent” paper by Melvin Conway. It’s the origin of Conway law, but the actual paper is way deeper than that https://www.melconway.com/Home/Committees_Paper.html https://www.melconway.com/Home/Committees_Paper.html
- alfiedotwtf 3y agoIf you want the philosophical approach to the way to do things on Unix systems, you can’t beat “The Art of Unix Programming” by ESR. That book flipped my whole understanding of the way to write code more than any other book.
- Fromusonia 3y ago“The unwritten laws of engineering” https://www.asme.org/publications-submissions/books/find-book/unwritten-laws-engineering-second-edition/print-on-demand-books https://www.asme.org/publications-submissions/books/find-boo...
- mlvljr 3y ago[dead]
- 3abiton 3y agoThanks for this thrrad OP! Lots of great recommendations for the rest of us
- lambdaphagy 3y agoFlorman's _The Existential Pleasures of Engineering_.
- aaron695 3y ago[dead]
- __loam 3y agoTo Engineer is Human by Petroski. It's about engineering failures and responsibility.
- archi42 3y agoIn the ethics department I enjoyed "The Cambridge Handbook of Information and Computer Ethics" (978-0521888981). We read part of it for a ethics lecture during my M.Sc., and like most ethics/philosophy piece I found a lot of things to think about. IIRC chapters are contributed by different authors, so it's not a single point of view (even though of course there is some filtering by the editor). Since it's from 2010 it is light on more recent developments like AI, however (unlike software) it's rare for ethic ideas to become outdated. So I would not dismiss it due to age. Also it's 5$ used on Amazon, so depending on your situation it's not a huge deal to get it and skim it - IMHO this kind of work doesn't have to be read front to back, instead it's great to get back to it when you feel like and think about a few pages and explore new ideas, re-evaluate your own concepts, etc. Description from the publisher: "The Cambridge Handbook of Information and Computer Ethics, first published in 2010, provides an ambitious and authoritative introduction to the field, with discussions of a range of topics including privacy, ownership, freedom of speech, responsibility, technological determinism, the digital divide, and online pornography." Editorial reviews stolen from Amazon: "...This five-part work examines difficulties in the field of information ethics and offers practical applications and criticisms... Recommended..." --B. G. Turner, Faulkner University, CHOICE "...This is a rich and fascinating book, bringing to interpretative debates much that has been hitherto unknown. The chapters are long and complex, and the argument is multidimensional and far-reaching." --George Lăzăroiu, PhD, Institute of Interdisciplinary Studies in Humanities and Social Sciences, New York, Contemporary Readings in Law and Social Justice
- yair99dd 3y agoTo engineer is human by Henry Petroski [1982]. The short film of this is also great
- efortis 3y agoFrom Code Complete 2nd edition: "Engineers in every discipline learn the limits of the tools and materials they work with. If you’re an electrical engineer, you know the conductivity of various metals and a hundred ways to use a voltmeter. If you’re a structural engineer, you know the load-bearing properties of wood, concrete, and steel. "If you’re a software engineer, your basic building material is human intellect and your primary tool is you." Page 819
- ctrlp 3y agoSamuel Florman wrote some interesting books reflecting on engineering and the humanities The Civilized Engineer The Introspective Engineer The Existential Pleasures of Engineering A few others I haven't read
- atrettel 3y agoI recommend reading What Engineers Know and How They Know It by Walter Vincenti [1]. The book is directed towards mechanical and aerospace engineers, but discusses the philosophy and epistemology of engineering as a discipline via several case studies. A major topic of the book is the idea that engineering is not just "applied science" and does not necessarily need to use the scientific method (kinda summarized in the saying "it's not stupid if it works" in my opinion). The book analyzes several case studies to break apart the engineering process from the drawing board and through the production phase, and sometimes in multiple iterations back and forth even. [1] https://en.wikipedia.org/wiki/What_Engineers_Know_and_How_They_Know_It https://en.wikipedia.org/wiki/What_Engineers_Know_and_How_Th...
- iancmceachern 3y agoThe Introspective Engineer The Intentional Engineer
- demondemidi 3y agoAgainst Method by Paul Feyeraband Critical Path by buckminster fuller
- koliber 3y agoThe Timeless Way of Building, by Christopher Alexander. It’s about designing houses, and in a more general sense spaces for people. There is a powerful philosophy that he conveys in this book which applies to software engineering as well. Some notes of caution though. The book is not an easy read. It’s also not very direct and quite philosophical. Also, don’t try to reduce it to just software patterns. There is a lot more in there about a sense of beauty, quality, and essence which people miss when they mechanically reduce the message to the patterns.
- timka 3y agoCrawl-Space Computing by Lawrence J. Dickson [1] Posting it here since the author has kindly allowed me to share this file with my colleagues in order to familiarize them with the ideas laid out in the book. Also, seems like the paper version is no longer available on Amazon, so I don't see any other way. Especially since the author's goal was to leave a heritage. [1] http://pros.to/wide.pdf http://pros.to/wide.pdf
- Momentusdot 3y agoI really enjoyed ‘Structures: or why things don’t fall down’ by J.E Gordon. https://www.amazon.com/Structures-Things-Dont-Fall-Down/dp/0306812835?nodl=1&dplnkId=385a642c-c1c5-47b6-92ee-3848aab55dcd https://www.amazon.com/Structures-Things-Dont-Fall-Down/dp/0...
- lovestaco 3y agohttps://www.amazon.com/Never-Ending-Challenge-Engineering-Admiral-Rickover/dp/0894485776 https://www.amazon.com/Never-Ending-Challenge-Engineering-Ad...
- atomicnature 3y agoEssay: Rickover's "Doing a job" - https://govleaders.org/rickover.htm https://govleaders.org/rickover.htm Books: - Rickover's "The Never-Ending Challenge of Engineering" - Taichi Ohno's "WorkPlace Management"
- shagie 3y ago(Yep, revisiting an older post) Is Software Engineering Real Engineering? • Hillel Wayne • GOTO 2023 was published within the last few hours https://youtu.be/6pO7jT794uc https://youtu.be/6pO7jT794uc It's not a book, but it's a place to go to lead to things to continue the search.