3 ms·
Yes. At least N times the work for N platforms. Fewer developers, harder to recruit. Cross-platform options like Qt are not modern/pretty enough and sometime
by api 8y ago
Yes.
At least N times the work for N platforms.
Fewer developers, harder to recruit.
Cross-platform options like Qt are not modern/pretty enough and sometimes aren't that much thinner than Electron (depending on how well written the app is). Java/Swing/SWT is also quite bloated and looks terrible.
Development is much slower in languages like C++. Other languages are not cross-platform or have immature/buggy cross platform support. How's ObjC on Windows? C# on Mac? They exist, but nobody uses them.
I really think we're in a UI dark age. Native UI development has gone backwards compared to the ease of WYSIWYG GUI design 10-20 years ago. Go back and use the VB.NET GUI builder from 2004 and be in awe at the incredible productivity you could achieve. Platforms are more fragmented today too. There is even fragmentation on the same platform! Do I use Qt or GTK or (insert one of a dozen others) on Linux? WPF or Windows Forms on Windows? Cocoa or UIKit on Mac? Which one will MS or Apple kill tomorrow? ... or I could just say fXXk it and use Electron and be done with it.
This is 100% the fault of vendors. If you hate the bloat blame Microsoft, Apple, and Linux developers, not people who use Electron.
Edit: mobile UI development is less fragmented but it's not really that great either. You get no choice in dev tools and the code is absolutely unportable. I see higher-level web or web-ish views/libraries/frameworks taking over there too. It's already happening.
- AnIdiotOnTheNet 8y ago> Go back and use the VB.NET GUI builder from 2004 and be in awe at the incredible productivity you could achieve. That almost nothing like this exists today is evidence that personal computing is dying, IMO. Companies don't want to empower users, they want them to be good little content consumers who do what the ads tell them. Developers (OSS developers included) don't respect them and assume they're too stupid to be permitted to use anything but the safety scissors. After all, if they were worthy of creating things they'd be C greybeards.
- scarface74 8y agoI haven’t done any desktop GUI development since VB6 and I only used .Net Windows Forms for Windows Mobile up until 2011. What is the modern drag and drop method to build GUIs on Windows?
- api 8y ago> Developers (OSS developers included) don't respect them and assume they're too stupid to be permitted to use anything but the safety scissors. After all, if they were worthy of creating things they'd be C greybeards. Thanks for mentioning that too. I loathe that mentality. What people don't understand is that it hobbles the developers/geeks too. It causes us to build systems that waste our time futzing around with minutia. Bad UX and bad tooling is objectively bad in that it imposes needless cognitive load. I learned this when I (almost cliche) switched from Linux desktop to Mac. I was amazed at how much more I got done when I didn't have to futz with drivers, config options, broken packages, etc. I now probably spend an hour a month messing with my computer compared to an hour a day.
- flukus 8y ago> At least N times the work for N platforms. Only if 100% of the code is the GUI.
- api 8y agoIt's still N times the work. You trade rewriting the core for figuring out how to meld your vision to two different APIs, two different UI libraries, etc., and of course fixing all the quirks.
- ivm 8y ago> Other languages are not cross-platform or have immature/buggy cross platform support. How's ObjC on Windows? C# on Mac? They exist, but nobody uses them. What's wrong with C# on Mac? It's basically bindings to the native API via Xamarin.Mac. You can build a cross-platform app with Xamarin on iOS / Android / Mac, UWP on Windows, and Gtk# on Linux. Using something like MvvmCross will allow to share most of the business logic between platforms.
- detaro 8y agoWhat did the old VB.NET GUI builder do better than the Windows Forms Designer in a newer Visual Studio? (I haven't used either, but know Delphi from far back when and its open "clone" Lazerus)