Infragistics Ultimate: H2 2020 Roadmap

Jason Beres [Infragistics] / Wednesday, June 03, 2020

2020 is almost complete so I thought it would be a good idea review where we are at today and where we are headed for the rest of the year for our design and developer tools in Infragistics Ultimate.

As we build out the platforms that we are delivering to you, we think about them in terms of broader product categories and how they work in the tooling that you use to build software with what we ship. There is so much innovation happening in client UI development. Besides the modern web frameworks like Angular and React, you now should consider using Web Components as a dependency-free way to future-proof your projects. We now see Microsoft re-engaging the developer market with Blazor, a new ASP.NET offering for single page applications (SPA), and the evolution of Xamarin into M.A.U.I, their way forward with in native mobile, cross-platform multi-application user interfaces. It’s an exciting time!

To break down our investments, I created this chart:

We are hitting the mainstay frameworks like Window Forms, WPF, .NET Core as well as the modern web frameworks in Angular, React and Web Components. Innovation is coming in areas like Indigo.Design, our new App Builder that will radically accelerate your app design and development.

2020 H2 At a Glance

There is a ton of detail in this blog, but if you are in a rush, and just want to see the high-level, this is what you can expect in 2020 in your Ultimate subscription.

There is a lot of software shipping across many frameworks. Notice that we are still pushing releases in Windows Forms and WPF. I get a lot of questions about our investment here. While it has slowed down a bit, there are still updates happening.

At a high-level, the release schedule for the year looks like this, with everything in yellow being roadmap dates, in other words, in the future.

Note:

  • Releases marked as Web include all Ignite UI platforms for React, Web Components, Blazor
  • Ultimate product release includes all Web platforms, WPF, Windows Forms & Indigo.Design.
  • Blazor is called out in July 2020 as this is the official v1 RTM of the product. Once we ship V1 of Blazor in July 2020, its features will be synced with React and Web Components.

The first half of the year has been heavy on the Web side – with major releases in Angular, React and Web Components, and .NET Core 3.1 support for ASP.NET Core and ASP.NET Core MVC. Each of these platforms are available in the new Ignite UI product we shipped with Ultimate 20.1.

Looking forward, we are going to expand on what you will get as part of your Ultimate subscription with updates to Windows Forms, WPF and more significantly Indigo.Design capabilities. Note that we have also changed pricing across the board, so if you always wanted Ultimate but didn’t have the funds, it is now almost half-price of what it used to be – check out the new pricing. With Ultimate, you get it all, it is truly the best choice for any developer.

Web Platform Strategy

To understand the roadmap and how features are related, let me explain how these platforms are designed and engineered by our teams.

The overall strategy for delivering Web products is to ensure best-of-breed on your desired platform. If you are building on Angular, we are bringing the best Angular product to market for the Angular framework. Same with React, Web Components and Blazor. For example, we are not creating wrappers to give you the facade over generic JavaScript controls with jQuery helpers buried deep in the code to make you _think_ you are using Angular. We build Angular Material components, and we work with the Angular team on Material UI and the CLI. We do it right the first time. Blazor is another great story, the approach we take which I describe below is vetted by the Blazor team at Microsoft as the most optimal approach. We will not try to wow you with reasons why *we* think our approach is best – we just asked the folks that built the framework and they gave the thumbs up!

To give you an idea of what the codebase / API breakdown is by product in Ignite UI, check out this graphic:

The Web Component, React, and Blazor products all start from C#, and we translate the code to TypeScript. This gives us a pure, dependency-free Web Component API, which we use as the basis for what is ultimately rendered as HTML / JavaScript in the browser. 

This delivers the most optimal Blazor experience, in terms of developer productivity and render / interactions performance in the browser.

jQuery is the foundation for the ASP.NET Core and ASP.NET MVC products.  It is still widely used, and we are still investing in these products to ensure they are modern and up to date.

Ignite UI for Angular is built on Angular & Material. There is nothing between our API and the Angular framework. We have seen the biggest uptake on Angular to date in enterprise teams, and we continue to invest significantly in Angular components. 

However, moving forward, any new large controls that we ship in jQuery (which includes ASP.NET Core / MVC products), and Angular will be built as dependency-free Web Components (like the new DockManager that we shipped in Angular 9.1). This gives us more future proofing for you as well as super-optimized performance on the client. When I say large control, think of something like a Gantt UI, or a Schedule UI, where there is a lot of UX interaction and a larger API surface. Because we will be building Web Components, they can also be shared with the jQuery, Web Component, React, and Blazor products. At the same time, we are very closely following the progress of Angular Elements, which is an effort by the Google Angular team to deliver Angular as a Web Component.

2020 H2 In-Depth

For major release dates, the remainder of 2020 looks shapes up with these capabilities shipping from July thru December.

Note:

  • App Builder is part of Indigo.Design cloud and is included in Ultimate.
  • .NET 5 is scheduled for a November release from Microsoft, we will Sim-Ship with Microsoft.

The rest of this blog will give a bit more detail on what we will be shipping so you can plan and give us feedback on the roadmap. Everything we deliver is based on what you ask for, so please let me know if there is something you expected but do not see.

Ignite UI for Blazor RTM

July is when we ship Ignite UI for Blazor. I want to spend some extra time in this blog highlighting what is coming so you can start planning now for this release. When we ship, we will also sync Blazor with React and Web Components, meaning that all features, API, samples, etc will be the same across these three platforms. We will be making available to you a seriously rich toolset, with UI controls and components that are optimized for Client (Web Assembly) and Server Blazor. An important aspect of the Blazor product, Ignite UI for Blazor, is the same codebase as the React and Web Components product, so with the V1 of Blazor we are really shipping a V4 of the controls. 

Here is what you will get with Ignite UI for Blazor when we ship.

  • DockManager
  • Data Grid with:
    • Virtualized Row / Columns
    • Load on Demand Data
    • Paging
    • Column Sorting (Single / Multi)
    • Column Resizing
    • Column Moving
    • Column Summaries
    • Column Pinning
    • Column Chooser
    • Column Hiding
    • Column Filtering UI (Excel Style Filtering)
    • Column Grouping (Groups w/ Sticky Headers / Outlook Grouping)
    • Cell Selection
    • Cell Activation
    • Cell Editing
    • Cell Range Selection
    • Row Selection (Single / Multi)
    • Row Pinning
    • Grid Toolbar (So you add custom buttons, like Export, Show / Hide, etc)
    • Data Entry Editors:
      • Checkbox
      • Radio button
      • Text Editor
      • Date Time Editor
      • Currency Editor
    • Export to Excel (with formatting, same as you have in Windows Forms)
  • Excel Spreadsheet
  • Excel Library
    • Including Charts / Exporting Charts
  • Category Chart
    • Chart Types:
      • Line
      • Area
      • Column
      • Point
      • StepLine
      • StepArea
      • Spline
      • SplineArea
      • Waterfall
    • Chart Features
      • Crosshairs
      • Annotations
      • Callouts
      • Final Values
      • Markers (10 types)
      • Tooltips
      • Series Highlighting
      • Legend
    • Time Series Chart (TimeXAxis)
    • Financial Chart
      • Bar
      • Candle
      • Column
      • Line
      • Financial Chart Features:
        • Financial Candlestick Chart
        • Financial OHLC Chart
        • Financial Area Indicators
        • Financial Column Indicators
        • Financial Line Indicators
        • Financial Overlays
      • Data Chart
        • All Category Charts Plus:
          • Polar Area Chart
          • Polar Spline Area Chart
          • Radial Area Chart
          • Range Area Chart
          • Scatter Area Chart
          • Scatter Polygon Chart
          • Spline Area Chart
          • Stacked 100 Area Chart
          • Stacked 100 Spline Area Chart
          • Stacked Area Chart
          • Stacked Spline Area Chart
          • Step Area Chart
          • Bar Chart
          • Radial Column Chart
          • Range Column Chart
          • Stacked 100 Bar Chart
          • Stacked 100 Column Chart
          • Stacked Bar Chart
          • Stacked Column Chart
          • Waterfall Chart
          • Polar Line Chart
          • Polar Spline Chart
          • Radial Line Chart
          • Scatter Contour Chart
          • Scatter Line Chart
          • Scatter Spline Chart
          • Scatter Polyline Chart
          • Spline Chart
          • Stacked 100 Line Chart
          • Stacked 100 Spline Chart
          • Stacked Line Chart
          • Stacked Spline Chart
          • Step Line Chart
          • Point Chart
          • Polar Scatter Chart
          • Scatter Bubble Chart
          • Scatter Marker Chart
          • Doughnut Chart
          • Pie Chart
          • Radial Pie Chart
          • Point Chart
          • Polar Scatter Chart
          • Scatter Bubble Chart
          • Scatter Marker Chart
          • Spark Line
          • Spark Area
          • Spark Win Loss
          • Financial Chart
        • Tree Map
        • Geospatial Map
        • Bullet Graph
        • Linear Gauge
        • Radial Gauge

As you can see, the first release of Ignite UI for Blazor has a huge number of capabilities, breadth, and depth. We are working very hard now to get this product into your hands. July is right around the corner; we expect to ship around the 3rd week of July if everything goes as planned.

Ignite UI for React / Web Components Feature Update

As you learned in our overall web strategy, the React and Web Components product are the same codebase. If you read the blogs on the 20.1 React and Web Components release, it was a Grid-heavy release. We are continuing that theme for the rest of the year. We need to bring the Grid up to the same feature set as the Angular Data Grid, which has been in the market much longer. 

To get there, we have features on the roadmap like:

  • Editor Controls
    • Button
    • Button Group
    • Checkbox
    • Radio button
    • Text Editor
    • Date Time Editor
    • Currency Editor
  • In-Line Grid-Editing
  • Layout Persistence
  • Date / Time Picker Editor
  • Combo Box Editor
  • Multi-Column Headers
  • Collapsible Column Groups
  • Custom Grid Toolbar Options
  • New Chart Types
  • Updated Chart features
  • And lots, lots more ….

React and Web Components are very important. React is hot in the market, Web Components is an up and comer, and the feature set is mirrored in the Blazor product. Delivering you breadth and depth in these controls, with our laser-focus on ensuring you have the fastest data grid and data charts in the market for these platforms is what you should expect. We will be shipping updates to React and Web Components in July and October, but we plan on minor releases every 4 to 6 weeks with bug fixes, smaller feature updates and smaller new features.

Ignite UI for Angular Updates

Angular is still under heavy development. We have consistently shipped multiple major updates each year for the past 3 years, in a monthly continuous delivery cadence. Ultimate 20.1 just highlighted our 9.0 and 9.1 release, which including amazing new Grid features, the new DockManager, game-changing A11y Keyboard support, and a ton more.

For the remainder of 2020, we are focused on:

  • Angular 10 release, which should come in the July / August timeframe
  • Grid features
  • Customer requests
  • Bug Fixes

As we have been in hyper-deliver mode for a few years, we are going to spend the next 3 months addressing outstanding requests and issues on Github. If you click that link, it takes you to the open issues on Github. This is 100% of the open issues – everything is transparent on Github with this product. We have just over 200 open issues across the 60+ controls, with just under 3,000 issues closed. That’s pretty awesome. 

In Q4, we will start working on at least one, maybe two larger controls. We do not have Scheduling (Agenda, Day, Week, Month, Year) yet, we have requests for a Gantt control, a Pivot Grid, and a few other large items. As I described earlier in the strategy, those new controls will be Web Components, and ship across the Ignite UI SPA frameworks and Blazor.

ASP.NET / jQuery Updates

We have been tracking with Microsoft on the ASP.NET MVC and ASP.NET .NET Core releases and will continue to ensure you have the most up to date products in these frameworks. As I explained earlier in the blog around how we build the web products, you learned that Ignite UI for jQuery is the underlying control set that drives the ASP.NET MVC and ASP.NET Core products. We shipped first shipped Ignite UI for jQuery in 2011 … it is a complete set of controls, so for modern ASP.NET MVC / ASP.NET Core apps, the component set is huge. Everything from Data Grid, Tree Grid, OLAP Pivot Grid, Spreadsheets, Charts, etc. is in that product.

The roadmap for this set of products is still active, and tracks with our Web Components strategy for modern web.

  • All new chart types, chart updates that we ship in Web Components, React & Angular are also shipped in jQuery.
  • All Web Component controls that ship with Ignite UI for Web Components also ship with jQuery (the controls that do not overlap, so for example, Dock Manager ships with jQuery and new large controls like future Gantt UI will ship in jQuery).

At the same time, we are actively bug fixing and ensuring this set of platforms is up to date.  When you see a blog or a mention of a Web Component feature, it will ship with the jQuery product if we don't already have it in the product.  And if, for example, you see yourself using other Web Component controls in the future, just make sure your subscription is for the Ignite UI bundle, and you'll get all modern web controls no matter what we end up shipping.

.NET Core 3.1 Designers

Microsoft continues to innovate with .NET Core and we are right there with them. We shipped support for both .NET Core 3.0 and .NET Core 3.1 with Microsoft, and now we are on the same journey to .NET 5. A big change by Microsoft with .NET Core 3.1 is the change to the design surface. Basically, they rewrote it, and are in the process of going from Alpha to Beta to RTM. The RTM is expected with .NET Framework 5 in the November 2020 timeframe.

By this time, we will have design time in Visual Studio for .NET Core 3.1 and .NET Framework 5. Here is the current plan of record:

  • In July, we will ship a preview of the WPF designers for Visual Studio 16.6 with the designer preview enabled. Microsoft moves fast with the Visual Studio preview monthly releases; we will track with their latest previews.
  • In October, we will ship an updated WPF preview as well as a Windows Forms preview.
  • In November, we will ship RTM with .NET Framework 5.

The WPF work is underway, and we are confident in this delivery. We know the Windows Forms work will be much more challenging, as the changes are more dramatic. Stay tuned to my blog for updates, as this is a hot topic for many of you.

Windows Forms / WPF

Just as hot as .NET Core 3.1 support is our continued commitment to Windows Forms and WPF. As I have said every year for the past few years, we will continue to invest and support these two products for years to come. While we have slowed down a bit, as the market has shifted somewhat to the modern web SPA frameworks, our rich client customer base is massive, and we want to respond to your requests and keep you as happy customers.

For 20.2 in Q4, we are planning on:

  • .NET Core 3.1 Visual Studio Designer Support
  • .NET Core 3.1 Toolbox Support
  • Feature updates
  • Updated Chart Features
  • High DPI Update
  • Modern Theme Refresh

The top three requests for Windows Forms are High DPI, Modern Themes, and .NET Core support. That is where we plan on spending time. In WPF, we have a decent list of feature updates and bugs to address since our last Service Release, and support for the Designer and Toolbox for .NET Core 3.1 / 5 in Visual Studio v.Next. 

If you are looking for any other features, we are going to spend time on what you ask for. Let me know.

Indigo.Design

The biggest challenge in app development today is streamlining app creation from design to code. In countless teams, from small to large, a siloed approach to app creation slows down innovation. The need to eliminate hand offs, reduce costly iterations and enable true Design-Development collaboration is the holy grail we are all after. With Indigo.Design – a complete design-to-code system – integrating prototyping, usability testing, and code generation, this is possible. And with our new App Builder, we are going to revolutionize how you go from design to code.

What is App Builder?

App Builder is a new feature in Indigo.Design shipping in Private Preview this summer, Public Preview in the fall and releasing in December. The goal of App Builder is to bridge the tools that designers use and developers want to use to build app experiences, with the goal of eliminating the costly handoffs and time-consuming miscommunication with an iterative design process.

App Builder lets you:

  • Easily create single page applications (SPA)
  • Preview design of the created application
  • Generate the code of their application

This is a visual of how App Builder enables this:

It looks like a typical design tool, like Sketch, but it is so much more. Imagine the capabilities of Sketch, in a cloud-based HTML WYSIWG tool that has a toolbox full of rich UI controls and custom business objects, connected to live data that can output Angular, React, Web Components or Blazor code. 

That is App Builder.

When we ship the Preview, we will have a dozen or so features and scenarios that we need feedback on. If you are interested in helping shape this product, please shoot Danail Marinov an email. He is the product owner and is actively putting together the Preview Program. 

To give you an idea of how this will drive productivity, George Abraham, the UX Lead on Indigo.Design, built this app in 3 minutes, before we even had Copy / Paste working.

To say we are excited about getting this into your hands is an understatement. Make sure your Ultimate subscription is up to date, this is part of the value you will see in Q4!  If you don't have an Ultimate subscription today, contact sales@infragistics.com and they can upgrade you!

Wrap Up

The second half of 2020 will bring a ton of platforms, new features, new controls, new components, more bug fixes, and lots of excitement. We shipped a ton in 20.1, and we plan on delivering even more in H2. Keep in mind this is a roadmap, with pretty aggressive dates.  Things may be delayed, slip, ship as a beta, etc. as with any best laid plans, things can change. Please keep me posted on what you need, and how we can help bring your next amazing experiences to life!