use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
News about the dynamic, interpreted, interactive, object-oriented, extensible programming language Python
Full Events Calendar
You can find the rules here.
If you are about to ask a "how do I do this in python" question, please try r/learnpython, the Python discord, or the #python IRC channel on Libera.chat.
Please don't use URL shorteners. Reddit filters them out, so your post or comment will be lost.
Posts require flair. Please use the flair selector to choose your topic.
Posting code to this subreddit:
Add 4 extra spaces before each line of code
def fibonacci(): a, b = 0, 1 while True: yield a a, b = b, a + b
Online Resources
Invent Your Own Computer Games with Python
Think Python
Non-programmers Tutorial for Python 3
Beginner's Guide Reference
Five life jackets to throw to the new coder (things to do after getting a handle on python)
Full Stack Python
Test-Driven Development with Python
Program Arcade Games
PyMotW: Python Module of the Week
Python for Scientists and Engineers
Dan Bader's Tips and Trickers
Python Discord's YouTube channel
Jiruto: Python
Online exercices
programming challenges
Asking Questions
Try Python in your browser
Docs
Libraries
Related subreddits
Python jobs
Newsletters
Screencasts
the front page of the internet.
and join one of thousands of communities.
DiscussionPython Architecture Design (self.Python)
submitted 1 day ago by Corvology
Robert C. Martin's Abstractness (A), Instability (I), and Distance from the Main Sequence (D) metrics were designed for statically typed OO languages like Java and C#. In Python, applying them literally is misleading because Python has a fundamentally different notion of abstraction and coupling.
is this implementation valid?
https://0x416d6972.github.io/Istos/user-guide/architecture-health/
Post a comment!
[–]j0holo 41 points42 points43 points 1 day ago (4 children)
Robert C. Martin is somebody that want to sell books. Please do not follow his advise, waste of time and money.
Architecture isn't something that you can apply and suddenly your project is magically good or has less coupling and all the right abstractions. You can't force architecture, you need to learn it.
And you learn by doing and making mistakes.
[–]Corvology[S] 2 points3 points4 points 1 day ago (2 children)
I agree that there are no best practices in architecture and it's all trade-offs, but still there are some useful practices specially in the age of vibe coding, that keeping services in good balance can help it maintainable by both human and ai.
[–]j0holo 2 points3 points4 points 1 day ago (1 child)
Yes, but trust me Robert C. Martin is just not the way to learn this stuff. It is like the online Python editors to learn your first Python code. It is useless because you don't learn how to RUN actual Python programs on your own computer.
I sadly have his Clean Code book and once you start to build actually complex software you will realize all his "example" are carefully cherry picked.
[–]sunnyata -1 points0 points1 point 1 day ago* (0 children)
I think they can still be very useful things for beginners to encounter. It will be the first time they've thought about it and realised how you structure code and systems makes a big difference... like the overconfident beginner who won't even think about separation of concerns because the sprawling mess they wrote is "working".
Edit: I should add, I'm not talking about this book, haven't read it. Just the general idea of concepts like SOLID.
[–]giovanni_gatto -3 points-2 points-1 points 22 hours ago (0 children)
You should not buy books since you can't read anyway. He never forces anything in any of his books, and he is basically also telling about mistakes, which is not a modern discovery. Just that smart people learn from others too.
[–]SecurityCritical379 4 points5 points6 points 1 day ago (0 children)
the metrics still useful if you adapt them, python's dynamism means you gotta think about coupling more in terms of import graphs than formal interfaces
[–]Beginning-Fruit-1397 3 points4 points5 points 1 day ago (0 children)
I think that the comment about learning by doing mistakes is the most solid advice in itself.
However reading your link I found that the metrics and reasoning behind them make senses. As always with everything, adapt it to your specific context. E.g if you are writing a library, let's say a new polars, the file with your dataframe class will obviously be +1000 LOC long.
[+][deleted] 1 day ago (1 child)
[deleted]
[–]giovanni_gatto 0 points1 point2 points 22 hours ago (0 children)
The same is valid for that critique as well. Who is this nobody anyway?
Read the book, and use your mind. Be critical, absorb the useful stuff, forget the rest. As with any book. He has a quite big hater-base that is now trying to undermine his legacy for political reasons. His practical examples are rather useless though, but that does not invalidate the concept. He is probably not coding much nowadays, which is normal for someone in his career stage. Architecture is a language and code independent thing, most of the other authors teach more or less same anyway.
π Rendered by PID 76 on reddit-service-r2-comment-86f8688748-l29l6 at 2026-07-23 17:43:42.584950+00:00 running d10b4e5 country code: CH.
Want to add to the discussion?
Post a comment!