MangoCats

@MangoCats@feddit.it · Joined ⁨Feb⁩ ⁨2025⁩

Replying to @⁨ignirtoq@feddit.online⁩

they’ve found something they want to spend it on, so they’re emptying 20 years of profits in 5.

That’s what .com did as well.

reporting for literal decades that Apple, Amazon, Google, and similar have been sitting on giant war chests of profit with nothing to spend it on.

I remember when a “shockingly large” war chest was $30B - that’s like table stakes anymore.

Replying to @⁨dreamkeeper@literature.cafe⁩

It is different, in lots of ways. “Back then” there were a lot more captive audiences, people who had no access to any other sources of information. So, while we’re in 24/7 saturation, we also have the option to “switch the channel”

Unfortunately, once somebody has decided what they want to hear, they can “switch the channel” until they find one that reinforces whatever that may be, from “The Earth is Flat” onward… Still, “The Truth is Out There” and you can access more of it, if you really want to / know how to, than ever before.

Replying to @⁨Feyd@programming.dev⁩

entirely complete abstraction where you (almost) never have any benefit to looking under the covers like c over assembler is completely dishonest.

Is it, though? In the early 1990s I could still optimize compiler output by hand, here and there. In the 1980s it was common practice and necessary in many circumstances to make complex things happen on the constrained hardware. In the 1970s there were a lot of programmers who never touched Fortran, just practiced assembly all the time because Fortran was too inefficient for their needs.

I’ll say that LLMs, this year, are something like compilers were in the 1960s - a revolutionary improvement in accessibility of coding, being able to express what you want in “natural language” - like COBOL did starting in 1959.

LLMs have plenty of pitfalls that COBOL doesn’t today, but I’ll note that Borland Turbo C++ compiler in 1991 was too damn buggy to do anything much more complex than “Hello, World.” with.

Replying to @⁨naught@sh.itjust.works⁩

I’ve written my share of garbage code – completely by hand!

Whenever I look back at old code, mine or others, the first words that usually come to mind are “what you have to understand about this is… we were on a tight schedule, we never thought this was going to be used in production, we weren’t allowed to execute the planned and contracted refactor… etc. etc. etc.”

Replying to @⁨Feyd@programming.dev⁩

robs the practitioner of learning

Not at all. It gives the practitioner the option of skipping the learning.

Starting in the 1990s I started skipping the learning of assembly language, compilers got good enough that I just don’t need to know how the latest SIMD/MIMD/ whatever instructions work, I just express what I want in C and gcc or whatever handles the optimization for me.

Replying to @⁨the_wonderfool@piefed.social⁩

Yet most of the time of a developer was spent in writing code.

That’s what developers told the world. Now they’re exposed, it never really took that long to write the code. (Only partly joking.)

Actually, a whole lot of time went into reading other developers’ code, getting documentation in sync with the actual implementation. And if you didn’t do all that, you tended to have a lot more bugs / vulnerabilities, etc. The LLMs are wicked fast at reviewing code, they don’t find ALL the problems, a lot of problems they do find aren’t worth fixing, but they do find more actual actionable problems per minute than most developers can find per hour in a big code base.

Replying to @⁨tyler@programming.dev⁩

It was understanding requirements and problem solving. LLMs still can not do either of those things and there is no evidence they ever will be able to.

I don’t know… I just made a scheduling / timesheet creation app. Multi-user, overlapping clients and providers, multiple funding sources. Took 10 calendar days to make the initial app working part time, maybe 2-3 hours a day. Initially written in Python, decided at that point I’d rather have it in Go. Because the initial app had robust requirements and design docs, the translation to Go happened in less than 5 calendar days, with almost zero human involvement beyond telling the agent “continue” at each stopping point. After the Go translation was done (and debugged by the LLM to a flawless translation - only difference is that it runs faster), I was given a new timesheet to use for some of the workers, weekly instead of bi-weekly. Pay weeks start on Monday instead of Thursday. Various wrinkles about how the employees and clients and services are identified, weird sub-totals by service. All I told the LLM was: “Here’s a new timesheet that we’ll be using for some workers, design the necessary modifications and extensions to accomodate it.” It did, independently. It highlighted three shortcuts it took and I told it not to take those shortcuts, it adjusted.

That’s not quite rocket science, but it’s still impressive: to dissect the given .pdf, determine what data goes in what fields, in what formats, with what calculations, based on just reading the page, then adapt the existing app to fill it out automatically.

Replying to @⁨joe@lemmy.world⁩

“Chatbot” style AI is wildly good and bad at varying kinds of tasks, and a lot of that has to do with how it has been prepared.

Some LLMs have been trained to make images - I’ve not been too impressed with them, but that’s what they’re “good” at - and better than the LLMs that have been trained to write computer code when you ask the coding LLMs to draw a picture.

The code writing LLMs have actually improved the most at reviewing code over the past 8-9 months, and that ability to review their own code makes them dramatically better at writing code as well.

I find Google Gemini to be pretty impressive at scanning laws and regulations and finding, not creative, but functional solutions to stated problems within the constraints of (often frustratingly bizarre) legal structures.

And all of them will lie to you, tell you what a great idea you have, etc. They’re not really lying, they’re mostly just taking what they read at face value without checking corroborating sources enough to find the obvious (to you) blunders. If you want the LLM to be sure, ask it to go on the RAG (Research Augmented Generation) - check everything before saying it, they can do that, especially “paid mode” engines, but it reduces their capacity for analysis of complex problems by 3-10x, because they’re spending so much context window “being sure” - you can alternatively spend 3-10x as long solving complex problems / accomplishing complex tasks if you have them do their homework, verify everything from “the best” available sources 3x and build up a local document set of “trusted information” which is used in preference to whatever it might find at random on the internet. This isn’t as sexy as “Hey Claude, code me up a database that does X Y Z” and getting the result in 30 seconds, but it is how professionals have been doing their jobs for centuries: learn reliable information first, then act on it.