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
    Architecture Patterns with PythonHarry J.W. Percival

    Architecture Patterns with Python

    Harry J.W. Percival, Bob Gregory · 2020

    As Python continues to grow in popularity, projects are becoming larger and more complex. Many Python developers are now taking an interest in high-level software architecture patterns such as hexagonal/clean architecture, event-driven architecture, and strategic patterns prescribed by domain-driven design (DDD). But translating those patterns into Python isn't always straightforward. With this practical guide, Harry Percival and Bob Gregory from MADE.com introduce proven architectural design patterns to help Python developers manage application complexity. Each pattern is illustrated with concrete examples in idiomatic Python that explain how to avoid some of the unnecessary verbosity of Java and C# syntax. You'll learn how to implement each of these patterns in a Pythonic way. Architectural design patterns include: Dependency inversion, and its links to ports and adapters (hexagonal/clean architecture) Domain-driven design's distinction between entities, value objects, and aggregates Repository and Unit of Work patterns for persistent storage Events, commands, and the message bus Command Query Responsibility Segregation (CQRS) Event-driven architecture and reactive microservices

    Software EngineeringProgrammingComputer Science
    Open LibraryAmazon
    Stats for nerds
    12recommend
    16mentions
    15people
    2020–2024years
    81% recommend6% neutral13% critical

    Mentions per year

    20202021202220232024

    What Hacker News says

    1. hopaAug 2024
      I'm a recent grad looking to keep improving. I've read Clean Code, Game Programming Patterns, and Architecture Patterns with Python, and I feel I learned / improved a lot from each of them. I was looking at Coding Horror's book recommendation list: https://blog.codinghorror.com/recommended-reading-for-developers/ but all those books seem very out of date. Any suggestions for best books for software engineers in 2024?
      thread
    2. Al0neStarJul 2023
      I'm guessing this was submitted after the "Ask HN" about leveling up to a production python programmer and i'm surprised no one mentioned these books:

      1. Test-Driven Development with Python

      2. Architecture Patterns with Python

      The 2nd one is the closest you're gonna get to a production-grade tutorial book.

      Related to this topic, these resources by @dbeazley:

      Barely an Interface

      https://github.com/dabeaz/blog/blob/main/2021/barely-interfa...

      Now You Have Three Problems

      https://github.com/dabeaz/blog/blob/main/2023/three-problems...

      A Different Refactoring

      https://github.com/dabeaz/blog/blob/main/2023/different-refa...

      His youtube channel:

      https://youtube.com/@dabeazllc

      thread
    3. jjiceJan 2023
      The thing that made it really click with me was the quote (two whom I'm not sure it belongs to) that is roughly "code to abstractions/interfaces, not implementation".

      The idea that I take advantage of good abstractions and I send those objects into my classes that need to perform actions via those abstractions made a lot of sense. Helps enable good polymorphism, as well as unit testing and other things.

      I don't think I'm doing it justice, but the idea took a good while to understand there reasons behind it. Some books that helped me grok the idea were

      - Patterns of Enterprise Application Architecture - Clean Architecture - Architecture Patterns with Python

      along with running into problems that could be easily solved with a decent abstraction at work and learning to apply it directly.

      thread
    4. PandabobNov 2022
      For all the Python devs reading this, a book that aims to cover DDD from a Python perspective is Architecture Patterns With Python [1]. It's free to read online and all the code can be found in Github.

      [0]: https://www.cosmicpython.com/

      thread
    5. mbellmSep 2022
      Architecture Patterns with Python: Enabling Test-Driven Development, Domain-Driven Design, and Event-Driven Microservices by Bob Gregory and Harry Percival
      thread
    6. yuy910616Aug 2022
      I want to second all the opinions about fluent python, serious python and practices of python pro. I probably own most python books out there, and if I had to recommend one, it would by fluent python 2nd. The 2nd edition has a lot of type checking stuff that's really cool.

      Two more resources that I really like:

      1. Pycon videos - they're posted free on youtube. It's a great way to explore interesting problems with interesting people.

      2. Another book on python by Harry Percival (he does a lot of TDD stuff) - Architecture Patterns with Python. This book is relatively new. It targets an rather niche audience (web devs). But it's hard-won knowledge and really well written. It's a wonderful resource for python devs, and a book I wish more people knew about. https://www.oreilly.com/library/view/architecture-patterns-w...

      thread

    Related

    Cover of Intuitive Python
    2021–2024

    Intuitive Python

    David Muller
    2 recommend · 5
    Cover of Introducing Python
    2022–2023

    Introducing Python

    Bill Lubanovic
    4 recommend · 5
    Cover of Effective Python
    2012–2026

    Effective Python

    Brett Slatkin
    22 recommend · 45
    Cover of Design Patterns
    2007–2026

    Design Patterns

    Erich Gamma
    95 recommend · 491
    Cover of Patterns of Enterprise Application Architecture
    2009–2026

    Patterns of Enterprise Application Architecture

    Martin Fowler
    34 recommend · 87
    Cover of Test-Driven Development with Python
    2013–2023

    Test-Driven Development with Python

    Harry J.W. Percival
    16 recommend · 18
    Cover of Clean Architecture
    2012–2026

    Clean Architecture

    Robert C. Martin
    47 recommend · 142
    Cover of Game Programming Patterns
    2012–2026

    Game Programming Patterns

    Robert Nystrom
    120 recommend · 161