People are inherently lazy and they take shortcuts. 5 years ago we had joke O'Reilly covers like "Copying Code From Stack Overflow" and the DailyWTF provided a steady supply of terrible code. Back in the 2000s I remember reading the the majority of software engineers hadn't read a book on software engineering in the last year. A lot of SWEs are really incurious and the job is just a method to finance their lifestyle. They aren't interested in the craft.
On the other hand, I know SWEs who don't use AI tooling. Some of them are excellent engineers and trust themselves more than the LLM, but many are average engineers, and all I can figure is that the latter group have the belief that they won't be replaced by AI if they don't use it. The other problem is that using an LLM requires good communication and planning skills. Instructing the LLM is more in the realm of a PM/PO, or maybe a manager, than an actual engineer.
Note, I was originally going to write about Leaky Abstractions, aka Leaky Vibes. But I'm still working on a couple of articles that incorporate that idea a bit more deeply.
Great question. I've been struggling with it myself. On the one hand I feel like this is just a transition period to unlocking new sets of problems and challenges at a higher abstraction level where AI will be a tool just like calculators and early generation programming languages, where I don't need to know the implementation details, all I need to do is validate the successful achievement of the goal. On the other hand, fruitful creativity at a higher level of abstraction still requires development of good reasoning skills and practice. It's much easier to do this with math by forcing students to calculate by hand on paper, and only - when they're good at it - use calculators. You're only offloading cognitive tasks in one dimension (math reasoning) and it's not that time consuming. You are still congnitively developing in other dimensions. But AI allows you to cognitively offload in most dimensions, including the ones that require huge time commitment. So it will require immense discipline and dedication to learn things. Imagine telling the student you have to learn programming, classes, functions, etc. just so you could use AI do it for you, so you could evaluate how well AI did its job. Good luck with that ! So this is going to be an interesting development: to become a good AI code developer, you need to learn / practice programming, but why learn it when AI can do it for you. Hopefully this is going to work itself out without having to live in Idiocracy, or worse, some version of Apocalypse.
The speed that AI can make changes to code seems to encourage vibe coding over ai assisted engineering. You tell yourself you’ll work hard to study and understand the final prod code before shipping it and that paying attention to the semi functional interstitial stages is pointless anyway, but once you’re in the habit of iterating with the LLM doing all the heavy lifting, it takes a whole lot of willpower to follow through. Thus, the path of least resistance. Brainrot Zombie Workslop Mode.
One of the issues that I see is this: instead of brainstorming with AI, people take the shortcut of copying and pasting the answer without giving a second thought about it (or do a quick, superficial review of the output at the very most), generating the famous "AI slop".
I can only speak for myself, but I noticed that when I use AI to correct my grammar (since English is not my first language), AI tries to go ahead and "improve my flow". Sometimes it goes well, and I can use bits and pieces of it, but other times it uses words that I would never use IRL. Maybe I am old school, but I could never let whatever output AI gives replace my voice.
It's output vs outcome, everywhere. In school, kids think the point is to produce output (essays, homework) so they use whatever tools available to make that easier and faster. Outcome (learning) is too vague or not understood. At the office, people think the point is to produce output (reports, emails, dashboards, application code) so they use whatever tools available...
The first wave of brain decay (leading to rot) occurred with the ability for the human to easily find issues/error codes via search engines and not take the time to use reasoning brain power to figure out the issues. Finding and fixing a problem is one thing (like an out of memory error code), but not understanding the root cause or not knowing the disregarded first principle that caused the issue, is foundational. The quick fix vs. long term stability. Don't get me wrong, Searching the internet, and finding someone with the same is issue is fantastic - but have ran into many too dependent on search for the title they had.
I see this as a bigger problem for countries like India where majority of folks (like me) who join IT industry didn't even study Computers as their major and graduated from medicore colleges (they are many) but before AI, once you start working, it was like you are learning along the way by making mistakes, talking to people, breaking systems, going back to fundamentals as needed, if nothing, this growth felt real.
I have seen many people really growing as engineers after graduation because they hustled, coded, debugged, fixed etc.
But now, I am not sure, I have really wrote a rant about same here-
It boils down to what are we incentivizing as a society?
We are incentivizing execution disguised as efficiency at the cost of brain rot for critical thinking. Personally, I would like to think myself, and keep building the critical thinking mechanism.
I would continue to use AI for execution, however I would like to know the pros and cons of the system I am building with AI.
"Just ship it" is not my mentality.
Here is a philosophical take : being aware of what are we creating, and why are we creating is equally important to speed and execution.
It's certainly a thing. I mean, I occasionally catch myself forgetting how to do the "basic" stuff. But also, my kids share how often students can't explain their work.
I mean, even if you were very good at a skill, you lose that skill if you don't practice it. That's why great engineers suck at coding after they spend 10-15 years in pure people management.
Now, the truth is I'm not extremely concerned. People will eventualyl find the way. I mean, 20-40 years ago everybody knew how to fix their cars. Now, your manual says you must not drink the liquids (kinda). We drive the cars although we don't really know how they work.
Yeah, the tension is are you actually a dev if all you do is mindlessly push buttons, not knowing what you’re doing?
Or, are you a writer if you just copy and paste from an LLM, and exhibit no initiative in the act of thinking about what you’re writing, or the act of it?
The car driving an analogy breaks down though (pun intended).
What I described in the article are the people responsible for producing and creating. To use the car analogy, it’s more like a car factory that spits out cars based on vibes, where nobody at the factory is quite sure what is inside the car, or how it’s made, how well it runs, etc. This is the brain rot I’m talking about.
But I still think it will be fine. I mean, as an ex-web dev I used to work with designers who had no idea of anything else in the process aside from their part.
I know front-end devs with decades of experience, how just started touching databases.
“Mindless Velocity Without Comprehension” is the intelligently articulated and resonating phrase that I was looking for but didn’t know it yet.
In many ways it isn’t any different from the draconian fear and anger I received as an early adopter of calculators, then the HP programmable calcs that could graph and do calculus, solve equations…
It’s not that the concern of the misuse of this tech as an “easy button” and headwind to learning was unfounded. It was just the wrong response, and in fact the very lazy “easy button” behaviour that the educators were railing against.
Here we are today and half the kids in 6th grade are behind in math skills, and universities and colleges are putting the fear of AI-Expulsion in all the creative (arts) disciplines, not realizing they are in fact doing their cohorts MAX(HARM).
At a time when we should be enabling and elevating the next generation of creatives with MAX(AI_knowledge + AI_SKILLS) to compete and win in this new reality, we are firing up their admirable social justice passion to boycott the thing they arguably need more than any other cohort.
In 2-3 years many will realize they were gaslit and gaslighting themselves, and be shocked and angry when they realize they are so behind and underdeveloped in the very thing they now realize they need the most.
The cognitive mindset whiplash they will experience when trying to undo the muscle memory they trained for so long while turning a social justice cold upper body and full on shoulder against - will be super hard to deal with and swallow.
So back at the corporate IT tech ranches…a similar dichotomy of early adopters, and late abstainers exists. The overlay of brain-rich and brain-less use cases makes it both so obviously palpable to those of us paying attention, ignorantly “powerful” to so many others - and of course powerfully and knowingly harmful to those who are benefiting from the anarchy being wrought.
Sorry for the ramble, just off a cardio workout and things are pumping, including my passion and fast fingered typing. Lots to unpack here.
Yeah, I remember as kid when calculator watches were banned from the classroom. If we were scared of calculators, LLMs are calculators times infinite. So many more easy buttons
Believe an individual who is reasonably pragmatic + have an adaptable system + enjoy creatively thinking through different concepts (some new to their mental model) + have an “end state” in mind, will be “less” tempted to take shortcuts regardless of the tech.
My kids see not using AI in uni as a badge of honor
You raised them right
People are inherently lazy and they take shortcuts. 5 years ago we had joke O'Reilly covers like "Copying Code From Stack Overflow" and the DailyWTF provided a steady supply of terrible code. Back in the 2000s I remember reading the the majority of software engineers hadn't read a book on software engineering in the last year. A lot of SWEs are really incurious and the job is just a method to finance their lifestyle. They aren't interested in the craft.
On the other hand, I know SWEs who don't use AI tooling. Some of them are excellent engineers and trust themselves more than the LLM, but many are average engineers, and all I can figure is that the latter group have the belief that they won't be replaced by AI if they don't use it. The other problem is that using an LLM requires good communication and planning skills. Instructing the LLM is more in the realm of a PM/PO, or maybe a manager, than an actual engineer.
Damn, that’s around 5+ blog posts right there…lots to unpack, and all very legit
Note, I was originally going to write about Leaky Abstractions, aka Leaky Vibes. But I'm still working on a couple of articles that incorporate that idea a bit more deeply.
Not yet
Has it been published? Would love to review this concept with some colleagues.
Great question. I've been struggling with it myself. On the one hand I feel like this is just a transition period to unlocking new sets of problems and challenges at a higher abstraction level where AI will be a tool just like calculators and early generation programming languages, where I don't need to know the implementation details, all I need to do is validate the successful achievement of the goal. On the other hand, fruitful creativity at a higher level of abstraction still requires development of good reasoning skills and practice. It's much easier to do this with math by forcing students to calculate by hand on paper, and only - when they're good at it - use calculators. You're only offloading cognitive tasks in one dimension (math reasoning) and it's not that time consuming. You are still congnitively developing in other dimensions. But AI allows you to cognitively offload in most dimensions, including the ones that require huge time commitment. So it will require immense discipline and dedication to learn things. Imagine telling the student you have to learn programming, classes, functions, etc. just so you could use AI do it for you, so you could evaluate how well AI did its job. Good luck with that ! So this is going to be an interesting development: to become a good AI code developer, you need to learn / practice programming, but why learn it when AI can do it for you. Hopefully this is going to work itself out without having to live in Idiocracy, or worse, some version of Apocalypse.
The speed that AI can make changes to code seems to encourage vibe coding over ai assisted engineering. You tell yourself you’ll work hard to study and understand the final prod code before shipping it and that paying attention to the semi functional interstitial stages is pointless anyway, but once you’re in the habit of iterating with the LLM doing all the heavy lifting, it takes a whole lot of willpower to follow through. Thus, the path of least resistance. Brainrot Zombie Workslop Mode.
Just ship it…whatever it is…
One of the issues that I see is this: instead of brainstorming with AI, people take the shortcut of copying and pasting the answer without giving a second thought about it (or do a quick, superficial review of the output at the very most), generating the famous "AI slop".
I can only speak for myself, but I noticed that when I use AI to correct my grammar (since English is not my first language), AI tries to go ahead and "improve my flow". Sometimes it goes well, and I can use bits and pieces of it, but other times it uses words that I would never use IRL. Maybe I am old school, but I could never let whatever output AI gives replace my voice.
I bet that’s annoying AF
It really is.
I see this at my job, people will unashamedly post LLM output as "research". It's really annoying and doesn't add value.
Like, wtf do they think is going to happen?
This has a eyninyersting take on it: https://www.arcticdba.se/posts/turbo-charged-abacus-2/
thanks a ton. this looks very interesting. Reading it this weekend
*this has an interesting take on it: (wow Substack, no edit option?!?)
This is a fantastic article.
It's output vs outcome, everywhere. In school, kids think the point is to produce output (essays, homework) so they use whatever tools available to make that easier and faster. Outcome (learning) is too vague or not understood. At the office, people think the point is to produce output (reports, emails, dashboards, application code) so they use whatever tools available...
“Show me the incentive and I’ll show you the outcome” - Munger
The first wave of brain decay (leading to rot) occurred with the ability for the human to easily find issues/error codes via search engines and not take the time to use reasoning brain power to figure out the issues. Finding and fixing a problem is one thing (like an out of memory error code), but not understanding the root cause or not knowing the disregarded first principle that caused the issue, is foundational. The quick fix vs. long term stability. Don't get me wrong, Searching the internet, and finding someone with the same is issue is fantastic - but have ran into many too dependent on search for the title they had.
"Building fundamentals" is the way to go.
I see this as a bigger problem for countries like India where majority of folks (like me) who join IT industry didn't even study Computers as their major and graduated from medicore colleges (they are many) but before AI, once you start working, it was like you are learning along the way by making mistakes, talking to people, breaking systems, going back to fundamentals as needed, if nothing, this growth felt real.
I have seen many people really growing as engineers after graduation because they hustled, coded, debugged, fixed etc.
But now, I am not sure, I have really wrote a rant about same here-
https://www.linkedin.com/posts/ravi-asati-9ab532173_fundamentals-engineeringfundamentals-fundamentalsofdataengineering-activity-7412784431712645120-iCEL?utm_source=share&utm_medium=member_android&rcm=ACoAACkw8hMBiDNb4dw55qaTjHwEbj5AKKLHGP0
It boils down to what are we incentivizing as a society?
We are incentivizing execution disguised as efficiency at the cost of brain rot for critical thinking. Personally, I would like to think myself, and keep building the critical thinking mechanism.
I would continue to use AI for execution, however I would like to know the pros and cons of the system I am building with AI.
"Just ship it" is not my mentality.
Here is a philosophical take : being aware of what are we creating, and why are we creating is equally important to speed and execution.
It's certainly a thing. I mean, I occasionally catch myself forgetting how to do the "basic" stuff. But also, my kids share how often students can't explain their work.
I mean, even if you were very good at a skill, you lose that skill if you don't practice it. That's why great engineers suck at coding after they spend 10-15 years in pure people management.
Now, the truth is I'm not extremely concerned. People will eventualyl find the way. I mean, 20-40 years ago everybody knew how to fix their cars. Now, your manual says you must not drink the liquids (kinda). We drive the cars although we don't really know how they work.
Yeah, the tension is are you actually a dev if all you do is mindlessly push buttons, not knowing what you’re doing?
Or, are you a writer if you just copy and paste from an LLM, and exhibit no initiative in the act of thinking about what you’re writing, or the act of it?
I’d say in either case, no
The car driving an analogy breaks down though (pun intended).
What I described in the article are the people responsible for producing and creating. To use the car analogy, it’s more like a car factory that spits out cars based on vibes, where nobody at the factory is quite sure what is inside the car, or how it’s made, how well it runs, etc. This is the brain rot I’m talking about.
True my analogy was forced and not in place.
But I still think it will be fine. I mean, as an ex-web dev I used to work with designers who had no idea of anything else in the process aside from their part.
I know front-end devs with decades of experience, how just started touching databases.
Yet we have beautiful and functional websites.
I hope that makes more sense?
“Mindless Velocity Without Comprehension” is the intelligently articulated and resonating phrase that I was looking for but didn’t know it yet.
In many ways it isn’t any different from the draconian fear and anger I received as an early adopter of calculators, then the HP programmable calcs that could graph and do calculus, solve equations…
It’s not that the concern of the misuse of this tech as an “easy button” and headwind to learning was unfounded. It was just the wrong response, and in fact the very lazy “easy button” behaviour that the educators were railing against.
Here we are today and half the kids in 6th grade are behind in math skills, and universities and colleges are putting the fear of AI-Expulsion in all the creative (arts) disciplines, not realizing they are in fact doing their cohorts MAX(HARM).
At a time when we should be enabling and elevating the next generation of creatives with MAX(AI_knowledge + AI_SKILLS) to compete and win in this new reality, we are firing up their admirable social justice passion to boycott the thing they arguably need more than any other cohort.
In 2-3 years many will realize they were gaslit and gaslighting themselves, and be shocked and angry when they realize they are so behind and underdeveloped in the very thing they now realize they need the most.
The cognitive mindset whiplash they will experience when trying to undo the muscle memory they trained for so long while turning a social justice cold upper body and full on shoulder against - will be super hard to deal with and swallow.
So back at the corporate IT tech ranches…a similar dichotomy of early adopters, and late abstainers exists. The overlay of brain-rich and brain-less use cases makes it both so obviously palpable to those of us paying attention, ignorantly “powerful” to so many others - and of course powerfully and knowingly harmful to those who are benefiting from the anarchy being wrought.
Sorry for the ramble, just off a cardio workout and things are pumping, including my passion and fast fingered typing. Lots to unpack here.
Who’s next?
Yeah, I remember as kid when calculator watches were banned from the classroom. If we were scared of calculators, LLMs are calculators times infinite. So many more easy buttons
Believe an individual who is reasonably pragmatic + have an adaptable system + enjoy creatively thinking through different concepts (some new to their mental model) + have an “end state” in mind, will be “less” tempted to take shortcuts regardless of the tech.
that is a masterpiece Joe.
In record time too