“I love it when a plan comes together!” Remember that old line from Hannibal on the A-Team TV show? I’ve been feeling that lately.
Back in 2015 we chose, while developing LegisPro, to take the new on-ramp into what looked to be a freeway of the future being built right through the now cluttered center of the browser-based application world. That “freeway” was Electron, a Chromium-based application development environment built by GitHub. Using it meant you could meld the best of browser-based application development with the best of desktop-based application development.
There were already a growing number of applications built out of Electron. Among these were the collaboration platform Slack, GitHub’s own desktop UI and Atom source code editor, and a growing list of applications. The turning point, for me, was when Microsoft released Visual Studio Code, a magnificent application development platform for building modern web-based applications – including those built using Electron. What’s more, Visual Studio Code was also built using Electron. Pretty soon, I was able to transition my entire development platform over to Electron, leaving behind a hodgepodge of disparate applications I had used before.
Reconfiguring LegisPro to work as an Electron application was pretty easy. One component, the Resolver, had been written in C# and had to be rewritten as a Node.js application in JavaScript. That was something we had already planned to do. Everything else simply fell into place and a wrapper application was built in less than a month to integrate all of the components of LegisPro into a single cohesive Electron-based desktop application.
It is what has happened since that is so amazing. Today, six of the main applications that I use – Visual Studio Code, Slack, Skype, GitKraken for source code management, WordPress to write this blog, and CrashPlan for cloud-based backups are all Electron applications.
Microsoft has completely embraced Electron! What?!!!! Microsoft has completely embraced Electron? This is a dramatic change in mindset for a company previously known for their insular approach to technology.
Microsoft can see the future and it’s not built on their proprietary .Net technology. Rather than denying the obvious, they’re rolling with it. They’ve already built the premier application development platform with Visual Studio Code – and it’s been very well received well beyond the Microsoft-centric world. They’ve rebuilt portions of their Skype platform using Electron. Even more, they’ve built the Microsoft Teams desktop application out of Electron. Microsoft Teams is part of the Office productivity suite, something that increasingly is in need of a modern rethink. This could be the start of that.
It gets even better. Microsoft has bought GitHub! This means that the Electron platform is now theirs. Never mind that underlying Electron is Google’s Chromium technology.
So what about the Edge browser? How is that going to factor into a new world where Microsoft is embracing an open source technology that is not their own? On December 6th of 2018, Microsoft confirmed rumors of their decision. They’re abandoning EdgeHTML and other parts of Edge in favor of Chromium technology. No more frustrating incompatibilities due to the half-baked nature of EdgeHTML. A new reconstituted Edge browser will debut later in 2019 that is technologically much closer to Google Chrome (a decision the Opera browser has also made). How much of Electron will be used in this browser is still to be seen, but Microsoft’s path is clear. The company culture is being changed to build upon industry-wide open source technology and to steer away from their own homegrown platform-specific technologies like .Net. That approach exactly mirrors the approach we have taken within Xcential towards LegisPro – build upon open-source and standards-based technologies whenever possible.
These are all amazing developments. It means that it is finally time that the divisions that have separated the desktop-world, dominated by Microsoft, and the browser-based world are falling away. It means that “browser-based” and “destkop-based” no longer have to be different things – they can be the same thing – “web-based”. Let’s hope Microsoft’s new “embrace” culture can avoid the “and extend” pitfalls that have dogged them in the past. I think their current CEO is determined to ensure that does not happen.
Our goal with LegisPro has been to future-proof the technology as much as possible by closely following the trends towards open-source and standards-based technologies. I love it when a plan comes together!