Remix.run Logo
cess11 17 hours ago

On what, exactly? Where are the measurable gains?

I've tried out a lot of angles on LLM:s and besides first pass translations and audio transcriptions I have a hard time finding any use for them that is a good fit for me. In coding I've already generated scaffolding and CRUD stuff, and typically write my code in a way that makes certain errors impossible where I actually put my engineering while the assistant insists on adding checks for those errors anyway.

That's why I gave up on Aider and pushing contexts into LLM:s in Zed. As far as I can tell this is an unsolvable problem currently, the assistant would need to have a separate logic engine on the AST and basically work as a slow type checker.

Fancy autocomplete commonly insists on using variables that are previously unused or make overly complicated suggestions. This goes for both local models and whatever Jetbrains pushed out in IDEA Ultimate. One could argue that I'm doing it wrong but I like declaring my data first and then write the logic which means there might be three to ten data points lingering unused in the beginning of a function while I'm writing my initial implementation. I've tried to wriggle around this by writing explicit comments and so on but it doesn't seem to work. To me it's also often important to have simple, rather verbose code that is trivial to step or log into, and fancy autocomplete typically just don't do this.

I've also found that it takes more words to force models into outputting the kind of code I want, e.g. slurp the entire file that is absolutely sure to exist and if it doesn't we need to nuke anyway, instead of five step read configured old school C-like file handles. This problem seems worse in PHP than Python, but I don't like Python and if I use it I'll be doing it inside Elixir anyway so I need to manually make sure quotations don't break the Elixir string.

Personally I also don't have the time to wait for LLM:s. I'm in a hurry when I write my code, it's like I'm jogging through it, because I've likely done the thinking and planning ahead of writing, so I just want to push out the code and execute it often in a tight cycle. Shutting down for twenty to three hundred seconds while the silly oracle is drawing power over and over again is really annoying. Like, I commonly put a watch -n on the test runner in a side terminal with usually 3-10 seconds depending on how slow it feels at the moment, and that's a cadence LLM:s don't seem to be able to keep up with.

Maybe the SaaS ones are faster but for one I don't use them for legal reasons and secondly every video of one that I watch is either excruciatingly slow or they snipped or sped up 'thinking' portions. Some people seem to substitute for people and chat with their LLM:s like I would with a coworker or expert in some subject, which I'm not interested in, in part because I fiercely dislike the 'personality' LLM:s usually emulate. They are also not knowledgeable in my main problem domains and can't learn, unlike a person, whom I could explain context and constraints to before we get to the part where I'm unsure or not good enough.

To me these products are reminiscent of Wordpress. They might enable people like https://xcancel.com/leojr94_ to create plugins or prototypes, and some people seem to be able to maintain small, non-commercial software tools with them, but it doesn't seem like they're very good leverage for people that work on big software. Enterprise, critical, original systems, that kind of thing.

Edit: Related to that, I sometimes do a one-shot HTML file generation because I suck at stuff like Tailwind and post-HTML4 practices, and then I paste in the actual information and move things around. Seems fine for that, but I could just script it and then I'd learn more.