used to have a habit of thinking in code. it'd be like walking down the street and immediately seeing what kind of code would make the next paragraph.
now it's thinking in prompts. half a recipe for making pasta is in the middle of my brain. i just need to make the prompt to add that.
i learned to code when i was a geophysicist with no computer science education. i was forced to read documentation. i built a lot. it took me years to realize that everyone who had a similar skill set was doing things that made it difficult to be effective. the world was full of idiots. now there are fewer idiots because of an LLM which knows everything. i'm pretty sure i wouldn't have thought it necessary to write code in the first place if someone could do it for me.
no one talks about how to preserve the skills that will make future generations smarter. we're getting worse at thinking deep and dealing with humans because our AI tools don't encourage it.
it's really shameful to think about the fact that now it's more efficient to think about things in terms of "prompt" rather than code.
but this isn't an anti-LLM post. i use it all the time to save time on writing. i'm optimistic that it'll help me be a better programmer. and i've been doing three hackathons at the same time, and i couldn't have done it using only one brain at 100% usage capacity. it makes life so much easier.
being behind is always an unpleasant feeling. i'm on the edge of a bug in the system:
it tells me what the bug is, and suggests a fix.
"what does it look like?" i ask.
the answer has too many technical details. most of them are correct, but i'm too far behind on context.
so i'll let it take care of it. it fixes the bug, commits the changes, and starts a pull request.
"wait a minute… is there a reason for this commit?"
"you're asking me a question before i even got started!"
"this isn't good. i'll check the git log…"
this sounds like an opportunity to build a mental model of what's happening. this is a perfect situation to be an agentless developer. but i can be busy with the next 10 threads. i'd lose a lot of time. maybe that's okay? let's see what the changes look like…
the changes aren't great. it's okay so far. wait a minute… i should double check this change…
oh. okay.
next thread.
this is how we get to where we are today…
i don't expect to switch back from thinking in prompts… i'm optimistic about LLMs! they are helping a lot of people do incredible things! i'm embarrassed that i'm still not doing some things that i can easily delegate with prompts.
Top comments (6)
Exactly, Daniel! I'm currently reading a book written about 20 years ago, and the author predicted surprisingly well what modern AI would look like.
Sometimes the AI suggests to the main character, who is a programmer, that it could just write something for him. And he replies that he'll do it himself because he doesn't want to get out of practice.
Maybe we should do that from time to time too. Because I have to admit, I'm already starting to think in prompts.
sylwia, that's the piece i left out. choosing to do it yourself on purpose instead of letting the skill drift away by default...
This:
"choosing to do it yourself on purpose instead of letting the skill drift away by default"
... resonates big time - I've been banging that drum almost too often when commenting here on dev.to ...
If all we do is prompt without knowing any of the underlying 'craft', aren't we then becoming extremely dependent, and vulnerable? Like 'prompt monkeys' with big primate brains, but using very little of it ...
P.S. on the other hand, there are people who say this is just about replacing one kind of skill with another kind of skill - we also don't program in assembly language anymore, something like that ... this sounds plausible, but somehow I'm not fully convinced :-)
The assembly comparison breaks for me on one point. nobody writing c had to double-check the compiler's output line by line to trust it. i still read every diff an agent hands me. that's the real test for whether this is a clean abstraction or just dependency… does the layer above still need to verify the layer below? right now, for me, yes, every time.
"prompt monkeys with big primate brains, using very little of it" — that's uncomfortably close to how it feels some days.
@leob @dannwaneri but the truth is, it's always been the case that the better you understand what's happening at a lower level in a language, the better programmer you become. And somehow I don't think that's going to change anytime soon.
Yeah interesting take! Of course it doesn't have to be either/or, it can be both, but this might be a "slippery slope" ...