3 ms·
> As is so often the case, we need a middle ground. This is not a popular opinion here, but: the middle ground is writing handmade native apps using native OS
by ratww 6y ago
> As is so often the case, we need a middle ground.
This is not a popular opinion here, but: the middle ground is writing handmade native apps using native OS widgets. You get both the speed and a mature environment to work with.
If you follow the platform conventions you will probably have better accessibility and internationalisation support than Electron. They will run fast as a bullet. They will consume a puny amount of memory. They will have dark mode for free on macOS. They will look like most other applications that come with the OS. It probably also has a graphical editor that will make your job easier (.NET, MFC, Cocoa, all have).
If it's something like .NET you won't even have to worry much about the "Turkish internationalisation Problem" that we were discussing yesterday. [1]
Things like localisation that require a framework/library in the web world are probably handled by the libraries provided by the OS vendor.
If it's "handmade", you're already putting a lot of effort that you wouldn't put in your day job. Why not use that effort to port directly to each platform, instead of recreating everything from scratch?
For Linux the situation is more complicated, of course, but maybe Qt is acceptable?
[1] https://blog.codinghorror.com/whats-wrong-with-turkey/ https://blog.codinghorror.com/whats-wrong-with-turkey/
- mwcampbell 6y agoI mostly agree with you. But which toolkit for Windows is the "native" one? This is a well-known problem with Windows development, so I won't belabor it here. Hopefully Project Reunion improves the situation. But the murky state of native development on Windows is a big reason why developers just throw up their hands and go with something non-native that at least will work consistently all the way down to Windows 7 (or XP before that). Disclosure: I work for Microsoft, but on the Windows accessibility team, not on a UI framework or developer tools.
- ratww 6y agoGlad to see someone from Microsoft interested in seeing this issue solved. :) Well, native for me is whatever provides native look and feel. Win32 if you want C/C++, WinForms (yeah I know) if you're ok with C#. Most people featured in the article's website would only consider "truly native" as being Win32, though, which is fine.