I'm writing a quick test project with Claude Code for myself, and it decided to "build MRU history and calling with arguments". I consider myself technical, and write lots of code of my own, but I have no idea what an MRU history is, if I need one, if Claude Code should be building it, or if it should, what arguments it should have. Googling anything on the acronym MRU gives me results about Mount Royal University. If you weren't already a programmer, and didn't understand the concepts of calling and arguments, you'd be even more lost. But thanks to the complete enshittification of search, even I'm now completely stumped by an unfamiliar acronym. So I guess I just have to trust the #AI that an MRU is something this project has and/or needs, and that an MRU has or should have a history that has or should have arguments and can or should be called. It certainly wasn't something I specified or asked for, and thanks to big tech's complete destruction of all knowledge, it's not something I can easily learn about on my own. I guess I could ask the AI, though that kind of defeats the entire purpose of finding things out myself. One could argue that I don't need to know what MRU stands for, because the AI is taking care of it. But at that point I can no longer claim to understand my own project, and am just vibe coding, because I can no longer make knowledgeable decisions about parts of it. My point is that even for programmers, it's surprisingly easy to slip into vibe coding, and thanks to the modern Internet, it can be tricky to avoid, even for those with a programming background.
@fastfinge Hopefully this is useful in the context of the test project you're building, but as far as I know MRU history usually stands for most recently used history. So as an example, the list of most recent website visits in your browser is an MRU.
@fastfinge For what it's worth, I did a DuckDuckGo search for "MRU programming", and the first result that was both relevant and not apparently an SEO content farm was the Wikipedia article on cache replacement policies, which was several links down.
@matt Interesting. A kagi search for "mru programming" has that article as result 16. Everything else is stuff like the programs and courses offered by Mount Royal University, or direct links to computer science courses at Mount Royal University like "COMP 1501 - Programming I: Introduction to Problem Solving". Google is the same way. Perhaps because I live sort of close to Mount Royal University, so geolocation pushes it up in the list.
@fastfinge I'm coming around to the view that an LLM is just a better interface to a search index than sorting through search results manually, as long as there are links you can use to check the LLM's synthesis of the results.
@matt Yes, this is one instance where asking an LLM "What is an MRU in programming?" would give a better result, because most LLMs would be good enough to realize my geolocation doesn't matter to the answer of that question. Maybe I'm just old and grumpy that learning things by typing in two keywords and reading the first or second result is no longer possible.
@fastfinge Meh. I think that learning to do effective keyword searches and interpret the results was an instance of a few generations, mine definitely included, learning to adapt to computers maybe more than we should have had to. It also seems like a phase that happened disproportionately in the western world. I remember reading, in the mid 2010s long before the rise of LLMs, that Chinese people were trying to do natural-language queries and Baidu had to adapt to that.
@matt I'm not sure about that. In order to ask questions about something that make sense, you at least need to know what the thing you're asking about is. I suspect natural language is causing a lot of people to ask questions they don't understand, and thus get answers that are not useful. For example, I could have asked an AI "Do I need an MRU?" It would not have asked for any more context and would have given me...some kind of answer, even though the question as posed is un-answerable. The only reason you and I think to ask questions like "What is an MRU in programming?" is because we're already thinking about keywords, and just stuffing them into a question.
@fastfinge Well, if you had asked Claude code why your project needed an MRU, in the context of the session where it decided to code one, it would have given you an answer that wasn't fabricated from whole cloth but constrained by the existing context, possibly including its earlier reasoning traces.
@matt Actually no. Claude is a yes-man. Asking the question resulted in it deciding that I am an extremely smart person who is always right, "Good catch!" and removing it. Without ever answering the question in any meaningful way.
@fastfinge Yeah, I buy that. It doesn't surprise me that the model's inclination is to gold-plate by default unless challenged on a specific instance of that.
@matt Right, and to challenge in a way that won't cause it to just blow smoke up my bottom would require me to already know about the thing I'm challenging it on. LLMs are designed to please you, not to teach you.
@matt I think the only way to learn anything about programming from an LLM is to look at the code it produces, but never ask it any questions about the code it produced. The code itself is usually well-commented, and if you're looking for a sort of average example of how to do a sort of average thing, you can teach yourself that from LLM output. But when it comes to the "hard sciences", LLMs are built to assume you're smarter than they are and please you. Interestingly, when it comes to the "soft sciences", LLMs are built to assume you're a mentally disabled five-year-old, and refuse any request that could possibly hurt anyone anywhere, while lecturing you about how wrong and stupid and dangerous and problematic you are.
@matt@fastfinge This accounts for almost all of what i use LLMs for at the moment, and I do follow the links to sources whenever I think it's worthwhile to check details. Using LLMs to substitute for my writing process is where I draw a firm line - it's definitely no. If you read anything from me in email, social media, on the Web or in a publication, it means I wrote it and that an LLM didn't. If i quote LLM output, I'll attribute it.
@fastfinge@matt I used Kagi and searched for "mru coding concept". The first result was a Github page on the most recently used concept. A couple links after that was a Microsoft Learn page on the same thing. That said, I have a computer science degree and have worked as a coder and sys admin for ten years, and I had no clue what MRU was.
@sclower Interesting. A kagi search for "mru programming" has that article as result 16. Everything else is stuff like the programs and courses offered by Mount Royal University, or direct links to computer science courses at Mount Royal University like "COMP 1501 - Programming I: Introduction to Problem Solving". Google is the same way. Perhaps because I live sort of close to Mount Royal University, so geolocation pushes it up in the list.