Michael Bradvica joined Saxony Partners in 2020 as a Software Engineer on our app dev team. Previously, he has worked as a Full-Stack .NET Developer for technology services firms. You can read more of his thought leadership at MichaelBradvica.com – from which the blog post below has been adapted.

When it comes to Developing for Blazor, “just because you can, doesn’t mean you should” applies.

“Your scientists were so preoccupied with whether they could, they didn’t stop to think if they should.”

If you have seen the movie “Jurassic Park,” you may be familiar with this quote. In the scene, Dr. Malcolm (played by Jeff Goldblum) tries to explain to the owner of Jurassic Park that dinosaurs went extinct on purpose. He attempts to raise the serious ethical issues surrounding not only the resurrection of numerous extinct species, but also the ones with large appetites and pointy teeth. Ultimately, the worst-case scenario occurs when the park systems fail and the dinosaurs begin rampaging around the island, hungry for fresh scientist meat.

Software is only slightly different. As engineers, we have many options available to us. It is our due diligence to recuse ourselves from implementing shortsighted solutions.

Blazor presents its own set of novel difficulties. For example, it represents the first time we can combine a responsive and dynamic web framework with a fully featured language such as C#. Until now, JavaScript and the slightly less frustrating TypeScript were all we had (like alligators and chickens). The key difference is that JS and TS are scripting languages, whereas C# is an application language. This is magnified by the dotnet ecosystem that exists around C#, where many more possibilities exist (think sequels).

When you design a component, ask yourself the following questions:

Does this component enable an end-user to view or interact with my application?

And…

Am I enabling the end-user to view or interact with my application in the simplest way possible?

This definition does not make any assumption regarding the following:

– How data in the application is persisted

– How data in the application is retrieved

– How the UI deals with logic

Good engineering is straightforward and easily understood. Complicated problems may have simple solutions. Blazor can develop an entire solution with a single language. This doesn’t mean we forget our experiences. It means we build on them.

Blazor for developers is both a blessing and a potential curse. It allows us to employ a single technology stack that keeps development friction to a minimum. It also gives us a modern framework to build web applications that have the durability to last for years. It can also be used to overcomplicate if we allow it. Keep the responsibility of Blazor to interacting with the end-user and you will not end up with a malfunctioning, carnivorous theme park.

Making Digital Practical with Saxony Partners

Technology and digital strategy can be complicated, but our goal at Saxony Partners is simple: Make Digital Practical.

Saxony Partners will meet you where you are and help you get where you want to go. Our pragmatic approach helps ensure early success by leveraging proven technologies and practical solutions in a cost-effective way.

Our team of app dev experts, full-stack developers, and software engineers work with clients to optimize their technology investments and leverage that technology to meet and solve business needs and challenges.

If you or your company is looking for help with software development, reach out to us here.