site banner

Friday Fun Thread for September 20, 2024

Be advised: this thread is not for serious in-depth discussion of weighty topics (we have a link for that), this thread is not for anything Culture War related. This thread is for Fun. You got jokes? Share 'em. You got silly questions? Ask 'em.

1
Jump in the discussion.

No email address required.

I use LLM regularly to generate code. It's mostly useful when I'm dealing with repetitive code - like, copy this code block, but change a little thing in it 10 times, or produce a code that looks like this code, but with a little twist changed - basically, smart enhanced copypaste. LLM is decently good at this - sometimes you have to fix a couple of things, but can easily turn a 5-minute task into a 5-second task if you're reasonable lucky. I am working with Java, which traditionally has a lot of boilerplate code - and LLM is very helpful in speeding up producing such code. It also helps with doing standard things like "here I have this collection of values, I need to apply this mapping function to it, then filter it this way, then rearrange them in this way and then store them in this way" - I can write it all myself, but it'll require me at least one trip to the docs to remember the exact name and syntax of certain method, and LLM can deliver all that in seconds without switching context. Which is amazingly helpful when you're "in the zone" and don't want to ruin your flow.

It has also been useful for generating quick one-time tools - like transforming data in certain format in certain place (say, database) into certain other place using certain API. Basically the sort of thing you did with your proxy thing. I can write most of such tools easily, probably in 10-15 minutes, but instead if I feed description to the LLM, it can deliver the same in seconds, and again, I wouldn't even have to look up the docs. So, nothing I can't do myself, easily, but these tasks are boring and LLM can do it quickly without me having to do mental context switch. Not a groundbreaking capability, but a very nice convenience for me.

One has to be careful with it, because sometimes it has a penchant for hallucinating things that don't really exist but it thinks it may be helpful if they did. A good IDE though usually helps to fix that, but sometimes, if the actual task is not easily achievable, you can be lost in the labyrinth of LLM hallucinations and just waste your time.

I have not been successful in making LLM to produce something substantial and even moderately complex from scratch. That's where the fact that this thing doesn't really understand anything shows.

All in all, as a professional software developer, this is an amazing tool that provides me with a lot of convenience, but so far any talk of it replacing any of the professional engineers is a complete bunk. I can not say what will happen in 10 years (or even in 3 years) but that's what I am seeing now.