- The post is built around a metaphor based on a misunderstanding. The following is not a "well-actually", but is to illustrate that the real world is often stranger and harder to predict and categorize than we might expect. From the post:
> '''Many people don’t realize this, but children in China first learn Latin characters, which they use to spell out Chinese phonetically, using a system called “pinyin.”'''
My understanding is that children in China learn many characters before pinyin. Characters are mapped to meanings first, and only later to sounds. Fwiw even in my Chinese-as-a-second-language course we were thrown into Chinese characters from the beginning.
Also, of course, Chinese characters have been around for thousands of years and sound-based writing for Chinese is very new. The techniques to get leverage and build up understanding of characters gradually are incredibly varied. Just as the ways we relate to code in the future are unlikely to be familiar or easy to predict.
- The post focuses on Python, but I think it touches on an interesting question before skipping past it: ideally, what language would be best for our AIs to be programming in? The article says Rust. But can we do better? Rust has strong typing and memory guarantees which I think are important, but it’s also slower to compile. If we’re going to be doing agentic programming, where the agent is operating in a tight loop, iterating on the code, then it seems like we’d want something that can be faster to run after creating new code. Effectively, we’d want the agentic equivalent of a Lisp REPL, but optimized for the agent, or at least a language that compiles quickly, as it is run. This is one of the roles that Python plays today. Perhaps there is also a slow, sophisticated compiler that digests the same syntax and spits out the fastest , most secure code possible once the agent has iterated its way to the final answer.
by noon-raccoon
2 subcomments
- If you don't know what is Pinyin I googled it for you (I didn't know what it is):
Pinyin is a system for writing Mandarin Chinese sounds using the Latin alphabet. Pinyin is commonly used for learning Chinese pronunciation and for typing Chinese characters.
by noon-raccoon
5 subcomments
- Python has wonderful set of libraries so it is probably going to stay with us for a while. However, I suspect major takeover by Typescript (despite I like Python more).
- These articles keep coming up, and the author never actually tries agentic coding in Rust vs Python. You will probably find that the LLM does better with Python for kinda similar reasons as humans. It's succinct and can be rerun quickly while you iterate. There's also the difference in training data. If/when a human needs to review code or intervene, same applies.
Can't say I've tried Rust, but my AI tooling has always been noticeably worse at doing comparable tasks in C++ instead of Python. Not just toy examples but real systems in prod with testing, maintenance, oncall, feature rollouts, etc.
- > If you’re going to write code with agents, then you have to know how to write code on your own
I still think learning to code, then learning engineering (i.e solving problems using rules of thumb) is crucial before any of agentic coding being sold these days. & lastly having taste - making sure you're not just accepting any library that the llm suggests
- Interesting take. Python is my first language, but when working with AI for my latest desktop project I just used Rust because of the performance.
by usernametaken29
1 subcomments
- It’s funny because I consider myself a Python veteran - about a decade or so of Python, and I had exactly the same thought. 99% of my code now is Java. It’s much less pleasant but the “enterprise nobs” just work. Static types, fast with Graal, awesome threading, and the quality of tooling are great - those are all areas that Python severely lacks in and has no interest expanding into, because it is a “fast prototype language”.
That fast prototyping can now be done in annoying but stable languages like Java or Go or Rust (or NET or Swift). So that cuts a massive leg from Python. Who will bother to maintain the ecosystem if a lot of senior folks are leaving in doves? No idea honestly
by DonsDiscountGas
2 subcomments
- > Why ask AI to write its output in a dynamic language with relatively slow execution (i.e., Python)?
So that it's easy for humans to review it. Same reason as ever. Obviously Python isn't always the correct choice, but the overlap with cases where vibe coding is the correct choice is pretty high.
Also wtf is Pinyin?
- Why teach people bad habits starting out? Probably dating myself specifically but I started out with Pascal, and I'm glad I did.
by waffletower
0 subcomment
- "(O)ther well-known developers are now writing code in languages they don’t know. It’s as striking as a Poet Laureate of the United States writing poetry in a language they don’t speak" This statement ought to be embarrassing to the author, but unfortunately the brazenness of this statement shows how far The Humanities have declined in attention for our culture. Let's try this as taking the poetry approach is probably hopeless -- I have never written any Haskell. I have lived in Japan for 5 1/2 years. I can read and understand Haskell far more than I can Japanese. Programming languages are far far far smaller and less complex than natural languages, and share many characteristics among them, despite their differences.
- If we're not writing code by hand anymore anyway, why not skip programming languages altogether and have the AI output machine code right away?
- > Of course, the topic on everyone’s mind was AI.
Some against their will.
> In a world where all coding is agentic, and where we are asking the agents to produce Rust, we might ask a deep and more disturbing question: Why learn Python at all? What’s the point of learning a programming language that an increasingly small group of people will be writing and using?
All the same structure everywhere.
- Now with the AI
- (Not the future; the present)
- Everything is changing
- But colon points to potential problem:
You’re worried about the future of Python. But not programming?
Be a part of the problem or the solution. But no, the author will say, one can’t stop a tsunami.
> Python has a future. But in a world of agentic coding, it might be increasingly for teaching the basics of software engineering and providing AI with high-quality training data, rather than for direct coding of applications. It’s still worth learning and knowing Python — but it’s also worth doubling down on basic software-engineering principles, which we’ll increasingly be using to instruct and judge AI agents.
Remember to mention AI Era, Agentic Era, or some other statement that is on the one hand completely obvious in the author’s mind but bears repeating like a mantra.
Yeah Python will be used to teach arithmetic before we spend the rest of our lives with a calculator. The conclusion is as banal as all the other fluff thought pieces.