As we look to modernizing our Web Form applications, we should also investigate options for optimizing and eliminating workflow code. After many years of having conducted a detailed examination of web form applications and thousands of code-behind files, we have found...
Dynamic Application Prototyping
Challenge Gathering business requirements for complex applications can be a time consuming and expensive process. The common approach is to gather the business stakeholders into a room and work through the creation of a set of wireframes to define the user experience....
Modernizing Web Forms – Deploying User Experience (UX) in Data
Traditional Web Form applications have custom forms that define the user experience for each type of record (Customer, Order, Invoice etc.). These user experience forms usually have extensive code-behind to control state transitions, workflow, and basic CRUD...
Limitations of Code Generation
A popular approach to reducing the costs and risks of building an application is to use some form of code generation technology to get a quick first cut of the source code artefacts. But code generation has its limits in practical uses and can become less efficient as...
MVC Controllers, Minimal APIs or gRPC?
With .NET 7 release just around the corner we have been looking at significant new features and deciding whether to implement them. A lot of excitement has been circulating recently about Minimal APIs and gRPCs. We needed to decide whether to re-implement the MVC...
Blazor Sever or WASM Client?
Our GreatIdeaz trellis application was originally built as a .NET Framework 4.7.2 web forms application. When we decided to modernize it and create trellispark we chose Blazor as the natural way forward. Like many development teams we had to make a choice between...
How do you get better business requirements?
I'm sure that this is a familiar and ongoing issue for many organizations. We sit our business users down with our developers and/or business analysts to outline the business requirements for our application. Something gets written down, the developers take it away...
Record Lifecycle – managing state transitions in trellispark
Records model information about real-world objects. Some real-world objects have a distinct lifecycle that need to be modelled by the records that represent them. For example, an Order might initially exist in a Draft state, it is then Submitted, goes through...
Blazor – Event Handling in complex pages
One of the key challenges our team faced when building out the greatideaz trellispark platform was how to efficiently refresh a complex user experience. The trellispark platform renders a complete user experience at runtime using only configuration data. There are no...
Native MAUI -or- MAUI Blazor Hybrid?
At Great Ideaz, we recently had to address this question from the perspective of "how do we want to invest our development resources?" We spent the last couple of years building a very complex .NET Blazor-based User Experience for WASM Clients into our trellispark...