<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: IceTeaGroup</title>
    <description>The latest articles on DEV Community by IceTeaGroup (@iceteagroup).</description>
    <link>https://dev.to/iceteagroup</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F5410%2F25340b9a-e6a0-4160-a19f-0f1bfad9c9bf.jpg</url>
      <title>DEV Community: IceTeaGroup</title>
      <link>https://dev.to/iceteagroup</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/iceteagroup"/>
    <language>en</language>
    <item>
      <title>Migrate Windows Desktop Applications to the Web with Wisej</title>
      <dc:creator>LRufenacht</dc:creator>
      <pubDate>Mon, 14 Mar 2022 14:59:10 +0000</pubDate>
      <link>https://dev.to/iceteagroup/migrate-windows-desktop-applications-to-the-web-with-wisej-5d7a</link>
      <guid>https://dev.to/iceteagroup/migrate-windows-desktop-applications-to-the-web-with-wisej-5d7a</guid>
      <description>&lt;p&gt;&lt;em&gt;This article was originally posted on &lt;a href="https://www.codeproject.com/Articles/5268171/Migrate-Windows-Desktop-Apps-to-the-Web-with-wisej"&gt;https://www.codeproject.com/Articles/5268171/Migrate-Windows-Desktop-Apps-to-the-Web-with-wisej&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Wisej brings a familiar desktop development experience to the web without losing any of its benefits.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This article covers: a case study that explores the challenges with line-of-business applications, migrating enterprise-scale applications to the web with Wisej, comparing Wisej to WinForms, and component library integrations for Syncfusion, DevExpress, and Infragistics.&lt;/p&gt;

&lt;p&gt;Moving Windows Forms, WPF, VB6 or other legacy applications to the web can be hard and expensive. The migration roadblocks can be endless when evaluating current web technologies. If you’re the new guy tasked with rewriting the entire application in Angular or another web technology... good luck!&lt;/p&gt;

&lt;p&gt;Wisej was built with this in mind. By taking the convenience of the WinForms object model and integrating many advanced JavaScript components, Wisej brings a familiar desktop development experience to the web without losing any of its benefits. Applications that originally could only run on Windows become available on every HTML5-compliant device in existence.&lt;/p&gt;

&lt;p&gt;Developers considering migrating from Gupta Team Developer, VB6, and WinForms will have the option to keep their existing business logic, gain a greatly modernized UI, and the same workflow. Wisej and Ice Tea Group offer automated migration solutions for Gupta Team Developer, Visual Basic 6, and WinForms applications to a fully modernized web-based platform. Semi-automated migration paths are also available for Microsoft C++, Windows Presentation Foundation (WPF), Silverlight and Visual FoxPro.&lt;/p&gt;

&lt;p&gt;Developers considering full-stack development tools for their projects will have the opportunity to leverage the scalability, flexibility, and security that Wisej has to offer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Case Study: Challenges with Line-of-Business Applications
&lt;/h2&gt;

&lt;p&gt;Today’s world of enterprise-scale business applications usually shows a feature-rich history of evolvement and enhancements, making the transition from Windows desktop to native web a difficult, risky, and sometimes unrealistic task. What are typical challenges and how does it work?&lt;/p&gt;

&lt;p&gt;Let’s take a brief look at an example from the public sector:&lt;/p&gt;

&lt;p&gt;Harris Local Government (part of the Constellation Software Group) decided to modernize 150 separate Windows modules developed in Visual Basic 6 to an integrated web-based platform. Harris serves more than 5,500 small and mid-sized municipalities with a wide variety of solutions such as vehicle registration, real estate, personal property, and utility billing. The software suite includes financial modules such as accounting, fixed assets, and payroll.&lt;/p&gt;

&lt;p&gt;Figure 1 provides a screenshot from an existing desktop user interface built with VB6:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---ne8aX4---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ujicuf1wqbc4czb2rpkw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---ne8aX4---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ujicuf1wqbc4czb2rpkw.png" alt="Harris Local Government application before modernization (Visual Basic 6)" width="700" height="329"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Figure 1: Harris Local Government application before modernization (Visual Basic 6)&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Developing a complex enterprise-scale application from scratch is usually not an option that works. Here are typical obstacles to take into consideration:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Time, effort, risk and cost of a manual rewrite are in many cases beyond consideration. An application with hundreds or thousands of forms and dialogs may take dozens of man/years to rewrite and test from scratch.&lt;/li&gt;
&lt;li&gt;There is a huge risk when doing a manual rewrite without the ability to take over business logic and code from the legacy application. Usually, algorithms and logic have been developed over decades and can deal with an infinite number of data input and output scenarios. The effort around quality assurance and testing for 100% backwards compatibility is enormous.&lt;/li&gt;
&lt;li&gt;The user base has been trained and accustomed to the existing application. Workflows, screens, and manuals should get a nice brush up and a fresh design, but the general functionality cannot be changed entirely, especially for ISVs with end-customer installations.&lt;/li&gt;
&lt;li&gt;Another limiting factor is R&amp;amp;D. Most companies cannot afford to maintain an existing application and build a new replacement over many years. The development team would have to be doubled. Programmers are hard to find and the experience and knowledge of “silver coders” is extremely valuable for software vendors.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Migrating Enterprise-scale Applications to the Web with Wisej
&lt;/h2&gt;

&lt;p&gt;Thanks to Wisej and the consulting team of fecher (one of Ice Tea Group’s preferred implementation partners), 150 separate modules from Harris Local Government got turned into a great looking modern web application suite based on Microsoft .NET with C# and Wisej. Figure 2 shows the same window as before, now part of a modern UI with a new Navigation Bar and Tabbed MDI interface that was built to consolidate separate applications into one unified solution.&lt;/p&gt;

&lt;p&gt;The modernization was completed in four phases:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Visual Basic 6 projects got converted into C# projects.&lt;/li&gt;
&lt;li&gt;All projects got consolidated in a Visual Studio solution and rebased to use Wisej components.&lt;/li&gt;
&lt;li&gt;New navigation controls such as the sidebar on the left and the tab bar on the top have been built to support 150 different modules in the new integrated application suite.&lt;/li&gt;
&lt;li&gt;Based on the mockups of a UI/UX designer, the Wisej Theme Builder was used to provide a brand-new look and feel to the Harris Local Government application.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1z6TJpiw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gxitqavsccr9f3kbo8f3.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1z6TJpiw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gxitqavsccr9f3kbo8f3.jpg" alt="Great new look &amp;amp; feel after migration &amp;amp; modernization based on Microsoft C#/.NET with Wisej" width="700" height="441"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Figure 2: Great new look &amp;amp; feel after migration &amp;amp; modernization based on Microsoft C#/.NET with Wisej&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Wisej Web Technology Stack for Business Applications of Any Complexity
&lt;/h2&gt;

&lt;p&gt;Wisej is a Single Page Application (SPA) framework based on .NET for C# and VB.NET. It emphasizes the best of both worlds, desktop and web development, by taking controls that have a familiar look and feel to the web - modernized and enhanced. Imagine rewriting 1,000 screens (with 100,000 controls), 500 reports, 800 stored procedures, from scratch with the current web technologies and the resulting maze of templates, HTML, JS, and overlapping CSS, not to mention the naïve way of interacting with the server that may work for a real-estate web site but is utterly inadequate for the type of Line of Business (LOB) applications we see daily. With Wisej, it’s possible to migrate your existing business logic without any risky changes to the code base.&lt;/p&gt;

&lt;p&gt;The best part of using Wisej? You won’t have to touch HTML, JavaScript, or CSS (if you don’t want to). Wisej has wrapped a full .NET control set spanning from simple buttons, combo boxes, and text boxes to more complex controls like data grids, data repeaters, ribbons or navigation bars. It’s as easy as picking a control from the Visual Studio Toolbox and dropping it on the page.&lt;/p&gt;

&lt;h2&gt;
  
  
  Wisej vs. WinForms Comparison
&lt;/h2&gt;

&lt;p&gt;The development environment of WinForms and Wisej have a similar look and feel. With Wisej, you can drag and drop controls from the toolbox, double click to add event handlers, and wire properties the same as you would in WinForms.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--sQOaRzT---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2i5r8svqso4kwff9sc93.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--sQOaRzT---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2i5r8svqso4kwff9sc93.png" alt="Windows Forms Designer in Visual Studio" width="700" height="370"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Figure 3: Windows Forms Designer in Visual Studio&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FYfN5ajQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hg95f2md5t5ccr9c0kbf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FYfN5ajQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hg95f2md5t5ccr9c0kbf.png" alt="Pixel-perfect WYSIWYG design of Web-based applications in Visual Studio with Wisej" width="700" height="380"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Figure 4: Pixel-perfect WYSIWYG design of Web-based applications in Visual Studio with Wisej&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Styling Applications for a Modern Look &amp;amp; Feel
&lt;/h2&gt;

&lt;p&gt;With Wisej there’s no more worrying about integrating stylesheets in your application. The styling is done using the Wisej Theme Builder and loaded into your project automatically as a single JSON file. The Theme Builder allows you to customize the look and feel of all Wisej controls. You can use one of the 10 predesigned themes (see &lt;a href="https://wisej.com/themes/"&gt;https://wisej.com/themes/&lt;/a&gt;), create your own custom theme, or just modify any base theme using smaller theme mixin files. Ice Tea Group’s professional services team is happy to help and provide suggestions for redesigning existing applications.&lt;/p&gt;

&lt;p&gt;Once you choose your theme, you can test it in real-time using the URL of any active Wisej application. If the Theme Builder doesn’t have the styling functionality you need, every control in Wisej has a CssStyle attribute that lets you configure optional CSS for that control.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UkWvL00S--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e3x2rp3m25unkc0srp32.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UkWvL00S--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e3x2rp3m25unkc0srp32.png" alt="Modify any control’s look and feel using the Wisej Theme Builder" width="700" height="379"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Figure 5: Modify any control’s look and feel using the Wisej Theme Builder&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6TFfoS6G--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3uu8o8p5djo0bvyb0ves.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6TFfoS6G--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3uu8o8p5djo0bvyb0ves.png" alt="Change the application’s theme on the fly" width="700" height="379"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Figure 6: Change the application’s theme on the fly&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Integrating JavaScript Widgets
&lt;/h2&gt;

&lt;p&gt;While no JavaScript programming is required, it can be useful for integrating third-party widgets. Wisej includes a large set of free and premium extensions including Google Maps, FullCalendar, and speech recognition. If a new control is needed, the Wisej Widget control is able to wrap any third-party JavaScript control and turn it into a server-wired designable component.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--emPP-20i--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9fyvcfb48mbmztgavcjs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--emPP-20i--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9fyvcfb48mbmztgavcjs.png" alt="Telerik widget integration in the designer" width="700" height="380"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Figure 7: Telerik widget integration in the designer&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For a full list of included extensions, visit: &lt;a href="https://wisej.com/extensions"&gt;https://wisej.com/extensions&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Wisej Mobile for iOS and Android
&lt;/h2&gt;

&lt;p&gt;Starting with version 2.2, Wisej will include a Progress Web Application integration (PWA) module, and a set of premium packages for native iOS and Android applications. Developers will be able to create Wisej applications that control any aspect of the device from the server, and don’t need to know any HTML, CSS, JavaScript, Java, or Swift to use the mobile packages. It can all be done from C# or VB.NET. The packages will also include responsive templates, making responsive design a breeze.&lt;/p&gt;

&lt;p&gt;The Wisej Mobile Integration package gives web developers the power to design complex business applications for mobile without touching the native code, and leverage all the native functionality of the device, including but not limited to biometric authentication, haptic feedback, screen brightness, native alerts, native toolbars, tabbars and more!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;C# Code&lt;/strong&gt;&lt;br&gt;
`// Dims the device’s screen to half of its possible brightness&lt;br&gt;
Device.Brightness = 50;&lt;/p&gt;

&lt;p&gt;// Uses the device’s built in biometrics or passcode to authenticate user&lt;br&gt;
var authenticated = Device.Authenticate("Reason for authenticating");`&lt;br&gt;
Handling device events on the server is easy. This is how you can add handlers for selecting tab bar items, toolbar items, subscribe to notifications, and just about any other event that occurs on the device.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;C# Code&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;// somewhere in your code&lt;br&gt;
Device.TabBar.Selected += TabBar_Selected;&lt;br&gt;
…&lt;br&gt;
private void TabBar_Selected(object sender, DeviceTabBar.SelectedEventArgs e)&lt;br&gt;
{&lt;br&gt;
    AlertBox.Show($"{e.Button.Text} was clicked!");&lt;br&gt;
}&lt;/code&gt;&lt;br&gt;
Using Wisej’s responsive profiles and the pixel-perfect WYSIWYG designer, developers can manipulate form sizes, control appearances, text to display, and more to fit every client’s screen.&lt;/p&gt;

&lt;h2&gt;
  
  
  Self-Hosting for Desktop and Embedded Deployments
&lt;/h2&gt;

&lt;p&gt;Wisej offers self-hosting through an OWIN / Katana web server that runs as a process or service on the machine.&lt;/p&gt;

&lt;p&gt;For developers that want to retain their application for the desktop, Wisej can run as a desktop application in either Chromium, Firefox or light 500KB IE-based app. The window’s frame is fully customizable and doesn’t require an internet connection to operate. The application can leverage some native Windows functionality like the MessageBox or the file system. The full source code is provided to allow developers to work with authentication, logging, and directory browsing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Component Library Integrations for Syncfusion, DevExpress, and Infragistics
&lt;/h2&gt;

&lt;p&gt;Wisej has integrated several third-party component libraries. These JavaScript widgets now act as familiar server-side .NET controls, eliminating the need for developers to use JavaScript, HTML, CSS, or Ajax requests to work with them. Using these widgets in Wisej is as easy as using any WinForms control. For example, changing a widget’s background color:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;C# Code&lt;/strong&gt;&lt;br&gt;
`// this is updated automatically on the client.&lt;br&gt;
this.ejCircularGauge1.Options.backgroundColor = "white";&lt;/p&gt;

&lt;p&gt;// handling any event from the widget on the server.&lt;br&gt;
this.ejCircularGauge1.Widget.legendItemClick += this. ejCircularGauge1_LegendItemClick;`&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Syncfusion Essential JS&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BP5GBu_x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w28cmid7t2w0yzl9yln0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BP5GBu_x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w28cmid7t2w0yzl9yln0.png" alt="Syncfusion Essential integration with Wisej" width="700" height="379"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Figure 8: Syncfusion Essential integration with Wisej&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DevExpress DevExtreme&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TZ-yYOV5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xjns9i4xgdo9geg78now.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TZ-yYOV5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xjns9i4xgdo9geg78now.png" alt="DevExpress integration with Wisej" width="700" height="379"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Figure 9: DevExpress integration with Wisej&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Infragistics IgniteUI&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Vfk1fi9y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k9kwox4tg6f36udhek1v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Vfk1fi9y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k9kwox4tg6f36udhek1v.png" alt="Infragistics IgniteUI integration with Wisej" width="700" height="379"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Figure 10: Infragistics IgniteUI integration with Wisej&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Training
&lt;/h2&gt;

&lt;p&gt;Current desktop developers will be able to adjust to the Wisej framework with relative ease, resulting in reduced training costs and increased productivity. They’ll find that they’re able to develop productive software to take to market very quickly. Additional training and support are available for developers that want to gain a deeper understanding of the Wisej framework.&lt;/p&gt;

&lt;h2&gt;
  
  
  Great Results
&lt;/h2&gt;

&lt;p&gt;Companies all around the world have used Wisej to modernize their applications, from small to extremely large. Wisej is being used in many industries including agricultural, medical, construction, manufacturing, financial, and many more. From individual development teams to multi-billion-dollar corporations, Wisej excels in giving developers the tools they need to get the job done. Find out what others are saying about Wisej:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://madewithwisej.com"&gt;https://madewithwisej.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://wisej.com/case-studies"&gt;https://wisej.com/case-studies&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For consultation inquiries contact us at &lt;a href="https://wisej.com"&gt;https://wisej.com&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>programming</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Wisej helps migrate Skanska’s Project Management Application for 4,500 users</title>
      <dc:creator>LRufenacht</dc:creator>
      <pubDate>Thu, 10 Mar 2022 23:25:08 +0000</pubDate>
      <link>https://dev.to/iceteagroup/wisej-helps-migrate-skanskas-project-management-application-for-4500-users-1jd9</link>
      <guid>https://dev.to/iceteagroup/wisej-helps-migrate-skanskas-project-management-application-for-4500-users-1jd9</guid>
      <description>&lt;p&gt;&lt;em&gt;This article was originally posted on &lt;a href="https://wisej.com/case-studies/skanska/"&gt;https://wisej.com/case-studies/skanska/&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Thousands of construction sites for critical infrastructure across the globe benefit from &lt;a href="https://www.wisej.com"&gt;Wisej&lt;/a&gt; as a rapid web-enabling technology for their project management processes.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--hqOMJA8I--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nmaq43tvbie800jvscpw.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--hqOMJA8I--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nmaq43tvbie800jvscpw.jpg" alt="Skanska Login" width="880" height="476"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With around 32,500 employees worldwide, Skanska is one of the world’s largest construction and project development companies. The group is known for realizing complex construction sites across Europe and the US such as airports, bridges, homes, hospitals, power plants, as well as railways, roads, schools, and tunnels. As a multinational company, the group currently has 10,000 ongoing projects, which are located throughout Central Europe, the UK and the United States.&lt;/p&gt;

&lt;p&gt;In order to coordinate, manage, and calculate these projects, Skanska has developed an in-house application called “SPIK” that is used by all construction sites and offices within Skanska Sweden. The software suite addresses the specific needs for complex project planning which include cost calculation and reporting requirements.&lt;/p&gt;

&lt;p&gt;Christer Lindström works as an application specialist with Skanska Sweden IT AB. He explains: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“SPIK covers the whole building process from early cost estimates to the end of project warranty. SPIK has functions regarding bidding and estimating, financial control, risk and opportunities, change management and purchase.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Web Migration for 850 forms and dialogs
&lt;/h2&gt;

&lt;p&gt;Skanska’s goal was to modernize the existing desktop application (SPIK) to become a web-based solution. The team around Christer started a market analysis and defined requirements that they considered important for creating a better and more future-proof solution. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“We also identified several risks in continuing to maintain the old solution, which was partly based on old technology. We then sent a request to a few selected suppliers, including Ice Tea Group (ITG) to help us modernize the application.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The existing client application needed to either be rewritten completely or converted with retained functionality, leaving the backend (web services, databases, etc.) unaffected. The old application was to be used in parallel with a gradual implementation of the new one, so that the existing client could be phased out step-by-step.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--J59YxAYN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zcprxithkwytk30i58ia.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--J59YxAYN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zcprxithkwytk30i58ia.png" alt="Skanska App 1" width="880" height="476"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Application Modernization at a fraction of the cost
&lt;/h2&gt;

&lt;p&gt;During the procurement phase, Skanska evaluated the Wisej framework and compared it to other proposals for a rewrite of the software. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“We immediately saw that a migration with Wisej would be much cheaper compared to other alternatives. In the end it became a cost issue as to why ITG was chosen as supplier.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Originally, Skanska had other plans and wanted to rewrite SPIK from scratch. “This approach proved to be a big risk regarding cost and complexity”, Christer summarizes. A web-enabling solution based on Wisej stood out as the fastest, most cost-effective, and failure-proof approach. Therefore, the decision was easy to make for Skanska.&lt;/p&gt;

&lt;p&gt;The proof of concept with parts of the SPIK application running in the browser was delivered after two weeks. The core project, without quality assurance, was able to be migrated in seven months, including UI optimizations provided by Ice Tea Group’s UI/UX designer. Ice Tea Group estimates the effort for a full rewrite of an application of this magnitude to be about 27-man years, not including the risks associated with rewriting.&lt;/p&gt;

&lt;p&gt;Such a quick turnaround provided other advantages that are not immediately apparent. Due to the shortened time frame, the development team at Skanska was able to include several small feature enhancements before the first release. With the migrated application delivered by the ITG team, users could compare the old Windows-based solution and the same application running in the browser – connecting against the same database.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ltxNW6C5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6as5cenazlueuke5gd4x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ltxNW6C5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6as5cenazlueuke5gd4x.png" alt="Skanska App 2" width="880" height="476"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Another financial element to consider is the reduction of license costs for Citrix and other components needed to deploy classic Windows software for several thousand users. The SPIK development team was able to cut down on release cycles by employing modern deployment practices. Before the web-based application, a new release took up to four weeks to deliver to 4,500 users. With the new solution, the time frame for deployment was aggressively reduced to a few hours.&lt;/p&gt;

&lt;p&gt;Wisej also helped to keep the application usage and Help System intact, so much so that the comprehensive application handbook at Skanska did not have to be rewritten.&lt;/p&gt;

&lt;h2&gt;
  
  
  About Ice Tea Group
&lt;/h2&gt;

&lt;p&gt;Ice Tea Group LLC, located in Washington DC, is a worldwide specialist for enterprise application modernization and business web frameworks. We help developers and organizations stay competitive. Our mission is to strengthen and increase the value of enterprise-scale software assets by providing modernization paths throughout technology changes.&lt;br&gt;
Since 1998, our services and frameworks have been used by more than 600 companies, in 4,800+ applications, over 50 countries. Some of our clients are: Fujitsu, Goodyear, Xerox, Skanska, Volvo, Merck, GE Healthcare, IFS, Air New Zealand, CBS, SAGE, Ericsson, Siemens, ASFINAG, Markel, Ameriprise, Europ Assistance.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.iceteagroup.com"&gt;Ice Tea Group website&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>dotnet</category>
      <category>programming</category>
    </item>
    <item>
      <title>SCADA Systems on the Web with Wisej</title>
      <dc:creator>LRufenacht</dc:creator>
      <pubDate>Thu, 10 Mar 2022 16:17:08 +0000</pubDate>
      <link>https://dev.to/iceteagroup/scada-systems-on-the-web-with-wisej-1lg5</link>
      <guid>https://dev.to/iceteagroup/scada-systems-on-the-web-with-wisej-1lg5</guid>
      <description>&lt;p&gt;Web-enabling for production control systems is a challenging task. A new article on CodeProject.com explains how &lt;a href="https://www.wisej.com/"&gt;Wisej&lt;/a&gt; can be used to implement or migrate SCADA and OPC-based systems to the Web.&lt;/p&gt;

&lt;p&gt;Web-enabling for industrial control systems&lt;br&gt;
Today’s production sites are all connected and entirely digital. Integrated control centers connect to industrial devices on the shop floor using serial interfaces, bus systems, as well as wired and wireless networks. In many cases, SCADA plays a key role in conjunction with OPC servers in Microsoft Windows-based environments.&lt;/p&gt;

&lt;p&gt;SCADA stands for Supervisory Control and Data Acquisition. As it turned out in several customer projects, Wisej is an ideal solution for migrating SCADA systems to the web. A new article on CodeProject.com analyzes typical pitfalls and possible modernization approaches for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Monitoring&lt;/li&gt;
&lt;li&gt;Controlling&lt;/li&gt;
&lt;li&gt;UI complexity&lt;/li&gt;
&lt;li&gt;Local Hardware connectivity
The article was published along with a sample application to visualize a SCADA dashboard for monitoring and controlling device management tasks with Wisej. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Read the full text on CodeProject.com:&lt;br&gt;
&lt;a href="https://www.codeproject.com/Articles/5305074/SCADA-Systems-on-the-Web"&gt;https://www.codeproject.com/Articles/5305074/SCADA-Systems-on-the-Web&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bCgDmt7w--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3g0e7mo7gzgmwq8a9vpw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bCgDmt7w--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3g0e7mo7gzgmwq8a9vpw.png" alt="Pixel-Perfect Wisej Designer" width="880" height="477"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>programming</category>
      <category>dotnet</category>
    </item>
    <item>
      <title>Native alert and confirm in Wisej</title>
      <dc:creator>LRufenacht</dc:creator>
      <pubDate>Thu, 10 Mar 2022 16:13:32 +0000</pubDate>
      <link>https://dev.to/iceteagroup/native-alert-and-confirm-in-wisej-4pci</link>
      <guid>https://dev.to/iceteagroup/native-alert-and-confirm-in-wisej-4pci</guid>
      <description>&lt;p&gt;&lt;em&gt;This post was originally shared on &lt;a href="https://wisej.com/blog/native_alert/"&gt;https://wisej.com/blog/native_alert/&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Sometimes you don’t need a fancy box and the browser’s native alert or confirm boxes will do just fine.&lt;/p&gt;

&lt;p&gt;With &lt;a href="https://www.wisej.com/"&gt;Wisej&lt;/a&gt; you can integrate the native alert and confirm with your server side .NET code with a single line. Call it on the server, it shows on the browser, blocks, and server execution resumes after the user decides what to do. Just like magic. With the added benefit that the native alerts block the browser.&lt;/p&gt;

&lt;p&gt;Here is the code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public static async Task Alert(string message)
{
    await Application.CallAsync("alert", message);
}

public static async Task Confirm(string message)
{
    return await Application.CallAsync("confirm", message);
}

public static async Task&amp;lt;string&amp;gt; Prompt(string message)
{
    return await Application.CallAsync("prompt", message);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you can call &lt;strong&gt;Alert(“Thank you for playing.”)&lt;/strong&gt; or &lt;strong&gt;Confirm(“Do you want to continue?”)&lt;/strong&gt; in your server side code like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;private async void button1_Click(object sender, EventArgs e)
{
    await Alert("Thank you for playing.");
    AlertBox.Show("Alert closed.");

    var result = await Confirm("Do you want to continue?");
    AlertBox.Show($"Confirm closed: {result}");
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WEc2q3nD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gbukhw56fke01xtkh5gf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WEc2q3nD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gbukhw56fke01xtkh5gf.png" alt="Wisej Native Alert" width="577" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Please be aware that while the native alert box is on the screen, the browser fully suspends all JavaScript execution – if the user doesn’t take any action and the session timeout kicks in, the session will expire.&lt;/p&gt;

&lt;p&gt;Happy coding with Wisej!&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>dotnet</category>
      <category>csharp</category>
    </item>
  </channel>
</rss>
