I go back and forth on this. For awhile yes it took a lot of workflow tweaks and finesse to get directionally correct outputs (thinking back like mid 2025). I invested time in figuring that out, mostly because I was interested, but those skills are all obsolete now, you don't need to worry so much about context management and special instruction recipes or anything these days.
The meta at this point seems to be mostly around "knowing what to ask for". Eg: I suck at prompting for specific design tweaks, because I don't have the design vocabulary to be specific and articulate what I want. It's a lot of trial and error. I hear people who are developing full scale applications without a tech background run into the issue writ large. For now, I have an advantage over these people when building applications. But perhaps that's just one round of RL away from being obsolete too. Supposedly the model will eventually have such good taste in design/architecture/whatever there will be little point in asking for tweaks.
The only thing that seems relatively future-proof is just being able to communicate clearly what you're trying to do. Not how to do it, or even what success looks like. Perhaps an element of it is even as basic as being honest with yourself.
> I don't have the design vocabulary to be specific and articulate what I want. It's a lot of trial and error.
One thing you can do is, once you finally do get the model to do what you want, ask it how it would have described the change itself, in a way that would have skipped the intermediate steps. In my experience, this lets me more quickly explain what I want in the future.
> The meta at this point seems to be mostly around "knowing what to ask for"
We came full circle on the problem that also exists with Google Search, and why so many people don't get good results out of it.
> For now, I have an advantage over these people when building applications. But perhaps that's just one round of RL away from being obsolete too.
I don't have a crystal ball, but my eggs are in the basket of "It isn't, and it won't be"
> The only thing that seems relatively future-proof is just being able to communicate clearly what you're trying to do
This somehow contradicts the previous statement. The advantage you have is, because of domain knowledge expertise, you're able to articulate what you want. It's not that you knowing what LazyLoading is that you now can describe it better, you can immediately tell that when your Frontend stalls for 5 seconds after hitting the "Load" button, perhaps it eagerly loads and blocks.
I don't know. Claude Opus 5.5 still makes rudimentary mistakes all the time as I use it.
More than that, it cannot go beyond a certain level. Like a dog that can only do dog-level actions. I've lost count of the number of times I step back, take a critical look at what it has been hacking away at for hours, which would seem OK, but can be replaced by a much more effective architecture.
For the foreseeable future, a human is still very much needed in the driver's seat.
I did the same in about the same timeframe. I created a nice little hierarchy of "when writing tests, read docs/test-patterns.md" type logic. The idea was to put all of my personal heuristics about coding in a "lazy loaded" documentation directory. I'm able to generate Java code that is nearly the same as what I would generate if I was coding it myself. I haven't deleted my documentation or anything. I see people making this claim, did you literally delete your coding documentation or something?
It seems like, for example, some people like to use var and some people like to use the full type name in Java declarations. The LLM can't know your preference upfront, you need to tell it. When people talk about shitty vibe-code I assume it's because they didn't do these steps.
I could see (but wouldn't count on it) the argument that the current models are so good at recognizing patterns in the code that in a mature well-organized codebase they don't need to be told what the patterns are, but I haven't bothered with those experiments yet. If it ain't broke don't fix it was my thinking.
People preached the wrong imperative before "or get left behind." Turns out they really meant "get in now and re-evaluate everything you think you know every month in perpetuity or get left behind." I'll be here typing the code until the dust settles, and do my thinking then.
Agree. Maybe such soft skills will become a lot more important soon, for instance also the ability to translate feelings into useful information, since LLMs cannot feel as humans do.
Personally I've been very hesitant to deep-dive into putting together the perfect AI-workflow, I've been sticking to just using the conversational/chat modality for pretty much everything, usually that gets me as far as I need. It's just really hard to justify spending time on it when it all potentially gets turned upside down next month again.
It seems unlikely a few rounds of rl are going to fix the following problem: most things are more complex than they seem on the surface, and decisions to be made. There are always trade-offs.
We have graduates come in and master development with agents in a few days. There's really not that much to it. There are a lot of people out there trying to make it sound difficult. Maybe to make themselves feel better, maybe to try and make money?
Vocabulary and ontology are everything.
> I don't have the design vocabulary to be specific and articulate what I want
It is very valuable to fill in this gap, and you can even use the same tools to help with this as well.
> The only thing that seems relatively future-proof is just being able to communicate clearly what you're trying to do. Not how to do it, or even what success looks like.
And knowing the right thing to ask for and not giving it wrong assumptions. And knowing, somewhat, how it interprets certain words and phrases.
Huh, just like any tool, you have to know how to use it
If you don't have specifics about what success is, what it looks like, and how it works, then it seems like correct output is almost anything.
I think there are a lot of people using AI who aren't as familiar with these tools as us. We stop noticing a lot of the complexity when we pick it up gradually. There are so many powerful capabilities built into codex/ claude code that have little or no UI affordance.
it's tons of small things like choosing the right effort level for a task. or knowing when to ask for subagents. oh, you can have two threads working at the same time and communicating with each other? you can do /side to parallel path and fold that back into the main thread?
which of these things happens automatically, and which do you need to ask for? and does any of this still work the way it did a few months ago?
the list goes on forever. many users of AI are only just now getting comfortable with skills (and probably still writing bad skills unfortunately hah).
A lot of the specific things you learned may have become obsolete. But there's still a gap between what these tools can do and what most people know how to get them to do. Keeping up with that is a skill too, but perhaps not forever.