> native UI libraries need to step up their game in terms of approachability.
Gnome does this, you can develop apps in Typescript.
But, they started to migrate some of their own apps to Typescript and immediately received backlash from the community [0]. Although granted, the Phoronix forums can be quite toxic.
My observation is that there is just a big disconnect between younger devs who just want to get the job done, and the more old-school community that care about resource efficients. Both are good intentions that I can understand, but they clash badly. This unfortunately hinders progress on this point.
I agree that this is, at least often, a case of where your roots lie.
Whats most shocking to me is that the likes of Apple and Mircosoft don't seem to be interested in/capable of building an actually good framework.
I feel like Microsoft tried with .NET Maui, but that really isn't a viable choice if you go by developer sentiment.
Typescript is a Microsoft project, so they did build an actually good framework. The swift work that Apple’s doing is pretty cool, though I haven’t used it in anger.
I come from an async/lock free C++ then Rust background, but am using typescript quite a bit these days. Rust is data race free because of the borrow checker. Swift async actors are too, by construction (similar to other actor based frameworks like Orleans). Typescript is trivially data race free (only one thread). Very few other popular languages provide that level of safety these days. Golang certainly does not.
I was benchmarking some single-treaded WASM rust code, and couldn’t figure out why half the runs were 2x slower than the other. It turns out I was accidentally running native half the time, so those runs were faster. I’m shocked the single core performance difference is so low.
Anyway, as bad a javascript used to be, typescript is actually a nice language with a decent ecosystem Like Rust and C++, its type system is a joy to work with, and greatly improves productivity vs. languages like Java, C#, etc.
It is more a side effect of JavaScript bootcamp programming wihtout learning anything else.
I have been coding since 1986, nowadays most of the UIs I get paid to work on are Web based, yet when I want to have fun in side projects I only code for native UIs, if a GUI is needed.
Want to code like VB and Delphi? Plenty of options available, and yes they do scalable layouts, just like they used to do already back in the 1990's for anyone that actually bothered to read the programming manuals.
Yes, I've dabbled in gtk, wxWidgets and several other systems. All of them are meh.
The big player these days seems to be web-based (Electron and friends), though the JVM stack with a native theme for Win/Mac is certainly usable in an environment where you can rely on Java being around.
I think the best option would be some kind of cross-application client-side HTML etc. renderer that apps could use for their user interaction. We could call it a "browser". That avoids the problem of 10 copies of the whole electron stack for 10 apps.
Years ago, Microsoft had their own version of this called HTA (HTml Application) where you could delegate UI to the built-in browser (IE) and get native-looking controls. Something like that but cross-platfom would be nice, especially as one motivation for this project is that Chrome apps are no longer supported so "Web Server for Chrome" is going away. So the "like electron but most of the overhead is handled by Chrome" option is actively being discontinued.
I like and understand the paradigm of using web technologies to build GUI apps. I have yet to find any desktop framework that even comes close to the DX of using web tech.
I recently explored both Tauri [1] and Wails [2].
Especially Wails is lots of fun. The simplicity of go paired with the fast iteration I get from using React just feels awesome.
And the final application is ~10 MB in size!
In SW development you need to make compromises. You can not have all of: quality, performance, memory/cpu/disk efficiency, security, development speed, low effort, cross-platform app, accessibility, all the business features, etc. Which corners would you cut? You mention native tech but you seem to ignore the enormous tax in development time/knowledge, etc. So let's say you aim for the best UX. Are you ready to sacrifice business features, or any other aspect? I'm not advocating for crappy UI/UX, but I would rather use an electron app that has all the features I need, than native app that doesn't.
I have thought about this and I'm not sure that Electron really is to blame here.
It makes building an application accessibile, which means that there will be lots of apps built with it, many of which won't be any good.
Just like many native apps will also be horrible in terms of UX.
Good apps are good. And I believe that it's entire possible to build an amazing app with Electron.
Although not everyone might agree, IMO VSCode is a great example of that.
I fully agree with this. Electron is hated here as if it was the source of all evil. When Electron came (and node-webkit as well), there were very limited options to create fully cross-platform apps easily. I tried multiple ways (including Qt) but it was very cumbersome and slow to progress. With Electron not only was I able to create a usefull app quickly, I could reuse almost all the code on web. Ok, it takes space and consume memory inefficiently, but thanks to Electron a lot of useful apps exist that otherwise wouldn't or would be much worse. Today Tauri or something else might be better choice, but hating electron seems really out of place.
I dunk on electron, but it’s a love-hate sort of thing. There’s some great apps out there due to electron. VSCode is great. This http server is well done and looks handy!
Personally though I’m just greedy. I want the best of QT and Electron. Figuro is my attempt at realizing that. ;)
Interesting links, though it seems more due to SwiftUI than anything. SwiftUI still seems rough compared to good ole Cocoa. I also remember when Electron apps ate 100% CPU due to blinking text cursors.
For what’s its worth my Figuro library does pretty well for live updating text and scrolling! And I haven’t even optimized layouts yet, it currently re-layouts the entire tree for every frame.
I have tried Flutter and liked it for mobile development. Maybe I should give it a shot for desktop.
Though I believe those that dislike Electron and the likes for not being native would also have a bone to pick with Flutter.
Whilst I'm generally not against piracy - I think there are valid reasons as to why it's a thing - I can't help but feel like disguising pirating content under the veil of fair use is a bit far fetched and disingenuous.
Using copyrighted material in a fair use way seems fine to me and is important.
But these companies not wanting to pay for creating their model and then just claiming fair use is silly.
> these companies not wanting to pay for creating their model and then just claiming fair use
Certainly model developers would prefer not to pay if given the option, but I also feel it's not untruthful to say that it hasn't actually been feasible to license content on the scale required.
Even just for training an object detection network as a side project, I struggled to find sufficient pre-training material outside of web-scraped datasets like ImageNet. I even contacted Getty and was told directly that they don't license images for machine learning.
Something like a compulsory licensing scheme where you pay into a pot to train a model could potentially work. Mostly, I hope whatever we eventually get is feasible for open source groups, individual developers, universities, smaller companies, etc. rather than only being made with the few biggest companies in mind.
Large-scale pre-training is not specific to chatbots. There are undeniably a huge range of beneficial uses for machine learning: language translation, video transcription, material/product defect detection, weather forecasting/early warning systems, OCR, spam filtering, protein folding, tumor segmentation, drug discovery and interaction prediction, etc.
"simply don’t train anything" does not seem ethically (many models have the potential to or already are improving lives), politically (staying in the lead is currently seen as an important issue), or legally (as noted in this brief, "the ultimate test of fair use is whether the copyright law’s goal of ‘promoting the Progress of Science and useful Arts’ ‘would be better served by allowing the use than by preventing it.’") viable to me.
The generated images have an interesting surrealist feeling to them.
This also makes me think that, for now atleast, including mirrors in photos/videos would be pretty potent to help prove that something is not AI generated.
I guess somone will have to create one. Same thing happened pretty quickly after FluentAssertions went paid.
It then becomes a question if someone is willing to put in the work to actually maintain that project.
I doubt that Microsoft would by it. From what I remeber they were working on their own framework doing a similar thing, which was originally meant to release in .NET 9 but got pushed back.
Unless they want to throw all of that away I doubt it would make much financial sense for them.
But we have seen FluentAssertions parter with tool maker recently so I guess that's not entirely unreasonable.
Yeah, with all the recent libraries going paid its looking pretty grim. Microsoft building their own version of many of the large libraries rather than just supporting them isn't helping either.
Microsoft seems doomed either way. Microsoft tried to drop their own implementations of OpenID/OAuth providers and they tried supporting IdentityServer and made it a part of some base templates and IdentityServer said that was the reason they "needed" to make it commercial and blamed Microsoft for directing too much traffic their way. If Microsoft builds their own library instead of pointing people to an open source offering it looks like favoritism and competition and "we need to go commercial to survive". If Microsoft points people to an open source offering it looks like "a flood of traffic and we need to go commercial to survive".
Microsoft even donates regularly to things like GitHub Sponsorships and the major open source foundations/conservatories, so even in the case of "too much traffic" it isn't like Microsoft is trying to shirk that bill, even though it is very easy to accuse them of that.
I'm looking at https://beeline.co/pages/beeline-cycling for example, but it isn't clear what display they're using, it looks like regular LCD, not even anti-glare? What's nice with e-Ink, is that it's highly visible even in strong sunlight (extra so when they've focused on anti-glare), while LCD even with anti-glare can be difficult to see.
reply