Just like SEO experts, marketing experts, trade bots and crypto experts; the vibe coders will weed out.
is there a term for that?
AI at our fingertips, accessible and useful, that's just a tool, that's not redefining us as an industry and denying people's jobs – that's an asset. (I used an em dash to prove I am not AI, as apparently double dash is now a sign of AI text!)*
(*) case in point, the situation is _TIRING_.
One day I might start a consultancy business that only does artisanal code. You can hire me and my future apprentices to replace AI code with handcrafted code. I will use my company to teach the younger generation how to write code without AI tooling.
These existed before but the culture surrounding AI delivered a double dose of both.
I have no problems with LLMs themselves or even how they are used but it has developed its own religion filled with dogma, faith based reasoning and priests which is utterly toxic.
The tools are shoved down our throats (thanks to the priesthood, AI use is now a job performance criteria) and when they fail we are not met with curiosity and a desire to understand but with hostility and gaslighting.
The cost of hallucinations though - you potentially have a stronger point there. It wouldn’t surprise me if that fails to sway some decision makers but it doesn’t give the average dev a bit more ground to work with.
With AI, you are no longer a developer, you're a product manager, analyst, or architect. What's neat about this, from a business perspective, is that you can in effect cut out all your developers and have a far smaller development workforce consisting of only product managers, analysts, and architects whom you call "developers" and pay developer salaries to. So you save money twice: once on dev workforce downsizing, and again on the pay grade demotion.
I'm currently exploring domain-specific languages aimed at writing web applications. I've been particularly interested in, much like bash, data flowing through pipelines. I have spent quite a bit of time and I'm definitely not vibe coding but I've probably only writen 1-2% of the code in these projects.
It is so much work to build out a new language with a surrounding ecosystem of tooling. Not even five years ago this would have necessarily been a full time multi-year endeavor or at least required a team of researchers. Now I can tinker away in my off hours.
This is what I am exploring:
https://williamcotton.com/articles/the-evolution-of-a-dsl
Did I not craft the syntax and semantics of these languages?
I think for a lot of minor things, having AI generate stuff is okay, but it’s rather astounding how verbose and sometimes bizarre the code is. It mostly works, but it can be hard to read. What I’m reading from a lot of people is that they’re enjoying coding again because they don’t have to deal with the stuff they don’t want to do, which...I mean, that’s just it isn’t it? Everyone wants to work on what they enjoy, but that’s not how most things work.
Another problem is that if you just let the AI do a lot of the foundational stuff and only focus on the stuff that you’re interested in, you sometimes just miss giant pieces of important context. I’ve tried reading AI driven code, sometimes it makes sense, sometimes it’s just unextensible nonsense that superficially works.
This isn’t tech that should replace anything and needs to be monitored judiciously. It can have value, but what I suspect is going to happen is we are going to have a field day with people fixing and dealing with ridiculous security holes for the next decade after this irrational exuberance goes away. It should be used in the same way that any other ML technique should be. Judiciously and in a specific use case.
Said another way, if these models are the future of general programming, where are the apps already? We’re years into this and where are they? We have no actual case studies, just a bunch of marketing copy and personal anecdotes. I went hunting for some business case studies a while ago and I found a Deloitte “case study” which was just pages of “AI may help” without any actual concrete cases. Where are the actual academic studies showing that this works?
People claiming AI makes them code faster reminds me that Apple years ago demonstrated in multiple human interaction studies that the mouse is faster, but test subjects all thought keyboard shortcuts were faster [1]. Sometimes objective data doesn’t matter, but it’s amusing that the whole pitch for agentic AI is that it is faster and evidence is murky for this at best.
Or to phrase it more succinctly: if you are in camp 2 but don't have the passion of camp 1, you are a threat for the long term. The reverse is dangerous too, but can be offset to a certain extent with good product management.
This is solved problem with any large, existing, older code base. Original writers are gone and new people come on all the time. AI has actually helped me get up to speed in new code bases.
Is this also true of all third party code used by their solution? Should they make all libraries and APIs they use their own in exactly in the form it needs to be according to their deep expertise? If not, why not?
If so, does this extend to the rest of the stack? Interpreters, OSes, drivers? If not, why not?
This isn't a trick question, BTW. It's a genuine attempt to get to the rationale behind your (and the GP's) stance on this.
In particular, the GP said:
> Or to phrase it more succinctly: if you are in camp 2 but don't have the passion of camp 1, you are a threat for the long term.
That hints I think at their rationale, that their stance is based on placing importance on the parts of software development that they enjoy, rather than any logical basis.
This happens, but very rarely compared to changes in your own code base. If a library breaks, you can usually find an alternative, but even in that case you need to know how to modify your own code.
The difference with generated code is that you are tasked to maintain the generated code.
I don't think this is true, but say we accept it.
> The difference with generated code is that you are tasked to maintain the generated code.
Is this a task that LLMs are incapable of performing?
This is such marketing speak. The words mean nothing, they’re just a vague amalgamation of feelings. “Vibes”, if you will.
If you “love delivering value and solutions”, go donate and volunteer at a food bank, there’s no need for code at any point.
> The happy consumer and the polished product
More marketing speak. If you are using LLMs to write your code, by definition your product isn’t “polished”. Polishing means pouring over every detail with care to ensure perfection. Letting an LLM spit out code you just accept is not it.
The word you’re looking for is “shiny”, meaning that it looks good at a glance but may or may not be worth anything.
I get the argument. Sometimes I really enjoyed the actual act of finally figuring out a way to solve a problem in code, but most of the time it was a means to an end, and I'm achieving that end far more often now via AI tooling.
> If you “love delivering value and solutions”, go donate and volunteer at a food bank
People are often surprised I'm at work on business, going on about shipping/value/whatever. In more marketable terms, 'guffaw, you work to get paid?!'; this virtue signaling drives me up the fucking wall. Now I can tell them to go to the shelter, so again: thank you. Useful against these ~social supersoldiers~ Influencers.
Personally, the tech and puzzles are enjoyable. The work, people, and their problems are a means to solving mine. Sorry, coworker, for being so selfish! I thought that was the wisdom of Capitalism, or something. I'll still do OSS in retirement. Promise.
> More marketing speak. If you are using LLMs to write your code, by definition your product isn’t “polished”.
This doesn’t make any sense. Polished to who? The end user? You can absolutely use AI to polish the user experience. Whether coding by hand or AI the most important aspect of polish is having someone who cares.
I actually think this reveals more about you than you might realise. A _lot_ of people enjoy being able to help people resolve problems with their skills. Delivering value is marketing speak, but it's specifically helping people in ways that's valuable.
A lot of people who work in software are internally motivated by this. The act of producing code may (or may not be) also enjoyable, but the ultimate internal motivation is to hand over something that helps others (and the external motivation is obviously dollars and cents).
There is also a subset of people who enjoy the process of writing code for its own sake, but it's a minority of developers (and dropping all the time as tooling - including LLMs - opens development to more people).
> If you are using LLMs to write your code, by definition your product isn’t “polished”. Polishing means pouring over every detail with care to ensure perfection.
You can say the same thing about libraries, interpreters, OSes, compilers, microcode, assembly. If you're not flipping bits directly in CPU registers, your not pouring over every little detail to ensure perfection. The only difference between you and the vibe coder who's never written a single LoC is the level of abstraction you're working at.
Edit:
> If you “love delivering value and solutions”, go donate and volunteer at a food bank, there’s no need for code at any point.
I also think this says maybe a lot about you, also, as many people also donate their time and efforts to others. I think it may be worth some self-reflection to see whether your cynicism has become nihilism.
I also used to volunteer at a food bank, though I stopped for logistical reasons when COVID hit.
Oh, and before I became a developer, I worked in an area which was very close to marketing. Which was the reason I stopped.
So yeah, I know pretty well what I’m talking about.
More likely that step is just skipped and replaced with thoughts and prayers.
I like using my software engineering skills to solve people's problems. I don't do coding for it's own sake - there's always a thing I'm trying to implement for someone.
Now I build all sorts of apps for my farm and organizations I volunteer for. I can pound out an app for tracking sample locations for our forage associations soil sample truck, another for moisture monitoring, a fleet task/calendar/maintenance app in hours and iterate on them when I think of features.
And git was brand new when I left the industry, so I only started using it recently to any extent, and holy hell, is it ever awesome!
I'm finally able to build all the ideas I come up with when I'm sitting in a tractor and the GPS is steering.
Seriously exciting. I have a hard time getting enough sleep because I hammer away on new ideas I can't tear myself away from.
Creating a polished, usable app is just so much work, and so much of it isn't fun at all (to me). There are a few key parts that are fun, but building an intuitive UI, logging, error handling, documentation, packaging, versioning, containerization, etc. is so tedious.
I'm bewildered when I read posts by the naysayers, because I'm sitting here building polished apps in a fraction of the time, and they work. At least much better than what I was able to build over a couple of weekends. They provide real value to me. And I'm still having fun building them.
I now vibe coded three apps, two of them web apps, in Rust, and I couldn't write a "Hello World" in Rust if you held a gun to my head. They look beautiful, are snappy, and it being Rust gives me a lot of confidence in its correctness (feel free to disagree here).
Of course I wouldn't vibe code in a serious production project, but I'd still use an AI agent, except I'd make sure I understand every line it puts out.
> in a serious production project, but I'd still use an AI agent, except I'd make sure I understand every line it puts out.
That isn't going to cut it. You need to understand the problem domain, have a deep design taste to weigh current and future demands, form a conceptually coherent solution, formalize it to code, then feed back from the beginning. There is no prompt giving your AI those capabilities. You end up with mediocre solutions if you settle for understanding every line it spits out. To be fair, many programmers don't have those capabilities either, so it also a question of quality expectations.I believe you can use LLMs as advanced search and as a generator for boilerplate. People liking it easy are also being easy with quality attributes, so anyone should be self aware where they are on that spectrum.
Then don’t do it. No one is forcing you. Are you also going to complain that building airplanes and ensuring food safety are too much work and not fun for you? Not everything needs to be or should be dumbed down to appeal to lowest common denominator.
Alternatively, go work at a company where you’re part of a team and other people do what you do not enjoy.
> I'm sitting here building polished apps in a fraction of the time
No, no you are not, guaranteed. “Polishing” means caring about every detail to make it perfect. If you’re letting the LLM make most of it, by definition it’s not polished.
No one is also keeping me from doing what I want to spend my time with on my days off.
> Are you also going to complain that building airplanes and ensuring food safety are too much work and not fun for you?
No, because this isn't remotely comparable to weekend hobby projects. What a weird question.
> No, no you are not, guaranteed. “Polishing” means caring about every detail to make it perfect. If you’re letting the LLM make most of it, by definition it’s not polished.
I guess we have different definitions of "polished" then.
thats why it was valuable.
All things worth doing are hard.
I always have a hard time taking this complaint seriously, because the solution is absolutely trivial. Write a snippet. Have you really been out there, year after year, rewriting the same shit from scratch over and over? Just make a snippet. Make it good and generic and save it. Whenever you need to do something repeated on a new project, copy it (or auto-expand if you use it that often) and adapt. Snippet managers are a thing.
Of course I wouldn't vibe code in a serious production project, but I'd
still use an AI agent, except I'd make sure I understand every line it
puts out.
So you value your ability to churn out insignificant dreck over the ability of others to use the internet? Because that's the choice you're making. All of the sites that churn your browser for a few seconds because they're trying to block AI DDoS bots, that's worth your convenience on meaningless projects? The increased blast radius of Cloudflare outages, that's a cost with foisting on to the rest of the internet for your convenience?Thanks.
No it didn't, in fact, your job shifted from code writer to code fixer
The years "away" gave me an unusually clear picture of what problems actually need solving vs what's technically interesting to build. Most devs early in their careers build solutions looking for problems. Coming back after working in a specific domain, I had the opposite - years of watching people struggle with the same friction points, knowing exactly what the output needed to look like.
What I'd add to the "two camps" discussion below: I think there's a third camp that's been locked out until now. People who understand problems deeply but couldn't justify the time investment to become fluent enough to ship. Domain experts who'd be great product people if they could prototype. AI tools lower the floor enough that this group can participate again.
The $100 spent on Opus to build 60 calculators is genuinely good ROI compared to what that would have cost in dev hours, even for someone proficient. That's not about AI replacing developers - it's about unlocking latent capability in people who already understand the problem space.
Feel like forums have turned into a grand Turing Test.
> Domain experts who'd be great product people if they could prototype. AI tools lower the floor enough that this group can participate again.
True, as a threat to PM. Product management can't vibe their way out from a lack of domain expertise.I'm not sure how you can claim this on the footer of every page when you're vibe coding these calculators.
How confident is the OP that every single one of these 60 calculators work all the time, with all edge cases? Because if someone is on your website using your calculator, they are putting trust in you. If it's wrong, it could have downstream impacts on them. I hope every single one has a comprehensive set of tests with good edge cases. But realistically will they?
I'm actually pretty pro-AI development. But if you're going to use AI to help develop a website, at least focus on quality rather than quantity. AI makes quantity easy, but quality is still hard.
As an aside, the website doesn't even work for me. My clicks don't don anything.
I'm also now dealing with things that previously would have taken me too long to deal with. For example, I'm actually making a dent in the amount of technical debt I have to deal with. The type of things where previously I maybe wouldn't have taken a week out of my schedule to deal with something that was annoying me. A lot of tedious things that would take me hours/days now can get done in a few prompts. With my bigger projects, I still do most stuff manually. But that's probably going to change over the next months/year.
I'm mainly using codex. I know a lot of people seem to prefer Claude Code. But I've been a happy ChatGPT Plus user for a while and codex is included with that and seems to do the job. Amazing value for 20$/month. I've had to buy extra credit once now.
The flip side of all this is that waiting for AI to do it's thing isn't fun. It's slow enough that it slows me down and fast enough that I can't really multi task. It's like dealing with a very slow build that you have to run over and over again. A necessary evil. But not necessarily fun. I can see why a lot of developers feel like the joy is being sucked out of their lives.
Dealing with this pain is urgent. Part of that is investing in robust and fast builds. Build time competes with model inference in the time stuff takes. And another part is working on the UX of this. Being able to fork multiple tasks at once is hugely empowering. And switching between editing code and generating code needs to get more seamless. It feels too much like I'm sitting on my hands sometimes.
Perhaps if we didn’t have deep layer cakes of frameworks and libraries, people would feel like they can code with or without AI. Feels like AI is going to hinder any efforts to address complexity and justify us living with unnecessary complexity simply because a machine can write the complex, hard to understand, brittle code for us.
That's creating a new inefficient, socially destructive, environmentally damaging hammer because solving the real problem doesn't sell well.
I'll be happy when we solve THAT problem.
AI is eroding the entry barrier, the cognitive overload, and the hyper-specialization of software development. Once you step away from a black-and-white perspective, what remains is: tools, tools, tools. Feels great to me.
Otherwise it feels deceptive. Which is surprising given we should judge off intentions and not augmentation (like come on guys this is HN FFS).
This guy's not running any ads on the site, hasn't spammed with multiple posts that I've seen. I still think investment funds/modern stock exchanges are needless parasites upon society but that's just my opinion.
$100 seems like a lot. I guess if you think about it compared to dev salaries, it's nothing. But for $10 per month copilot you can get some pretty great results too.
Have you tried this? https://www.investor.gov/financial-tools-calculators/calcula...
Every other day I see ads of companies saying "use our AI and become a millionaire", this kind of marketing from agentic IDEs implies no need for developers who know their craft, which as said above, isn't the case.
If that’s the bar, there likely a ton of businesses that should shut down…
this by definition filters out all non-devs, even many junior devs as you need to understand deeply if those tests are correct and cover all important edge cases etc.
+ when you deploy it - you need to know it was properly deployed and your db creds are not on frontend.
But mostly no one cares as there is no consequences to leaking personal data of your users or whatnot.
If you just want to build a little web app, or a couple of screens for your phone, you'll probably be fine. (Unless there's money or personal data involved.) It's empowering! Have fun.
But if you're trying to build something that has a whole bunch of moving parts and which isn't allowed to be a trash fire? Someone needs to be paying attention.
I'll figure out a better way. Thanks for calling it out.
Things are definitely changing around HN compared to when it first started.
It's impossible to tell if this is AI or not. Another version of Poe's law. The only thing to do is assume everything is AI, just like you must assume all posts have ulterior (generalluy profit-driven) motives, all posters have a conflict of interest, etc.
Maybe the only thing to do is stop trying to understand posters' motivations, stop reading things charitably, stop responding, just look for things that are interesting (and be sure to check sources).
Anyone who disagrees with the above are just hurt that their manual hyping has been replaced with machines.
OP made a site with a bunch of calculators. Their critics didn’t make that!
It's cool that ChatGPT can stitch these toys together for people who aren't programmers, but 99% of software engineers aren't working on toys in the first place, so we're hardly threatened by this. I guess people who aren't software engineers don't realise that merely making a trivially basic website is not what software engineering is.
"Software engineering" doesn't matter to anyone except to software engineers. What matters is executing that idea that's been gathering dust for ages, or scratching that pain point that keeps popping up in a daily basis.
My response is perhaps a bit raw, but so is the quote above.
Stop with the gate keeping. I've studied CS to understand coding, not to have some sort of pride to build "real software". Knowledge is a tool, nothing more, nothing less.
There are enough developers whose whole job it is to edit one button per week and not much more. And yes, there are also enough developers that actually apply their CS skills.
> but 99% of software engineers aren't working on toys in the first place
Go outside of your bubble. It's way more nuanced than that.
> I guess people who aren't software engineers don't realise that merely making a trivially basic website is not what software engineering is.
Moving goal posts. Always has been.
It's not that I fully disagree with you either. And I'm excited about your accomplishments. But just the way it reads... man...
I guess it hits me because I used to be disheartened by comments like this. It just feels so snarky as if I am never good enough.
The vibe is just "BUH BUH BUH and that's it." That's how it comes across.
And I've come to mature enough to realize I shouldn't feel disheartened. I've followed enough classes at VUSEC with all their rowhammer variations and x86-64 assignments to have felt a taste of what deep tech can be. And the thing is, it's just another skill. It doesn't matter if someone works on a web app or a deep game programming problem.
What matters (to me at least) that you feel the flow of it and you're going somewhere touching an audience. Maybe his particular calculator app has a better UX for some people. If that's the case, then his app is a win. If your game touches people, then that's a win. If you feel alive because you're doing complex stuff, then that's a win (in the style of "A Mathematician's Apology"). If you're doing complex stuff and you feel it's rough and you're reaching no one with it, it's neutral at best in my book (positive: you're building a skill, negative: no one is touched, not even you).
Who cares what the underlying technology is. What's important is usability.
Feel free to point out where I moved goal posts. To say that I moved goal posts would imply that at one point I stated that creating a trivial website was software engineering. If you're comparing my statement to what some other person said, who made arguments I did not make, then we cannot have any kind of constructive dialogue. At that point you are not talking to me, but talking to an imaginary projection of me meant to make yourself feel better about your argument.
> Stop with the gate keeping.
I'm not gatekeeping anything. You can disagree with my descriptive terms if you want, but the core point I'm trying to get across is: what people are doing with Claude can not replace what I do. I would know, I've tried extensively. Development is a lot of hard work and I would love it if my job were easier! I use LLMs almost every day, mostly for trivial tasks like reformatting text or writing advanced regex because I can't be bothered to remember the syntax and it's faster than looking it up. I also routinely pose SOTA models problems I'm working on to have them try to solve them, and I am routinely disappointed by how bad the output is.
So, in a thread where people were asserting that critics are merely critics because they're afraid of being replaced I pointed out that this is not factually correct, that no, we're not actually afraid of being replaced, because those of us who do "real" engineering (feel free to suggest a different term to substitute for "real" if the terminology is what bothers you) know that we cannot be replaced. People without experience start thinking they can replace us, that the exhilarating taste of coding they got from an LLM is the full extent to the depth of the software engineering world, but in fact it is not even close.
I do think that LLMs fill a useful gap, for projects where the time investment would be too large to learn to code and too unimportant to justify paying anyone to program, but which are simple enough that a non-engineer can have an LLM build something neat for themselves. There is nothing wrong with toys. Toys are a great thing to have in the world, and it's nice that more people can make them[1]. But there is a difference between a toy and what I do, and LLMs cannot do the thing I do. If you're taking "toy" in a derogatory manner, feel free to come up with another term.
[1] To some extent. While accessibility is generally a great thing, I have some misgivings. Software is dangerous. The web is arguably already too accessible, with frameworks enabling people who have no idea what they're doing to make professional-looking websites. These badly-made websites then go on to have massive security breaches that affect millions of users. I wish there was a way to make basic website development accessible, whether through frameworks or LLMs, in a way that did not give people using them the misplaced self-confidence to take on things way above their skill level at the cost of other people's security.
What’s even the point of writing out that first paragraph otherwise?
I was correcting your misguided statement:
> Their critics didn’t make that!
by pointing out that we, among other things, build the libraries that you/Claude are copy-and-pasting from. When you make an assertion that is factually incorrect, and someone corrects you, that does not mean they are threatened.
I'll keep learning and try to make this less of a toy over time. And hopefully I can bring what I've learned from years in investing into my next product to actually help people. Thanks for the perspective.
And if you are thinking enterprise, it would take 2-3 developers, 2 analysts, 2 testers, 1 lead and 1 manager 2-3 months to push something like this. (Otherwise why would lead banks spent billions and billions for IT development every year? What tangible difference you see in their website/services?)
5000 calculators may look excessive, but in this case it magnifies the AI capabilities in the future - both in terms of quality and quantity.
Well, I don't think all those people are spending their time making simple calculators.
I guess this is what separates some people. But I always explicitly tell it to use only HTML/JS/CSS without any libraries that I've vetted myself. Generating code allows you now not having to deal with it a lot more.
Cool to hear nonetheless. Can we now also stop stigmatizing AI generated music and art? Looking at you Steam disclosures.
This is a revolution, welcome back to coding :)