5 ms·
Is there a UI story that doesn't suck?
by tomnipotent 5y ago
Is there a UI story that doesn't suck?
- scns 5y agoMaybe, if you change your perspective. From buddhist teachings i learned that we react emotionally to the labels (our judgements) we attach to what we perceive, not realitty itself which just is.
- jcelerier 5y agoI'm mostly doing my UIs in Qt and I'm always happy, sure it's not perfect but it consistently allows me to do what I want in a cross-platform way with minimal effort (especially when I compare with the royal empirical pain that is webdev)
- whoknowswhat11 5y agoFor windows what's your hello world workflow / stack. I've wanted to get into QT, but there seem to be a bunch of different flavors out there. I'm more a winforms guy then an HTML/XAML/CSS type person.
- gmueckl 5y agoOn Windows, there are two easy ways to get started: Qt Creator and the Qt Addin for Visual Studio. Qt Creator is easier, I think. Personally, I use Qt Widgets a lot and ignore Qml, because the later has seemingly much less powerful widgets out of the box.
- jcelerier 5y agoI'll be honest I don't think that doing C++ on windows is a good idea. The language needs to do a lot of file access for includes, and on NTFS those are super slow, my builds on Linux are something like 1/3 of the time on windows (building the same software with the same commit of clang 12 and lld, same computer, same SSD). But if you don't want to install a Linux partition, then just use aqt to install Qt: https://github.com/miurahr/aqtinstall https://github.com/miurahr/aqtinstall You want win64_msvc2019_64 as a platform. Way too often I see everyone clicking on everything in the installer which amounts to a 30gb download, but for the immense majority of Qt apps you just want the core libs for your platform which is like a couple hundred megabytes (and even then in practice you're going to use only a small part of those unless you have uncommon needs such as serial port, modbus or NFC communication, XML parsing, ...)
- R0b0t1 5y agoC++ builds are only bad when you use too many templates, which Chrome famously does. If you use MSVC you get some additional speedup as well because it tries to avoid disk IO. I would say Qt on Windows is probably a worse idea than just using .NET as it ties into the OS. If you need cross platform and normally use Windows it's not a bad idea.
- jcelerier 5y ago> C++ builds are only bad when you use too many templates, if that was the case I would see the same build times when building the exact same project with the exact same compiler on Linux versus on Windows. Yet Linux is really much faster.
- R0b0t1 5y agoNo, you're right, NTFS as implemented in the Windows kernel is very slow. But for most work it's decent enough if you have a properly set up build system. The issue for some large projects is the build system is not set up well.
- tomnipotent 5y agoDisable Windows Defender before your next build.
- yakubin 5y agoChromium uses templates very sparingly. Working with this code day to day, most days you don't see a single template. What it does use a lot of is class inheritance, delegates upon delegates, AbstractFryingInterfaces and whatnot.
- bigbizisverywyz 5y ago>The language needs to do a lot of file access for includes, and on NTFS those are super slow, I'm not sure I'd blame NTFS as such - but you can massively improve build times by creating a precompiled header .pch include file in your projects.
- simondotau 5y agoThe command line. (Hey, you said UI, not GUI.) Or for all its faults on macOS, SwiftUI on the iPhone is pretty good. And depending on your angle of view, depending on the kinds of UI you're attempting to make, you could argue that the UI story of HTML5 is able to not suck if you have the self-discipline to avoid the sucky things.
- tomnipotent 5y ago> The command line I can think of no shortage of frustrating CLI experiences. There is no perfect library that solves for all possible problems. Pros and cons and all that. I'm pleasantly happy with all modern UI frameworks across major OSes and HTML5 options. I have so many things to be thankful for complaining about.
- tonyedgecombe 5y agoI don't think anybody is expecting perfection. Personal I just don't want so much needless churn, especially on the .Net side. WPF in particular seemed to offer so much promise but was abandoned at birth. I now treat UI stuff from Microsoft the same way I treat services from Google, something to be avoided because it will probably be abandoned within a short period.
- stinos 5y agoThere's a major difference though: when Google abandons a service it is gone and you have to look for an alternative. When Microsoft 'abandons' WPF your 15 old application still builds and runs today and receives occasional updates like proper HDPI support.
- tonyedgecombe 5y agoThat would be just about OK if it wasn't half baked in the first place.
- geokon 5y agoI made a GUI using cljfx - that's a react style wrapper around javafx It was wonderful and runs an all desktops (and I guess theoretically mobile through Gluon). None of that Electron lag. There is a bit of a learning curve - esp if like me you've never done any react Very Clojure-y, quite low coupling and very composeable
- mhoad 5y agoI feel like right now flutter is about 1/10th the level of popularity it will eventually reach. It has a great story for UI from multiple angles (cross platform, developer experience, tooling etc). It’s still very young v2 only came out a couple of months ago so it’s not entirely without issues at the moment but there are a LOT of apps that I think could easily use Flutter in production across all platforms today and that story is only getting better.
- garrypettet 5y agoI've been using Xojo (https://xojo.com https://xojo.com) for about 15 years now to make cross-platform GUI apps. The language is similar to VB6 but it's been constantly updated. No affiliation, just a happy customer.