site banner

Friday Fun Thread for January 30, 2026

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.

Since LLMs are all anyone can talk about...

I've been messing around in some experimental projects ahead of my new job starting. A thing I may have to do is upgrade some .Net Framework projects to .Net 10. It turns out Microsoft has actively broken every means of doing this except to use Copilot. There used to be a .Net Upgrade Assistant but it's been deliberately broken in new versions of Visual Studio. So copilot it is I guess.

It generated some very nice looking assessment.md and plan.md files, and generally walked you along, giving you the exact prompts that were valid at each step of the process. And that's about the last nice thing I can say about it.

The first thing that went wrong was after generating the plan.md file, I guess it forgot what it was doing, and prompted me to start a new @modernize prompt, even though I was already in one. Well, whatever. That new prompt found the old plan.md file and just picked up where the other got confused and forgot what it was doing. It very quickly said it was finished, and the project built and passed all the unit test.

It had actually done nothing.

When I point this out, it cheerily began actually updating projects. After probably an hour of it thinking very hard on each one, and needing constant reassurances to continue, it claimed it had finished, all projects build, and they pass all test.

This was another lie.

But it had gotten far enough along that I could manually fix the remaining issues (mostly package versioning issues it claimed it had already fixed), and viola, my simple solution with about 8 small projects was upgraded from .Net Framework 4.8.1 to .Net 10.0. Hurray! Only took me all afternoon babysitting an LLM that lied consistently, followed by manual touch ups.

This morning I discovered there is actually a CLI tool. It's no longer supported, but using that took me about 20 minutes. It still flubbed some thing, and bafflingly upgraded several projects to .Net Standard 2.0 instead of .Net 10 despite my specifically telling it not to. But that's just editing a value in the csproj file after the fact. Oh, also telling it to analyze any of the projects consistently crashed. But all in all I think it did a better job than Copilot.

I sure am glad RAM prices have gone up 3-4x for this!

That is pretty funny that they changed the official documentation to just say to use an agent.

Like, I can sort of see the idea: upgrading from .NET Framework always had too many edge cases for the dummy automated tools to ever really work fully correctly. There was always cleanup to do afterwards, so wouldn't it be nice to have an agent do that whole process instead? But if the recommended agent isn't actually smart enough to do it, then that's just giving up on maintaining any actual solution.

I'd agree with the other comment though that a normal non-agentic LLM could probably do the task way better. If your projects really are small, you could probably just go one at-a-time, concatting each .csproj file with all its .cs files into one big .txt file (labeling each file within the big text blob), feed that to Gemini Pro or some equivalent smart and big-context model, and let it give you back all the changes you need. Would still be a slower process than the CLI, though it might handle some of the edge cases better (especially where there aren't directly equivalent APIs).

In any case, the good news is that once you're through the .NET upgrade, you never need to worry about .NET Framework again. Only poor, poor Microsoft still needs to worry about .NET Framework. I kind of feel bad for them, except that it's also kind of their fault what with the bad communication that so many organizations are still on it.