Skip to content
HomeVideosBooks
AllTopicsTrends
BlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    Cover of Practical Object Oriented Design In Ruby

    Practical Object Oriented Design In Ruby

    Sandi Metz · 2012

    The Complete Guide to Writing More Maintainable, Manageable, Pleasing, and Powerful Ruby Applications Ruby's widely admired ease of use has a downside: Too many Ruby and Rails applications have been created without concern for their long-term maintenance or evolution. The Web is awash in Ruby code that is now virtually impossible to change or extend. This text helps you solve that problem by using powerful real-world object-oriented design techniques, which it thoroughly explains using simple and practical Ruby examples. This book focuses squarely on object-oriented Ruby application design. Practical Object-Oriented Design in Ruby will guide you to superior outcomes, whatever your previous Ruby experience. Novice Ruby programmers will find specific rules to live by; intermediate Ruby programmers will find valuable principles they can flexibly interpret and apply; and advanced Ruby programmers will find a common language they can use to lead development and guide their colleagues. This guide will help you Understand how object-oriented programming can help you craft Ruby code that is easier to maintain and upgrade Decide what belongs in a single Ruby class Avoid entangling objects that should be kept separate Define flexible interfaces among objects Reduce programming overhead costs with duck typing Successfully apply inheritance Build objects via composition Design cost-effective tests Solve common problems associated with poorly designed Ruby code

    ProgrammingSoftware Engineering
    Open LibraryAmazon
    Stats for nerds
    46recommend
    72mentions
    62people
    2012–2025years
    75% recommend22% neutral3% critical

    Mentions per year

    20122014201620182020202220242025

    What Hacker News says

    1. breckenedgeDec 2025
      Sandi’s books and conference talks are excellent. My faves:

      https://www.poodr.com/ https://www.youtube.com/watch?v=PJjHfa5yxlU

      thread
    2. andrei_says_Jun 2024
      If working with object oriented languages, I recommend https://www.poodr.com/

      Practical Object-Oriented Design, An Agile Primer Using Ruby (POODR)

      thread
    3. ncphillipsMay 2023
      Sandi Metz and Avdi Grimm are the people I mostly read.

      Practical Object Oriented Design in Ruby by Sandi. She has a lot of great talks on YouTube as well.

      thread
    4. curiousEagleFeb 2022
      Some examples of "quality engineering practices" would be in my mind:

      - Believes most business logic doesn't belong in models/controllers

      - Understands the importance of naming things (classes, variables, etc.) well

      - Writes tests, even if not fully TDD

      - Intelligently applies SOLID engineering principles

      ^^ this type of thing.

      I think the books "Code Complete" [0] and "Practical Object-Oriented Design: An Agile Primer Using Ruby" [1] embody a lot of what I'm looking for, if you're familiar with them.

      [0] https://www.amazon.com/Code-Complete-Practical-Handbook-Cons...

      [1] https://www.poodr.com/

      Edit: Formatting

      thread
    5. avl999Jan 2021
      This is an incredibly broad question and touches on many aspects of software engineering, devops and operations. For operations, I would recommend having the team read the google SRE book https://sre.google/workbook/table-of-contents/ it has everything one would need to setup a modern operations infrastructure and associated best practices. https://sre.google/workbook/table-of-contents/

      Sounds like you are unhappy with the quality of code and error handling. Seems like it was written by junior devs? I would recommend having the team read the usually recommended books if they haven't. At the bare minimun:

      * Refactoring by Fowler

      * Clean Code by Robert Martin

      If you are using an OO language:

      * Practical Object-Oriented Design in Ruby

      The book has "in Ruby" in the title but it's a general purpose book on what make OO design "good"

      Then follow it up with

      * Patterns of Enterprise Architecture

      * Clean Architecture

      These books are not perfect or the be all end all, there are parts of them that might be slightly dated but they get you to a large chunk of the way to the promised land.

      Lastly, if the application is working, the users are happy, there is no bug infestation and you are not having issues with releasing new features, don't feel the pressure to immediately "fix" the code.

      thread
    6. Gene_ParmesanOct 2020
      Also I will add Practical Object Oriented Design in Ruby, by Sandi Metz (https://www.poodr.com/). It was a great help to me when I was first beginning to self teach programming years ago. A lot of it applies no matter the language; I haven't written Ruby in probably 4 years but the principles in that book guide my programming to this day.
      thread

    Related

    Practical Object-Oriented DesignSandi Metz
    2012–2026

    Practical Object-Oriented Design

    Sandi Metz
    14 recommend · 17
    Cover of Metaprogramming Ruby
    2009–2026

    Metaprogramming Ruby

    Paolo Perrotta
    33 recommend · 49
    Cover of Design Patterns in Ruby
    2009–2025

    Design Patterns in Ruby

    Russ Olsen
    15 recommend · 26
    Cover of The Ruby programming language
    2008–2023

    The Ruby programming language

    David Flanagan
    14 recommend · 37
    Cover of Eloquent Ruby
    2011–2026

    Eloquent Ruby

    Russ Olsen
    44 recommend · 68
    Cover of The Rails way
    2008–2022

    The Rails way

    Obie Fernandez
    22 recommend · 42
    Cover of Beginning Ruby
    2007–2019

    Beginning Ruby

    Peter Cooper
    18 recommend · 45
    Cover of Designing Data-Intensive Applications
    2014–2026

    Designing Data-Intensive Applications

    Martin Kleppmann
    457 recommend · 846