Remix.run Logo
socalgal2 6 hours ago

To me it's all abstraction. I didn't write my own OS. I didn't write my own compiler. I didn't write the standard library. I just use them. I could write them but I'm happy to work on the new thing that uses what's already there.

This is no different than many things. I could grow a tree and cut it into wood but I don't. I could buy wood and nails and brackets and make furniture but I don't. I instead just fill my house/apartment with stuff already made and still feel like it's mine. I made it. I decided what's in it. I didn't have to make it all from scratch.

For me, lots of programming is the same. I just want to assemble the pieces

> When you skip the process of creation you trade the thing you could have learned to make for the simulacrum of the thing you thought you wanted to make

No, your favorite movie is not crap because the creators didn't grind their own lens. Popular and highly acclaimed games not at crap because they didn't write their own physics engine (Zelda uses Havok) or their own game engine (Plenty of great games use Unreal or Unity)

cowboylowrez 3 hours ago | parent | next [-]

When I read discussions about this sort of thing, I often find that folks look harder for similarities and patterns but once they succeed here, they ignore the differences. AI in particular is so full of this "pattern matching" style of thinking that the really significance of this tech, ie., how absolutely new and different it is, yeah it just sort of goes ignored, or even worse, machines get "pattern matched" into humans and folks argue from that point of view lol witness all the "new musicians" who vibe code disco hits, I'll invariably see the argument that AIs train on existing music just like humans do so whats the big deal?

But these arguments and the OP's article do reinforce that AI rots brains. Even my sparing use of googles gemini and my interaction with the bots here have really dinged my ability to do simple math.

Krssst 6 hours ago | parent | prev | next [-]

OS and compilers have a deterministic public interface. They obey a specification developers know, so you they can be relied on to write correct software that depends on them even without knowing the internal behavior. Generative AI does not have those properties.

signatoremo an hour ago | parent | next [-]

> They obey a specification developers know

Which spec? Is there a spec that says if you use a particular set of libraries you’d get less than 10 millisecond response? You can’t even know that for sure if you roll your own code, with no 3rd party libraries.

Bugs are by definition issues arise when developers expect they code to do one thing, but it does another thing, because of unforeseen combination of factors. Yet we all are ok with that. That’s why we accept AI code. They work well enough.

raw_anon_1111 an hour ago | parent | prev | next [-]

Yes but developers don’t have a deterministic interface. I still had to be careful about writing out my specs and make sure they were followed. At least I don’t have to watch my tone when my two mid level ticket taking developers - Claude and Codex - do something stupid. They also do it a lot faster

refactor_master 5 hours ago | parent | prev [-]

But the code you’re writing is guard railed by your oversight, the tests you decide on and the type checking.

So whether you’re writing the spec code out by hand or ask an LLM to do it is besides the point if the code is considered a means to an end, which is what the post above yours was getting at.

skydhash 3 hours ago | parent [-]

Tests and type checking are often highway-wide guardrails when the path you want to take is like a tightrope.

Also the code is not a means to an end. It’s going to be run somewhere doing stuff someone wants to do reliably and precisely. The overall goal was ever to invest some programmer time and salary in order to free more time for others. Not for everyone to start babysitting stuff.

jstanley 4 hours ago | parent | prev | next [-]

> I didn't write my own OS. I didn't write my own compiler. I didn't write the standard library. I just use them. I could write them

Maybe, but beware assuming you could do something you haven't actually tried to do.

Everything is easy in the abstract.

Hendrikto 4 hours ago | parent | prev | next [-]

> No, your favorite movie is not crap because the creators didn't grind their own lens.

But Pulp Fiction would not have been a masterpiece if Tarantino just typed “Write a gangster movie.” into a prompt field.

adriand 2 hours ago | parent | next [-]

> But Pulp Fiction would not have been a masterpiece if Tarantino just typed “Write a gangster movie.” into a prompt field.

Doesn’t that prove the point? You could do that right now, and it would be absolute trash. Just like how right now we are nowhere close to being able to make great software with a single prompt.

I’ve been vibecoding a side project and it has been three months of ideating, iterating, refining and testing. It would have taken me immeasurably longer without these tools, but the end result is still 100% my vision, and it has been a tremendous amount of work.

heliumtera 3 hours ago | parent | prev [-]

And if he did, why would I prefer using his prompt instead of mine?

"Write a gangster movie that I like", instead of "...a movie this other guy likes".

But because this is not the case, we appreciate Tarantino more than we appreciate gangster movies. It is about the process.

dropofwill an hour ago | parent [-]

This is exactly the process happening in the music space with Suno. Go to their subreddit, they all talk about how they only listen to ‘their’ songs, for the exact reasons you list.

Its bleak out there.

yason 5 hours ago | parent | prev | next [-]

The creative process is not dependent on the abstraction.

> For me, lots of programming is the same. I just want to assemble the pieces

How did those pieces came to be? By someone assembling other pieces or by someone crafting them together out of nowhere because nobody else had written them by the time?

Of course you reuse other parts and abstractions to do whatever things that you're not working on but each time you do something that hasn't been done before you can't but engage the creative process, even if you're sitting on top of 50 years worth of abstractions.

In other words, what a programmer essentially has is a playfield. And whether the playfield is a stack of transistors or coding agents, when you program you create something new even if it's defined and built in terms of the playfield.

tonyedgecombe 5 hours ago | parent | prev | next [-]

>I instead just fill my house/apartment with stuff already made and still feel like it's mine.

I'm starting to wonder if we lose something in all this convenience. Perhaps my life is better because I cook my own food, wash my own dishes, chop my own firewood, drive my own car, write my own software. Outwardly the results look better the more I outsource but inwardly I'm not so sure.

On the subject of furnishing your house the IKEA effect seems to confirm this.

https://en.wikipedia.org/wiki/IKEA_effect

globular-toast 6 hours ago | parent | prev | next [-]

There are two stages to becoming a decent programmer: first you learn to use abstraction, then you learn when not to use abstraction.

Trying to find the right level is the art. Once you learn the tools of the trade and can do abstraction, it's natural to want to abstract everything. Most programmers go through such a phase. But sometimes things really are distinct and trying to find an abstraction that does both will never be satisfactory.

When building a house there are generally a few distinct trades that do the work: bricklayers, joiners, plumbers, electricians etc. You could try to abstract them all: it's all just joining stuff together isn't it? But something would be lost. The dangers of working with electricity are completely different to working with bricks. On the other hand, if people were too specialised it wouldn't work either. You wouldn't expect a whole gang of electricians, one who can only do lighting, one who can only do sockets, one who can only do wiring etc. After centuries of experience we've found a few trades that work well together.

So, yes, it's all just abstraction, but you can go too far.

knollimar 31 minutes ago | parent | next [-]

In higher end work they do have specialized lighting, branch power, and feeder electricians. And among feeder even special ones for medium voltage etc

throwaway132448 5 hours ago | parent | prev [-]

Well said, great analogy. Sometimes the level of abstraction feels arbitrary - you have to understand the circumstances that led there to see why it's not.

Trasmatta 2 hours ago | parent | prev [-]

Did you not read the post? You're talking from the space of the Builder while neglecting the Thinker. That's fine for some people, but not for others.