Hacker Newsnew | threads | past | comments | ask | show | jobs | submitcvhc (86) | logout
Python: The Documentary (lwn.net)
115 points by chmaynard 3 hours ago | flag | hide | past | favorite | 33 comments




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/

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.


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.


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 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.


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.


"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


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?

I'm wondering, what language do youb love nowadays?



The launch of the documentary was followed up by a live Q&A session at EuroPython: https://youtu.be/Sf2AqQ5a38Y?si=BbJywWDCMZPgjhlN

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.

God bless the Go guys for not doing a Python 2 to 3 fiasco

1 hour and 24 minutes of python history, love it!

For better or worse, I find Python beautiful. And here's an easter egg for everyone (it comes up in the Documentary too):

  import this
Even on HN, indentation reigns king.

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 a mess, but feel 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). ;-)


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)


Did they touch on Guido's 2022 completely unnecessary declaration to not help people of a particular race?

Just to stymy the spread of misinformation - this is in reference to an interview from 2019 or 2020, where he said he would prioritize women/minorities for mentorship. While I personally don't agree with that notion (IMO mentorship should go to the most qualified person, regardless of race/background), I definitely didn't hear it as a refusal to help white men.


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...


> 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...


It is a very subjective take indeed

> 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).


[flagged]


Justify that claim.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: