5 ms·
I have fond memories of attending his "No Silver Bullet" lecture only a few short years ago. A favorite quote of mine from MMM: "The programmer, like the poet,
by rychco 4y ago
I have fond memories of attending his "No Silver Bullet" lecture only a few short years ago.
A favorite quote of mine from MMM: "The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures...."
- thundergolfer 4y ago“Castles in the air” was an inspiring quote to read as an undergrad, and helped me recognize programming as my vocation. I have a beautiful Docubyte print of the IBM-360 in my room, as a reminder of the great endowment that is our computing past. Well done to Brooks on a remarkable life’s work.
- lolinder 4y agoThe quote is worth reading in full, available here [0]. Brooks captured so perfectly my own experience programming. Sometimes the job is boring and hard, but then there are the moments that are pure magic: > Yet the program construct, unlike the poet's words, is real in the sense that in moves and works, producing visible outputs seperate from the construct itself. It prints results, draws pictures, produces sounds, moves arms. The magic of myth and legend has come true in our time. One types the correct incantation on the keyboard, and a display screen comes to life, showing things that never were nor could be. [0] https://pages.cs.wisc.edu/~param/quotes/man-month.html https://pages.cs.wisc.edu/~param/quotes/man-month.html
- Agingcoder 4y agoI came here to mention this quote. I bought the book years ago when I was on my 'let' s learn everything I can about computers and software ' spree. Very few books have left such a lasting impression on me, even though at the time I had no notion whatsoever of what professional software engineering was like.
- pjmorris 4y agoI read that section of MMM during a down time in my early career where I was doubting my choice of programming as a career because of my limitations. It buoyed my spirits enough that I decided to stick with it and I am glad I did. I owe a great personal debt to Brooks.
- zelphirkalt 4y ago"No silver bullet" in itself must be one of the most misused or misunderstood phrases used by people to argue not to try better ways of doing things. If one suggests, that there is a safer or somehow better tool to get the job done ... no silver bullet! Your tool is not perfect for everything in the universe, so we will not even use it where it works significantly better!
- WesolyKubeczek 4y agoThe thought that there is no ultimate perfect way to do things is liberating, if anything. It means that we can pick something we deem good enough and roll with it, or we can try and find an infinity of other good enough ways with acceptable tradeoffs, instead of searching for that end all, be all holy grail. Or we can stop trying at some point, because of diminishing returns. It's all okay. The important thing is not to worry that what we have is merely good, because the perfect might be waiting around the corner. It's not.
- kaba0 4y agoAlso, the most important part of that quote is that due to there not being “free lunch” productivity boosts, we really should focus on reusing existing libraries, “standing on the shoulder of giants”, not reinventing the wheel for each platform/language.
- zelphirkalt 4y ago"no free lunch" and "standing on ..." are 2 ideas, which are also being misused by people in at least 2 ways: One is to block, basically saying: "But no free lunch! Somewhere there must be a cost, because someone else once said no free lunch!", while it is very possible, that one has done something in a way, which was silly from the start and really could have a "free lunch", by switching to a better way of doing it. The other "standing on the shoulders of giants" is used as justification for accumulating more and more dependencies and not writing stuff oneself, no matter how simple, which is how we get into left-pad-like territory. We should indeed focus on reusing libraries, but please, _good_ libraries and not ones, which impose limitations in implementation as well as future thinking, by creating a high mental barrier to change ("But if we switch out this library we need to change aaalll this stuff, because our code is adapted to how the library works."). Sometimes adding a dependency is simply not worth it, like in the left-pad scenario. Just write that one function yourself and don't add more dependencies to the project. Always weigh the benefit against the additional load of dependencies added directly or indirectly as dependencies of dependencies.
- shever73 4y agoOne of my favourites too. I use this with my students all the time to capture the magic of programming.
- oblio 4y ago> Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures. Yeah, and then you have the core banking system tied with scotch tape and bubble gum in the 1950s, that drives a business worth tens of billions of dollars and for which a modern rewrite would probably cost a billion dollars. And then you realize some pieces of software are harder than a mountain made of titanium.
- croes 4y agoThe poet's words have a longer copyright.
- criddell 4y agoA longer copyright, but no patent protection.