It's not ape coding. It's skill coding. People who don't have the skill to do math and logic ask others to do it for them.
The reason we have programming languages is the same reason we have musical notation or math notation. It is a far more concise and precise way of communicating than using natural languages.
We could write music using natural language, but no one does because a single page of music would require dozens of pages of natural language to describe the same thing.
It's funny that you mention music and notation: sheet music is very compact for musical absolutes like pitch/rhythm/harmony, but a huge part of what we care about with music is nuance, which doesn't reduce cleanly to symbols. Hence there are plenty of words in musical notation that try to describe the desired characteristics of performance, that can't be otherwise encoded into that notation. For example, "with feeling".
That reminds me of an argument on here a while back: where I said I wished Spotify let you filter tracks by presence of pitch-correction or autotune. This wasn't because I thought autotune was 'bad' or modern artists were 'fake', but because sometimes I wanted to listen to vocals as a raw performance - intonation, stability, phrasing - I wanted the option of listening to recordings that let me appreciate the _skill_ possessed by the artists that recorded them.
I got _absolutely destroyed_ in that comments section, with people insisting i'm a snob, that I'm disrespectful, bigoted towards modern artists, there's no way i can actually hear the difference, and if i cant why does it even matter, and anyway everyone uses it now because studio time is expensive and it's so much cheaper than trying to get that perfect take. People got so angry, I got a couple of DMs on Twitter even. All the while I struggled to articulate or justify why I personally value the _skill_ of exceptional raw vocal performance - what I considered to be performance "with feeling".
But, I had to come to terms with the fact that anyone can sing now - no-one can tell the difference, so the skill generally isn't valued any more. Oh, you spent your entire life learning to sing? You studied it? Because you loved music? Sorry dude, I dunno what to say. I guess you'll have to find another way to stand out. You could try losing some weight. Maybe show some skin.
> It is a far more concise and precise way of communicating than using natural languages.
No. We have programming languages because reading and writing binary/hexadecimal is extremely painful to nigh on impossible for humans. And over the years we got better and better languages, from Assembly to C to Python, etc. Natural language was always the implicit ultimate goal of creating programming languages, and each step toward it was primarily hindered by the need to ensure correctness. We still aren't quite there yet, but this is pretty close.
This is why I never use a calculator. Since my school days I have the skill
to do long division. Why hit the sin button when I have the skill to write out a Taylor series expansion?
For many other purposes I have the skill to use Newton Raphson methods to calculate values that mostly work.
Those who use a calculator simply don't have these skills.
There is a notable difference between say, calculating long division through a calculator compared to prompting an AI to calculate the derivative of a simple continuous function. one requires _understanding_ of the function, while the other just skips the understanding and returns the required derivative.
One is just a means to skip labor intensive and repetitive actions, while the other is meant to skip the entire point of _why_ you are even calculating in the first place. What is the point of dividing two numbers if you don't even understand the reason behind it ?
I'm not quite sure I understand the logic of this and how people don't see that these claims of "well now everyone is going to be dumber because they don't learn" has been a refrain literally every time a major technological / Industrial Revolution happens. Computers? The internet? Calculators?
The skills we needed before are just no longer as relevant. It doesn't mean the world will get dumber, it will adapt to the new tooling and paradigm that we're in. There are always people who don't like the big paradigm change, who are convinced it's the end of the "right" way to do things, but they always age terribly.
I find I learn an incredible amount from using AI + coding agents. It's a _different_ experience, and I would argue a much more efficient one to understand your craft.
100%. I have been learning so much faster as the models get better at both understanding the world and how to explain it me at whatever level I am ready for.
Using AI as just a generator is really missing out on a lot.
But, because the numbers that get returned aren't always the right numbers, I try to approximate the answer in my head or with paper and pencil to kind of make sure it's in the ball park.
Also, sometimes it returns digits that don't actually exist, and it's pretty insistent that the digit is correct. If I catch it early I just re-run the equation but there is a special button where I can tell it that it used a digit that does not actually exist.
Sometimes, for complex ones, it tells me it's trying to calculate and provides some details about how it's going about it and keeps going and going and going, for those ones I just reboot the calculator.
You probably also don't use a calculator because it uses a scary language called arabic numerals. Why write 123,456 when you could write out in english: One Hundred Twenty-Three Thousand Four Hundred Fifty-Six? English is your programming language and also your math language, right?
LLMs are able to ingest numbers. And not just Arabic numerals; Did you know that there are other kinds of number systems?
Believe it or not, they also ingest multimedia. You don't need the English language to talk to a language model. Anything can be a language; you can communicate using only images.
And for that matter, modern LLMs are great at abstract math (and like anything else the results still need proofreading).
Bad analogy. The things I delegate to a calculator, I'm absolutely sure I understand well (and could debug if need be). These are also very legible skills that are easy to remind myself by re-reading the recipe -- so I'm not too worried about skills "atrophying".
I would probably just call it hand coding, as we say we use hand tools in wood working. Many do this for fun, but knowing the hand tools also makes you a better woodworker.
It's an interesting question: Will coding turn out to be more like landscaping, where (referring to the practice specifically of cutting grass) no one uses hand tools (to a first approximation)? Or it will it be more like woodworking, where everyone at least knows where a Stanley hand plane is in their work shop?
Can't wait to sell my artisinal hand-crafted software at the farmer's market.
Humor aside, long-handed programming is losing its ability to compete in an open market. Automate or be left behind. This will become increasingly true of many fields, not just software.
I call it Tradcoding. Not using AI for anything. (You just copy-paste from StackOverflow, as our forefathers once did ;)
I also have two levels "beneath" vibe coding:
- Power Coding: Like power armor, you describe chunks of code in English and it's built. Here you outsource syntax and stdlib, but remain in control of architecture and data flow.
- Backseat Coding: Like vibe coding but you keep peeking at the code and complaining ;)
I feel like this distinction isn't made often or clearly enough. AI as a superpowered autocomplete is far more useful to me than trying to one-shot entire programs or modules.
> “Autonomous Proxies for Execration, or APEs,” Pluto said.
> “By typing in a few simple commands, I can spawn an arbitrary number of APEs in the cloud,” Pluto said.
> “I have hand-tuned the inner loops to the point where a single APE can generate over a megaBraden of wide-spectrum defamation. The number would be much larger, of course, if I didn’t have to pursue a range of strategies to evade spam filters, CAPTCHAs, and other defenses.”
“Have you tried this out yet?” Corvallis asked.
“Not against a real subject,” Pluto said. “I invented a fictitious subject and deployed some APEs against it, just to see how it worked in the wild. The fictitious subject has already attracted thousands of death threats,” he added with a note of pride.
“You mean, from people who saw the defamatory posts seeded by the APEs and got really mad at this person who doesn’t even exist.”
I am ape writing this post after ape cooking breakfast, and then I'll go for an ape walk. In the future, maybe by Thursday, I can have agents do all of that and relax.
> The central view of ape coding proponents was that software engineered by AIs did not match the reliability of software engineered by humans
That's not the reason to do ape coding. AI generated code is not innovative. If you want to build something that no one has built anything similar to then you have to ape code.
It's pretty strange to me that we imagine a world where AI can handle every problem but we still talk about code. It's like how the Jetson's had bulky TVs.
You don't talk about all the assembly high level languages make, or at least it's no longer how people view things. We don't say "look at this assembly I compiled." Instead the entire concept fades to the back.
> You don't talk about all the assembly high level languages make, or at least it's no longer how people view things. We don't say "look at this assembly I compiled." Instead the entire concept fades to the back.
"Aping in" in crypto means (meant?) buying crypto without doing any research.
I know it's not what the thought piece is about, but it's equally accurate to say engineers are "aping in" on AI coding without doing any research. Very much the same vibe, my anti-AI friends suddenly flipped their tune to shill slopped together apps.
I expect it to go about as well as it did in crypto.
I would call it code-plumber. It's like a plumber who are today socio-economocally very distinct from architects, civil and structural engineers.
They will have very narrow to zero understanding — don't need it to fix — of shear forces, navier stokes.
They will command high rates if labor is limited(a plumber in Indonesia will commande lower ppp adjusted hourly rates than America). CS education become a subset of applied math since graduate hiring of code-plumber will require a narrower certificate to fix an AI system — which works very much like how plumber working to fix a building leak is different from a person fixing a water pipe burst under a road.
A few AI systems will become dominant, That should be a mix of Anthropics and your Googles. They will hire code plumbers to plumb together all the things they provide.
You don't have to use much brain at all as a code-plumber. You become a remote journeyman logging in and plumbing with given tools, making sure there is low back pressure(a term where load on future plumbers interacting/fixing with ai decreases) and the like.
I can't tell if yourr comparison to plumbers who don't understand theory (Navier-Stokes) is supposed to apply to "ape coders" who write code by hand or to "vibe coders" who outsource their understanding.
I really like to understand the practice of software engineering by analogy to research mathematics (like, no one ever asks mathematicians to estimate how long it will take to prove something…).
Something I think software engineers can take from math right now: years of everyone’s math education is spent doing things that computers have always been able to do trivially—arithmetic, solving simple equations, writing proofs that would just be `simp` in Lean—and no one wrings their hands over it. It’s an accepted part of the learning process.
Ape thinking is a cognitive practice where a human deliberately solves problems with their own mind. Practitioners of ape thinking will typically author thoughts by thinking them with their own brain, using neurons and synapses.
The term was popularized when asking a computer to do it for you became the dominant form of cognition. "Ape thinking" first appeared in online communities as derogatory slang, referring to humans who were unable to outsource all their thinking to a computer. Despite the quick spread of asking a computer to do it for you, institutional inertia, affordability, and limitations in human complacency were barriers to universal adoption of the new technology.
Producing code that does what's intended. The metric is fuzzy and based on the usage of the software, not the scale of lines of code. The extent of the importance of the code itself is that I'm practice software tends not to be "one and done", so you need to be able to go back and modify it to fix bugs, add features, etc., and it turns out that's usually hard when the code is sloppy. Those needs still should stem from the sandal actual user experience though, or else we've lost the plot by treating the mechanism as the goal itself
Would my user rather have a program that works 100% in 2 weeks, or a program that works 80% in one day?
When the user needs a change made, would they prefer I spend another two weeks extending my perfect program, or throw a few LLMs at their sloppy code and have it done in a day?
>Despite the quick spread of agentic coding, institutional inertia, affordability, and limitations in human neuroplasticity were barriers to universal adoption of the new technology.
Blaming lack of adoption purely on regressive factors follows the same frame that AI firms set. It isn't very effective satire for that reason.
It couldn't be that there is something essential and elementary that is wrong with the output, no... all these experienced experts are just troglodites and wrong and we should instead tag along with the people who offloaded the parts of their work they found tough to a machine the first chance they got.
There's no such thing as ape coding. There's still just coding, and vibe coding.
"Humans are now writing code in strict specification language so that AI agents have completely context and don't mistakes. This specification language is called C' and has led to a whopping 20% reduction of code. 1000 of C++ code can be expressed in no more than 800 lines of specification C' code written by humans"
I always thought that ape coding is what we call vibe-coding nowadays. Maybe the write of the article (maybe an ai generated blog?) misunderstood the terms.
Why has nobody mentioned yet how dangerous this really is? Have we all forgotten the great Datacenter burnings of 2031? The APEs are one step away from becoming fully fledged Luddite terrorists. Artisanal software is unamerican just like President Barron said the other day on his Twitch stream.
I don’t think it was meant that seriously. I read it as a humorous fiction written as if in the future, and I thought it was funny. Even speaking as a primate.
When someone so clearly misses an article written tongue in cheek and uses personal insults to let us know they missed the point, one begins to wonder. Apes code together. Apes stronger together. Return to monke.
WTF is this?! Sattire? AI generated propaganda? I honestly don't get it. Can OP elaborate why it's a good content worthy of people’s time? Thanks in advance.
Who knows? 5 people? 10? Only those who actually read it, and still not sure. Did they read it? Or did they also believe it's written by AI? I tried to believe it's written by a human when noticed its footer's note. It was hard to believe knowing my fear of today's trends, where many read is an empty dark where human time is voided. Yet, what is the main idea behind it then, nowadays, when just a few will actually read it?
Considering, how some modern attitude works for certain people, and how much power of trends and socials may offer, such terms get boosted over... and you just hope and keep believing in people...
Related: https://medium.com/@nathanladuke/b56da64a09ee (To Those Who Comment Their Opinion Without Reading the Whole Story... I was shocked at how many people simply read the title and then posted their opinion on the whole article...)
Yes, I understand what you're saying perfectly. And I had similar thoughts while I was writing this. I do not want to talk too much about the process of writing it, or the content itself, because I feel it's not right for me (the author) to talk about it. But I'd like to make it clear that I wrote this myself, and that many of the questions and points people have raised here have also been in my mind, and it was my intention to elicit this type of thinking. Thank you and all others for the comments - I really appreciate it, even the very negative ones. This is the first time I published something online and I'm very happy that it resonated with people.
I enjoyed reading it. Whether one believes the future will look like this fictional/hypothetical one, it encourages the reader to think about what would need to become true for this future to be plausible.
i don't understand the stance of the post and it being the first in the blog (congrats on getting this hot on your first post) I am unable to further investigate.
Is it sci-fi like writing from the perspective of a future person?
It sounds like someone trying to make assumption sounds as fact. Not a fan.
It is presented as a Wikipedia article from the future describing a subculture of tomorrow. See also https://qntm.org/mmacevedo for another example of this genre.
The reason we have programming languages is the same reason we have musical notation or math notation. It is a far more concise and precise way of communicating than using natural languages.
We could write music using natural language, but no one does because a single page of music would require dozens of pages of natural language to describe the same thing.
That reminds me of an argument on here a while back: where I said I wished Spotify let you filter tracks by presence of pitch-correction or autotune. This wasn't because I thought autotune was 'bad' or modern artists were 'fake', but because sometimes I wanted to listen to vocals as a raw performance - intonation, stability, phrasing - I wanted the option of listening to recordings that let me appreciate the _skill_ possessed by the artists that recorded them.
I got _absolutely destroyed_ in that comments section, with people insisting i'm a snob, that I'm disrespectful, bigoted towards modern artists, there's no way i can actually hear the difference, and if i cant why does it even matter, and anyway everyone uses it now because studio time is expensive and it's so much cheaper than trying to get that perfect take. People got so angry, I got a couple of DMs on Twitter even. All the while I struggled to articulate or justify why I personally value the _skill_ of exceptional raw vocal performance - what I considered to be performance "with feeling".
But, I had to come to terms with the fact that anyone can sing now - no-one can tell the difference, so the skill generally isn't valued any more. Oh, you spent your entire life learning to sing? You studied it? Because you loved music? Sorry dude, I dunno what to say. I guess you'll have to find another way to stand out. You could try losing some weight. Maybe show some skin.
No. We have programming languages because reading and writing binary/hexadecimal is extremely painful to nigh on impossible for humans. And over the years we got better and better languages, from Assembly to C to Python, etc. Natural language was always the implicit ultimate goal of creating programming languages, and each step toward it was primarily hindered by the need to ensure correctness. We still aren't quite there yet, but this is pretty close.
Those who use a calculator simply don't have these skills.
The skills we needed before are just no longer as relevant. It doesn't mean the world will get dumber, it will adapt to the new tooling and paradigm that we're in. There are always people who don't like the big paradigm change, who are convinced it's the end of the "right" way to do things, but they always age terribly.
I find I learn an incredible amount from using AI + coding agents. It's a _different_ experience, and I would argue a much more efficient one to understand your craft.
Using AI as just a generator is really missing out on a lot.
I always use the calculator.
But, because the numbers that get returned aren't always the right numbers, I try to approximate the answer in my head or with paper and pencil to kind of make sure it's in the ball park.
Also, sometimes it returns digits that don't actually exist, and it's pretty insistent that the digit is correct. If I catch it early I just re-run the equation but there is a special button where I can tell it that it used a digit that does not actually exist.
Sometimes, for complex ones, it tells me it's trying to calculate and provides some details about how it's going about it and keeps going and going and going, for those ones I just reboot the calculator.
LLMs are able to ingest numbers. And not just Arabic numerals; Did you know that there are other kinds of number systems?
Believe it or not, they also ingest multimedia. You don't need the English language to talk to a language model. Anything can be a language; you can communicate using only images.
And for that matter, modern LLMs are great at abstract math (and like anything else the results still need proofreading).
Strongly suspect this is sarcasm, but if it isn't, I applaud your... gusto? Or whatever it is you have going on here.
It's an interesting question: Will coding turn out to be more like landscaping, where (referring to the practice specifically of cutting grass) no one uses hand tools (to a first approximation)? Or it will it be more like woodworking, where everyone at least knows where a Stanley hand plane is in their work shop?
Humor aside, long-handed programming is losing its ability to compete in an open market. Automate or be left behind. This will become increasingly true of many fields, not just software.
I also have two levels "beneath" vibe coding:
- Power Coding: Like power armor, you describe chunks of code in English and it's built. Here you outsource syntax and stdlib, but remain in control of architecture and data flow.
- Backseat Coding: Like vibe coding but you keep peeking at the code and complaining ;)
- Vibe Coding: Total yolo mode. What's a code?
“Have you tried this out yet?” Corvallis asked.
“Not against a real subject,” Pluto said. “I invented a fictitious subject and deployed some APEs against it, just to see how it worked in the wild. The fictitious subject has already attracted thousands of death threats,” he added with a note of pride.
“You mean, from people who saw the defamatory posts seeded by the APEs and got really mad at this person who doesn’t even exist.”
That's not the reason to do ape coding. AI generated code is not innovative. If you want to build something that no one has built anything similar to then you have to ape code.
See Chris Lattner's blog where he explains the limitations of AI: https://www.modular.com/blog/the-claude-c-compiler-what-it-r...
You don't talk about all the assembly high level languages make, or at least it's no longer how people view things. We don't say "look at this assembly I compiled." Instead the entire concept fades to the back.
Some still do. Os and compiler devs to name a few
I know it's not what the thought piece is about, but it's equally accurate to say engineers are "aping in" on AI coding without doing any research. Very much the same vibe, my anti-AI friends suddenly flipped their tune to shill slopped together apps.
I expect it to go about as well as it did in crypto.
It's so great to be alive in this time of of dehumanizing AI.
https://en.wikipedia.org/wiki/Human_taxonomy#History
They will have very narrow to zero understanding — don't need it to fix — of shear forces, navier stokes.
They will command high rates if labor is limited(a plumber in Indonesia will commande lower ppp adjusted hourly rates than America). CS education become a subset of applied math since graduate hiring of code-plumber will require a narrower certificate to fix an AI system — which works very much like how plumber working to fix a building leak is different from a person fixing a water pipe burst under a road.
A few AI systems will become dominant, That should be a mix of Anthropics and your Googles. They will hire code plumbers to plumb together all the things they provide.
You don't have to use much brain at all as a code-plumber. You become a remote journeyman logging in and plumbing with given tools, making sure there is low back pressure(a term where load on future plumbers interacting/fixing with ai decreases) and the like.
Ape coding sounds harsher and more insulting, implying mindless or sloppy work rather than humor.
I really like to understand the practice of software engineering by analogy to research mathematics (like, no one ever asks mathematicians to estimate how long it will take to prove something…).
Something I think software engineers can take from math right now: years of everyone’s math education is spent doing things that computers have always been able to do trivially—arithmetic, solving simple equations, writing proofs that would just be `simp` in Lean—and no one wrings their hands over it. It’s an accepted part of the learning process.
The term was popularized when asking a computer to do it for you became the dominant form of cognition. "Ape thinking" first appeared in online communities as derogatory slang, referring to humans who were unable to outsource all their thinking to a computer. Despite the quick spread of asking a computer to do it for you, institutional inertia, affordability, and limitations in human complacency were barriers to universal adoption of the new technology.
When the user needs a change made, would they prefer I spend another two weeks extending my perfect program, or throw a few LLMs at their sloppy code and have it done in a day?
In that picture, aping is probably a step up from stochastic parroting.
It should be flagged and taken down.
Blaming lack of adoption purely on regressive factors follows the same frame that AI firms set. It isn't very effective satire for that reason.
It couldn't be that there is something essential and elementary that is wrong with the output, no... all these experienced experts are just troglodites and wrong and we should instead tag along with the people who offloaded the parts of their work they found tough to a machine the first chance they got.
There's no such thing as ape coding. There's still just coding, and vibe coding.
Considering, how some modern attitude works for certain people, and how much power of trends and socials may offer, such terms get boosted over... and you just hope and keep believing in people...
Related: https://medium.com/@nathanladuke/b56da64a09ee (To Those Who Comment Their Opinion Without Reading the Whole Story... I was shocked at how many people simply read the title and then posted their opinion on the whole article...)
Is it sci-fi like writing from the perspective of a future person?
It sounds like someone trying to make assumption sounds as fact. Not a fan.
Seems like it's a doubly offensive term.
Are there better terms, less encumbered by bigotry, while still covering the "meat space" quality to this development approach?