I have been able to build applications that I couldn't dream of before, not because of a lack of capability on my part, but because of time: I don't have the time to learn all of the new APIs and frameworks to accomplish my goal. Now I can build far more complex useful applications, with functions and features that would take me months or more to learn how to code.
The downside is that I didn't learn how to use those APIs, but it can be argued that these skills are low value to begin with. APIs change, there are competing APIs that do the same thing, and you may only use that skill for one project and then move on. Gaining those skills can be a big time sink and may not result in long-term gain.
Think of all the time spent learning the ins and outs of come-and-gone APIs and frameworks over the decades (I chose not to provide examples to save the resulting side-arguments, but I know you can rattle some off in your head). Those APIs and frameworks were bridges to make developing easier for the common developer, but they change so quickly that I'd argue they waste our time, and lead to almost endless re-work as we re-architect our software for the framework de jour. And they grow in complexity over time, ultimately becoming the next bloated framework. It's an endless, wasteful cycle.
Maybe AI can help us get out of that.
For a generalist, it's a huge force multiplier.
In the future, there will be no more generalists with your capabilities. At all. No one will ever develop the skill. We're at the end of our career's lifetime. We're like the horse watching more and more cars appearing.
Within a generation, the coding languages we use today will all vanish, to be replaced with direct to metal methods, assembly, etc. The only reason C exists, is for humans. PHP, rust, python is for humans. There will be no more compilers. No more human-readable languages. No more scripting with readable code.
No more open or closed source.
Imagine taking every aspect of computing which is designed for humans to understand, and removing it, because it's redundant.
Now once removed, and once humans no longer understand on their own, imagine trying to build something independently? Imagine trying to bootstrap modern compute, without all the layers which came before?
My point is that soon, perhaps 20 years, most humans will be incapable of coding, developing, or working with compute in any way outside of an end-user role. Even those previously skilled, will now be looking at an entire kernel written in assembly.
And that's before new CPUs appear, with new assembly. New assembly, once again, not designed by or for humans to understand. And yes, current assembly is designed that way.
We are not simply looking at a bit of help here. We're looking at the entire end of every single computing job, ever. We're looking at the complete loss of control, of something which is the underpinning of our entire society. Every aspect of everything we have, runs on a chip now. Personal transport, everything in health care, everything in resource extraction, everything harvesting food through to delivery to table, all of it involves some aspect of compute.
And we soon will not comprehend nor create that underlying aspect of society.
I dunno. It all seems like the answer to the fermi paradox.
Verifying is harder than building!
That's pretty different from "didn't have the time/money/motivation to"
If you didn't have the skills to build something before then you don't have the skills to verify something is correct after
Clicking around a finished UI is not verifying
Maybe start at the first message here: https://news.ycombinator.com/item?id=48553444
I still don't have the skill/knowledge to build cross-platform native applications the way I'm doing it with an agent now. I am still able to verify it's correct. How is that possible if what you say is correct?
> Clicking around a finished UI is not verifying
Definitively a part of it, if you care about having mouse interactions and having graphical UIs.
GP said "couldn't dream of building". To make an analogy, I wouldn't dream of building a house if I had to do every bit of brick-laying myself. But with others doing what I can't do, I can indeed dream of building a house and I do know how to verify that the house was built to satisfy my dream.
This is exactly the naive gap that is happening with AI. There is no trusted middleman who does the verification and takes the burden of accountability. The AI vendor tries to sell it like magic but with a disclaimer that is is merely entertainment. The user tries to pretend they are reviewing, but often is just implicitly trusting the tool to do right by them on things they have no real capacity to evaluate.
It's a great example of a project that needs accountability, but there's also thousands of other projects that need absolutely no accountability.
It's all relative to the stakes. The lower the stakes the less informed verification is needed.
The real trick is being informed enough on the boundaries to know where it matters. In the construction analogy, you need to be informed enough to know that a house is a bad idea since there are safety concerns. However building something small and non-load-bearing is probably fine to "vibe".
Eg there's no expertise needed to judge a garden trellis or 2 foot picket fence. It either works or it doesn't, and if it fails down the road there's no harm.
This boundary knowledge is the important bit imo.
What I’ve learned is quite minimal due to the slop nature. However I’d have never even started this project in the past due to time, so it’s still fun being able to learn small bits of projects I’d otherwise not even touch.
We have plenty of them that humans even find to be pleasant to solve, such as Minesweeper :)