
Kevin Gosse
@KooKiz • 5,787 subscribers
Principal engineer @ JetBrains, passionate about .NET, performance, and debugging. Microsoft MVP. Coauthor of Pro .NET Memory Management.
Shorts
Videos

If you're still not convinced that we live in the future. I had my 4yo old son try "Putt-Putt", an old point&click game for children. He loves it, so I bought the whole series on Steam. However, it turns out half of them aren't localized in French, so he can't play them. Then I had an idea. I gave Claude (Fable 5.1) the following task: extract the voices from the game, transcribe and translate them, then re-generate them using voice synthesis. It did so completely autonomously, even using local models for the voice synthesis (I initially thought I'd have to buy credits for ElevenLabs or something similar). My input was only needed to point out some trimming issues in the initial generation. Now I can give my son a French localized version of the game, and all it took was one prompt.
Kevin Gosse76,919 görüntüleme • 15 gün önce

In preparation for my talk at Update Conference, I've prepared a tool to visualize the activity of the GC. It was initially meant as a gimmick, but it turns out to be a good way to understand some GC mechanisms. For instance, here you can see the effect of DOTNET_GCDynamicAdaptationMode=1 on the lower side, dynamically scaling up the number of heaps to absorb a spike of traffic, then scaling back down. The top application is running with default settings. Both are receiving the same traffic. #dotnet #progc2
Kevin Gosse200,110 görüntüleme • 2 yıl önce

For those interested, I also have my own approach to the problem, though I forgot to properly advertise it: While Marc-André Moreau's solution rely on the API, in my case I give direct access to WinDbg to the agent. It allows for instance to have an agent join you in a session to help you figuring something out. Or the agent can still manage the WinDbg instance autonomously from start to finish. I don't know if one solution is better than the other, it probably depends on the use-case. But the more the merrier 😀
Kevin Gosse12,850 görüntüleme • 1 ay önce

Still a very early prototype, but here is Windbgpt, a #chatgpt-powered AI assistant directly in #Windbg! It analyzes the output of the commands, and provides guidance to solve the stated problem. Here is an example of it investigating a deadlock in a .NET application.
Kevin Gosse65,971 görüntüleme • 3 yıl önce

The problem is that applications need to use the OpenClipboard API to access the clipboard, which gives exclusive access. In other words, if two applications read the clipboard simultaneously, one is going to fail. Quoting the official documentation: "OpenClipboard fails if another window has the clipboard open." There's no perfect fix, most applications try to work around by implementing a retry logic, but even that can fail if an application keeps the clipboard open for too long. This is the reason why I developed ClipPing. It displays a visual notification when the clipboard is updated, so you can know immediately if your ctrl+c failed.
Kevin Gosse12,842 görüntüleme • 4 ay önce

Something I wish I learned earlier. On Windows, when trying to copy the path from the explorer, I used to click on the address bar then copy the selected text. It breaks in two scenarios: - In the Quick Access folders (like Downloads), when trying to copy the path from the address bar, it copies "Downloads" instead of the full path - When the path is too big, Windows randomly clears the path it I click where the "X" is going to appear (and I *have* to click there because it's the only blank area, clicking elsewhere triggers the navigation) It turns out that both can be avoided by simply using right click -> Copy Address.
Kevin Gosse12,479 görüntüleme • 4 ay önce

To help reduce the number of UI freezes caused by Resharper, I built an internal tool to measure UI responsiveness. Here, you can see the improvement between the current 2025.1 version (on the left) and the upcoming 2025.2 version (on the right) with out-of-process enabled.
Kevin Gosse19,025 görüntüleme • 1 yıl önce
Daha fazla içerik yok.