Learning Blazor

Build Single-Page Apps with WebAssembly and C#

David Pine

6 minute read

The Learning Blazor title book cover

In June 2021, I set out on a journey to write a book in the middle of a global pandemic. I had no idea what I was doing (all things considered, I still don’t know what I’m doing). But I do know that I truly enjoy helping others. I hope you enjoy the book as much as I enjoyed writing it.

Amazon Preview

Foreword by Steve Sanderson

Web development has been a dominating feature of the software industry for over 20 years and is likely to remain so for many years to come. Industry giants continue to invest heavily in expanding web technology’s power and flexibility, enabling an increasing range of advanced browser-based software. While native mobile apps and augmented reality / virtual reality apps find their place for consumer software, the web is overwhelmingly the default UI for business apps. If you could bet on only one application platform, you should bet on the web.

During those same 20 years, .NET (first released in 2002) has held its place as Microsoft’s premiere developer toolset. Like the web, .NET continues to gain strength. It was reinvented as cloud-first, cross-platform, and fully open source in 2016 and today is used by about 30% of all professional software developers1 C# has always been considered one of the most productive languages, at the forefront of rich developer tooling with precise code completions and a top debugging experience, and now ASP.NET Core is one of the fastest server-side web technologies2.

The goal of Blazor is to unlock the full power of .NET for browser-based UI applications. It’s the .NET team’s best effort to create the most productive and natural way to create single-page application–type apps. This includes Blazor’s component-based programming model, which takes the best aspects of many modern UI frameworks and unifies them into something natural for .NET with its strong typing. Beyond that, it means connecting with the rest of the .NET ecosystem, with its industry-leading IDEs and first-class features for debugging, testing, and hot reload. Blazor’s biggest innovation might be its flexible execution models, running server-side with UI streaming to browsers over a websocket, directly inside the browser on WebAssembly, or as native code in mobile and desktop apps.

Learning Blazor provides both a deep and broad look at Blazor app development. Unlike many other books, it doesn’t just focus on the easy parts of C# programming and leave real-world complexity as an exercise for the reader. Instead, David sets out the whole range of web development concerns—including authentication, security, performance, localization, and deployment (CI/CD)—right in front of you, starting from the beginning. With some focus, you’ll be able to absorb David’s broad expertise and be equipped to take on realistic work of your own.

David is well placed to explain not just how things work today but also how they’ve evolved to their present state and even how things may change in the future. He’s been a well-known figure in the Blazor community for years, is well connected with engineering leaders within Microsoft, and has an even longer history as a Microsoft Most Valuable Professional (MVP) and a Google Developer Expert (GDE) in web technologies. Throughout this book, you’ll find many historical details and anecdotes that shed light on the challenges, decisions, and people who shaped web development and .NET into the technology you’ll be using. David’s enthusiasm will propel you through a complex landscape.

My biggest motivation when creating the first release of Blazor with Dan Roth and Ryan Nowak was to help free web UI from its monoculture. I appreciate JavaScript and have built a lot of my career on it, but there are so many other programming languages, paradigms, and communities that could bring their own richness into the browser. I know you’ll find your own ways to innovate with the software you create and for the users who benefit. I wish you all the best with your Blazor projects and am confident you’ll find inspiration in these pages.

Steve Sanderson
Software Engineer/Architect at Microsoft, original Blazor creator
Bristol, UK
August 2022

Developer community praise

I love the energy from the people who have read the book! I’m thrilled to have made such a positive impact on the community. Here are some of the comments I’ve received from some familiar developer community folks. 😍

The Blazor open source web framework is a whole new way to develop powerful applications for the web. Learning Blazor uses tons of examples and prescriptive code based on David Pine’s deep experience as a content developer on the .NET team to get you writing Blazor web apps with C# today!

Scott Hanselman, Partner Program Manager, Developer Division, Microsoft

Learning Blazor is the perfect resource for developers who are looking to build modern web applications using bleeding-edge web technologies. David leverages his skills as a senior content developer to help you get started with Blazor!

Scott Hunter, VP Director Azure Developer Experience, Microsoft

David Pine’s Learning Blazor takes developers on the perfect journey to learning how to build and deploy their Blazor applications. David leverages his extensive content development and presentation skills to inspire you to build Blazor web apps today.

Maria Naggaga, Principal Product Manager Lead, ASP.NET and .NET Interactive Microsoft

Like its author, this book will inspire folks to try new things with Blazor and to be excited about the possibilities of building apps it brings. David’s delightful style of writing code as eloquent as his prose, coupled with a genuine love for .NET and using it creatively will make any developer fall in love with web development all over again.

Brady Gaster, Principal Program Manager, .NET Team, Microsoft

As an experienced Blazor developer, I learned more about localization and testing from David Pine in 20 minutes of reading than I did in days of searching for similar insight online. Not only is Learning Blazor an educational piece, but it’s also a great reference that I will return to when building future Blazor applications.

Jeff Fritz, Live Streamer and Principle Program Manager, .NET Team, Microsoft

Learning Blazor is a well-paced guide that is perfectly suited for anyone with .NET experience who would like to learn Blazor to build web apps, and for anyone looking to refine their Blazor skills.

Lana Lux, Game Developer and Tech Streamer, Founder of Lux Games

Learning Blazor is one of the most informative books I have ever read, and it makes you want to start developing with WebAssembly and C# right away. Learning Blazor uses a great storyline and practical real-world examples to explain a modern technology and how it can be combined with JavaScript and HTML. A must-read for every web developer.

Fabian Gosebrink, Senior Developer, Microsoft MVP, and Google Developer Expert, Offering Solutions Software

There are so many gems in here that you are guaranteed to learn something regardless of your experience level. It has inspired me to add techniques and features to my projects that I’ve never considered before.

Cecil L. Phillip, Staff Developer Advocate, Stripe

Click the cover below 👇🏽. It’s a link to the book on Amazon. 😊

Visit Amazon.com for the Learning Blazor: Build Single-Page Apps with WebAssembly and C# by David Pine book.
Media type Site
📖 Paperback (Print) Check it out on Amazon to pre-order today.
💻 eBook (Kindle) Buy it now on Amazon Kindle devices.
comments powered by Disqus