My attorney wife is currently yelling at a live feed of a CA supreme court argument. Wonder what ti would be like to set up a Twitch re-stream and watch live attorney commentary.
@levie You forgot one...
4) If AI multiplies the number of products we create, that also multiplies the surface area of compliance and litigation, separate and apart from the additional AI-associated legal challenges.
@GergelyOrosz “copyright does not protect derived works” incorrect. 17 U.S.C. § 106 explicitly gives a copyright owner the exclusive right to create derivative works. A port is generally considered a derivative work.
@jasonpurdy Now my wife and kids can hear the phrase “hold on, I’m telling Claude to do something,” when we’re out and about now, not just when we’re at home.
@jxnlco Solid advice. I'd push back on semantic search as "basically" a cost + latency optimization though. In my experience with legal docs, synonym/vocab mismatch is common, eg. "court record" vs "transcript." Grep fails miserably. User context matters.
Vibe code is legacy code
@karpathy coined vibe coding as a kind of AI-assisted coding where you "forget that the code even exists"
We already have a phrase for code that nobody understands: legacy code
Legacy code is universally despised, and for good reason. But why? You have the code, right? Can't you figure it out from there?
Wrong. Code that nobody understands is tech debt. It takes a lot of time to understand code enough to debug it, let alone introduce new features without also introducing bugs
Programming is fundamentally theory building, not producing lines of code. This is why we make fun of business people who try to measure developer productivity in lines of code
When you vibe code, you are incurring tech debt as fast as the LLM can spit it out. Which is why vibe coding is perfect for prototypes and throwaway projects: It's only legacy code if you have to maintain it!
I vibe code happily all the time. Most often for small apps that I don't need to maintain. I'm a big fan, have at it!
Vibe coding is on a spectrum of how much you understand the code. The more you understand, the less you are vibing
Simply by being an engineer and asking for a web app with a persistent database, you are already vibing less than than a non-programmer who asks for an "app" without understanding the distinction between a web app and a native app, or how persistent data storage works
The worst possible situation is to have a non-programmer vibe code a large project that they intend to maintain. This would be the equivalent of giving a credit card to a child without first explaining the concept of debt
You'll end up spending a lot of money and getting a large, buggy, legacy code base. If you don't understand the code, your only recourse is to ask AI to fix it for you, which is like paying off credit card debt with another credit card
At Val Town, we built Townie, an AI assistant that agnatically reads & writes code, runs it, views the logs, and keeps iterating until it's done. It's is an awesome tool for vibe coding. I heartily recommend it to folks who understand these tradeoffs. I use it to vibe code sometimes. Other times I keep in on a tight leash as it makes surgical edits to a project I care about
If you know any non-programmers spending thousands of dollars vibe coding their billion dollar app idea today, warn them that vibe coding is not going to get them where they want to go. They're going to have to learn to use their human eyes to read the code 😱, and that sometimes it's easier to start over with building a well-written code base from scratch than to fix a legacy one that nobody understands
@stevekrouse@karpathy There's also some semantic drift here. People claim to vibe code when in fact they're regularly reviewing changes. When you factor that in: understanding = a – b·vibe + c·CR