You could literally drag and drop your way to a modest application with only minimal programming 'under the hood' for the business logic.
I still don't think anything has surpassed the usability of winforms for a developer just wanting to get something done.
I guess the frustration comes from the fact that historically Web started as a set of static HTML files to create/publish documents and we inertially compare todays Web with it but we if stop comparing apples with oranges than it becomes apparent that:
1. It's never been simpler to create and publish web content 2. It's never been simpler to build/ship/and distribute software
Complexity arises when people (given many options) pick wrong tool for a job.
On the other hand, our apps are:
- Ugly looking
- Dated looking (this is different than ugly, but our apps are both)
- Full of UI jank (too many WinForms controls take their sweet time painting on the UI thread)
- Non-server-based
- Non-cross-platform
- Non-sandboxed
- Installed from downloaded file that gives scary warnings in your browser when you try to open it
These downsides hint at some of the reasons why I think web-based development is necessarily more involved than for Windows apps.
That's a question that really aught to be answered. If the business application only requires Windows PCs as a target your design wins out despite the perceived shortcomings.
Going further would require remixing bits of Chromium to create a browser-like thing with a sandbox, but which is much less opinionated about what runs inside of it.
Problem is, for there to be a market requires that devs (or someone) pays for it. How much would you pay to be able to not write a web app?
I agree that the developer-facing usability of a good desktop GUI toolkit runs circles around whatever webdev is these days, but the barrier to entry for a completely new programmer is certainly a lot higher than HTML.
Spaghetti code? Yeah, not only that, but the whole pasta menu. On Error Resume Next.
The barrier to entry were none to zero.
It was very much like designing desktop programs some 20 years ago using WinForms, which was actually a piece of cake using the designer tools that came with Visual Studio etc.
It's shameful that creating programs in Excel is such a smooth ride compared to even the most trivial web app. But of course, the web app must be compatible with a billion of other things, compared to Excel and VBA.
Not sure if this is a valid answer, but I would assume that both Microsoft and Apple provided decent and easy to use frameworks to build applications on their operating system. This setup a particular amount of vendor lock in, the library is already there and doesn't need downloaded/installed making it easy on the end user.
On the other hand, frameworks were not provided by the browser manufactures initially. Also, everything is downloaded so 'include foo.js' is just as easy as 'include bar.js' opening up a vast ecosystem of frameworks.
> Because the browser nowadays is an "operating system" that needs to be capable of handling all manner of dynamic software: maps, video, image editors, games, etc.
If frontends didn't use the "OS" capabilities of the browser, how would one build a multi-user real-time text editing app like Google Docs?
Edit (and off topic): Writing this comment gave me flashbacks of using Mapquest online for driving directions before smartphones. You had to print the directions out and bring them to your car on a piece of paper. It worked though!