We're getting there! I think the new Valve hardware (especially the Steam machine) will help a lot, and obviously Microsoft has a lot more AI antics planned for the future, which will drive more users away from Windows.
I wouldn't give it "perfectly viable" yet. It's very good, but there are a lot of popular titles that have kernel anti-cheat that make linux a non-starter if you play even one of the titles frequently. If this can be overcome, I would give linux the perfectly viable title.
Android users who get the updates in quarters where Google intends to not drop code should be able to legally request the open source code, no? In other words, couldn't e.g. the FSF be able to force Google to release code quarterly anyway?
Yeah, but then they (or at least Kalshi) advertise that you can get rich betting on tomorrow's weather.
I love the idea of prediction markets, AND I personally enjoy gambling, but legalized gambling has been a disaster in the united states, and (some?) prediction markets are shamefully leaning into that side of it as hard as they can.
For context, KDE pushes one (1) donation notification per year and includes a button to opt out of future reminders. It's made a huge difference for them in donations.
I never understood that. Qt is C++. The only valid reason to use C++ is "not having a choice" (which happens to me, too). But if you write a mobile app, I find it extremely weird to choose C++ instead of a modern language.
Disclaimer: I have seen teams writing mobile apps in Qt, and it was systematically a lot slower to develop, with a lot of pain, and resulting in worse apps. Even if you only have C++ devs, I would argue that it may be worth giving them the time to learn a modern language and write the mobile app with it.
> I'm curious about the use cases people you know used Qt to develop for mobile.
They were developing non-trivial mobile apps. The kind where you use your fingers on a touch screen, but that are more complex than just showing a text and an image. Say Google Maps, or WhatsApp.
The problem was not the lack of components: the problem was that it was C++. C++ is more complex to write correctly than Swift or Kotlin and harder to debug. Which made those teams measurably a lot slower. It's just the wrong technology for the use-case, IMO.
I also write complex UIs with QML and C++. I do not consider myself an expert in C++ but there is clearly a subset of it that I feel comfortable in. I think the combo of QML & C++ is great since QML lets you focus on the UI - and does a great job at it, and in C++ you can write performant code. C++ isn't that complicated these days - if you stick to a subset you're familiar with.
How much experience do you have writing mobile apps in Kotlin or Swift, as a comparison? I have worked in C++ for years, and in Swift for years. I have seen the exact same app being written both in Java and in C++.
> in C++ you can write performant code
This almost certainly does not matter for a mobile app, and definitely not for the UI part. In case your app has to do something that may need C++ (e.g. computer vision), then you can just call a C++ library over FFI.
> C++ isn't that complicated these days
I didn't mean that it is complicated. I can totally write C++. What I meant is that it is more complicated to get it right than modern languages. If users complain about a segmentation fault, it's often pretty tricky to debug. In Java/Kotlin, you will get an exception that tells you exactly which line crashed.
On top of that, C++ is slower to write. Again I have been able to compare teams working on the same app both in C++ and in Java/Kotlin/Swift (Java is not exactly a modern language, but still it's a lot faster to develop with).
And after all those disadvantages of using C++ for a mobile app, you end up with a UI that doesn't feel native to the platform.
Again: I still write C++ when it makes sense (usually that's for legacy reasons or libraries availability, otherwise Rust is a better choice IMO). But for writing a mobile UI? Doesn't make any sense to me.
Even for writing a Desktop app, I don't understand why people use Qt instead of e.g. Java. Kotlin/Compose seem to be coming on Desktop too, which makes a lot of sense to me. And maybe even Flutter.
Finally, I don't understand writing a cross-platform UI for Desktop and mobile. On mobile, I have a big finger and a small touch screen. On Desktop, I have a big screen, a mouse and a keyboard. Those require different UIs. Sharing the logic is fine, but the UI needs to be written for the platform.
> How much experience do you have writing mobile apps in Kotlin or Swift, as a comparison?
No, in the mobile space I've only used React Native and QML with C++.
> This almost certainly does not matter for a mobile app, and definitely not for the UI part.
I disagree. For example, I expect block editors to handle large texts efficiency - both in terms of power draw and performance. Writing in a non-compiled language already puts you in a disadvantage in both aspects. But this is just the standard I set to myself - the entire industry clearly has different priorities.
> I didn't mean that it is complicated. I can totally write C++. What I meant is that it is more complicated to get it right than modern languages. If users complain about a segmentation fault, it's often pretty tricky to debug. In Java/Kotlin, you will get an exception that tells you exactly which line crashed.
Yep, I generally agree, tho with good debugging tools and LLMs I have found this to not be a problem anymore.
> On top of that, C++ is slower to write. Again I have been able to compare teams working on the same app both in C++ and in Java/Kotlin/Swift (Java is not exactly a modern language, but still it's a lot faster to develop with).
I write in TypeScript at my day job and C++ for my side projects and I don't feel like I'm slower in C++. Again, I'm using the subset I'm conformable with.
> And after all those disadvantages of using C++ for a mobile app, you end up with a UI that doesn't feel native to the platform.
That has certainly been the case, and what I'm trying to fix - because I've proven that it is fixable by caring about UI/UX. QML is great for UI, it's just that Qt developers (both the developers of Qt and those using it) don't care much about those things. But it's definitely posiible to get good results. For example, I'm working on SwipeStackView like other iOS apps have in QML, and I'm liking what I've made so far: https://rubymamistvalove.com/notes-mobile-swipe-stack-view.M...
> Even for writing a Desktop app, I don't understand why people use Qt instead of e.g. Java. Kotlin/Compose seem to be coming on Desktop too, which makes a lot of sense to me. And maybe even Flutter.
Again, I can't stretch how FUN, easy, and overall a great experience to develop with QML and C++ together, it's just HOW GUI should always been. I'm thinking of creating some Youtube tutorials that will try to present this feeling.
> Finally, I don't understand writing a cross-platform UI for Desktop and mobile. On mobile, I have a big finger and a small touch screen. On Desktop, I have a big screen, a mouse and a keyboard. Those require different UIs. Sharing the logic is fine, but the UI needs to be written for the platform.
100%. Completely in agreement. The fact that you can develop both Desktop and mobile apps in QML doesn't mean you must make them share the same code (at least, not fully). I think Kirigami have gone the wrong way with their 'adaptable' UI (I've also thought about doing that until I realized it's the wrong approach). One should always start with the UX that the end result should be - never start from tech considerations.
> Writing in a non-compiled language already puts you in a disadvantage
Both Kotlin and Swift are compiled.
> But this is just the standard I set to myself - the entire industry clearly has different priorities.
I think you just underestimate the performance of Java/Kotlin/Swift, languages that you admitted you don't have any experience with.
> tho with good debugging tools and LLMs I have found this to not be a problem anymore
Again: try modern languages with good debugging tools and LLMs :-). I think your bias is that this is all you know.
> because I've proven that it is fixable by caring about UI/UX
It requires care, which means more effort. All that for being at best similar to the native tools, but probably never exactly the same. And it cannot be better, because the native ones are the ones defining how it should be.
> I can't stretch how FUN, easy, and overall a great experience to develop with QML and C++ together, it's just HOW GUI should always been
But you said you don't have experience with the native Android/iOS way. I personally have used QML/C++, Flutter, Android (Java/Kotlin, the old XML way and the new Compose way) and SwiftUI. QML/C++ is by very far the worst.
I would advise that you try either Kotlin/Compose or Swift/SwiftUI to get an idea. You can still use C++ to share some code (say you write a complex library in C++, no need to rewrite it in Kotlin and Swift), but starting a new mobile UI with QML these days is just madness IMHO :-).
I only said that because you said performant code "does not matter for a mobile app". I think writing apps in native frameworks is awesome! I'm all for it. BTW, I've heard some reports that SwiftUI/Swift are slow[1][2][3]. Again, I haven't explored SwiftUI and Kotlin, but I'd like some day. What do you love about them so much?
> All that for being at best similar to the native tools, but probably never exactly the same. And it cannot be better, because the native ones are the ones defining how it should be.
I agree, the best apps would almost always be those written in the framework the OS provides - kinda make sense - cross platform GUIs will always fall under the lowest common denominator issue - I've written about it in my blog post[4]. You also forget tho, that Linux does exist with a growing popularity - I think it's important to target it as well (I've started GUI development because I was on Linux and most apps had horrible UI/UX).
> but starting a new mobile UI with QML these days is just madness IMHO :-)
Memory safety, for one. A whole lot of better defaults (e.g. immutability by default). Then the influence of functional programming. Nice async primitives like coroutines.
It's not just Kotlin and Swift. Rust is nice as well. Even Java has actually improved a lot over the years.
Only C++ seems to get worse over the years. It's the only mainstream language where people say "if you limit yourself to a subset of the language, it's actually decent". And every year, C++ brings new stuff that people probably shouldn't include into their "decent" subset.
> You also forget tho, that Linux does exist with a growing popularity
I have been a Linux user for 20 years, I don't forget it. My favourite UI is a CLI, and there, languages like Go or Rust now often make more sense than C++. I am hoping that good desktop GUIs will come eventually, because I absolutely hate the web-based stuff like Electron. Maybe with Compose multiplatform? I hear Flutter is decent there, too.
> I've started GUI development because I was on Linux and most apps had horrible UI/UX
Except for IDEs (I like the JetBrains ones) and browser, I don't use GUIs :-).
> Except for IDEs (I like the JetBrains ones) and browser, I don't use GUIs :-).
You said you "hope good desktop GUIs will come eventually, because I absolutely hate the web-based stuff like Electron.", so I guess you still might need to use those. I'm with you, and I'm trying to be part of the change. To be honest, I'm not very much tied to a specific programming language. If the end result is good - stable, performant, with good DX than I'm with it. For me, the current combo works. I'm willing to adapt tho. Slint has nice QML syntax for UI and logic (and the underlying framework) is written in Rust. Its author was once The Qt Company/Nokia developer if I'm not mistaken.
> stuff like Electron.", so I guess you still might need to use those
Yeah, stuff like Slack for work. But there it's a bit different: they chose Electron because it makes them more productive even though it ends up in a worse product. It's sad, but it is rational to produce crap that makes more money.
That would be a reason to use React for a mobile app, maybe. But writing a mobile app in Qt is not more productive :-). I am very convinced it costs more money and results in a worse product.
The nice move in this scenario would have been to make the game free instead of delisting. Gamers can still enjoy it, and you don't have to worry about income once the company is closed.
It actually is free on itch.io, and people on steam who bought it still have access to it. Keeping it on steam required us to maintain our company registration which we didn’t want to do since it’s a waste of money and time as we weren’t planning on doing anything more with it.
Surprisingly, communism was antiracist which explains why it was popular outside the US. There is the fact that many communists were racist on a personal level, but the state policies were inclusive due to the very nature of the ideology. As someone who also comes from the former block, I think that communism was a bad idea with terrible implementation but it also had its moments no matter what the US propaganda is trying to present it as.
Yep, worker's rights, universal health care, women's rights (voting, divorce, abortion, generous maternity leave). Compared to Switzerland which allowed women voting rights in the seventies, communism was putting uncomfortable comparisons at some moments. If you wonder why communism was attractive, it wasn't just because of propaganda or because people were stupid, but because communism was addressing actual problems of the time that the christian conservative establishment of the west was preferring not to handle.
The fact that you put the tatars as the only thing to know about communism shows that you've learned one thing and found it sufficient. At the same time, the link you share shows how later communist leaders acknowledged Stalin's actions as a crime... I'm not here to defend communism though (mainly because it is not defendable), just to provide a perspective beyond the standard tropes.
People can’t think anything good of communism because they’re conditioned to feel that way.
Whats interesting is how equal it was for everyone, one comment I got when asking people who lived through the soviet era was that.
“there’s no advantage given to any religion” (hence, new years being the traditional family get together time). and “we were all comrades, men and women”. A lot of what they hear from the US about gender equality falls on deaf ears because thats what they had and they were told was bad.
A weird perspective, but certainly an interesting one.
It’s always difficult to hear things that doesn’t fit our narrative.
Even if you can point to some positive outcomes the is the main issue of the whole system being so easy to corrupt and coopt for personal gain & power trips.
You might get lower infant mortality, better access to healtcare ans aeducation (as long as the party considers you worthy) but you will almost immediately get crooks and incompetents in leadership positions, whose only qualities are the set of morals to get to a position of power no matter the cost.
And those leadership positions are appointed by or even part of The Party - and the party is never wrong. There is no free press to critisize them and if you do speak up, then you are logically an spy from The West, undermining the perfect communist utopia & need to be punished.
Only if someone is really epically incompetent they might get purged by the inner circles, but it is even more likely they will purge someone actually doing things right who still has some morals left.
You could be the most ideological communist trzing to build the bright future & will still end up sidelined or worse by the corrupt pigs holding to all the power in the communist state.
When the Soviets crashed the Prague Spring in the 1968 there were some interbrigadists that went to fight agains Francos fascists in Spain during the interwar period with international communist brigades. Only now they were watching soviet soldiers shoot people in the streets and crush them with their tanks...
Have you heard about Roma? The communist states tried to help them but in a hamfisted ways like separating kids from parents. They did nothing to actually resolve racism. Many Roma ended up in squalor in segregated settlements. That goes on to this day and improves very slowly. It definitely was not "its moment".
So nice of you to teach me about the roma. I was sure to have never heard about them. /s
The history of gypsies and their segregation is much older though and the regimes inherited much of their attitude based on prior prejudices. The treatment differed in different times and locations. I've heard accounts of casual police brutality and of good integration in the local community and of a "leave everything as it is without engaging with hard problems". None of those was sanctioned on the bases of race theory and in fact the official stance was for equality. Compare it to the US where it was part of local and state legislation. On the other hand, the higher ups in the regimes were often repainted nationalists and common criminals of old so adherence to the ideals was often perfunctory and positive actions and outcomes were falling short of what was possible.
If it's part of legislation, you can fight it. If the official ideology is equality and racial prejudices "don't exist", then any problems are suppressed and you can't do anything.
Soviet union was defacto an apartheid when you consider how non-white ethnics were treated in practice. They just were so good at suppressing everything that it was never "an issue".
There's also corrupted versions in other languages than English! I'm from Portugal and there's also semi-bawdy lyrics that somehow spread across the country organically across hundreds of miles.
reply