I would strongly argue that coding assistants are AI’s first killer app. Copilot, Cursor, Windsurf etc.
I would strongly argue that coding assistants are AI’s first killer app. Copilot, Cursor, Windsurf etc.
By your logic I could claim a quantum computer with qubits on the scale of the mass of the sun is a killer app for doing RSA encryption breaking. And I would be making an equally useless statement.
Whether the companies that are leading the market today will end up being the ones who capture that value is anyone's bet.
Maybe this era of AI will be remembered as a wealth transfer from VCs back to everyday consumers lol
There are a lot of horses in this race and the literally billion dollar question is who's Amazon this time around, and who's Webvan. Who's Uber and who's Flywheel (which doesn't even have a Wikipedia page anymore, ouch). Not knowing which horse is going to win doesn't negate the fact that a horse is going to win.
Model available LLMs, like Llama and Deepseek and StableDiffusion are totally a wealth transfer to consumers. Better make use of them!
These IMO are relatively useful things. But probably (in their current state) will not justify the valuation of the companies involved and the massive investment occurring right now.
I don't know how the future will unfold. I do think it is reasonable to be somewhat bearish on what has been promised vs. what has been released.
To use these tools properly, you need to know how to build the same thing precisely.
I used claude + gemini to whip out a rewrite of a show HN project in less than half an hour to deployment yesterday.
https://news.ycombinator.com/item?id=43071381
But this sort of work is fairly low value and boilerplate-y.
The code isn't the most readable because I don't need it to be however if you make me write it from scratch in an interview style setting I'd have trouble doing it. If I read the code I can follow it and it makes sense + it's an easy component to manually test. So.. no, I don't need to know how to precisely build the same thing.
And before you worry that I'm committing code I can't build from scratch.. This is a simple component for a 5 page landing page build with astro where I'm the "main" dev ( wrote like 80% of the code). The web-page won't even need maintainance once it's deployed
The copilots get you going quick at the expense of your learning, which is great for one-offs, but not lasting work quality.
> This is a simple component for a 5 page landing page build with astro
You're already in the over-engineered section there.
https://gist.github.com/lazarcf/c80ae6f9362aaf3aa92e21e3a0dd...
you can see the component (the "image gallery") here : https://pixico.roware.ro/apa-distilata/
I agree the tools are overhyped for allowing non-developers to write code. It’s not (today) a replacement for a dev agency that takes a set of requirements and runs with it, it’s a replacement for a junior developer who you need to micromanage a bit. But that’s still a boon to productivity!
I have heard "top" engineers at various places say it makes them 2x faster, or whatever, but I would like to see this assessed by timed testing, as is sometimes done for evaluating software engineering.
Copilot may let me type less, but I have not seen the wall clock effects, which is a very hard thing to measure (time perception is very unreliable).
You can see this example where I timed myself to deployment using AI tools to rewrite a show HN project in half an hour. The code is open source.
My comment was posted 2 hours after show HN when I saw it on front page so you know I didn’t lose track of time I spent.
The majority of software work is maintaining large, existing products: adding features, fixing bugs, improving performance, etc., or building new software in problem domains that aren’t so well-defined.
If it could test and verify things though... ideally physically since Im in embedded and pulling SD-cards etc is a thing.
I’d love it if I could get it to write decent unit tests given a basic description of what I’m testing but I at least cannot get it to output anything useful for our codebase. It’s too unaware of the broader context of the code, what objects need to be instantiated from some other internal library and passed in, etc. It can do a decent job if all I have is a totally isolated function that doesn’t touch the rest of the codebase or use any domain objects, but that’s a rare enough case as to be essentially useless to me.
I think it also really accelerates learning of a new language or framework, when that language or framework is really well documented on the web. For novel programming frameworks, obviously it's a bit more challenging to get help from an LLM.
One of more recent attempts at using LLM code assist was to try to fix a bug in a Swift SSH Agent's connection handling that was causing hangs. I know zero Swift, much less the networking frameworks. So I pumped the output of `tree` on the git repo into the LLM, asked for which file likely handled connections, and it found it right away. That's probably 15 minutes saved. Before putting in the file I asked for likely reasons for deadhangs, got that list, then put in the Swift file that handled connections, and it pointed to what the likely problem was. That's probably 1 hour+ of reading documentation to try to figure out what the code was doing wrong with the networking framework, assuming the LLM was not hallucinating. And that "not hallucinating" probability is high enough in my experience that I spend >50% of my time trying to verify I'm not getting bullshitted.
The LLM proposed a fix (~10-20 minute savings), but even as somebody who doesn't use Swift it seemed like >99% chance that it had just introduced a bunch of race conditions in the data structures it used to track connection status. So I asked about it, and it said "Oh yeah of course how could I forget" and then significantly complicated the solution with something that I thought looked like it probably worked. But was the LLM just being obsequious or was it correct the first time? So hard to tell...
So in about 20 minutes I probably accomplished in a language I didn't know, in a code base I didn't know, about 2 hours+ of learning.
But if I knew the language, it would have saved me very little time, and may have cost me some time.
Of course, you have to find a company willing to spend more money on worse (for them - less ads) search, and it's won't be Google.
The results aren't always accurate, but neither is Google...
It's almost like entertainment requires some humanity and thought and true creativity behind it.
In an open world game, it’s trivial to assign memories and facts an AI learns about its world from interactions or in response to game events. All an LLM has to do is be fine tuned to take data from that internal knowledge base and express it as natural language text, in order to have intelligent and useful conversations with a player. It’s not difficult.