A Philosophy of Software Design: Book Review and Verdict

Is the book, A Philosophy of Software Design by John Ousterhout any good? Review from a software engineer and engineering manager.
Note that none of the below links are affiliate links or sponsored. See my ethics statement on the lack of such links: blog.pragmaticengineer.com/et...
Get the book: www.amazon.com/dp/1732102201 (note: ebook is actually available on Kindle: my bad for not checking!)
My longer book review: blog.pragmaticengineer.com/a-...
My article on why software architecture is overrated: blog.pragmaticengineer.com/so...
All my book recommendations on software engineering (and engineering management): blog.pragmaticengineer.com/my...
Connect with me on other platforms:
- Twitter: / gergelyorosz
- LinkedIn: / gergelyorosz
- Newsletter on software engineering: blog.pragmaticengineer.com/ne...
Books I've written (and am writing):
- Software engineering resumes: thetechresume.com/
- Building Mobile Apps at Scale: mobileatscale.com/
- The Software Engineer's Guidebook: www.engguidebook.com/
- All books: blog.pragmaticengineer.com/bo...

Пікірлер: 30

  • @jeffhuber5804
    @jeffhuber58043 жыл бұрын

    Dr. Ousterhout is amazing. You missed stating his most significant accomplishment. He developed the Tcl embeddable programming language as well as Tk widget toolkit in the late 80s. Those have had massive influences. Tcl is just like the book: concise and very simple but super powerful. My first programming job was 25 years ago when I was still in high school using Tcl. I read John Ousterhout's books Tcl and Tk Toolkit cover to cover over just a few days. It was a short book but very powerful. Dr. Ousterhout has had a large influence on my career since.

  • @anuraagadvani

    @anuraagadvani

    3 жыл бұрын

    Also he designed and implemented log structured file systems

  • @mrgergelyorosz
    @mrgergelyorosz3 жыл бұрын

    Correction: there is an ebook for the book: you can get it on Kindle on Amazon - and probably should (geni.us/philosophy-sw-design). One out of the two of my issues addressed!

  • @gkn.

    @gkn.

    3 жыл бұрын

    The link doesn't work for me for some reason but I was able to find the book on Amazon. Thanks for the review!

  • @mrgergelyorosz

    @mrgergelyorosz

    3 жыл бұрын

    @@gkn. thanks for letting me know! Fixed the link.

  • @branindor
    @branindor3 жыл бұрын

    Hi, Gergely, keep doing reviews!. I started reading your blog for your recommendations

  • @thesimpleeastern
    @thesimpleeastern3 жыл бұрын

    Thanks. Will read it over Christmas. The stuff I wrote this year is increasing in complexity which motivated to seek out better design practises out there to handle such complexities.

  • @lucas_badico
    @lucas_badico3 жыл бұрын

    just found your channel, keep up with the not-good, but really great, work!

  • @errrzarrr
    @errrzarrr3 жыл бұрын

    Thanks for the recommendation. You have probably noticed already, there's a kindle version for it. Also, loved the meaning behind the art cover.

  • @GeFeng88
    @GeFeng883 жыл бұрын

    Great review, will check out the book. Thanks for the recommendation!

  • @mrgergelyorosz

    @mrgergelyorosz

    3 жыл бұрын

    Nice, thanks for the feedback!

  • @andregodinho3621
    @andregodinho36213 жыл бұрын

    Hi Gergely! Great review about the book, which I learned a couple of concepts from reading it (I also agreed with the idea of the deep modules). My goal is to work as a Machine Learning Engineer and I found these concepts of Software Engineering rather valuable. What books would you recommend regarding testing software and CI/CD? (I am interested in AIOps)

  • @mrgergelyorosz

    @mrgergelyorosz

    3 жыл бұрын

    I don't have resources on AIOps but the Software Engineering at Google book covers a lot of the workflows on the software lifecycle at larger companies. It's a high-level overview and I'm finishing the book: the second part is more focused on these practices. I learnt most of these on the job. You choose a technology, setup CI/CD and write tests. For ML I have no idea what the frameworks are and test approaches (e.g. unit, integration, more end-to-end or other).

  • @MahmoudAbdelwahab
    @MahmoudAbdelwahab3 жыл бұрын

    Awesome! I'll get it on kindle

  • @godsfrog
    @godsfrog3 жыл бұрын

    Thanks for the review, Gergely! Do you have any other software/technical books you'd recommend?

  • @mrgergelyorosz

    @mrgergelyorosz

    3 жыл бұрын

    Yes, I have plenty! Here they are: blog.pragmaticengineer.com/my-reading-list/

  • @mirwasiahmed3760
    @mirwasiahmed37603 жыл бұрын

    Hi Gergely, I was able to buy the kindle version following the Amazon link, which technically is an e-book.

  • @mrgergelyorosz

    @mrgergelyorosz

    3 жыл бұрын

    Oh. I should have double-checked before I said so. When I got it, I recalled no Kindle option. Great that it's already out on Kindle!

  • @ido5139
    @ido51393 жыл бұрын

    Hey, I'm a digital product manager, however I have no technical background (not an engineer and can't code). Would you recommend this book for me?

  • @mrgergelyorosz

    @mrgergelyorosz

    3 жыл бұрын

    Nope :) The book only makes sense for people who code, some of the examples being code.

  • @ido5139

    @ido5139

    3 жыл бұрын

    @@mrgergelyorosz thanks 🙏

  • @ralienpp
    @ralienpp2 жыл бұрын

    The idea that software engineering is about managing complexity is not a new definition that the author came up with. I don't remember exactly where I stumbled upon it before, but it was either a book by Steve McConnell, or one by Fred Brooks.

  • @IgnacioChavez
    @IgnacioChavez3 жыл бұрын

    There's an ebook now

  • @Channel-tr1hx
    @Channel-tr1hx3 жыл бұрын

    Bought kindle version

  • @geck1204
    @geck12042 жыл бұрын

    How does this compare to Clean Code?

  • @geck1204

    @geck1204

    2 жыл бұрын

    And should I read this one if I've already read Clean Code?

  • @unexpectedkAs

    @unexpectedkAs

    5 ай бұрын

    Clean Code is much older. It's a good start! This book is much newer and it challenges some of the Clean Code / Uncle Bob's statements and philosophy. You should read both!

  • @TruongHoang-du9if
    @TruongHoang-du9if3 жыл бұрын

    +1 subscription

  • @arkhman
    @arkhman3 жыл бұрын

    The book should be called The Philosophy of Writing Comments

  • @mrgergelyorosz

    @mrgergelyorosz

    3 жыл бұрын

    Come on, that's just a few chapters in the end :) I didn't agree with those takes, (wrote more depth about it here: blog.pragmaticengineer.com/a-philosophy-of-software-design-review/ ) but everyone has an opinion on comments!

Келесі