Your .NET Conf proposal does not need to explain everything. One useful lesson is enough. The Community Days CFP closes tomorrow, Oct 6. Remote 30-minute talks, including Q&A. Tell them what you built, learned, or would do differently: https://sessionize.com/dotnetconf-community-2026/
Gerald Versluis
Gerald Versluis
@jfversluis.dev
Engineer @microsoft.com (.NET) | content creator | speaker | gamer | .NET MAUI, Blazor, C# | posts & opinions on personal title | He/Him | Talk about what you love, not what you don't. ๐ Maastricht, NL ๐ฅ YouTube.com/@jfversluis ๐ jfversluis.dev
2K followers163 following1.2K posts
Missed yesterday's .NET MAUI Community Standup? GnollHack is a real cross-platform game built with .NET MAUI. The team joined us to share their development journey, challenges, and lessons learned. Watch it back here ๐ฎ https://www.youtube.com/watch?v=_1iLdE7d1jo
We're live! A real game built with .NET MAUI and available on Steam ๐ฎ Join us as the GnollHack team shares how they built their cross-platform roguelike, what they learned, and what got difficult. Bring your questions! https://www.youtube.com/watch?v=_1iLdE7d1jo
A .NET MAUI app... err, game. Available on Steam?! ๐ฎ Tonight's .NET MAUI Community Standup goes inside GnollHack. Hear how the team built a cross-platform roguelike with .NET MAUI, and bring your questions. Live at 20:00 CEST: https://www.youtube.com/watch?v=_1iLdE7d1jo
Your app feels slow. The process you are profiling might be innocent. This Visual Studio walkthrough separates CPU work from waiting, then finds 50 ms added to every streamed update. https://devblogs.microsoft.com/visualstudio/today-i-will-find-hidden-latency-across-a-distributed-net-application/
That thing you learned the hard way? It might be a .NET Conf talk. Community Days CFP is open: remote 30-minute sessions, Nov 12-13. .NET 11 demos are preferred, but any useful .NET topic can be considered. Submit by Oct 6: https://sessionize.com/dotnetconf-community-2026/
Long press is built into .NET MAUI 11. This sample covers MinimumPressDuration, AllowableMovement, GestureStatus, commands, touch position, tap coexistence, and a two-finger iOS/Mac example. https://github.com/dotnet/maui-samples/tree/main/11.0/UserInterface/Gestures/LongPressGesture
Friday .NET tip: scanning text for the same substrings repeatedly? Build SearchValues<string> once, then use ContainsAny. Need the position? Use IndexOfAny. .NET 9+, Ordinal or OrdinalIgnoreCase only. https://learn.microsoft.com/dotnet/api/system.buffers.searchvalues.create?view=net-10.0</string>
I'm live on .NET Unboxed right now, showing some of the new .NET MAUI 11 bits ๐ The team is opening .NET 11 RC1, with Jon Galloway, Daniel Roth, Mads Torgersen, and more. Come hang out: https://www.youtube.com/watch?v=5fvi7m1QxIY
Gerald Versluis reposted
ใฐ๏ธ HAPPENING TODAY - .NET Unboxed: .NET 11 Release Candidate 1!! ใฐ๏ธ Join the team LIVE as they show off their favorite features in .NET 11 in this release party for .NET 11 RC 1!! See you here at 11AM PT โก๏ธ msft.it/63320aXhLE
C# 15 preview lets break and continue target an enclosing labeled loop. That can remove a state flag or awkward goto from genuinely nested control flow. For a simple loop, keep it simple. https://devblogs.microsoft.com/dotnet/dotnet-11-preview-7/
Per-solution themes make Visual Studio 2026 windows easy to spot. The useful part is settings.VisualStudio.json beside the solution. Commit it for team settings, or keep it personal with .gitignore. https://devblogs.microsoft.com/visualstudio/stop-alt-tabbing-into-the-wrong-visual-studio/
Tomorrow I'm joining .NET Unboxed for .NET 11 RC1 ๐ I'll show some of the new .NET MAUI 11 bits, alongside Jon Galloway, Daniel Roth, Mads Torgersen, and more. Thursday, 20:00 CEST / 18:00 UTC https://www.youtube.com/watch?v=5fvi7m1QxIY Which MAUI 11 bit are you most curious about?
A GitHub Actions job that only reads Dependabot alerts should not get unrelated token access. Use vulnerability-alerts read at job level. Once you specify permissions, omitted ones become none. https://docs.github.com/actions/reference/workflows-and-actions/workflow-syntax#permissions
A green managed test run does not prove the Native AOT publish behaves the same. Keep the fast lane. Add one representative native test lane. Verify test count and outcomes. A passing subset is still a false green. MSTest 4.4: https://devblogs.microsoft.com/dotnet/mstest-source-generation/
Content exclusions now carry into agentic work. The GitHub Copilot app and Copilot CLI keep excluded files out of context. Available for Copilot Business and Enterprise. https://github.blog/changelog/2026-09-02-content-exclusions-generally-available-in-copilot-app-and-cli/
Stop creating every XAML resource at startup. .NET MAUI 11 XAML Source Generation turns dictionary entries into factories and creates them on demand. The benchmark shows up to ~8ร faster dictionary initialization. No XAML rewrite. https://github.com/dotnet/maui/pull/33826
The code is written. The PR still has review feedback, failed checks, and a merge conflict. VS Code 1.136 adds Agent Merge (preview). It can keep working through those blockers until the PR is ready. Which one would you hand off first? https://aka.ms/VSCode/136
MAUI Day Skopje is 12 days away ๐ฒ๐ฐ September 17. One free, in-person day focused on .NET MAUI, with sessions, speakers, and plenty of time to talk with the community. If Skopje is within reach, go check it out: https://mauiday.net/skopje/ Anyone here joining?
Tasks rarely finish in the order you started them. Since .NET 9, `Task.WhenEach` lets you process them as they complete with `await foreach`. No `WhenAny` loop. No removing finished tasks yourself. https://learn.microsoft.com/dotnet/api/system.threading.tasks.task.wheneach
We're live! .NET MAUI meets GitHub Copilot Canvas ๐ค Join David Ortinau, Dominik Titl, and me as we inspect running MAUI apps, analyze layouts, record interactions as tests, and use captured evidence to diagnose failures. Watch now: https://www.youtube.com/watch?v=A5Pr5N999tc
Capture it. Keep it. .NET MAUI 11 Preview 7 adds `SaveToGallery` for Media Picker photo and video capture. It is opt-in and works on Android, iOS, and Mac Catalyst. https://learn.microsoft.com/dotnet/api/microsoft.maui.media.mediapickeroptions.savetogallery?view=net-maui-11.0
Half-finished work, no stash required. Visual Studio 2026 now supports Git worktrees. Create one from a branch or commit, open it in a new window, and delete it when done. https://learn.microsoft.com/visualstudio/releases/2026/release-notes#august-update-1890
Tomorrow at 20:00 CEST / 18:00 UTC: .NET MAUI meets GitHub Copilot Canvas ๐ค Join David Ortinau, Dominik Titl, and me to see a tool inspect apps, analyze layouts, record interactions as tests, and capture evidence when things fail. https://www.youtube.com/watch?v=A5Pr5N999tc
Bot PR or very large PR? Copilot code review covers both. Copilot cloud agent PRs now get full agentic reviews. The old 300-file / 20,000-line limit no longer applies. https://github.blog/changelog/2026-08-27-copilot-code-review-resolution-reasons-and-expanded-capabilities/
One caveat for automatic reviews on bot-authored PRs: Copilot Business or Enterprise organizations need paid AI credits enabled, plus the policy allowing members without a Copilot license to use code review on GitHub.com. Usage is billed to the organization.
Your MAUI page can stay alive while its XAML changes underneath it. .NET MAUI 11 Preview 7's Incremental Hot Reload patches every live instance of an affected page or control. It works with `dotnet watch` too. https://devblogs.microsoft.com/dotnet/dotnet-11-preview-7/
Gerald Versluis reposted
AI is everywhere. Useful #AI is harder to find. Thatโs why the AI sessions at #UCP26 focus on what really matters. Meet the speakers: ๐ @jfversluis.dev, @konradkokosa.bsky.social, Karl-Henrik Nilsson, @chrisnas.bsky.social, @kajetanduszynski.bsky.social ๐ prague.updateconference.net/en/2026/sche...
Start in Copilot CLI. Continue in VS Code. VS Code 1.135 shows recent external Copilot sessions in the Sessions list. Open one to view the conversation and keep going. https://code.visualstudio.com/updates/v1_135#_continue-external-agent-sessions-in-vs-code
I like this C# 15 preview feature: `closed` hierarchies. The compiler knows every direct subtype, so your switch can be exhaustive without a fallback. Add another subtype later and the switch is flagged for you. https://learn.microsoft.com/dotnet/csharp/language-reference/keywords/closed
.NET Conf returns November 10-12! ๐ Three days, free and online, with the official launch of .NET 11. The schedule is still coming together. For now, save the dates. What are you hoping to see this year? https://devblogs.microsoft.com/dotnet/dotnet-conf-2026/
Last week I said: send a PR to add your app to Built with .NET MAUI. You no longer need one. ๐ There is now a static showcase with search and filters, plus an issue form with automated validation. Huge shoutout to @james.montemagno.com! https://jfversluis.dev/built-with-maui/
That isn't just preference. .NET's design guidance says methods are preferable when access is slow, has side effects, depends on execution order, or can return a different result each time. https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1024
A log call on a hot path can box values, allocate temporary objects, and parse its template at runtime. `LoggerMessageAttribute` generates a strongly typed logging method at compile time instead. https://learn.microsoft.com/dotnet/core/extensions/high-performance-logging
Shell routes can carry values in the path now. .NET MAUI 11 Preview 7 adds route templates: `trip/{tripId}` matches `//routes/trip/SEA-204`, then delivers `tripId` through the existing navigation-data APIs. https://devblogs.microsoft.com/dotnet/dotnet-11-preview-7/
Captured values use `QueryProperty` or `IQueryAttributable`. Required, optional, constrained, and catch-all segments are supported. Route templates currently require absolute navigation. https://learn.microsoft.com/dotnet/maui/whats-new/dotnet-11?view=net-maui-11.0#navigation