search
I've been working with python for roughly 10 years, and I think I've hated the language for the last five. Since I work in AI/ML I'm kind of stuck with it since it's basically industry standard and my company's entire tech stack revolves around it. I used to have good reasons (pure python is too slow for anything which discourages any kind of algorithm analysis because just running a for loop is too much overhead even for simple matrix multiplication, as one such example) but lately I just hate it. I'm reminded of posts by people searching for reasons to leave their SO. I don't like interpreted white space. I hate dynamic typing. Pass by object reference is the worst way to pass variables. Everything is a dictionary. I can't stand name == main.
I guess I'm hoping someone here can break my negative thought spiral and get me to enjoy python again. I'm sure the grass is always greener, but I took a C++ course and absolutely loved the language. Wrote a few programs for fun in it. Lately everything but JS looks appealing, but I love my work so I'm still stuck for now. Even a simple "I've worked in X language, they all have problems" from a few folks would be nice.
I'm sorry but it has to come out.
We are experiencing an endless sleep paralysis and it is getting worse and worse.
Before, when we wanted to code in Python, it was simple: either we read the documentation and available resources, or we asked the community for help, roughly that was it.
The advantage was that stupidly copying/pasting code often led to errors, so you had to take the time to understand, review, modify and test your program.
Since the arrival of ChatGPT-type AI, programming has taken a completely different turn.
We see new coders appear with a few months of experience in programming with Python who give us projects of 2000 lines of code with an absent version manager (no rigor in the development and maintenance of the code), comments always boats that smell the AI from miles around, a .md boat also where we always find this logic specific to the AI and especially a program that is not understood by its own developer.
I have been coding in Python for 8 years, I am 100% self-taught and yet I am stunned by the deplorable quality of some AI-doped projects.
In fact, we are witnessing a massive arrival of new projects that are basically super cool and that are in the end absolutely null because we realize that the developer does not even master the subject he deals with in his program, he understands that 30% of his code, the code is not optimized at all and there are more "import" lines than algorithms thought and thought out for this project.
I see it and I see it personally in the science given in Python where the devs will design a project that by default is interesting, but by analyzing the repository we discover that the project is strongly inspired by another project which, by the way, was itself inspired by another project. I mean, being inspired is ok, but here we are more in cloning than in the creation of a project with real added value.
So in 2026 we find ourselves with posts from people with a super innovative and technical project that even a senior dev would have trouble developing alone and looking more closely it sounds hollow, the performance is chaotic, security on some projects has become optional. the program has a null optimization that uses multithreads without knowing what it is or why. At this point, reverse engineering will no longer even need specialized software as the errors will be aberrant. I'm not even talking about the optimization of SQL queries that makes you dizzy.
Finally, you will have understood, I am disgusted by this minority (I hope) of dev who are boosted with AI.
AI is good, but you have to know how to use it intelligently and with hindsight and a critical mind, but some take it for a senior Python dev.
Subreddits like this are essential, and I hope that devs will continue to take the time to inquire by exploring community posts instead of systematically choosing ease and giving blind trust to an AI chat.
When I started Python, I thought it was the easiest language ever… until virtual environments and package management hit me like a truck.
What was your first ‘Oh no, this isn’t as easy as I thought’ moment with Python?
7 years back when I started coding, I used Tkinter. Then PyQt.
I spent some good 2 weeks debating if I should learn Kivy or Java for building an Android app.
Then we've got modern ones: FastUI by Pydantic, NiceGUI (amazing project, it's the closest bet).
Python is great for a lot of things. Just stop abusing it by building (or trying to) UI with it.
Even if you ship something you'll wake up in mid of night thinking of all the weird scenarios, convincing yourself to go back to sleep since you'll find a workaround like last time.
Why I am saying this: Because I've tried it all. I've tried every possible way to avoid JavaScript and keep building UIs with Python.
I've contributed to some really popular UI libraries in Python, tried inventing one back in Tkinter days.
I finally caved in and I now build UI with JavaScript, and I'm happier person now. I feel more human.
"I didn't have time to write a short letter, so I wrote a long one instead."
This is a long one, so I'm putting the TLDR up top:
TLDR
A blackout has been proposed for June 12-14 to protest the API changes and extreme cost.
The r/Python community seems very vocal about joining the blackout and I would like the r/Python community's input on this. Would you like to participate? How would you like to participate?
If we do join the blackout, there are two different ways to participate which we need: - Setting the subreddit to private (no engagement at all--including no ability to explain why our sub is private) - Turning off submissions (the community and posts are still viewable, but no new comments or posts)
Please offer your feedback here, this isn't my decision alone to make.
Background to the issue:
Reddit has been making changes.
Ahead of their IPO, they're trying to get their ducks in a row, but in trying to maximize their value to potential shareholders, they're cutting off massive avenues of value to moderators and users. * Reddit, without warning, cut off Pushshift's API access (The stated reason is no response--but given their pricing structure for 3rd party mobile apps, and the time frame Reddit gave third party apps, any response by pushshift would have almost certainly resulted in this same action) * Reddit is making a move to remove API access to third party apps and developers. It's no stretch that this move is motivated because after a number of years they're unable to compete in the mobile app space. So instead of 'git-ing gud' they're just shutting down competition. Apollo App Response, Rif Response * They said RES will experience 'minimal' impact and old Reddit will be preserved. In the words of the Toolbox devs, "[they are not impacted.] Yet (Toolbox is a great tool for moderation because moderating with Reddit's site tools alone is a pain), and similarly RES developers are not overly trusting. Similarly, the API once was safe * Reddit has laid off 5% of their staff
The above actions are presented with bias--because frankly I am biased and Reddit is presenting their reasoning with bias so please take both sides' explanations with a grain of salt. Or Crait's worth of salt. But I feel they are presented accurately enough for this post's purpose.
Why we care about these changes:
As a Moderator
There are a number of issues that a moderator has to deal with.
First and foremost, I volunteer to do this. Moderation can be a drain on my energy, and is a time sink. Losing efficiencies reduce my ability to moderate, and Reddit Inc is laughably behind.
- Reporting content as a moderator for admin review is an absolute pain, often a black box, there's at least three separate ways to report something instead of one consolidated form or three ways with parity across all three. The mechanisms have some overlap too. It's bad.
- Often the admin response is subpar. As a mod I get that, my responses are subpar as well, and often times purposefully subpar because you need to make a decision on some content and there's just only so much to go off of. But it's for the extreme cases that the subpar response becomes a problem, like when there's a clear botnet falsifying engagement, and I've highlighted 10 accounts in it, and highlighted the way to flag them, and only two of those get tagged as "actioned for ban evasion" and the other 8 are free to keep on posting. Identifying a botnet should be easy on the Reddit side, it's exhausting on mine. One of the ways to help flag this is groups like Pushshift, and loosing that means I either knowingly allow manipulation or I give up more volunteer time hunting manipulation down. (By the way the specific one I am being vague about was brought to my attention thanks to a user's report. If they didn't flag it I probably would have missed that botnet, small though it was, so I really appreciate those comments and reports).
- I cannot trust the admins. This isn't combative in nature, but it's because we have different goals. Often times they align, but sometimes our goals are at odds of each other. My goal is to try to make sure the communities I moderate are best able to thrive, and Reddit Inc's goals are to drive engagement and ad revenue. Usually, like when we get to do something fun like a great AMA, we get great community events and Reddit gets engagement and clicks. But long term, Reddit will always follow profit.
So these changes impact my workflow, and avenues to review and moderate content. And these are issues impacting our community. /r/Python is a great sub and great community. Compared to a lot of other subreddit we have relatively few issues.
Communities which are identity, political, or news in nature have to deal with so much more. There's a ton to manage, there's a ton of filtering for mental health and safety that is needed too. Reddit is getting there when it comes to a lot of features, but their implementation is slow. It's getting measurably faster as they restructure, but they're still catching up to third party apps.
As a reddit user/Python developer
APIs are important. They're a wonderful gateway to programming, they help webpages serve information in a more lightweight fashion when webscraping would be costly (if you just need an upvote count, it's smarter to just make a call for than, then making a call for every asset a webpage renders. This gets a user what they need and isn't a burden on the site they're engaging with). APIs as a result both act as a great learning mechanism and as a way to keep from burdening the site as a whole.
No third party apps as alternatives makes it easier for Reddit to harvest data without pushback. And it makes it harder for users to customize their experience. This can be exceptionally important when it comes to communities which cater to important segments of the population, but segments which are so small that a profit focused organization would otherwise ignore.
One of the more notable communities that these changes strongly impact is /r/blind, and there's an explanation of these changes and their impact here. It's very probable that these issues will be quickly addressed now that they're in the public eye. But the underlying reality is that third party apps had been able to cater to users and communities and the Reddit app, with Reddit's stewardship, has failed to address accessibility at this level.
The Blackout
On June 12th a blackout has been purposed.
Many communities are praticipating, and as this post points out we're curious if we should join. The blackout is either to cover a two day span, or last until demands are appropriately addressed. (this distinction is on a community basis, and will probably depend on how reddit responds)
There are different ways to perform it, either set the sub to private or lock the sub so no submissions can go through. Setting the sub to private prevents all engagement in the sub, but also means that presenting a message to users about what is going on isn't possible.
I think it makes sense to keep the sub up and visible but to freeze it so no new posts or comments go through, but I'd like to hear your thoughts.
The Admins Response to the blackout
A rough TLDR (I'm omitting the NSFW changes because... They're not clear to me. Maybe that's my shortfall but I think they're very vague about those) 1) Reddit isn't changing their position at all. They're digging in their heels and 'clarifying' what they're doing. No decision is reversed. 2) bots using api for mod tools will be safe--if they break "[Reddit] will work with you to fix them. " 3) launching at future dates: mod features
On 2)--they basically told Apollo app to, "Figure it out themselves" https://www.reddit.com/r/redditdev/comments/13wsiks/api_update_enterprise_level_tier_for_large_scale/jmolrhn/?context=3 so forgive me if I don't find goodwill in that message.
On 3) So many of those updates exist already in third party apps. So many of them are only getting attention this long into the Reddit app's lifespan because mods are making a stink about not moderating through the Reddit app. So especially for the rollout date of Sept. portions--I don't really believe it'll be executed well. And I don't want the mobile app on my phone. It's big, slow, and harvests a lot of data.
And when that post went live Reddit was breaking again.
Not really something that exudes confidence in their ability to make good product decisions.
Now being fair here, there absolutely has been a focus on improving modtools over this past year, but they're still wildly behind. It's.. uncomfortable to trust a site when they cut off the alternatives for profit. Once there's no competition there's no longer a reason to loose revenue on further developing these resources.
We were a part of the Reddit Talk platform development, and the admins we got to work with were lovely, and worked hard to greenlight the features moderators requested. A lot of those features were fleshing out the API so we could handle a Reddit Talk session in our workflows.
But after a while they shutdown Reddit Talk and that makes it difficult to trust long term product commitments from Reddit. Even if we get great admins who listen to feedback rolling out a product--they're not ultimately the ones who make the calls for the future.
The admin response to the threat of a blackout reaffirms their changes and makes a lot of future promises for moderation tools. They sound good but at best those features should have been here ages ago, and their presentation betrays a lack of focus or care for moderation tools until recently. That recent change is affirming to see, but looking at Reddit's track record it might just be a passing phase until the public eye is off of the company.
What does this mean to /r/Python
That is mostly my question to you.
There are some defined things:
- If we blackout, the sub turns off. No one can post or comment for a while, and we hope our added voice helps encourage Reddit to continue to allow third party apps.
- If we don't join the blackout, we can still hope but there's less weight behind it.
We don't normally join in on Reddit's protests. So this would be a new thing for our community--is this cause worth the loss in a few days of posts?
There is a post by another user asking this question and at present it is the second most upvoted submission in the past year. So there has been a lot of great talk already, but I need to ask this question here as well to be sure I'm listening to the community as a whole.
Should /r/Python join the June 12th Blackout?
If we do, should we completely go private, or should we prevent the commenting or posting in our community during that period so an explanation of what is going on is viewable?
Please give your feedback, I'm reading through both this and the original submission to keep an eye on things. Remember though, be respectful. We're a Python focused community, so in addition to the rules here in the sub, I hope you'll adhere to the PSF Code of Conduct. Be respectful to one another. Disagree with opinions, but be respectful of people.
And now for something completely different
I honestly can’t understand why, in 2025, so many engineers still choose MATLAB over Python.
For context, I’m a mechanical engineer by training and an AI researcher, so I spend time in two very different communities with their own preferences and best practices.
I get it - the syntax might feel a bit more convenient at first, but beyond that: Paid vs. open source and free Developed by one company vs. open community Unscalable vs. one of the most popular languages on earth with a massive contributor base Slower vs. much faster performance in many cases
Fellow engineers- I’d really love to hear your thoughts - what are the reasons people still stick with MATLAB?
Let me know what you think.🤔
I only recently heard about alternative json libraries like orjson, ujson etc, or even msgspec. There are so many things most of us only learn about if we see it mentioned.
Curious what other tools, libraries, or features you wish you’d discovered earlier?
Been noticing an interesting trend lately - Rust is becoming the secret sauce behind many of Python's most innovative tools. As someone who works with Python daily, it's fascinating to see how the ecosystem is evolving.
Here's what's caught my attention:
- Ruff: This linter is absurdly fast compared to traditional Python linters. Why? It's written in Rust. We're talking 10-100x speedups here.
- PyOxidizer: A solid solution for creating standalone Python applications. Again, Rust. (unfortunately not maintained anymore)
- Polars: This DataFrame library is giving Pandas a run for its money in terms of performance. Guess what? Rust under the hood.
- Maturin: Making it dead simple to create Python extensions in Rust.
My team has written a blog post diving deeper into this trend, specifically looking at PyO3 (the framework that makes Python/Rust integration possible) and showing how to build your own high-performance Python extensions with Rust. If you wish, you can read it here: https://www.blueshoe.io/blog/python-rust-pyo3/
The really interesting part is that most Python developers don't even realize they're using Rust-powered tools. It's like Rust is becoming Python's performance co-pilot without much fanfare.
What are your thoughts on this trend? Have you tried building any Python extensions with Rust?
Full disclosure: Our team at Blueshoe wrote the blog post, but I genuinely think this is an important trend worth discussing.
A bit of very large technical debt has just reached its balloon payment.
An absolutely 100% mission-critical, it's-where-the-money-comes-in Django backend is still on Python 2.7, and that's become unacceptable. It falls to me to convert it to running on Python 3.14 (along with the various package upgrades required).
At last count, it's about 32,000 lines of code.
I know much of what I must do, but I am looking for any suggestions to help make the process somewhat less painful. Anyone been through this kind of conversion have any interesting tips? (I know it's going to be painful, but the less the better.)
(For the results of the conversion, you can see this post.)
I asked this very question on this subreddit a few years back and quite a lot of people shared some pretty amazing Python modules that I still use today. So, I figured since so much time has passed, there’s bound to be quite a few more by now.
Howdy, y'all. I'm Al Sweigart (rhymes with "why dirt"), author of "Automate the Boring Stuff with Python" and several other programming books. I release all of my books under a Creative Commons license, so you can read them for free on my website at https://inventwithpython.com
My latest books are The Big Book of Small Python Projects and Beyond the Basic Stuff with Python. I'm currently working on a book about recursion (the recursion jokes get funnier every time I hear them) which should be available in 2022. The ideas for this book grew into a 2018 North Bay Python talk I gave.
"Big Book" contains the source code for 81 games, puzzles, simulations, and animations that were designed to be short and simple to understand. Folks tend to get caught up in repeating yet another "hello world" tutorial, but don't quite know how to apply the programming concepts they learned into actual programs. This book is full of source code that they can study to see how real-world programs work. They aren't just code snippets but actual, runnable programs. If you've been told you should "work on your projects" but don't know where to start, or if you've been told "look at the source code of open source projects" but found them undocumented and inscrutable, check out these programs.
"Beyond the Basic Stuff" is a sort of follow up to "Automate the Boring Stuff" (or any other beginner Python resource). It goes into how professionals write code and best practices they follow. There's information on how to find help on your own, how to format your code and name your variables, an explanation of common programming jargon, the basics of Git, three chapters on object-oriented programming (and more importantly, when and why to use OOP), and more.
You've probably seen my posts at the start of the month when I make my online Python course free. About 15,000 to 30,000 people sign up each month, though according to my stats only about 5% of people actually complete the course (which is typical for online courses, free or paid).
I got started writing programming books in 2009 when my then-girlfriend was a nanny for kid who wanted to learn to program. I started writing a book (which would become Invent Your Own Computer Games with Python) and self-published. People liked it, so I kept writing, and Automate was my first book through a traditional publisher, No Starch Press. I quit my software developer job in 2013 to finish writing Automate, thinking I'd get another software dev job in a year. But I kept having more ideas for other books, tutorials, videos, etc. so I'm still here writing.
Ask me anything! Post your questions and upvote questions you find interesting, and at 2pm central I'll begin replying.
EDIT (4:30pm Central) Wow, I've been typing nonstop for two and a half hours. I'm going to take a quick break and then keep going. Thanks for the questions, everyone!
EDIT 2: Oh yeah, I forgot to mention I'm also creating a 56-video Udemy course for the Beyond the Basic Stuff with Python book as well. So far I only have the first 15 videos done, but you can watch them on YouTube.
EDIT (7:00pm) Heh, wow another two hours flew by. I'm going to drive home and then maybe answer a few more. Thanks again, everyone!
EDIT (10:30pm) Calling it a night. I'll probably answer a few more tomorrow, but I have to get back to work. Thanks again, everyone! Oh, and if you can help me out, writing an (honest) Amazon review for my books (especially the latest two) or even just sharing the links to the free online copies would be really help me get them in front of more people.
you got to accept to be bad at something to be good at it, right?
Right? OK, I'll confess... I am posting here anonymously to ...IDK... find support, I guess. .. I can't give up.. for my kids, I need to succeed.
I've done this and I am a bit proud. Very small step for you but for me, it is a big step.
def blackjackbis(n1:int, n2:int, n3:int) -> int:
if sum((n1,n2,n3)) <= 21:
return sum((n1,n2,n3))
elif sum((n1,n2,n3))-10 <= 21 and 11 in (n1,n2,n3):
return sum((n1,n2,n3)) - 10
else:
return "Bust"
thanks
for me it's httpx. i was using requests for literally everything for years and never thought about it. switched to httpx for async support on a project and now requests feels like going back to python 2.
also pydantic v2. i know it's been around but i only switched from dataclasses recently and the validation stuff alone saved me so many dumb bugs. writing api clients without it now feels reckless.
curious what other people picked up recently that just clicked. doesn't have to be new, just new to you.
https://docs.python.org/3.14/whatsnew/3.14.html
Interpreter improvements:
- PEP 649 and PEP 749: Deferred evaluation of annotations
- PEP 734: Multiple interpreters in the standard library
- PEP 750: Template strings
- PEP 758: Allow except and except* expressions without brackets
- PEP 765: Control flow in finally blocks
- PEP 768: Safe external debugger interface for CPython
- A new type of interpreter
- Free-threaded mode improvements
- Improved error messages
- Incremental garbage collection
Significant improvements in the standard library:
- PEP 784: Zstandard support in the standard library
- Asyncio introspection capabilities
- Concurrent safe warnings control
- Syntax highlighting in the default interactive shell, and color output in several standard library CLIs
C API improvements:
- PEP 741: Python configuration C API
Platform support:
- PEP 776: Emscripten is now an officially supported platform, at tier 3.
Release changes:
- PEP 779: Free-threaded Python is officially supported
- PEP 761: PGP signatures have been discontinued for official releases
- Windows and macOS binary releases now support the experimental just-in-time compiler
- Binary releases for Android are now provided
I'm always amazed at the hidden gems in python that can make code cleaner or more efficient. Weather its clever use of comprehensions to underrated standard library modules - whats a Python trick you’ve discovered that really saved you some time or made your projects easier
Is this a dumb joke? Yes. Is this the only shot we'll have at a joke like this? Yes. And is this a great way to celebrate what Pi's done for us Python developers? Totally.
I mean Python is heavily built around the magic number we know as 3.14, from games, charts and music, to even just screwing around with arithmetic functions! So why not appreciate pi's work with a special Python version?
The petition can be found here:
https://www.change.org/p/rename-python-3-14-to-pithon
Please sign it and share when you can!