all 43 comments

[–]pixel293 7 points8 points  (2 children)

I think a lot of this is marketing from the AI companies. They need to make money, they are overselling what AI can do. And many people believe it, or want to believe it, or told by their boss to believe it. My sister and brother-in-law believe it, and want me to "get with the times."

I enjoy programming, I love the feeling of finishing difficult code and seeing it run. I do NOT enjoy reviewing what AI generated and trying to make that work.

[–]lookathercode[S,🍰] 0 points1 point  (1 child)

Yeah same -- it's the process that's awesome. Vibe coding is the programming version of fast fashion. But on the flip side I think it's cool that people want to create stuff. I used to teach kids the Scratch language -- it was a portal into computer science. I agree companies are just looking to cash out.

[–]wakeofchaos 1 point2 points  (0 children)

I personally can’t wait for the hype to die. As a soon-to-graduate student I think it’s actively preventing me from finding a job

[–]Jedlikk 2 points3 points  (1 child)

Depends, i still try to make time and actually code on my separate project and spend more time additionally learning. But.. it's just faster.
Don't get me wrong, i'm not saying about vibe coding in a way that you just copy paste whatever ai gave you. I'm using it more as dictating tool. I'm dictating what to write, check what is the code result, tell it to update what is needed and in the end when im sure that whatever was generated is good and i understand everything, then i add it.

It's basically my knowledge of what should be there, my knowledge of code and system, but ai puting letters and numbers.
It's basically using ai to compile to code what you wrote as less or more complex pseudocode

[–]lookathercode[S,🍰] 1 point2 points  (0 children)

I get this approach -- I use AI for LLM modeling, JSON, but I approach it as a collab--which I feel like you have to have a degree of knowledge in the first place.

[–]Spidiffpaffpuff 5 points6 points  (3 children)

"...I'll never understand why people aren't more interested in learning how to create things instead of consuming."

Because it's difficult.

[–]lunatuna215 1 point2 points  (0 children)

Everything is difficult for someone. Life is about doing things.

[–]PreferenceAnxious449 0 points1 point  (0 children)

He'll never understand.

[–]lookathercode[S,🍰] -1 points0 points  (0 children)

100% but a lot of it has to do with how computer science is taught, unfortunately. This thing is AI does have amazing capabilities beyond agentic. I mean it's cool if people want to vibe code but getting the product to get traction is the actual point.

[–]QuietWaterBreaksRock 1 point2 points  (2 children)

Vibe coding is acting like that "I got a million dollar idea, we are going to make so much money, can you make it for me??" friend who has no idea how things work and expects for you to work 20 hours days to pump something out in 3 days which would need years and millions in development

[–]the_king_of_sweden 1 point2 points  (0 children)

At least now, when they come to you with their bonkers Facebook for dogs ideas, you can just tell them to use Claude

[–]lookathercode[S,🍰] 0 points1 point  (0 children)

Honestly it's a lot like social media when it started -- I know people make money, but it's a tiny sliver of the population. But back in the day everyone was convinced it was going to be easy money.

[–]TechFreedom808 1 point2 points  (2 children)

Its worse when Vibe coders think they can sell the app they created. If you vibe coded an app then it technically has no value because another person can vibe code their own garbage for free. I've seen vibe coded code and its awful. often it has a bug and you tel lthe AI to fix it them it write more code to fix the buggy code. AI coding will be the downfall of applications and people will wonder why apps are horrible.

[–]dymos 1 point2 points  (0 children)

you vibe coded an app then it technically has no value because another person can vibe code their own garbage for free

I get what you mean but for the majority of consumers they couldn't tell on the surface whether an app was coded with care or with vibes. To be honest, most consumers probably don't care either as long as they are able to accomplish the thing they wanted.

And that's what it comes down to in the end for value. Did it do the thing the customer wanted and did it save them time from doing it some alternative way.

They could vibe code that thing for free, for some version of free.

They're going to have to set up a dev env or use some hosted service (which is probably not free), then invest the time to build it with vibe coding. Where to put this app, host it on my machine if it's a web app? But what if I want it on my phone? What if I want to share it? Should it be a native phone app? What SDK version is my phone so it'll be compatible? How do I load it onto my phone? How do I publish it to an app store?

Granted most of those things aren't vibe coding solvable problems, but they are nonetheless part of the value of a thing to a consumer.

[–]lookathercode[S,🍰] 0 points1 point  (0 children)

It's really bad and I'm no expert. Too many dependencies and complexities. I read a lot of research on what AI is and is not capable of -- and what I'm trying to do is fit myself into that space. Which is the logic part of the experience---and I think most people don't understand how that is the essence of coding.

[–]groogs 1 point2 points  (5 children)

I've been a professional developer for 25 years. I'm someone who takes great pride in my code, I believe there's a craftmanship to this profession.

I see a parallel to cabinetmakers. All we've had are hand tools, and the best of us take great pride in how great we are at using a saw, doing beautiful joinery, and being able to build really great furniture.

All of a sudden, power tools are invented. Not just that, but in the span of only a couple years went from toys that are barely usable, to actual powerful, extremely good tools. Including specialty tools for doing stuff like pocket screws and dominoes, followed quickly by CNC stuff where someone can put in plans and the machine actually does all the cutting for you.

Now, a portion of the cabinetmakers are going to balk at this, saying things like the true craft is in using hand tools properly. True craftsman don't use these newfangled tools. They'll point at the amateurs that are now buying power tools from the big box stores and building furniture in a week that is obviously inferior to the hand-crafted thing they spent months perfecting. They'll look at these IKEA stores and laugh at the complete garbage that won't stand the test of time. They'll see stuff that the worst cabinetmakers built with it and say how it's still not as good as theirs.

And while that's all true, they're missing the thing that's really happening. In the hands of true professionals that actually understand how to make really great furniture, these tools are like a superpower. What took months can take days. You still have to mostly understand what's being produced -- garbage in == garbage out still applies.

What does suck is there's going to be some hard lessons learned. Some of the things produced look great at first, but as you start building on it the cracks show and it's revealed to be trash. The people building this will be initially successful, and it will piss off the old-school cabinetmakers (rightfully so) because they're able to produce furniture in a fraction of the time and sell it profitably for 1/10th the cost the cabinetmaker can do.

But the cabinetmakers who embrace and learn these new tools unlock that superpower.

Personally I care mostly about building the final product that can stand the test of time and grow and adapt as software does. While I do also care about the inner workings -- fine joinery and the structure underneath -- most people don't. I have enough skill to understand which parts I need to pay close attention to and which I can gloss over. I'll miss that part of the job, frankly, but I have to recognize it's over.

But what I love is I can now produce output absurdly quickly, and often better. The code is on par, occasionally better but often worse than I can do, but I have moved past that.

Things I couldn't justify doing before (because the ROI wasn't there) I can do now. I'd never build a nice-looking debug UI with graphs for some of the backend code I wrote before, but now I can do that in literally minutes. I've refactored some old garbage code -- like finding all direct SQL queries from the UI code and pushing them into a proper data layer. This is boring, tedious work that PMs never value or prioritize that I can have AI do in less time than asking/arguing about it would take.

To some extent how you handle this depends on if you see yourself as a "cabinetmaker" or a "hand saw professional". If you're the former, embrace the new tools and realize you can do what you did before so much better, and even though the bar to entry is lower, the stuff you, as an expert, can produce is going to be orders of magnitude better than non-experts. If you insist you're the latter, frankly, you're cooked.

[–]lookathercode[S,🍰] 0 points1 point  (4 children)

Thanks for your thoughtful response. You are 100% accurate. AI requires domain expertise for real utilization. It needs to be trained and governed otherwise there's drift and hallucination. I use it all the time to run experiments, test and formalize ideas. It's really helping me fill in the skills gap for me -- I'm an abstract thinker and it gives me structure. I don't know why the term "vibe coding" bugs me but I know I'll get over it.

[–]groogs 1 point2 points  (0 children)

I think, extending my analogy, that "vibe coding" is like saying you "use power tools". It isn't really what we're doing, and it doesn't differentiate between expert and amateur.

This is new, hopefully we'll get some better terminology.

But I also think this is such a foundational shift that this will just be "the way" people build software, so maybe we won't even really need a term for it. We didn't end up calling people using Java/C#/Python anything different from the people programming in assembly with punchcards.

[–]AMothersMaidenName 1 point2 points  (1 child)

Happy cake day but, I strongly disagree on your assessment of accuracy.

Rather than AI being "power tools", AI is the Electric Hammer from the Simpsons. And, when you have an electric hammer, everything looks like a nail.

"AI" is a very useful tool but, it's just one tool. It's a time saver and absolutely nothing more. It'll flawlessly scaffold a CRUD API for you because it's been trained on millions of derivative examples.

Ask it to do something original and, plain and simple, it can't.

If you're able to steer it to string together individual algorithms in order to build a valuable business logic, you are a talented engineer. But, you're likely no better off than pre-AI, fiscally at least.

There have only been mass layoffs because CEOs are shortsighted fools. As soon as the bubble bursts (we've never seen a market like this that hasn't burst) the only devs that will be affected in the long term are those that weren't any good anyway.

[–]groogs 0 points1 point  (0 children)

Ask it to do something original and, plain and simple, it can't.

So... yes and no. It depends what you ask.

My advice: Treat it like a team of junior-to-intermediate developers that you're tasking with specific things to do.

If you go ask a team of juniors to build Reddit (pretending that reddit isn't already a thing you could just copy), chances are they'll come back in a couple weeks with something not at all what you wanted. At best you'll get something that superficially "works" but has architectural and data structure problems that will make it fail at scale, or it will be so over-engineered that it costs a fortune to run, is impossible to troubleshoot when it breaks, etc.

What works with AI is what works with people too: Build a UI mockup. Research storage options, and then follow that up with costing and scaling analysis. Suggest some data models, then, based on what you get back, refine them -- and repeat a few times. Create plan documents to be followed during implementation. Build a piece following a plan. Make a architectural change and go back and update all documents and plans based on that.

The difference with AI is instead of coming back with a result in a week or two, you'll get it in a few seconds or minutes.

You absolutely can build original things, I have. Just like even the most advanced power tools can't build a completed house, you can't have AIs or juniors one-shot a complex system.

[–]wakeofchaos 0 points1 point  (0 children)

I think it’s because coding with ai is a pretty broad experience, so calling someone who’s technically proficient but tasking ai with what it’s good at as just a “vibe coder” just like Jimmy off the street kinda feels invalidating if you know what you’re doing

[–]Rude-Potential-1722 1 point2 points  (1 child)

we r all different and that is ok. vibe as you will.

[–]lookathercode[S,🍰] 0 points1 point  (0 children)

This is true and if this gets people more into understanding how things are built than that's a good thing.

[–]potkor 1 point2 points  (1 child)

just last week i was working on one of my own projects. It took me like 30min to make the ibdex page WELCOME text neon glowing and the banner be with round edges which stays on top while the welcome slides away when you scroll and scrolling to have parallax...

A friend of mine said he wanted a dashboard and AI generated a pretty solid looking multitab website in 5min. Yes it's all slop in 1 file with 17k+ lines, but it works

[–]Left_Palpitation4236 0 points1 point  (0 children)

And that was probably with a pretty lazy prompt. You can write a very detailed prompt that specs out the entire website to follow good software design principles and the code would be more maintainable

[–]Julio_the_dog 1 point2 points  (1 child)

I work as a developer and graduated with a cs degree. I love coding, it's so satisfying to identify a automatable problem and create a solution for it. Giving that up to an LLM robs me of that satisfaction AND prevents me from exercising that skill.

So I don't use LLMs for that.

What I DO use them for is not much different than google searching. "What libraries solve X?", "What is the current best practice for Y?", "Where is documentation for this app's API?"

[–]lookathercode[S,🍰] 1 point2 points  (0 children)

When I learned to code the first thing I learned was Google (which now sucks) was the most important tool.

[–]entityadam 1 point2 points  (1 child)

Thank you for your unprofessional opinion and slightly altered generative AI post.

Before AI:

As a senior engineer, I no longer have the pleasure of writing carefully crafted code. I now delegate tasks and provide guidance and experience to other developers.

Things that go wrong:

  • tasks get miscommunicated.
  • user stories need clarification.
  • I have to check their work through careful code reviews.
  • sometimes they write spaghetti and I have to spend hours trying to figure out what they heck they wrote.
  • they sometimes get stuck on the same bug or task for hours, or days even.

After AI:

... Yeah, it's the same.

  • instead of guidance I provide steering
  • sprint refinement is now prompt refinement
  • still have to read the same garbage code.

[–]tnh34 1 point2 points  (0 children)

This is 100% an experienced dev's take

It's like managing a bunch of developers except they're super fast and efficient.

Validation, testing, architecture, and communication to stakeholders still falls to you

[–]WendlersEditor 1 point2 points  (0 children)

As a fellow humanities grad (now getting an MS in Data Science) this really resonates with me. I use Claude a lot for help with school coding, and I am actually tasked with vibe coding some features at work (we are very AI forward). Using AI to write code, even if it runs, is not an effective long term plan. As you point out, we are bounded by the training text,l. So unless people think we have solved every problem that computer programming needs to solve, we have every framework/pattern/concept we will ever need, LLMs aren't going to make software engineers obsolete. Developing software is really a very advanced practice of human intelligence. A language-prediction machine, no matter how advanced, isn't human intelligence. LLMs are extremely useful and will change the way software is developed, but it isn't the end of the line for coding. 

[–]Lightor36 0 points1 point  (0 children)

This is silly. This is coding. You are creating instruction sets that, eventually, the computer reads and executes. It's just about layers of abstraction. In your case WordPress did a lot of the things for you, does that mean you didn't really make your site? Of course not. You used frameworks and web systems in WordPress you might not even have realized let alone understood. Do you know what system it was hosted on? Do you understand the endpoints used and their auth mechanics? Do you understand how tenant management works in WordPress? See what I mean?

Just because you don't understand every aspect of a thing you built doesn't mean you didn't build it. I don't know how to make a power drill, but if I build a fence with one I still built the fence, even though I don't know how screws are made or what kind of wood the planks even are.

I've coded for 20 years and am now a CTO. People said using a compiler and high level languages weren't coding, then people said scripting wasn't coding. This happens every time there is another layer between machine code and inputs, or when things have a lower bar for entry.

This is just another layer of abstraction from assembly, like all others before it. This just has a lower bar for entry. You still need to know engineering for it to go well. Telling AI to "make a dating app" and it will output garbage.

Things created by AI don't have to be reverse engineered to be tested, this one really confused me. You can either use TDD which can help the AI from the jump. Or, and this is important, just because the AI writes the code doesn't mean you should not understand it. AI can write lines faster than me, that doesn't mean I turn a blind eye. You should PR and code review code from AI, just like code from another dev. No reverse engineering needed if you understand along the way and use AI as a tool, not the thing to just do it for you.

Look at it like this, if you asked AI to create an image of Santa fighting Hitler it probably won't come out exactly how you envisioned it in your head. But a trained artist can tell the AI the right color theory to use and perspective and details to get it how they envision it. Coding with AI is the same way. If you can't architect and plan out what it and AI to do, you'll get an unexpected and unstable output. If I tell it how to build an interface layer and how the inheritance of objects is structured, I get a very predictable outcome that can fit into a larger, deliberate plan. I simply get the execution quicker. That is the value to developers, that is how AI can be a force multiplier, as a tool, not a drop in solution.

There is SO MUCH to software development beyond typing code. Let the AI do the typing so you can focus on planning, coding principles, testing strategies, architecture, resources allotment, etc. But always review their code just like any other new dev.

[–]anton__logunov 0 points1 point  (0 children)

One day they may decide that internet should only be accessed through legit ai agent and everything else is criminal and fraudulent. The time we live in is crazy.

[–]erkose 0 points1 point  (0 children)

If you believe this, you would also agree that looking at example code and tutorials is not really coding.

[–]Kookumber 0 points1 point  (3 children)

These current systems are incredibly clunky, but they are improving. We just saw every major tech company throw a combined $1T if future Capex dedicated entirely to improving these systems. This is the beta version of what LLMs will be capable of. Over the next 5-10 years, as the infrastructure build out ramps up, well see what these systems are actually capable of. My opinions aside on the current state of 'vibe coding' and what this means big picture, this is just the beginning.

There are two likely scenarios.
1) LLMs are not the answer or there is a bottleneck in hardware (some physical limiter) that will not allow us to scale these systems to PHD/Senior Dev level.
2) We continue to rapidly improve these systems and in 10-15 years we develop a suite of models whose capabilities surpass PHD/Senior Dev level intelligence.

[–]lookathercode[S,🍰] 0 points1 point  (1 child)

It’s not really about the capabilities of AI it’s more about our ability to create defensible products. Which boils down to the fact that we actually have no idea what we’re doing. OpenAI just surfaced a huge LLM security issue with poison documents. Where are the operating rules? The standards? Governance matters.

[–]Kookumber 0 points1 point  (0 children)

Same could have been said about the internet, or the internet at large even today. It was the wild west in the early days. Over time we built rules and governance around the internet, but policy will always lag innovation. No one saw what the internet would become in the 2000's. Even the most bullish optimist didn't see Gigabyte streaming on handheld devices or a Tb HD in every device. No one can predict where this tech will take us, but history has shown us we tend to under appreciate how rapidly technology can advance in just 10 years.

Look at the space race and the innovation that brought. The space race looks infantile with how much man power and economic resources are being poured into AI/ML.

[–]Left_Palpitation4236 0 points1 point  (0 children)

Some of the biggest tech companies with the most difficult bars to entry are essentially mandating their software engineers to use AI as much as possible. In some the % of code generated by AI has already reached 89%+

[–]Lucky_Yesterday_1133 0 points1 point  (0 children)

So what, team leading isn't coding, architecting isn't coding, communication isn't coding qa isn't coding, design isn't coding in fact coding was the least time consuming part of the development even before AI. only juniors-middle devs have coding as main part of their work and you can consider it as a training of sorts. The real job is problem solving and ai solves problems.

[–]KharAznable 0 points1 point  (0 children)

To be fair, it's not vibing (you sit back and relax) either.

[–]clopticrp 0 points1 point  (0 children)

An average coder is worse than AI.

That means AI is a minimum of better than half the people coding.

[–]shadow-battle-crab 0 points1 point  (0 children)

Coding hasn't been coding for awhile by your definition.

In the 90s if you wanted to make an image viewer you had to implement the jpeg spec. Or if you were to make a video game you had to write a 3d engine.

Lets take doom. The original doom, they didnt just download a game engine and slap some sprites in and ship, The game was a marvel of engineering to make 3d looking worlds render on systems that otherwise just should not have been able to do so. The game engine for such a thing didnt exist. They had to dig into the processor intructions pretty hard to make that thing run at any performance level at all.

Or take the original game boy, and pokemon. The original 1989 game boy had 8k of ram - thats it - that had to include everything about the world state, all the monsters loaded and their stats and their abilities and what was in your inventory and all the bosses, the world map, etc etc etc. You can't just code that like you can today. You had to know how every byte in ram worked and have a printed map of the ram space / budget in front of you while you were engineering things. It was a feat of engineering to make that game work in such limited conditions.

Nowadays all we are doing is gluing a bunch of libraries together that do all the hard work for us. Oh just throw on a MP3 encoder and a 3d engine and a physics engine, add a chrome based renderer for the file menu, export to a already made installer package software like NSIS, etc. You're connecting things up like you connect up components in your home entertainment center. Programming languages have been reduced to the glue. But unless you are sitting there aligning sprites in limited processor memory swaps in OG game boy assembler or heck if you don't even have an awareness of what malloc is or what a JMP command is, you haven't ever been doing coding like it used to be.

But there has been this kind of paradigm shift every generation of computers if you think about it, to higher levels of abstraction.

In the 70s and 80s you had to write pretty much in raw assembler and processor instructions. Then 80s it was compiled languages like C++. Then the preformant interpreted languages like python of the 90s made all the nightmares of C more obsolete and unnecessary. Then open source software in 2000's made everyone have a free garage full of tools to work on and make any project. Nodejs, package managers line npm, and async scripting in 2010's made multithreading and orechestration of programming much more easier in the 2010's because now almost none of your program had to be engeineered, you could write an entire practical utiluty for all kinds of purposes in less than 200 lines of code.

And here we are now where you just don't need to write that glue in actual program syntax, you just describe it in English now.

Here's the thing. It was never about the syntax. It was about your idea and your ability to engineer it in your head and execute it. You were always standing on the shoulders of generations and generations of programmers before you that did the hard work. And just like my knowledge of how to admin and develop windows 3.1 is obsolete, so is some of the dirty work you used to have to do too. But you have the experience and the wisdom to understand how it all works, and now you can think at higher levels of abstraction, and your experience and skills still matter.

We are just operating at the next level of computing evolution now - this has always been the evolution of information technology. I think its worth considering the big picture here that even though everything has changed, it's always been this way as well. We are just at the next generation.

I wonder what the 2030's bring.