![](/static/253f0d9b/assets/icons/icon-96x96.png)
![](https://programming.dev/pictrs/image/662a455d-1090-45ad-994e-302f8bfcd56e.png)
tl;dr:
std::unordered_map is one of the worst ones, boost::unordered_flat_map and absl::flat_hash_map are one of the best.
tl;dr:
std::unordered_map is one of the worst ones, boost::unordered_flat_map and absl::flat_hash_map are one of the best.
It’s not even about waiting or patience. I’m not a teenager anymore, so I don’t have as much to play games as I used to (and I have now other interests too). I have so many great PC games in my queue I literally won’t have time to play them all until I die. The queue only gets longer with time. So what if I can’t play some console exclusive? It’s just one game in the long list of games I won’t get to play and I have no problems with that.
They are trying to make money to stay afloat. Postmarketos is a community project so it’s not comparable. And neither Purism nor Pine64 seem to be huge commercial successes just like Jolla, though they seem to be doing a bit better.
They have been owned by a Russian state-owned telecom corporation for a few years until recent events (Russia currently tries to push Sailfish OS fork as its “russian-made” mobile OS). Original Finnish management has split off to a new independent company with the same name last year, and this looks like their last ditch attempt to continue existing. I don’t expect they will last much longer (the reason why they were bought by Russia in the first place was that Jolla failed as a business).
Qt 6 has been out for more than three years now.
Gconf was text though (well XML actually but not binary).
Variable names shouldn’t need comments, period. You don’t want to look it up every time this variable is used in code, just to understand what it holds. Of course there are always exceptions, but generally names should be descriptive enough to not need additional explanation.
And context can also come from names of other things, e.g. name of a class / namespace that holds this variable. For example AccessibilitySettings.HighContrast
, where AccessibilitySettings holds all options related to accessibility.
What exactly do you expect users to do when they see “WARNING: what you are doing is unsafe” message? Cause the only outcome I can think of is that they won’t install themes at all.
That seems to be the committee policy these days - get the minimal version of a feature out of the gate first and then spend a decade extending it. Unfortunately sometimes they can’t even agree on what the bare minimum should be, which also causes the burn out of proposal authors and proposals get stalled (like what happened with reflection, though it seems that it’s in the works again).
It is scalable but the icons are still drawn against the virtual pixel grid. If an icon is designed to be perfectly pixel-aligned when rasterized at a certain size, then rasterizing it at 1.25 of that size will cause small distortions if it contains small elements (such as 1 px width lines).
There is a checkbox with a very confusing name in the task manager applet’s settings that does just that. I can’t remember its name just now (something about separated launchers. It’s “Combine into single button”. Nope, it’s “Keep launchers separate” and it’s indeed needs restart).
Please, someone tell comrade Stalin Xi that this is all just a terrible mistake!
I fear that at these resolutions we will discover that UI frameworks are not really scalable in terms of performance
Even “real” fractional scaling in Plasma with Qt 6 is not much better. Text will look slightly sharper, but icons are still blurry. There is no way for them to look sharp with 1.25 scaling since they are drawn with a pixel grid in mind. Unless you invent some way to stretch svgs so that their individual elements and spaces between them retain their integer-ness while the scale of the whole image is fractional.
The only other solution is monitors with 300+ PPI where blurriness is simply not noticeable (that’s the way Apple went).
It looks mostly the same as XML views but some components look and behave wildly different for no apparent reason (tooltips are one of those).
I have given up on the fight a long time ago. On the desktop the only line I draw is that the app must respect system font configuration and use system-provided file dialogs.
JS by itself is very fast (it’s one of the fastest dynamic languages). It’s interop with platforms APIs that is slow, at the fact that each React app spins up its own instance of Chromium also doesn’t help.
Same with Compose even though it’s ironically considered native in the Android dev community.
The easiest way to tell that the app is not native is tooltips (those that appear when you long press on a button in a toolbar). For some reason UI frameworks just can’t agree to display them in the same way, even if they use material design. Compose’s ones are especially bad (some apps like Play store actually have different kinds of tooltips on different screens, meaning they use multiple UI frameworks in the same app).
several posts per day here are a clear troll posts and bids for drama
Isn’t this the point of this subreddit community? Like, what else do you imagine would people post on a forum called “unpopular opinion”? It will have the same fate as its Reddit counterpart.
Well the author claims that it’s not possible for std::unordered_map to get close to other implementations because of constraints that the standard imposes on it. I.e. faster implementations simply behave slightly differently (in ways that are not important to most users).