← Back to context

Comment by internet2000

6 hours ago

The moving tiny rectangles framing is interesting, it gets to the heart of why I find all the anti-AI takes so difficult to comprehend. If you never made any effort to connect what you do with what value is added in real life, then it's no wonder better tooling is leaving you lost. Programming (other than code golf) has always been an implementation detail for solving problems IRL.

The programming itself is the reward for people who love doing it. It attracts the sort of detail-oriented thinkers who enjoy the doing and don't frame everything in terms of "value added."

AI is attractive to the sorts of people who have their secretary write their Christmas cards.

  • AI helps you to focus on the aspects that you are interested in. Perhaps you care about database nifty stuff, but you may need the front end to make an end to end solution. You can delegate that part to AI

  • I think there's a middle ground. I like coming up with solutions to problems (mostly technical problems, may even be very low level ones). But I always found writing the code generally tedious. Basically, once I had a good detailed idea of what the implementation would look like, actually executing the plan would bore me.

    AI is still not competent enough to come up with good solutions in many things I work on. So, at least so far, AI has made me happier.

Carpentry has always been an implementation detail for making furniture. They have been able to purchase flat-pack chairs for all of their lives, but for some reason there are people who learn this skill and have fun slowly making things that factories already make at scale. A subset of those people have made lucrative businesses out of the very human craft that is carpentry, and are able to create custom pieces on-demand that you could never justify retooling a factory to create.

It is okay to view code as a means to an end. I disagree, preferring to treat code as craft, and striving for better systems that are easy to understand, maintain and extend. And I think that's the source of our disconnect; deeper than one's opinion about AI is one's value of human skill and the effect that has on the output. Maybe I overvalue it, and maybe creating code "manually" is going to look more like carpentry in the future; but you cannot expect to convince a skilled carpenter that an IKEA chair is just as good and accomplishes the same task.

  • This analogy falls flat because

    a) Carpentry already happens in the real world

    b) There's a clear problem being solved (you need furniture).

    Stretching your analogy to fit my point: pretend that programming is manually sanding wood, while AI-assisted programming is using a belt sander. If you're focused on the chair being built, getting a belt sander to help is great! If you're sanding for the craft (?) of it, focused on the wrist mechanics of rubbing sandpaper up and down, you'd be disappointed.

  • You cant convince anybody an ikea chair is just as good

    • It easy to convince a college student with $20 that an ikea chair is good. Artisanal is overkill for plenty of scenarios, and definitely those where time or money are constrained.

I think all it means when we say 'solve problems in real life' is just the stuff you have to do that tooling can't abstract you away from any more.

The sharp end of the debate now is around what exactly that means in the LLM world. It's extremely unclear what exactly the new level of abstraction unlocked is, or at least how general/leaky it is.

There's obviously just the stance of enjoying the craft, and that's one thing off to the side, but I think the major source of conflict for those who are more oriented towards living in the top level of abstraction (i.e. what you can do in real life) is between some of the claims being pushed about said level of abstraction and what many still experience in actual reality using these tools.

If you see programming purely as a means to an end, then yeah, I get this perspective. But to many there is enjoyment in the _doing_ and the craft of it beyond the end result. It’s why people get into woodworking or knitting despite the fact that it’s much cheaper, faster, and easier to buy a table or a sweater than to make one yourself. Value is subjective, and for some the value of code is not primarily in what you can sell to others.

If you've never made any effort to connect what you do to the underlying mathematics, then no wonder you think it's all an "automatible" implementation detail, despite three decades of the industry trying and failing.

  • What about mathematics means coding isn't automatible?

    Also, hasen't coding gone through many waves of automation now?