I’ve tried to use it as a web search replacement and often the information is generic or tells me what I already know or wrong.
I’ve used a code suggestions variant long before OpenAI hype started and while sometimes useful, rarely is it correct or helpful on getting over the next hurdle.
Any code from my coworkers is now just AI slop they glanced over once. Then I spend a long time reviewing and fixing their code.
I really don’t find spending time writing long form questions so a bot can pretend to be human all that time saving, especially if I have to clarify or reword it to a specific “prompt-engineer” quality sentence. I can usually find the results faster typing in a few keywords and glancing at a list of articles. My built in human speed reading can determine if what I need is probably in an article.
LLM seriousness has made my job more difficult. I would prefer if people did go back.
It's very good at handling the BS part of coding but also its very good at knowing things that I don't know. I recently used it to hack a small bluetooth printer which requires its own iOS app to print, using DeepSeek and ChatGPT I was able to reverse engineer the printer communication and then create an app that will print whatever I want from my macOS laptop.
Before AI I would have to study how Bluetooth works now I don't have to. Instead, I use my general knowledge of protocols and communications and describe it to the machine and I'm asking for ideas. Then I try things and ask the stuff that I noticed but I don't understand, then I figure out how this particular device works and then describe it to the machine and ask it to generate me code that will do the thing that I discovered. LLMs are amazing at filling the gaps in a patchy knowledge, like my knowledge of Bluetooth. Because I don't know much about Bluetooth, I ended up creating a CRUD for Bluetooth because that's what I needed when trying to communicate and control my bluetooth devices(it's also what I'm used to from Web tech). I'm bit embarrassed about it but I think I will release it commercially anyway.
If I have a good LLM under my hand, I don't have to know specialised knowledge on frameworks or tools. General understanding of how things works and building up from there is all I need.
It's like a CNC machine but for coding.
LLMs so far seem to be good at developing prototype apps. But most of my projects already have codegen and scaffolding tools so I guess I don’t get that use out of them.
I predict that once you release your embarrassing app, you will find all the corner cases and domain secrets come rearing out with little ability of the LLM to help you (especially with Bluetooth).
For other stuff, I still find it very useful because why would I bother to code something non-novel when I can just tell the LLM what I need?
For example, if I need a code that finds the device that given characteristics belongs(bluetooth stuff, again) to I can just tell the LLM to write it for me. It doesn't take a genius to write such a code, its elemental stuff and I would rather not spend my working memory on remembering the structures and names of variables. I copy+paste the current class that handles the bluetooth comms, tell it that I need a function for sending data to the printer and it gives me back the result. There's no art in writing such a code, its standard code for an API and I would prefer not to bother with it.
And
“It's very good at handling the BS part of coding…”
This is the part that I think is difficult in a team situation.
Learning and understanding is the important part, and certainly isn’t BS.
I understand that it really can make it seem like velocity has increased when you really are shipping things that more or less “work”, but it’s really a good practice to understand your code.
I’ve had to spend a significant amount of time fixing work that was admittedly generated using AI by other engineers, and I really fear engineers are beginning to trade deep understanding for the high of getting something that “works” with little effort.
It might “work” but you might be ignoring the work everyone around you is doing to clean up your brittle code that doesn’t scale and wasn’t thought through at inception.
Code quality actually doesn't matter when you remove the human from the loop as long as it works correctly because it becomes something made by a machine to be interpreted by a machine.
As for security, that mostly stems from the architecture. LLMs mediocracy also helps with following industry conventions and best practices.
In my case I never get the code being written at once, instead I make LLMs write pieces that I put together myself. Never got used to copilot or Cursor, I feel in control only with the chat interface.
Bugs happen but its not that different from any other type of bugs. Also, you end up learning about Bluetooth as bugs and other unexpected behavior happen. The great thing about LLMs is that they are interactive, so for example when collecting Bluetooth packets for analysis I ended up learning that the communication with Bluetooth is a bit like talking through a middleman and some packet types are only about giving instructions to the Bluetooth chip and others are actually about communicating with a connected device.
Using LLM for coding something you don't understand is much different than Googling something, then copy+paste a snippet from Stackoverflow because you can ask for instant explanation and modifications for testing edge cases and other ideas.
For example just today, I dumped a crash log from the Mac version of Microsoft Remote Desktop into it. This damn app locks up 10 times a day for me causing a "Force Quit" event and subsequent crash dump to be generated. Normally what can I do with that crash dump other than send it off to Apple/Microsoft? It identified where it thought the crash was coming from: excessive right clicking causing some sort of foundational error in their logic. Avoiding right clicking has solved the issue for me. Now that I write this out, I could have spent hours upon hours finding a needle in a haystack and that would probably made me a better developer but the bar is too high, there is too much other work I have to get done than to chase this. Instead I would have just lived with it. Now I have some closure at least.
Again it seems like everyone has got their own unique stories. Is AI taking everything over? Not yet. Can I go back to pre-AI? No, its like going back to Windows 95.
I got into coding about a decade ago when cheap outsourcing had been all the rage for a number of years. A lot of my early experience was taking over very poorly written apps that had started off with fast development and then quickly slowed down as all of the sloppy shortcuts built up and eventually ground development to a halt. There's a decent chance LLMs lead to another boom in that kind of work.
For products that won't be scaled, I imagine it becomes just another abstraction layer, with the cost of human input outweighing the cost of the additional infrastructure / beefing up hardware to support the inefficiencies created.
For search, try kagi fastgpt (no subscription required):
For code completion, I’ve found it’s not good at jumping hard hurdles, but it is a bit better than find replace (e.g. it finds things that are syntactically different, but semantically related), and can notice stuff like “you forgot to fix the Nth implementation of the interface you just extended”.
It’s also good at “I need to do something simple in a language I do not know”.
I’ve definitely encountered ai slop from coworkers. I’m sure they also produce stack overflow copy paste garbage too. Dealing with their newly-found increased “productivity” is an open problem.
Insisting on strict static typing helps. The LLMs can’t help with that, and it forces a higher bar before compilation succeeds.
It's buying into the hype. AI is crypto 2.0, the true believers live in their own bubble and their own fantasy world.
I went back. It sucks pretty bad, actually.
RLHF trains it to fool humans into thinking it’s authoritative, not to actually be correct.
Yea idk about that one chief. I have been working in ML (specifically scaling of large model training) at FAANG for the past 8 years, and have been using AI for my work since basically the first time this became even slightly usable, and I don’t share your optimism (or pessimism depending on how you see it). Yes it’s still pretty bad, but you have to look at rate of improvement, not just a static picture of where we are today.
I might still be wrong though and you may be right, but claiming that anyone using AI believes like you do is flat out false. A lot of my colleagues also working in ML researcher think like me btw.
In my opinion, this generation of AI is amazing but isn't it.
But, I am also having more fun building things than perhaps the earliest days of my first code written, which is just over 7 years now. Insofar as 1) goes, yes, I never want to go back. I can learn faster and more deeply than I ever could. It's really exciting!
1) Wouldn't want to go back
2) Wouldn't believe that it's about to replace human intellectual work
In other words AI got advanced enough to do amazing things but not 500B or T level of amazing and people with the money are not convinced that it will be anytime soon.