The State of the GUI

Adam Wilson flyboynw at gmail.com
Thu Oct 25 00:15:38 UTC 2018


On 10/24/18 1:14 AM, Gary Willoughby wrote:
> On Wednesday, 24 October 2018 at 06:20:05 UTC, Adam Wilson wrote:
>> As a result I've done some fairly extensive research over the years 
>> on, not just the effort required to bring one to D, but also on what 
>> people are actually using.
> 
> How? I'm the author of a native UI toolkit and I've no idea how many 
> people are using it. But I know a lot of people are though. Most people 
> will never tell you they use your stuff.
> 
> https://github.com/nomad-software/tkd
> 

Asking is often a terrible way to discover things. For example, I can 
instantly tell if it's an Electron app (CPU spikes and memory usage is 
atrocious). WPF apps often have text rendering issues because they 
forgot to opt-in the improved text rendering modes, or the app has a 
non-native look and isn't obviously a UWP app (UWP apps are installed 
differently so they are ridiculously easy to differentiate). GTK apps 
often look non-native on KDE/Windows/macOS, where Qt apps often look 
non-native in GNOME/Windows/macOS. On the mobile world, just go to the 
apps store and look at the screenshots of the top 100. None of them use 
the native interface widgets. And I haven't visited a website that used 
native widgets since the early 2000's.

So in that respect, a simple passive survey can cover a statistically 
useful sample. Note that I cannot always pinpoint precisely which 
toolkit was used, but enough to know whether or not it is native or 
non-native and whether or not it is native to that OS/DE is trivial.

>> At this point in time HTML/CSS/JS is by far the most prevalent UX 
>> toolkit in use today and not a single modern website uses the native 
>> widget theme. The bare minimum is Bootstrap.
> 
> I disagree and this is impossible to measure. Don't confuse web with 
> native both have use-cases.
> 
>> I've never used GTK or QT, but my understanding is that both have 
>> retrofitted some amount of theming into their toolkits but neither 
>> approach the capabilities of WPF or HTML/CSS.
> 
> I would have thought this would have been included in any 'research' 
> you've done?
> 
>> There are other reasons that native toolkits died however.
> 
> What? Native toolkits haven't died.
> 

If by died you mean disappeared than I agree. But dead can also mean "no 
significant new work". In so far as no major new apps are being 
developed using native toolkits, and in the age of HTML and Mobile apps 
I think this is undeniably the case.

>> Native toolkits are a dead-end. The future of non-Web UX is non-native.
> 
> I think this is more of an opinion than concrete fact.
> 

How so? Show me a popular mobile app that uses the default widget set. 
Show me a new large scale desktop app that uses the native. I have done 
my best to provide examples, but since I can't post pictures to forum 
messages I am asking for a little bit of googling. :)

>> And that brings us to the final problem with UX in D. The amount of 
>> time it takes to bring any UX toolkit into D is...
> 
> It took me 6+ months (part-time) for the above linked toolkit. You just 
> need dedicated hard work.
> 

Indeed. That was kind of my point. Especially the dedicated part. :)

>> I firmly believe that a non-native, cross-platform, UX library will 
>> open D up to a whole new market of users that are desperate for 
>> something better than what they have now.
> 
> I don't believe this at all. We just need better documentation for the 
> native libraries we have available.
> 

Well, D has GtkD, DlangUI, and others. I imagine that the GTK docs are 
sufficient to working well enough, so I do seriously doubt that quality 
docs are the *only* thing holding back D GUI's, it certainly would not 
hurt to have better docs. But given that most of the available toolkits 
are bindings, pretty good docs already exist.

-- 
Adam Wilson
IRC: EllipticBit
import quiet.dlang.dev;


More information about the Digitalmars-d mailing list