3 ms·
Sciter's author here. Couple of words about "native UI" and on statements like: "I (a hard-core software developer) prefer gray boxes". You (as a software dev
by c-smile 6y ago
Sciter's author here.
Couple of words about "native UI" and on statements like: "I (a hard-core software developer) prefer gray boxes".
You (as a software developer), is one of 1% of UI users. But rest of us (99%, sic!) consume UI in form of Web sites, right?
So "Native UI" these days shall look closer to default Bootstrap theme then to something that OS provides. My wife (as an example) has Windows notebook, iPhone and Android based book reader - "native UI" for her is meaningless at best.
About desktop applications in general...
There are two major types of applications:
a) the ones used time to time / rarely;
b) and productive applications used 24/7 - parts of job workflow.
The ones that used time to time (what I name as "one big red button applications") must have descriptive UI - e.g. hot-keys don't work there - no one is bothered to remember them. So the UI shall be self descriptive, pictographic, etc. 1 second looking on window to make decision what to use.
Such applications must follow modern UI trends - who will trust antivirus if it looks as dinosaur from prehistoric times? That's why AV vendors prefer to use CSS, just to minimize maintenance costs, see: https://sciter.com/from-skeuomorph-to-flat-ui-evolution-of-one-application/ https://sciter.com/from-skeuomorph-to-flat-ui-evolution-of-o...
Productive applications: MS Office, Adobe Suite, even IDEs like Visual Studio, JetBrain, SublimeText, VSCode, etc.
None of these are using "native UI" as you know. One of the reasons: "native UI" is not expressive enough.
Another reason: these are complex UI systems with complex data model underneath and so complex update graphs. They prefer GC-able runtime environments for those reasons. Yet there are c), d) up until z) reasons why they do that, I can speak about that forever, e.g. Adobe Suite must be cross-platform, right?
So when you use "native UI" please take the above into consideration.
- paulryanrogers 6y agoNative to the platform is the common meaning on HN. Native to users is a good point, though orthogonal to reasons HN users may prefer platform-native: lower memory and CPU usage, platform style, familiar shortcuts and behavior.
- c-smile 6y ago> orthogonal to reasons That's my impression too. I suspect that those "gray boxes" talks (a.k.a. buttons a la turrets of Panzerkampfwagen VI Tiger) are orthogonal to GUI in general. Yet "memory and CPU usage" is also orthogonal to HTML/CSS per se. One of strict requirements of AntiVirus applications is to to consume as low memory and CPU as possible. And most of AVs are using HTML/CSS UI these days. And so Sciter code works on 600 mln PCs and Macs as a part of these applications. In fact the main motivator why Sciter started using GPU for UI rendering was R&D director of Norton Antivirus when high-res monitors started to arrive. Retina monitors have 9 times more pixels to rasterize than old 96 ppi monitors. GPU is the only option for the GUI at post-Moore era.
- paulryanrogers 6y ago> And most of AVs are using HTML/CSS UI these days. If AV background and scanner processes use those then that's yet another reason to drop them like a bad habit. (The other reason being they increase the attack surface area.)
- c-smile 6y agoNo, AV scanning has nothing with UI layer other than posting events "something found - here are details". Even more, usually scans are done in separate processes/daemons.
- infogulch 6y agoI've always found AV programs to be slow, unresponsive, laggy, [pick-your-adjective] etc. I suppose a lot of that is caused by the dumb things they do (e.g. hook into the OS and synchronously scan every byte written to disk, or packet received) rather than what UI engine they use.
- SkyMarshal 6y ago> Sciter Engine is a single, compact DLL of 5+ Mb in size. Application using it are 10+ times smaller than the ones built with Electron or Qt. With the HackerNews crowd you should just lead with this. In fact, just answer every question and critique with this. Here’s an example: HN commenter: “I’m a hard core software developer and I prefer gray boxes to native UI.” c-smile: “Sciter Engine is a single, compact DLL of 5+ Mb in size. Application using it are 10+ times smaller than the ones built with Electron or Qt.” HN commenter: “Oh hell yeah, I prefer native UI to gray boxes now. Where do I sign up?” (I include myself in this satire as one of the HN commenters :D )