The Zen of Python part was quite fun. I wish Tim Peters was in it though. He wrote yesterday:
> I do show up, but not “live”. For various reasons (mostly related to declining health), I didn’t actively participate. I gave the director (Ida Bechtle) a pile of source material at the start, and that was the last of my involvement. She spliced in some recycled video of an interview I did with the PyPy folks at a PyCon some years ago, but I’m there mostly so people could recite my so-called “Zen of Python”, which an actual historian (Joseph Dragovich) assured me is “the most famous values statement for any programming language community”. https://discuss.python.org/t/python-documentary-going-live-t...
I used to love Python, back when it was basically just an alternative to perl for scripting. Now it strikes fear into my heart when I encounter something largish written in Python because it usually means "super slow bloated researchy untyped ai/math code that's a nightmare to work with"
There are two types of people who use python: those who understand statistics and those who write python.
I’m happy that python basically took over the role once filled by matlab, and I’m happy that it became the leader in AI dev instead of something worse (probably Java if gpt2 had hit 5-10 years earlier).
But you’re right. It’s not fun anymore. It feels more like a pseudolanguage for expressing tensors now, because of the influx.
I’m exaggerating only in feigned outrage. In my actions, I’ve been coding in rust, go, and zig ever since ChatGPT came out.
I think that moment made me value python less. When I think about why, it’s because python became less challenging, and the problem space shrank.
It’s been fun to go back to low-level and remember how computers actually work.
I feel so similar. I love python, I’ve spent most of my career writing it. It’s done well for me.
But damn is it just not fun anymore. Runtime errors are not fun anymore. Runtimes are not fun. Virtualenvs are not fun anymore even though uv is trying. Typeless loosy goosy code that passes dictionaries all over the place is just not fun.
Rust ruined it for me. Or maybe I’m just bored.
Agreed, as an OO scripting language it's lovely, especially compared to Perl where the OO features never meshed quite right. Going back 10 years ago it had a number of things that were novel compared to other languages: literals for common data structures, context managers ("with" statement), first class functions, comprehensions, generators.
On the other hand duck typing is largely a joke. Letting functions take anything as an argument and then just assuming it's a duck with the methods you want is no way to write a robust system. Performance wise you're boxed into a corner. The slow runtime will have you writing native code in another language, complicating your project. The GIL will have you jumping through hoops to work around.
As an offline data exploration and research tool limited to an individual or a small team, or for writing small utilities, I totally get it. For anything mission critical I'd much rather be in something like Java or C# where the typing situation is stronger, the performance is going to be much better, I have better access to threads if I need them, the reasons for dropping into native code are fewer, and the cross platform support works more seamlessly without additional layers like Docker.
> Letting functions take anything as an argument and then just assuming it's a duck with the methods you want is no way to write a robust system
Everyone keeps harping on type safety, but it just doesn't play out in reality. Linux Kernel is incredibly robust, has never been a broken mess, and has basically no type enforcement, as you can cast pointers into other stuff.
In general, all typing does is move error checking into the compiler/preprocessor instead of testing. And time spent on designing and writing type safe code is almost equivalent to time spent writing tests that serve as an end-to-end contract.
There is a reason why NodeJS was the most used language before all the AI stuff came with Python.
>Performance wise you're boxed into a corner. The slow runtime will have you writing native code in another language, complicating your project.
Most of these performance arguments are similar to arguging that your commuter car needs to be a track spec Ferrari in terms of performance, by people that have very little experience with cars.
Plenty of fast/performant stuff runs on Python. PyPy is a thing also. So is launching small compiled executables like a process, that takes literally one line of code in Python.
>The GIL will have you jumping through hoops to work around.
This is just laughable. Clearly you have extremely little experience with Python.
>>Agreed, as an OO scripting language it's lovely, especially compared to Perl where the OO features never meshed quite right.
Back then the whole OO crowd was with Java though.
Python's Moat was beginner friendliness to write simple scripts, which at the time- Perl was more like a thermonuclear scripting language. Most people who never wanted to graduate to that advanced stage of writing mega million lines of Perl code over a week(which was literally the use of Perl then), realised they needed some thing simpler, easier to learn, and maintain for smaller scripts- Kind of moved to Python.
But then of course simplicity only takes you that far, and its logically impossible to have a simple clean interface to problems that require several variables tweaked. Python had to evolve and is now having the same bloat and complications that plague any other language.
Having said that, I would still use Java if I had to start a backend project.
I was a big fan of python between 10 and 15 years ago for similar reasons, it felt "cleaner" than other scripting languages while also having rich standard and extended libraries.
With no real recent experience (I fell deep down the hole into C/kernel etc), I wouldn't have any authority to judge how it's adapted to time. But the most common complaint I've observed at companies of all size and sophistication is "the deployment story is a disaster". But it also seems like uv allows people to do all the "I want this specific version of such and such and I don't want $OS to know about any of this" well?
Re math/ai it's an interesting comment because a language is one part the syntax/stuff you receive, and one part the community that tells you to do things a certain way. I'd guess that Python has become such a big tent it is a little hard to enforce norms that other languages seem to have. This somewhat reminds me of Bjarne Stroustrup discussing scaling/evolving a language.
I think a lot of it is things have shifted away from the raw language. Less and less you’re dealing with Python, and more an assortment of libraries or frameworks. Pandas, numpy, torch, fastapi, …, and a dozen others.
Packaging has been a nightmare. PyPI has had its challenges. Dependency management is vastly improved thanks to uv - recently, and with a graveyard of tools in its wake.
The modern Python script feels more like loosely combining a temperamental set of today’s latest library apis, and then dealing with the fallout. Sometimes parallels the Node experience.
I think an actual Python project - using only something remotely modern like 3.2+ standard library and maybe requests - is probably just as clean, resilient, and reliable as it ever was.
A lot of these things are and/or have been improving tremendously. But think to your point the language (or really the ecosystem) is scaling and evolving a ton and there’s growing pains.
I can see that. A little while ago I was working at a startup and we had a node.js thing that was really crucial to the business that did some gray hat browser automation stuff to scrape TikTok (the users opted into it, but TikTok itself was less permissive). For some reason a person wanted to move part of it to Python to orthogonally solve some other actual problem. They passed me the code and Pandas was there to effectively do an HTTP request and parse JSON and I thought to myself "woah, I'm not in Kansas anymore" -- I ended up not having to worry about it because I ported the idea back to the more mature node system and that turned out to be viable over time.
Libraries can overtake aspects of a language for better and worse. Ruby seemed really tied to Rails and that was great for it as an example.
Ha, Pandas just to parse a website is a bit extra, I’d say. But yeah, it’s weird that you need libraries and api endpoints to do basic tasks these days.
It feels like something broke around 2015-ish. Going back, you could make a whole app and gui with Basic. You could make whole websites simply with HTML+PHP, sometimes using nothing but Notepad. You could make portable apps in Java with no libraries - even Swing or whatever was built in.
Now…? Electron, a few languages, a few frameworks, and a few dozen libraries. Just to start.
That has always remained my sole use of Python, scripting OSes and applications, my use of Tcl for application software trained me avoiding languages that always require going down to C for any performance related task.
Best of all with this approach, is that what is in the standard library suffices, no need to mess up with venvs, PYTHONPATH, or whatever is the current trend.
> Those little 20-500 line scripts were just so much more fun in Python than anything else though
It's notable that you've written this in the past tense. These kinds of scripts don't seem to be a focus for Python any more.
In fact, I recently heard as justification for a new Python feature: "it helps us with our 100-million-line Python codebase". The language has become extremely complex as it prioritizes the needs of a few teams writing millions of lines over millions of developers each writing relatively few lines.
The reason is that the design team are all working on these large codebases and, understandably, mostly focused on what makes their own lives easier. I was hopeful that in the transition from a BDFL-based governance system to a Steering Council, we would see a larger variety of experience and opinions designing the language. Instead, I don't think there has ever been a single scientist, finance worker etc on the Steering Council - it's always software developers, almost always employees of large software companies.
I’m curious what about the language is getting more complex. Any examples? The ecosystem definitely seems to be getting much more complex, but the language itself hasn’t evolved dramatically since type hints that I can remember.
Type hints aren’t a single addition - with every release they get more complex. It wouldn’t surprise me if the language included 20+ typing-related PEPs by now.
The other obvious example of complexity is pattern matching. The feature is very complex, especially how it breaks established rules of the language. It also required fundamental changes to the interpreter to accommodate it: a rewrite of the parser from simple LL(1) to PEG.
Python was similar for me after learning Perl and some C in highschool. During university I used Python 2 on and off. It was amazing during that era and what I could build.
Then came Python 3 and it just never felt the same. PyQT projects faltered. Deps split. Strings broke.
However I started using Nim a few years back which has given me that Python 2 feeling – except with static types, better overall language design, meta-programming, and performance!
> However I started using Nim a few years back which has given me that Python 2 feeling – except with static types, better overall language design, meta-programming, and performance!
And except tooling, ecosystem, documentation and practical real-world application.
There are plenty of practical real world usages from companies shipping video games, one of the first and most featureful eth2 servers, websocket servers powering millions of requests at Reddit, etc. Apparently some use in HFT as well now.
True the LSP is pretty bad, but Cursor makes up for a lot of that for me. Atlas dependency manager is great. Valgrind and TSan work perfectly. Gdb sorta works now. LLMS solve the docs issue.
The ecosystem is smaller, but I've been able to use it to successfully create tools for an IoT project with Nim running on an embedded esp32, a multi-threaded api server on linux processing images, and a web SPA with Karax in a couple of weeks of programming work. Oh and calling into Python for some datascience.
Python got big by impeccable marketing and this is the logical continuation. Several people in the video are raging bureaucrats who haven't done much apart from talking. Steering Council members who canceled and libeled Tim Peters are in that video.
Python has always suffered from the overrepresentation of talkers, and the recent draconian "leadership" that consists of the worst people have driven most developers away apart from some failing corporate projects.
This video tries to revive the spirit that existed in 2000 before many of those developers sold out Python to corporations and turned utterly evil.
History of women in the Python world: In 2006, the first two women were voted in as PSF fellows, Laura Creighton and Anna Martelli Ravenscroft. In 2008, there were two women on the PSF board, Gloria Willadsen and Allison Randal. The woman mentored by Guido was Emily Morehouse-Valcarcel. She is now on the steering committee but was not featured in the film. Less prominent in the documentary was Carol Willing who was on the initial steering committee. Also featured were Mariatta Wijaya and Lisa Roach-Carrier who were mentored by another developer.
Yeah, nothing has really ever hit the same levels of readability that Python has for me, even if a language like Rust is very well-designed and better in many aspects.
Is MartelliBot featured? Alex Martelli did sooo much for the success of python in the early days.
He was patient, informative and above all extremely thoughtful in his stackoverflow responses. He was also very generous with his talks, all of which added to the rich ecosystem Python had back in the day.
Watching Python's rise has been a little wild. At first it was neck to neck with Perl and with Ruby after that. But then again nobody really expected AI to be this wildly popular.
There is a reason why NodeJS took off and was pretty much the prominent language on github before all the AI stuff with Python. Mind you this is pure JS, not even Typescript.
Processors and memory have gotten cheap enough were development speed matters more than compute cost.
IMO NodeJS popularity was expected. After all these years you still can't use anything other than JS on the frontend (WASM is still too green). So if you are going to master a language you might as well use it in the backend too.
One fateful spring day in 2000/2001? I read the Python tutorial. It was so good I never wrote a single new line of Perl after that, nor Java for about twenty years (when I brushed up because of needing a job).
Reading all the complaints about it recently is a bit surreal. Newer developers can't program without IDEs and "type systems." Packaging was kind of a mess, but feel like uv solved it. Neither issue really affected me, I used setup.py almost exclusively until moving to uv maybe six months ago.
It was always a glue/prototyping language—if you're using it for kernel drivers or multi-threaded Fibonacci servers or worse, that bad decision is yours (or that of your boss). ;-)
Here's another article with some comments from the new documentary's director - and from unsung Python hero Paul Everitt. (Everitt hired Guido van Rossum and all the other core developers in the late 1990s -- while keeping Python open source, and voting the nonprofit Python Software Foundation into existence.)
The more I use python, the more I hate it. For the inconsistencies and the short comings and the stuff it glosses over and absurdities like having the default queue be thread safe (sacrificing performance). My personal opinion is it is a garbage language.
> absurdities like having the default queue be thread safe (sacrificing performance).
Why is this absurd? What are you writing where you need to scrape this sort of performance, but are perfectly fine with the overhead of interpreting bytecode at runtime, heap-allocating objects to represent floating-point numbers, not having homogeneous-type arrays that can store their elements contiguously in memory but which must indirect them, etc. etc. etc.?
Alternately, what world are you living in where everything a program does is CPU-bound and must be done efficiently? In this world, what led you to examine or try Python in the first place?
Hilarious . I was a python fan before I was a reluctant user. It still has the most reliable debugger integration of any mainstream language which is my favorite thing about the language in its current state.
Debugger >> language -- next most popular language manifesto slogan (i hope).
The Zen of Python part was quite fun. I wish Tim Peters was in it though. He wrote yesterday:
> I do show up, but not “live”. For various reasons (mostly related to declining health), I didn’t actively participate. I gave the director (Ida Bechtle) a pile of source material at the start, and that was the last of my involvement. She spliced in some recycled video of an interview I did with the PyPy folks at a PyCon some years ago, but I’m there mostly so people could recite my so-called “Zen of Python”, which an actual historian (Joseph Dragovich) assured me is “the most famous values statement for any programming language community”. https://discuss.python.org/t/python-documentary-going-live-t...
Adding a link to the ZoP for the uninitiated: https://peps.python.org/pep-0020/
try: __main__() except BeingDutchException: print("make some noize!") except: pass
how did i do on my python exam? 5.6 is also a pass!
In India people call initiation as Deekhsha.
This is where the guru whispers (3 times) to you the seed letters which one has to imbibe over decades of sadhana by lacs of repetition
this looks similar
#rememberThis
I used to love Python, back when it was basically just an alternative to perl for scripting. Now it strikes fear into my heart when I encounter something largish written in Python because it usually means "super slow bloated researchy untyped ai/math code that's a nightmare to work with"
There are two types of people who use python: those who understand statistics and those who write python.
I’m happy that python basically took over the role once filled by matlab, and I’m happy that it became the leader in AI dev instead of something worse (probably Java if gpt2 had hit 5-10 years earlier).
But you’re right. It’s not fun anymore. It feels more like a pseudolanguage for expressing tensors now, because of the influx.
I’m exaggerating only in feigned outrage. In my actions, I’ve been coding in rust, go, and zig ever since ChatGPT came out.
I think that moment made me value python less. When I think about why, it’s because python became less challenging, and the problem space shrank.
It’s been fun to go back to low-level and remember how computers actually work.
I feel so similar. I love python, I’ve spent most of my career writing it. It’s done well for me. But damn is it just not fun anymore. Runtime errors are not fun anymore. Runtimes are not fun. Virtualenvs are not fun anymore even though uv is trying. Typeless loosy goosy code that passes dictionaries all over the place is just not fun. Rust ruined it for me. Or maybe I’m just bored.
>Typeless loosy goosy code that passes dictionaries all over the place is just not fun.
mypy --strict in CI & don't let dict[str, Any] pass review if the keys are constants, insist on a dataclass or at least a TypedDict.
Agreed, as an OO scripting language it's lovely, especially compared to Perl where the OO features never meshed quite right. Going back 10 years ago it had a number of things that were novel compared to other languages: literals for common data structures, context managers ("with" statement), first class functions, comprehensions, generators.
On the other hand duck typing is largely a joke. Letting functions take anything as an argument and then just assuming it's a duck with the methods you want is no way to write a robust system. Performance wise you're boxed into a corner. The slow runtime will have you writing native code in another language, complicating your project. The GIL will have you jumping through hoops to work around.
As an offline data exploration and research tool limited to an individual or a small team, or for writing small utilities, I totally get it. For anything mission critical I'd much rather be in something like Java or C# where the typing situation is stronger, the performance is going to be much better, I have better access to threads if I need them, the reasons for dropping into native code are fewer, and the cross platform support works more seamlessly without additional layers like Docker.
> Letting functions take anything as an argument and then just assuming it's a duck with the methods you want is no way to write a robust system
Everyone keeps harping on type safety, but it just doesn't play out in reality. Linux Kernel is incredibly robust, has never been a broken mess, and has basically no type enforcement, as you can cast pointers into other stuff.
In general, all typing does is move error checking into the compiler/preprocessor instead of testing. And time spent on designing and writing type safe code is almost equivalent to time spent writing tests that serve as an end-to-end contract.
There is a reason why NodeJS was the most used language before all the AI stuff came with Python.
>Performance wise you're boxed into a corner. The slow runtime will have you writing native code in another language, complicating your project.
Most of these performance arguments are similar to arguging that your commuter car needs to be a track spec Ferrari in terms of performance, by people that have very little experience with cars.
Plenty of fast/performant stuff runs on Python. PyPy is a thing also. So is launching small compiled executables like a process, that takes literally one line of code in Python.
>The GIL will have you jumping through hoops to work around.
This is just laughable. Clearly you have extremely little experience with Python.
>>Agreed, as an OO scripting language it's lovely, especially compared to Perl where the OO features never meshed quite right.
Back then the whole OO crowd was with Java though.
Python's Moat was beginner friendliness to write simple scripts, which at the time- Perl was more like a thermonuclear scripting language. Most people who never wanted to graduate to that advanced stage of writing mega million lines of Perl code over a week(which was literally the use of Perl then), realised they needed some thing simpler, easier to learn, and maintain for smaller scripts- Kind of moved to Python.
But then of course simplicity only takes you that far, and its logically impossible to have a simple clean interface to problems that require several variables tweaked. Python had to evolve and is now having the same bloat and complications that plague any other language.
Having said that, I would still use Java if I had to start a backend project.
When Perl ruled the Earth, the OO crowd was with Smalltalk, Object Pascal, Delphi, Clipper 5, FoxPro, Actor, CA Objects, VB, C++.
In fact, many books that the OOP haters attribute to Java, predate its existence.
I was a big fan of python between 10 and 15 years ago for similar reasons, it felt "cleaner" than other scripting languages while also having rich standard and extended libraries.
With no real recent experience (I fell deep down the hole into C/kernel etc), I wouldn't have any authority to judge how it's adapted to time. But the most common complaint I've observed at companies of all size and sophistication is "the deployment story is a disaster". But it also seems like uv allows people to do all the "I want this specific version of such and such and I don't want $OS to know about any of this" well?
Re math/ai it's an interesting comment because a language is one part the syntax/stuff you receive, and one part the community that tells you to do things a certain way. I'd guess that Python has become such a big tent it is a little hard to enforce norms that other languages seem to have. This somewhat reminds me of Bjarne Stroustrup discussing scaling/evolving a language.
I think a lot of it is things have shifted away from the raw language. Less and less you’re dealing with Python, and more an assortment of libraries or frameworks. Pandas, numpy, torch, fastapi, …, and a dozen others.
Packaging has been a nightmare. PyPI has had its challenges. Dependency management is vastly improved thanks to uv - recently, and with a graveyard of tools in its wake.
The modern Python script feels more like loosely combining a temperamental set of today’s latest library apis, and then dealing with the fallout. Sometimes parallels the Node experience.
I think an actual Python project - using only something remotely modern like 3.2+ standard library and maybe requests - is probably just as clean, resilient, and reliable as it ever was.
A lot of these things are and/or have been improving tremendously. But think to your point the language (or really the ecosystem) is scaling and evolving a ton and there’s growing pains.
I can see that. A little while ago I was working at a startup and we had a node.js thing that was really crucial to the business that did some gray hat browser automation stuff to scrape TikTok (the users opted into it, but TikTok itself was less permissive). For some reason a person wanted to move part of it to Python to orthogonally solve some other actual problem. They passed me the code and Pandas was there to effectively do an HTTP request and parse JSON and I thought to myself "woah, I'm not in Kansas anymore" -- I ended up not having to worry about it because I ported the idea back to the more mature node system and that turned out to be viable over time.
Libraries can overtake aspects of a language for better and worse. Ruby seemed really tied to Rails and that was great for it as an example.
Ha, Pandas just to parse a website is a bit extra, I’d say. But yeah, it’s weird that you need libraries and api endpoints to do basic tasks these days.
It feels like something broke around 2015-ish. Going back, you could make a whole app and gui with Basic. You could make whole websites simply with HTML+PHP, sometimes using nothing but Notepad. You could make portable apps in Java with no libraries - even Swing or whatever was built in.
Now…? Electron, a few languages, a few frameworks, and a few dozen libraries. Just to start.
Bizzare.
Everyone wants to be a programmer but nobody wants to write any damn code
— Ronnie Coleman
That has always remained my sole use of Python, scripting OSes and applications, my use of Tcl for application software trained me avoiding languages that always require going down to C for any performance related task.
Best of all with this approach, is that what is in the standard library suffices, no need to mess up with venvs, PYTHONPATH, or whatever is the current trend.
>"super slow bloated researchy untyped ai/math code that's a nightmare to work wit
I love reading comments like this because it just makes me feel good about my job security.
You are aware that things like Youtube and Uber back ends all run on Python, right?
I love reading comments like this because it just makes me feel good about my life choices.
You are aware that things like your bank and insurance all run on COBOL, right?
I'm happy to see this take gaining some steam. Python got a lot of love while it was growing to where it is now. IMO, that was largely well deserved.
But it seemed like a lot of people overlooked why it was loved. Most of us weren't wishing that our 2k+ line projects were all written in it.
Those little 20-500 line scripts were just so much more fun in Python than anything else though, and it showed up in survey after survey.
> Those little 20-500 line scripts were just so much more fun in Python than anything else though
It's notable that you've written this in the past tense. These kinds of scripts don't seem to be a focus for Python any more.
In fact, I recently heard as justification for a new Python feature: "it helps us with our 100-million-line Python codebase". The language has become extremely complex as it prioritizes the needs of a few teams writing millions of lines over millions of developers each writing relatively few lines.
The reason is that the design team are all working on these large codebases and, understandably, mostly focused on what makes their own lives easier. I was hopeful that in the transition from a BDFL-based governance system to a Steering Council, we would see a larger variety of experience and opinions designing the language. Instead, I don't think there has ever been a single scientist, finance worker etc on the Steering Council - it's always software developers, almost always employees of large software companies.
I’m curious what about the language is getting more complex. Any examples? The ecosystem definitely seems to be getting much more complex, but the language itself hasn’t evolved dramatically since type hints that I can remember.
Type hints aren’t a single addition - with every release they get more complex. It wouldn’t surprise me if the language included 20+ typing-related PEPs by now.
The other obvious example of complexity is pattern matching. The feature is very complex, especially how it breaks established rules of the language. It also required fundamental changes to the interpreter to accommodate it: a rewrite of the parser from simple LL(1) to PEG.
Python was similar for me after learning Perl and some C in highschool. During university I used Python 2 on and off. It was amazing during that era and what I could build.
Then came Python 3 and it just never felt the same. PyQT projects faltered. Deps split. Strings broke.
However I started using Nim a few years back which has given me that Python 2 feeling – except with static types, better overall language design, meta-programming, and performance!
> However I started using Nim a few years back which has given me that Python 2 feeling – except with static types, better overall language design, meta-programming, and performance!
And except tooling, ecosystem, documentation and practical real-world application.
There are plenty of practical real world usages from companies shipping video games, one of the first and most featureful eth2 servers, websocket servers powering millions of requests at Reddit, etc. Apparently some use in HFT as well now.
True the LSP is pretty bad, but Cursor makes up for a lot of that for me. Atlas dependency manager is great. Valgrind and TSan work perfectly. Gdb sorta works now. LLMS solve the docs issue.
The ecosystem is smaller, but I've been able to use it to successfully create tools for an IoT project with Nim running on an embedded esp32, a multi-threaded api server on linux processing images, and a web SPA with Karax in a couple of weeks of programming work. Oh and calling into Python for some datascience.
"math code" is generally using wrapped native libraries not really all that slow.
But this seems like an apples to oranges comparison. Yes, of course a few scripts are very different than "something largeish" written in Python
I'm wondering, what language do youb love nowadays?
C
Go
Would you really feel better about the same volume of Perl code, that was also using some FFI to a heavyweight C or Fortran math library?
Python got big by impeccable marketing and this is the logical continuation. Several people in the video are raging bureaucrats who haven't done much apart from talking. Steering Council members who canceled and libeled Tim Peters are in that video.
Python has always suffered from the overrepresentation of talkers, and the recent draconian "leadership" that consists of the worst people have driven most developers away apart from some failing corporate projects.
This video tries to revive the spirit that existed in 2000 before many of those developers sold out Python to corporations and turned utterly evil.
I remember learning it in college. How easy it was to pull and parse a webpage and allow me to store and study the world’s information. I was hooked.
1 hour and 24 minutes of python history, love it!
God bless the Go guys for not doing a Python 2 to 3 fiasco
History of women in the Python world: In 2006, the first two women were voted in as PSF fellows, Laura Creighton and Anna Martelli Ravenscroft. In 2008, there were two women on the PSF board, Gloria Willadsen and Allison Randal. The woman mentored by Guido was Emily Morehouse-Valcarcel. She is now on the steering committee but was not featured in the film. Less prominent in the documentary was Carol Willing who was on the initial steering committee. Also featured were Mariatta Wijaya and Lisa Roach-Carrier who were mentored by another developer.
For better or worse, I find Python beautiful. And here's an easter egg for everyone (it comes up in the Documentary too):
Even on HN, indentation reigns king.I enjoy:
Another fun one :)
Yeah, nothing has really ever hit the same levels of readability that Python has for me, even if a language like Rust is very well-designed and better in many aspects.
The launch of the documentary was followed up by a live Q&A session at EuroPython: https://youtu.be/Sf2AqQ5a38Y?si=BbJywWDCMZPgjhlN
Is MartelliBot featured? Alex Martelli did sooo much for the success of python in the early days.
He was patient, informative and above all extremely thoughtful in his stackoverflow responses. He was also very generous with his talks, all of which added to the rich ecosystem Python had back in the day.
Watching Python's rise has been a little wild. At first it was neck to neck with Perl and with Ruby after that. But then again nobody really expected AI to be this wildly popular.
There is a reason why NodeJS took off and was pretty much the prominent language on github before all the AI stuff with Python. Mind you this is pure JS, not even Typescript.
Processors and memory have gotten cheap enough were development speed matters more than compute cost.
IMO NodeJS popularity was expected. After all these years you still can't use anything other than JS on the frontend (WASM is still too green). So if you are going to master a language you might as well use it in the backend too.
I can’t wait to see it.
I was big into Python for over a decade of my career. I spoke at Pycon US and Canada. Wrote a few libraries. It had a great community.
I’ll always be grateful for it.
One fateful spring day in 2000/2001? I read the Python tutorial. It was so good I never wrote a single new line of Perl after that, nor Java for about twenty years (when I brushed up because of needing a job).
Reading all the complaints about it recently is a bit surreal. Newer developers can't program without IDEs and "type systems." Packaging was kind of a mess, but feel like uv solved it. Neither issue really affected me, I used setup.py almost exclusively until moving to uv maybe six months ago.
It was always a glue/prototyping language—if you're using it for kernel drivers or multi-threaded Fibonacci servers or worse, that bad decision is yours (or that of your boss). ;-)
Ugh, but why is the video so dark?!
Related:
Interview: Guido van Rossum Revisits Python’s Life in a New Documentary
https://thenewstack.io/guido-van-rossum-revisits-pythons-lif...
(https://news.ycombinator.com/item?id=45055272)
Can update the URL to the doc: https://www.youtube.com/watch?v=GfH4QL4VqJ0
(https://news.ycombinator.com/item?id=45056377 https://news.ycombinator.com/item?id=45050548)
Here's another article with some comments from the new documentary's director - and from unsung Python hero Paul Everitt. (Everitt hired Guido van Rossum and all the other core developers in the late 1990s -- while keeping Python open source, and voting the nonprofit Python Software Foundation into existence.)
https://thenewstack.io/guido-van-rossum-revisits-pythons-lif...
> world's most beloved programming language
The more I use python, the more I hate it. For the inconsistencies and the short comings and the stuff it glosses over and absurdities like having the default queue be thread safe (sacrificing performance). My personal opinion is it is a garbage language.
> absurdities like having the default queue be thread safe (sacrificing performance).
Why is this absurd? What are you writing where you need to scrape this sort of performance, but are perfectly fine with the overhead of interpreting bytecode at runtime, heap-allocating objects to represent floating-point numbers, not having homogeneous-type arrays that can store their elements contiguously in memory but which must indirect them, etc. etc. etc.?
Alternately, what world are you living in where everything a program does is CPU-bound and must be done efficiently? In this world, what led you to examine or try Python in the first place?
I used to love Python. I still love it, but I used to love it, too.
Hilarious . I was a python fan before I was a reluctant user. It still has the most reliable debugger integration of any mainstream language which is my favorite thing about the language in its current state.
Debugger >> language -- next most popular language manifesto slogan (i hope).
Url changed from https://lwn.net/Articles/1035537/, which points to this.
> most beloved programming language
Citation needed
It’s #1 in the language admired/desired section of this year’s Stack Overflow Developer Survey. Perhaps that’s what they were referencing?
https://survey.stackoverflow.co/2025/technology/#admired-and...
"Want to use" is not the same thing as "I used it and I love it"
It is a very subjective take indeed