Well, not really. The no-code tool of the 90s was Access or maybe Excel. VB was useful exactly because it was code, but simplified. One thing the Microsoft stack really nailed was a smooth(er) on-ramp. There was a big gap between VB and C++ which is partly what motivated the development of C#/Java but otherwise, you could start with Excel or Access, move up to VBA and build an actually useful app that delivered business value. Then you could take those skills and move to VB6 and build "real" apps that you could ship to users and charge money for, build whole businesses around. You could learn some Win32 using VB/Win32 interop and then progress to C, and from there, to C++, or later from VB to VB.NET and then C#.

The web stack sort of killed all that. You can start with HTML and get some results pretty fast but you'll very rapidly hit the limits of what can be done there and suddenly be hit with this giant wall of complexity. NodeJS helps because now you can use the same language on backend and frontend, but even getting to the point where you have a frontend and backend requires mastering a heap of tech with appalling usability (like UNIX). And the modern JS ecosystem is sufficiently complicated that you'll hit problems like the ones described in the article.

One way to fix this is to bring the VB6 model back, by making desktop apps great again. It can be done. There are toolkits that make it easy to write standalone cross-platform apps (e.g. JVM languages+JavaFX, Flutter, the new C# stuff, Qt, etc). There's no fundamental reason distributing desktop apps must be difficult, it's just a neglected area of tooling.

And that's a nice segue to my current startup, which is tackling exactly that problem. We've produced a tool that makes distributing desktop apps as easy as distributing web apps is (or easier!). It takes the output of your build system (if any) as inputs, and builds self-updating packages for Windows, macOS and Linux without needing you to actually have any of those platforms. It can also fully sign those packages itself (without needing macOS or Windows), or self-sign them in which case you get a `curl | bash` type install experience and the PowerShell equivalent for Windows. Finally it produces a simple download HTML page that detects the user's OS and gives them a nice big green button to click.

We've talked to one well known tech firm that wants to integrate this into their products and a driving reason is, in fact, educational. They have a lot of new programmers who use their developer tools and who learn with a desktop toolkit because it's easy to get things on the screen, there's one language to learn, it's all cleanly following the principles they're taught in class (like objects) and so on. But then they hit a wall when they want to show their friends and family what they're doing, or graduate to actually getting real users. Smoothing that on-ramp should help a lot.

At the moment the tool is in private beta, but if you want to try it email me (address in my profile). After public launch it'll be free for open source projects, licensed for commercial projects. Thinking about a feature that automatically bundles source and adds a "view source" button to the apps, to help students who haven't yet mastered uploading code to GitHub.