Most active commenters
  • FeepingCreature(5)

←back to thread

The AI Investment Boom

(www.apricitas.io)
271 points m-hodges | 12 comments | | HN request time: 0.352s | source | bottom
Show context
apwell23 ◴[] No.41896263[source]
> AI products are used ubiquitously to generate code, text, and images, analyze data, automate tasks, enhance online platforms, and much, much, much more—with usage expected only to increase going forward.

Why does every hype article start with this. Personally my copilot usage has gone down while coding. I tried and tried but it always gets lost and starts spitting out subtle bugs that takes me more time to debug than if i had written it myself.

I always have this feeling of 'this might fail in production in unknown ways' because i might have missed checking the code throughly . I know i am not the only one, my coworkers and friends have expressed similar feelings.

I even tried the new 'chain of thought' model, which for some reason seems to be even worse.

replies(10): >>41896295 #>>41896310 #>>41896325 #>>41896327 #>>41896363 #>>41896380 #>>41896400 #>>41896497 #>>41896670 #>>41898703 #
bongodongobob ◴[] No.41896295[source]
Well I have the exact opposite experience. I don't know why people struggle to get good results with llms.
replies(4): >>41896332 #>>41896335 #>>41896492 #>>41897988 #
1. amonith ◴[] No.41896492[source]
Seriously though, what are you doing? Every single example everywhere throughout the internet that tries to show how good AI is at programming shows so mindbogglingly simplistic examples that it's getting annoying. It sure is a great learning tool when you're trying to do something experimental in a new stack or completely new project, I'll give you that, but once you reach the skill level where someone would hire you to be an X developer (which most developers disagreeing with you are, mid+ developers of some stack X) the thing becomes a barely useful autocomplete. Maybe that's the problem? It's just not a tool for professional developers?
replies(3): >>41896542 #>>41897047 #>>41898131 #
2. ◴[] No.41896542[source]
3. Viliam1234 ◴[] No.41897047[source]
I am happy with the LLMs, but I only tried them on small projects done at my free time.

As a back end developer I am not familiar with the latest trends in JavaScript and CSS, and frankly I do not want to spend my time studying these. A LLM can generate an interactive web game based on my description. I review the code, it is usually okay, sometimes I suggest an improvement. I could have done all of that -- but it would take me a week, and the LLM does it in seconds. So it is a difference between a hobby project done or not done.

I also tried a LLM at work, not to code, but to explain some complex topics that were new to me. Once it provided a great high-level description that was very useful. And once it provided a great explanation... which was a total lie, as I found out when I tried to do a hello-world example. I still think the 50% success rate is great, as long as you can quickly verify it.

Shortly, we need to know the strengths and the weaknesses, and use the LLMs accordingly. Too much trust will get you burned. But properly used, they can save a lot of time.

4. FeepingCreature ◴[] No.41898131[source]
I mean, let me just throw in an example here: I am currently working on https://guesspage.github.io , which is basically https://getguesstimate.com but for flowtext instead of a spreadsheet. The site is ... 99.9% Claude Sonnet written. I have literally only been debugging and speccing.

Sonnet can absolutely get very confused and break things. And there were tasks where I had a really hard time getting it to do the right thing, or understand what I wanted. But I need you to understand: Sonnet made this thing for me in two and a half days of part-time prompting. That is probably ten times faster than it would have taken me on my own, especially as I have absolutely no design ability.

Now, is this a big project? No, it's like 2kloc. But I don't think you can call it "simple" exactly. It's potentially useful technology. This sort of "just make this small tool exist for me" is where I see most of the value for AI in the next year. And the definition of "small tool" can stretch surprisingly far.

replies(2): >>41898445 #>>41900028 #
5. hnthrowaway6543 ◴[] No.41898445[source]
This is a simple project. Nobody is disputing that GenAI can automate a large chunk of the initial setup work, which dominates the time spent on small projects like this. But 99.999% of professional, paid software development is not working on the basic React infrastructure for a 2,000 loc javascript app.

Also your Google Drive API key is easily discoverable with about 15 seconds of looking at the JS source code -- this is something a professional software developer would (hopefully) have picked up without you asking, but an LLM isn't going to tell you that you shouldn't ship the `const API_KEY = ...` code as a file to the client, because you didn't ask.

replies(1): >>41898572 #
6. FeepingCreature ◴[] No.41898572{3}[source]
> This is a simple project.

I mean, it would have taken me a lot longer on my own. Sure it's not a huge project, I agree; I wouldn't call it entirely trivial.

> Also your Google Drive API key is easily discoverable with about 15 seconds of looking at the JS source code

No, I'm aware of that. That's deliberate. There's no way to avoid it for a serverless webapp. (Note that Guesspage is entirely hosted on Github Pages.) All the data stored is public anyways, the key is limited to only have permission to access the stored data, and you still have to log in and grab a token that is only stored in your browser and cannot be accessed from other sites. Literally the only unique thing you can do with it is trigger a login request on your own site that looks like it comes from Guesspage; and you can do that just as easily by creating a new API key and setting its name to "Guesspage".

The AI actually told me that was unsafe, and I corrected it. To the best of my understanding, the only thing that you can do with the API key is do Google Drive uploads to your own drive or that of someone who lets you that look to Google as if my app is triggering them. If there's a danger that can arise from that, and I don't think there is, then it's on me, not on Sonnet.

(It's also referer domain limited, but that's worthless. If only there was a way to cryptographically sign a referer...)

replies(1): >>41900008 #
7. WgaqPdNr7PGLGVW ◴[] No.41900008{4}[source]
> I wouldn't call it entirely trivial.

It just doesn't represent a realistic codebase. It is significantly smaller than a lot of college projects.

The current software system I'm working on now is ~2 million lines of code split across a dozen services.

AI has been pretty good for search across the codebases and absolutely hopeless for code gen.

LLMs just aren't that good yet for writing code on a decent sized system.

replies(1): >>41901386 #
8. mvdtnz ◴[] No.41900028[source]
This is a ludicrously simple app and also - the code[0] is of very poor quality.

[0] https://github.com/Guesspage/guesspage.github.io/blob/master...

replies(1): >>41901393 #
9. FeepingCreature ◴[] No.41901386{5}[source]
I mean, I agree with that. That certainly matches my experience. I just don't think the deciding factor is "simpleness" so much as an inability to handle large scale at all.

My point is more that LLMs can handle (some) projects that are useful. It's not just oneliners and hello worlds. There's a region in between "one-page demos" and "medium-sized codebases and up" where useful work can already happen.

10. FeepingCreature ◴[] No.41901393{3}[source]
Eh, it's a bit hacked together sure. I find it easy to read?
replies(1): >>41906085 #
11. mvdtnz ◴[] No.41906085{4}[source]
Good code isn't just easy to read, it's easy to change. The code in this app is brittle, tightly coupled and likely to break if the app is changed.
replies(1): >>41908383 #
12. FeepingCreature ◴[] No.41908383{5}[source]
Eh. Honestly, so far Sonnet hasn't had any trouble with it. The thing is that every time it changes anything, it rewrites every line of code anyways just because I ask it "please give me the complete changed file(s) for easy copypasting."

The effort tradeoff is different for AIs than humans. Easy-to-understand-locally is more important than cheap-to-change, because it can do "read and check every line in the project" for like 20 cents. Making AIs code like humans is not playing to their strengths.

I don't think it's that bad anyways.