.NET Tips and Tricks

Blog archive

Job Tip: Does the Future Belong to Xamarin.Forms?

I've written about managing your skills portfolio. That includes developing skills that are currently "niche" so that they may become your future "current" skillset -- and generate some lucrative jobs along the way. If you asked me now what I thought your next niche skillset should be I'd say Blazor ... but to do it through Xamarin.Forms. Here's why.

When I'm working in Xamarin.Forms, I create my UI in XAML. I then build my application and get packages that run on Android, iOS and Universal Windows Platform (UWP) using native UIs.

That makes Xamarin.Forms sound suspiciously like one of those universal "application generators" that I'm normally suspicious of. However, Xamarin doesn't fall into that category: Xamarin just generates the platform-specific UI and a deployment package -- I still have to write all my business logic in C#. When I'm writing that code I have access to all the classes in the .NET Standard library (which means, effectively, almost everything that runs on Mono).

Lately, I've been experimenting with Blazor, which allows me to write code in C#, access the classes in the .NET Standard library, and deploy the resulting package to any of the current crop of Web browsers (thanks to an industry standard called WebAssembly that supports downloading a version of Mono to the browser). Effectively, Blazor can take JavaScript out of the equation when creating Web apps.

With JavaScript gone, is it my imagination or is there any reason that my Xamarin.Forms XAML couldn't generate HTML-based UIs as effectively as it generates Android/iOS/UWP-based UIs? If not, and I can truly create code that runs anywhere, why wouldn't I want to build my next application in Xamarin.Forms?

I'm not the only person asking that question, by the way, as quick search on the terms "Blazor Xamarin.Forms" shows. Makes me wonder about the technologies I should be acquiring.

Posted by Peter Vogel on 10/17/2018


comments powered by Disqus

Featured

  • New Dev Tooling from Progress Telerik, Infragistics and Uno Platform

    Two of the three offerings bring AI-assisted productivity to .NET and cross-platform app developers. Highlights include AI coding assistants, low-code view generators, new UI components, and enhanced design-time tools.

  • ASP.NET Core and Blazor Dominate 'Relatively Small' .NET 6 Preview 6

    In what Microsoft called a “relatively small” release, .NET 6 Preview 6 delivered its biggest set of updates to ASP.NET Core and Blazor. New features include required component parameters, JavaScript interop enhancements, and support for state persistence in Blazor Server apps. Other areas like .NET MAUI and EF Core saw targeted improvements focused on UI styling, accessibility, and standardized configuration conventions. Visual Studio 2022 Preview 2 is now officially supported, enabling key tools like .NET MAUI development and C# Hot Reload.

  • GitHub Copilot Is Rising All-Time Contributor to .NET MAUI Repo

    The .NET MAUI team is pursuing a dream scenario where GitHub Copilot handles a straightforward issue all by itself with just minimal initial instructions.

  • Kernel Ridge Regression with Stochastic Gradient Descent Training Using C#

    Dr. James McCaffrey presents a complete end-to-end demonstration of the kernel ridge regression technique to predict a single numeric value. The demo uses stochastic gradient descent, one of two possible training techniques. There is no single best machine learning regression technique. When kernel ridge regression prediction works, it is often highly accurate.

  • VS Code v1.102 Doubles Down on GitHub Copilot and AI-Enhanced Development

    VS Code’s June 2025 update supercharges GitHub Copilot with new chat customization tools, smarter inline completions, and an open-source Copilot Chat extension that makes AI-assisted coding more transparent and flexible.

Subscribe on YouTube