Threads for Marius

  1. 2

    Wrote a blog post on avoiding repeated keypresses in Vim, web browsers, and application switching/launching: https://superjamie.github.io/2023/01/28/repeated-keypresses

    Might work on this SDL tile engine I’ve been doing for a game idea.

    Want to watch both Blade Runner films again after seeing this great analysis of 2049 yesterday: https://youtu.be/OtLvtMqWNz8

    1. 1

      Regarding the Alt+Tab switching :

      • in Windows & KDE a faster “generic” way to switch windows without Alt+Tab is to use Winkey + numbers . This will “activate” the window according to the taskbar index.

      • the one i’m using is built with AHK. Pressing Ctrl+WinKey+G , for example, checks if Firefox is runing. If it is, it activates the window otherwise it launches it.

    1. 2

      Removing the tabs is kind of pointless since that “file bar” (which contains the split editor icon) cannot be removed. That vertical space is still “lost” even without tabs.

      1. 1

        It saves some space if you have "breadcrumbs.enabled": true,. Though, the primary motivation here is not as much saving pixels, as just getting rid of inefficient way to navigate.

        1. 2

          Except I want JUST the breadcrumbs and no tabs! So, I can’t turn tabs off without losing the breadcrumbs :(

          https://github.com/microsoft/vscode/issues/95796#issuecomment-1085115994

          1. 3

            Heh, familiar issue!

      1. 8

        “We’re trying to run an application on some hardware in a reasonably efficient manner, where we can easily redeploy it when it changes. “

        Why not deploy on bare metal then ? Kubernetes is ….complex, no sane person will ever deny this. The obvious question before using it is….do you really need it ? Kubernetes exists to solve a very complex problem that most people simply don’t have it.

        1. 13

          Kubernetes exists to solve a very complex problem that most people simply don’t have it.

          That pretty much sums up the blog post – avoid complex “enterprisey” solutions if your needs are simple. It seems that Kubernetes is the answer to everyone’s problems.

          1. 2

            Or maybe the problem to everyone’s answers…?

        1. 6

          Kudos to KDE, the only remaining DE which puts user configurability and choice first

          1. 2

            I don’t think this is true. I have been a long time Xfce4 user and I would say the exact same ethos exists there for that DE.

          1. 5

            I’m really excited about immutable distros that mainly use flatpak for their software. The containerizing of programs and modular permissions on linux is a big step up for general security for desktop use and something that I always felt was missing compared to, for instance, MacOS.

            1. 10

              The containerizing of programs

              Runing all apps in containers means the OS, as it is now, is a failure. And flatpaks have performance problems and software today is already slow.

              1. 4

                I don’t think it means the OS is a failure, but it does mean that the software distribution model is a failure. Apps in containers are still talking to the OS system call APIs, still running on the OS and, with runc or similar, using the OS for isolation. They do provide some interesting possibilities though: if you switch out runc and use a separate VM for each app then you can suspend and resume apps and live migrate them between computers. Being able to live migrate apps from my home machine to one in my office would be very interesting for hybrid working, for example.

                1. 4

                  I haven’t heard of performance issues with Flatpak, do you know of any examples of performance impacts?

                2. 7

                  My worry about Flatpak is dependency management. Last time I took a look, it was hard to query dependencies. Admittedly this was long ago. Hence, for a given CVE it’d be hard to know if all your software is patched. Has this situation changed? I’d not like to end up with obscure application bundles, like macOS.

                  This is the reason I like NixOS. It’s brings the best of both worlds. Your dependencies do not need to be in sync like with traditional package managers, but things are still tidy and builds are reproducible.

                  The nice thing about Flatpak is simple sandboxing, à la Firejail/bubblewrap. Nix does not have this yet, but Guix does. It was added very recently.

                  I think it’s important to run things with the least amount of privileges. macOS already sort of provides this by default. It’s a good last resort to defend yourself against malicious software. For example, it’d have saved many of the users that got their data stolen by a compromised PyTorch last week.

                  1. 3

                    I have a similar worry with Flatpack. It seems that they have identified the difficult problem in packaging and made it worse.

                    The root problem with packaging is that dependencies often have unstable interfaces. This is addressed by having multiple versions installed at once. This adds a bigger problem: you now need to do security back-ports to each of the supported versions, even if upstream does not. Flatpack makes it much easier to ship different versions of dependencies and so it compounds the emergent problem. If I have 20 apps installed and they depend on 10 different versions of libfoo, who is going to do the security back ports of a fix in libfoo? The hard work doesn’t go away, it just becomes easier to ignore and push problems to end users.

                    1. 2

                      Interesting points. Can’t really answer if querying dependencies is less annoying now, as I don’t use flatpak on a daily basis. GUIX sounds pretty amazing though, I might try it out someday.

                      1. 2

                        Guix is totally worth trying. But you should probably try the Linux distribution, GuixSD, to fully take advantage of what Guix offers. Guix has a channel with non-GNU approved software that is seldomly advertised: https://gitlab.com/nonguix/nonguix. Without this channel, it might give the impression of being way behind a normal distribution in terms of package availability.

                        1. 1

                          Thanks for the tip!

                  1. 2

                    Unless Twitter requires manual interventions to run (imagine some guys turning cranks all day long :)) , why exactly would it go down ?

                    1. 15

                      Eventually, they will have an incident and no one remaining on staff will know how to remediate it, so it will last for a long time until they figure it out. Hopefully it won’t last as long as Atlassian’s outage!

                      1. 15

                        Or everyone remaining on staff will know how to fix it but they will simply get behind the pace. 12 hour days are not sustainable and eventually people will be ill more often and make poorer decisions due to fatigue. This post described the automation as clearing the way to spend most their time on improvements, cost-savings, etc. If you only spent 26% of your time putting out fires and then lost 75% of your staff well now you’re 1% underwater indefinitely (which completely ignores the mismatch between when people work best and when incidents occur).

                        1. 6

                          Even worse - things that would raise warnings and get addressed before they’re problems may not get addressed in time if the staffing cuts were too deep.

                        2. 8

                          That’s how all distributed systems work – you need people turning cranks all day long :) It gets automated over time, as the blog post describes, but it’s still there.

                          That was my experience at Google. I haven’t read this book but I think it describes a lot of that: https://sre.google/sre-book/table-of-contents/

                          That is, if such work didn’t exist, then Google wouldn’t have invented the job title “SRE” some time around 2003. Obviously people were doing similar work before Google existed, but that’s the term that Twitter and other companies now use (in the title of this blog post).

                          (Fun fact: while I was there, SREs started to be compensated as much or more than Software Engineers. That makes sense to me given the expertise/skills involved, but it was cultural change. Although I think it shifted again once they split SRE into 2 kinds of roles – SRE-SWE and SRE-SysAdmin.)


                          It would be great if we had strong abstractions that reduce the amount of manual work, but we don’t. We have ad hoc automation (which isn’t all bad).

                          Actually Twitter/Google are better than most web sites. For example, my bank’s web site seems to go down on Saturday nights now and then. I think they are doing database work then, or maybe hardware upgrades.

                          If there was nobody to do that maintenance, then eventually the site would go down permanently. User growth, hardware failures (common at scale), newly discovered security issues, and auth for external services (SSL certs) are some reasons for “entropy”. (Code changes are the biggest one, but let’s assume here that they froze the code, which isn’t quite true.)


                          That’s not to say I don’t think Twitter/Google can’t run with a small fraction of the employees they have. There is for sure a lot of bloat in code and processes.

                          However I will also note that SREs/operations became the most numerous type of employee at Google. I think there were something like 20K-40K employees under Hoezle/Treynor when I left 6+ years ago, could easily be double that now. They outnumbered software engineers. I think that points to a big problem with the way we build distributed systems, but that’s a different discussion.

                          1. 7

                            Yeah, ngl but the blog post rubbed me the wrong way. That tasks are running is step 1 of the operarional ladder. Tasks running and spreading is step 2. But after that, there is so much work for SRE to do. Trivial example: there’s a zero day that your security team says is being actively exploited right now. Who is the person who knows how to get that patched? How many repos does it affect? Who knows how to override all deployment checks for all the production services that are being hit and push immediately? This isn’t hypothetical, there are plenty of state sponsored actors who would love to do this.

                            I rather hope the author is a junior SRE.

                            1. 3

                              I thought it was a fine blog post – I don’t recall that he claimed any particular expertise, just saying what he did on the cache team

                              Obviously there are other facets to keeping Twitter up

                            2. 4

                              For example, my bank’s web site seems to go down on Saturday nights now and then. I think they are doing database work then, or maybe hardware upgrades.

                              IIUC, banks do periodic batch jobs to synchronize their ledgers with other banks. See https://en.wikipedia.org/wiki/Automated_clearing_house.

                              1. 3

                                I think it’s an engineering decision. Do you have people to throw at the gears? Then you can use the system with better outcomes that needs humans to occasionally jump in. Do you lack people? Then you’re going to need simpler systems that rarely need a human, and you won’t always get the best possible outcomes that way.

                                1. 2

                                  This is sort of a tangent, but part of my complaint is actually around personal enjoyment … I just want to build things and have them be up reliably. I don’t want to beg people to maintain them for me

                                  As mentioned, SREs were always in demand (and I’m sure still are), and it was political to get those resources

                                  There are A LOT of things that can be simplified by not having production gatekeepers, especially for smaller services

                                  Basically I’d want something like App Engine / Heroku, but more flexible, but that didn’t exist at Google. (It’s hard problem, beyond the state of the art at the time.)

                                  At Twitter/Google scale you’re always going to need SREs, but I’d claim that you don’t need 20K or 40K of them!

                                  1. 1

                                    My personal infrastructure and approach around software is exactly this. I want, and have, some nice things. The ones I need to maintain the least are immutable – if they break I reboot or relaunch (and sometimes that’s automated) and we’re back in business.

                                    I need to know basically what my infrastructure looks like. Most companies, if they don’t have engineers available, COULD have infrastructure that doesn’t require you to cast humans upon the gears of progress.

                                    But in e.g. Google’s case, their engineering constraints include “We’ll always have as many bright people to throw on the gears as we want.”

                                    1. 1

                                      Basically I’d want something like App Engine / Heroku, but more flexible, but that didn’t exist at Google.

                                      I think about this a lot. We run on EC2 at $work, but I often daydream about running on Heroku. Yes it’s far more constrained but that has benefits too - if we ran on Heroku we’d get autoscaling (our current project), a great deploy pipeline with fast reversion capabilities (also a recentish project), and all sorts of other stuff “for free”. Plus Heroku would help us with application-level stuff, like where we get our Python interpreter from and managing it’s security updates. On EC2, and really any AWS service, we have to build all this ourselves. Yes AWS gives us the managed services to do it with but fundamentally we’re still the ones wiring it up. I suspect there’s an inherent tradeoff between this level of optimization and the flexibility you seek.

                                      Heroku is Ruby on Rails for infrastructure. Highly opinionated; convention over configuration over code.

                                      At Twitter/Google scale you’re always going to need SREs, but I’d claim that you don’t need 20K or 40K of them!

                                      Part of what I’m describing above is basically about economies of scale working better because more stuff is the same. I thought things like Borg and gRPC load balancing were supposed to help with this at Google though?

                                2. 2
                                  1. Random failures that aren’t addressed
                                  2. Code and config changes (which are still happening, to some extent)

                                  It can coast for a long time! But eventually it will run into a rock because no one is there to course-correct. Or bills stop getting paid…

                                  1. 1

                                    I don’t have a citation for this but the vast majority of outages I’ve personally had to deal with fit into two bins as far as root causes go:

                                    • resource exhaustion (full disks, memory leak slowly eating all the RAM, etc)
                                    • human-caused (eg a buggy deployment)

                                    Because of the mass firing and exodus, as well as the alleged code freeze, the second category of downtime has likely been mostly eliminated in the short term and the system is probably mostly more stable than usual. Temporarily, of course, because of all of the implicit knowledge that walked out the doors recently. Once new code is being deployed by a small subset of people who know the quirks, I’d expect things to get rough for a while.

                                    1. 2

                                      You’re assuming that fewer people means fewer mistakes.

                                      In my experience “bad” deployments are much less because someone is constantly pumping out code with the same number of bugs per deployment but because the deployment breaks how other systems interact with the changed system.

                                      In addition fewer people under more stress, with fewer colleagues to put their heads together with, is likely to lead to more bugs per deployment.

                                      1. 1

                                        Not at all! More that… bad deployments are generally followed up with a fix shortly afterwards. Once you’ve got the system up and running in a good state, not touching it at all is generally going to be more stable than doing another deployment with new features that have potential for their own bugs. You might have deployed “point bugs” where some feature doesn’t work quite right, but they’re unlikely to be showstoppers (because the showstoppers would have been fixed immediately and redeployed)

                                  1. 19

                                    Too bad the binary name conflicts with another essential Unix tool

                                    1. 2

                                      Which also probably isn’t fun if you actually do mistype.

                                      1. 2

                                        Yeah, the nerve on these FB people. Seriously, it should have been “sg” , because “sl” is also used by Powershell in Windows.

                                        1. 17

                                          No, it should obviously be “sap”, which is short enough and also the root (!) of “sapling”.

                                          1. 3

                                            It also speaks volumes about their culture, completely absent of Unix hacking tradition.

                                            One never knows, I might be wrong here, but I don’t see this sapling ever becoming a full grown tree. Successful universally accepted projects have succeeded because they nail a specific solution to a well understood problem and offer a clear direct ovcoua benefit to the user drom day one. I don’t think this is the case here.

                                        1. 3

                                          Signing binaries and relying on a CA to establish “trust” is already a lost cause.

                                          Did notarization significantly improved the OSX security ? To me it seems it was only a roadblock for OSS software. On Windows there was malware signed with leaked developer certificates.

                                          1. 3

                                            These are pretty different ecosystems: with end-user software signing, you’re relying on intermediate issuers (or, in macOS’s case, just Apple) to only issue certificates to “legitimate” entities. Sigstore is two or three levels below that: it’s intended to help engineers sign packages and distributions that larger programs and systems are made out of. Signing and verification are simpler and easier to automate in that context.

                                          1. 2

                                            So what happens if the for-profit declines this request. Would the community be able to fork Gitea, come up with a new name, establish a governing body, and keep pushing forward on their own path?

                                            1. 7

                                              gitea is licensed under MIT, so it seems like yes they can just fork and rename the project.

                                              1. 9

                                                Gitea itself is a fork of Gogs.

                                              2. 6

                                                Gitea started life as a fork of Gogs, so this seems entirely plausible, or even desirable, for two big reasons:

                                                1. Large enterprise users have very different needs from indies and small communities, or even larger OSS projects. SSO, compliance, integration with e.g. “mature” devops tools like Jenkins and Artifactory, etc. all tend to drive enterprise usage. Smaller-scale users often care more about ease of installation and use, design and quality of the actual code, and openness to outside contributors.

                                                2. DAO. ‘Nuf said.

                                                1. 2

                                                  what are SSO and DAO?

                                                  1. 4

                                                    SSO - Single Sign On

                                                    DAO - Decentralized Autonomous Organization; basically a bunch of people who get together through the power of CRYPTO to achieve common goals. Right now synonymous with “scam”, but that’s mostly because the default way of making money in crypto is via ponzi schemes[1].

                                                    [1] and yes, I count “yield farming” as a ponzi scheme.

                                                    1. 2

                                                      Oh I see, Gitea is associated with a DAO.

                                                      1. 15

                                                        no, they want to experiment with a DAO, but this is usually enough to get people to write off Gitea permanently

                                                        1. 2

                                                          Yeah… pretty damning that the leadership is even considering it.

                                                          1. 4

                                                            No it is not! “decentralized autonomous organization” is basically a synonym of “the FOSS community” it’s just that some people have subverted the literal meaning of words with particular implementations that are beyond terrifying. That does not mean it cannot be done better but apparently some people are unwilling to admit that the emperor wears no clothes and resort to surface level prejudice and childish dismissals.

                                                            If these (gitea) people have integrity and they want to find fair ways to organize this project then power to them! If not, then the reason for dismissing them is not because they used some words but rather because they did or tried to do something dishonest (which is not immediately apparent as soon as you claim you want to try to use cryptography to partially automate your organization).

                                                            I refer to my earlier comment on the initial announcement for context to interpret this one.

                                                            1. 5

                                                              “decentralized autonomous organization” is basically a synonym of “the FOSS community”

                                                              I have never heard this definition, and I’ve been following FOSS since the late 90s and crypto since the white paper was published.

                                                              Note that crypto proponents love wrapping themselves in the open source mantle - almost all code is MIT-licensed, for example. But that’s just appropriating a cultural shibboleth. The ethos of crypto - artificial digital scarcity - is antithetical to what most people think of when they think of FLOSS.

                                                              1. 1

                                                                Sorry but the ethos of crypto(graphy) is communicating without being misunderstood.

                                                                We figured out how to build artificial scarcity.. yay! (blegh). Now let’s build methods to manage the problem of “tragedy of the commons” - which is what we actually care about - this comes down to assessing what improves our collective security and by how much (relative to other such improvements). Such assessments are probabilistic and will be built on a social contract of sharing cryptographic commitments to assessments.

                                                                If we decide these assessments have meaning, for example by bridging into the legacy system by calling them “exchange rates” then what we’ll have are currencies that are scarce only in the sense that if you print too much you lose trust and your exchange rates suffer… a scale-free credit system; like the international stage is using to do p2p.

                                                                The system can be composed of sovereign individuals joining hands with all sorts of temporary contracts.. what happens if someone doesn’t honor their contract? Their exchange rate suffers. What happens if someone didn’t commit a legitimate improvement? Their exchange rate suffers…. This isn’t the only way to do it. I am just saying: we’ve been played for complete fools and it needs to end.

                                                              2. 3

                                                                no dude… here’s the blog post: https://blog.gitea.io/2022/10/open-source-sustainment-and-the-future-of-gitea/

                                                                To preserve the community aspect of Gitea we are experimenting with creating a decentralized autonomous organization where contributors would receive benefits based on their participation such as from code, documentation, translations, and perhaps even assisting individual community members with support questions.

                                                                this doesn’t make sense if you replace “decentralized autonomous organization” with “the FOSS community.” I’m sorry but it’s definitely cryptocurrency related. any other form of organization that does those things would be less decentralized than the current community of contributors. and I can’t imagine why they would add “autonomous” unless they were referring to DAOs as people currently understand them.

                                                                1. 1

                                                                  Why can I call FOSS community a DAO? I’m just saying this has precedence.

                                                                  … they were referring to DAOs as people currently understand them.

                                                                  Which I can agree is the concerning part.. which is why I mentioned earlier comment for context.

                                                                  I am happy to be receiving engagement with this discussion and can admit that I am defending something slightly different than what they are doing but I feel that my defense gives adequate grounds as to /why/ they are doing this.

                                                                  For me what is perplexing is what makes all these otherwise smart people feel like they have to limit the granularity of their discernment to “cryptobro” as soon as the notion of using cryptography to organize the causal part of societal communication is brought up. There is a lot of need for useful tools that can be trusted as well as a system of assessment that can give us confidence in funding those involved in building all this software. Incentives are hard to get right, but that is no reason not to try.. a large part of society is dedicated to that task (politics) and they are not using the best methods we know about.. why not?

                                                                  1. 1

                                                                    I don’t see the connection between what you say is perplexing and what people have said in this thread. DAOs are a blockchain/cryptocurrency thing, which is not just “using cryptography.”

                                                                    1. 1

                                                                      My premise is the literal intent in the phrase decentralized autonomous organization. Even though it currently refers to broken implementations it does not stop us from implementing something sane.

                                                                    2. 1

                                                                      nobody will look through your post history to find a comment that you mention but don’t link to. and what was the point of arguing “decentralized autonomous organization” could refer to something totally different, if you agree that gitea is using it in the normal way?

                                                                      I don’t see the connection between what you say is perplexing and what people have said in this thread.

                                                                      1. 1

                                                                        Nobody cares, thankfully, I owe him a lot as he has stood by me through thick and thin.

                                                                  2. 1

                                                                    Problem ist, the term „DAO“ is now burnt. Just like „web3“ and „crypto“. No amount of explanations will be able to revert this.

                                                                    1. 2

                                                                      Explanations maybe not, implementations definitely, the word “crypto” is only temporarily burnt.. you’ll see.

                                                            2. 2

                                                              Scammable by outsiders too through the life-changing magic of exploits in smart contracts 💁🏻‍♀️

                                                        2. 1

                                                          In which sense do you ask that question? Are you referring to the viability of doing so due to project size and complexity?

                                                          Other than that, if the code is MIT licensed, there’s no issue in forking. I don’t know about a governing body, a person can take initiative individually if they so wish.

                                                          1. 1

                                                            Yes, I was thinking about the viability of doing so because of project size and complexity.

                                                        1. 14

                                                          Hats off to those people brave enough to daily drive these Linux/FOSS mobile devices but such a buggy experience really sounds like an uphill battle. I can see why the author swapped back.

                                                          It’s a shame because I’d love to see these projects succeed.

                                                          1. 2

                                                            So would I! I think this is only a temporary hiatus - I’m genuinely hoping the Pro will be a sufficiently good experience that it’ll be an acceptable daily driver.

                                                            1. 1

                                                              I’m about to try the same on my Librem 5 I finally received after years. My guess is the experience will be slow and lacking.

                                                              Mostly because these devices were conceived almost 5+ years ago, and modern tech has substantially aped what was an affordable developer hardware device back then.

                                                              1. 3

                                                                My guess is the experience will be slow and lacking. Mostly because these devices were conceived almost 5+ years ago,

                                                                I was an early Windows Phone adopter (i shipped one of the first Windows Phone apps when working at Seesmic). I remember people thinking WP will suck because the hardware was clearly inferior to Android. Then it was launched and the overall experience was amazing even on lower spec devices.

                                                                The experience on these Linux phone will suck because they try to shrink a desktop environment (KDE in this scenario) to work on a phone. I love KDE on a high power desktop but , to me, this is clearly the wrong approach to take when building a phone OS.

                                                                1. 3

                                                                  I love KDE on a high power desktop but , to me, this is clearly the wrong approach to take when building a phone OS.

                                                                  I disagree. There’s a lot to love about having a fully featured desktop OS on your phone :) I think the issue with the PinePhone was that it was underpowered; I’m hoping the PinePhone Pro will fix that.

                                                                  1. 1

                                                                    Does KDE really need so much? I first ran KDE (beta 4) on a 233 MHz Pentium MMX with 32 MiB of RAM. My phone has 8 2.something GHz cores and 8 GiB of RAM. Even if KDE needed 10 times the resources that it needed back then, it would use a fraction of what my device can provide.

                                                                    1. 1

                                                                      Hildon was GNOME shrunk to work on a phone, and it was awesome.

                                                                1. 3

                                                                  SizeUp: On macOS I moved to Rectangle, but used SizeUp for a long-time. I bought an AquaSnap license a long time ago and it serves my needs. Windows now has more hotkeys and virtual desktop stuff I don’t really use since I have my setup the way I want it.

                                                                  Dash: Zeal and Velocity were the top equivalents when I last checked. Compared to window management, this area had fewer options because most people tend to open a browser rather than use a specialist tool.

                                                                  As @williballenthin stated, PowerToys and Windows Terminal are also essential. You want to be on Windows 11 for the best experience going forward. Windows 10 users have been frustrated about some changes, but things are gradually reappearing.

                                                                  1. 3

                                                                    You want to be on Windows 11 for the best experience going forward

                                                                    No, you don’t. They haven’t even managed to fix the taskbar yet. Wait for 12 and stick with 10 for now.

                                                                  1. 2

                                                                    Just concentrate on making a great cross platform desktop client. Chasing mobile will only slow you down and make you lose focus.

                                                                    1. 3

                                                                      Lots of people like (or at least find it to be convenient, or need) to read their email on their phone, however.

                                                                    1. 9

                                                                      Is there any proof that the telemetry data is NOT put to good use to improve VSCode ?

                                                                      1. 29

                                                                        I think there’s a tinge of paranoia that runs through the anti-telemetry movement (for lack of a better term; I’m not sure it’s really a movement). Product usage telemetry can be incredibly valuable to teams trying to decide how best to allocate their resources. It isn’t inherently abusive or malignant. VSCode is a fantastic tool that I get to use for free to make myself money. If they say they need telemetry to help make it better than I am okay with that.

                                                                        1. 9

                                                                          I think the overly generic name does not help the situation. When people are exposed to telemetry like “we’ll monitor everything and sell your data”, I’m disappointed but not surprised when they block everything including (for example) rollbar, newrelic, etc.

                                                                          But MS shot itself in the foot by making telemetry mysterious and impossible to inspect or disable. They made people allergic to the very idea.

                                                                          1. 12

                                                                            I think the overly generic name does not help the situation. When people are exposed to telemetry like “we’ll monitor everything and sell your data”, I’m disappointed but not surprised when they block everything including (for example) rollbar, newrelic, etc

                                                                            It’s a bit uncharitable to read “they blocked my crash reporting service” as “they must have some kind of misunderstanding about what telemetry means” (if that’s what you’re implying when you say you’re disappointed but not surprised that people block them).

                                                                            I know exactly what services like rollbar do and what kinds of info they transmit, and I choose to block them anyways.

                                                                            One of the big takeaways from the Snowden (I think?) disclosures was that the NSA found crash reporting data to be an invaluable source of information they could then use to help them penetrate a target. Anybody who’s concerned about nation-state (or other privledged-network-position actor) surveillance, or the ability of law enforcement or malicious actors impersonating law enforcement to get these services to divulge this data (now or at any point in the foreseeable future), might well want to consider blocking these services for perfectly informed reasons.

                                                                            1. 5

                                                                              I believe that’s actually correct - people in general don’t understand what different types of telemetry do. A few tech people making informed choices don’t contradict this. You can see that for example through adblock blocking rollbar, datadog, newrelic, elastic and others. You can also see it on bug trackers where people start talking about pii in telemetry reports, where the app simply does version/license checks. You can see people thinking that Windows does keylogger level reporting back to MS.

                                                                              So no, I don’t believe the general public understands how many things are lumped into the telemetry idea and they don’t have tools to make informed decisions.

                                                                              Side-topic: MS security actually does aggregate analysis of crash reports to spot exploit attempts in the wild. So how that works out for security is a complex case… I lean towards report early, fix early.

                                                                              1. 7

                                                                                You can see that for example through adblock blocking rollbar, datadog, newrelic, elastic and others.

                                                                                I’m not following this argument. People install adblockers because they care about their privacy, and dislike ads and the related harms associated with the tracking industry – which includes the possibility of data related to their machines being used against them.

                                                                                Adblocker developers (correctly!) recognize that datadog/rollbar/etc are vectors for some of those harms. The not every person who installs an adblocker could tell you which specific harm rollbar.com corresponds to vs which adclick.track corresponds to, does not imply that if properly informed about what rollbar.com tracks and how that data could be exploited, they wouldn’t still choose to block it. After all, they’re users who are voluntarily installing software to prevent just such harms. I think a number of these people understand just fine that some of that telemetry data is “my computer is vulnerable and this data could help someone harm it” and not just “Bob has a diaper fetish” stuff.

                                                                                It’s kind of infantilizing to imagine that most people “would really want to” give you their crash data but they’re just too stupid to know it, given how widely reported stuff like Snowden was.

                                                                                You can also see it on bug trackers where people start talking about pii in telemetry reports, where the app simply does version/license checks. You can see people thinking that Windows does keylogger level reporting back to MS.

                                                                                That some incorrect people are vocal does not tell us anything, really.

                                                                                1. 3

                                                                                  It’s kind of infantilizing to imagine that most people “would really want to” give you their crash data but they’re just too stupid to know it, given how widely reported stuff like Snowden was.

                                                                                  Counterpoint: Every time my app crashed, people not only gave me all data i asked for, they just left me with a remote session to their desktop. At some point I switched to rollbar and they were happy when I emailed them about an update before they got around to reporting the issue to me. So yeah, based on my experience, people are very happy to give crash data in exchange for better support. In a small pool of customers, not a single one even asked about it (and due to the industry they had to sign a separate agreement about it).

                                                                                  That some incorrect people are vocal does not tell us anything, really.

                                                                                  The bad part is not that they’re vocal, but that they cannot learn the truth themselves and even if I wanted to tell them it’s not true - I cannot be 100% sure, because a lot of current telemetry is opaque.

                                                                                  1. 3

                                                                                    I don’t know how many customers you have or how directly they come in contact with you, but I would hazard a guess that your business is not a faceless megacorp like Microsoft. This makes all the difference; I would much more readily trust a human I can talk to directly than some automated code that sends god-knows-what information off to who-knows-where, with the possibility of it being “monetized” to earn something extra on the side.

                                                                                  2. 3

                                                                                    People install adblockers because they care about their privacy, and dislike ads and the related harms associated with the tracking industry

                                                                                    ooof that’s reading way too much into it. I just don’t want to watch ads. And as for telemetry, I just don’t want the bloat it introduces.

                                                                            2. 7

                                                                              The onus is not on users to justify disabling telemetry. The ones receiving and using the data must be able to make a case for enabling it.

                                                                              Obviously, you need to be GDRP-compliant too; that should go without saying, but it’s such a low bar.

                                                                              Copy-pasting my thoughts on why opt-out telemetry is unethical:

                                                                              Being enrolled in a study should require prior informed consent. Terms of the data collection, including what data can be collected and how that data will be used, must be presented to all participants in language they can understand. Only then can they provide informed consent.

                                                                              Harvesting data without permission is just exploitation. Software improvements and user engagement are not more important than basic respect for user agency.

                                                                              Moreover, not everyone is like you. People who do have reason to care about data collection should not have their critical needs outweighed for the mere convenience of the majority. This type of rhetoric is often used to dismiss accessibility concerns, which is why we have to turn to legislation.

                                                                              If you make all your decisions based on telemetry, your decisions will be biased towards the type of user who forgot to turn it off.

                                                                            3. 9

                                                                              This presumes that both:

                                                                              a) using data obtained from monitoring my actions to “improve VSCode” (Meaning what? Along what metrics is improvement defined? For whose benefit do these improvements exist? Mine, or the corporation’s KPIs? When these goals conflict, whose improvements will be given preference?) is something I consider a good use in any case

                                                                              b) that if this data is not being misused right now (along any definition of misuse) it will never in the future cross that line (however you choose to define it)

                                                                              1. 2

                                                                                Along what metrics is improvement defined?

                                                                                First step would be to get data about usage. If MS finds out a large number of VSCode users are often using the json formatter (just a example) i assume they will try to improve that : make it faster, add more options etc etc.

                                                                                Mine, or the corporation’s KPIs

                                                                                It’s an OSS project which is not commercialized in any way by the “corporation”. They are no comemrcial licenses to sell, with VSCode all they earn is goodwill.

                                                                                will never in the future cross that line

                                                                                Honest question, in what way do you think VSCode usage data be “missused” ?

                                                                                1. 12

                                                                                  i assume they will try to improve that : make it faster, add more options etc etc.

                                                                                  You assume. I assume that some day, now or in the future, some PM’s KPI will be “how do we increase conversion spend of VSCode customers on azure” or similar. I’ve been in too many meeting with goals just like that to imagine otherwise.

                                                                                  It’s an OSS project which is not commercialized in any way by the “corporation”

                                                                                  I promise you that the multibillion dollar corporation is not doing this out of the goodness of their heart. If it is not monetized now (doubtful – all those nudges towards azure integrations aren’t coincidental), it certainly will be at some point.

                                                                                  Honest question, in what way do you think VSCode usage data be “missused” ?

                                                                                  Well, first and most obviously, advertising. It does not take much of anything to connect me back to an ad network profile and start connecting my tools usage data to that profile – things like “uses AWS-related plugins” would be a decent signal to advertisers that I’m in the loop on an organization’s cloud-spend decisions, and ads targeted at me to influence those decisions would then make sense.

                                                                                  Beyond that, crash telemetry data is rich for exploitation uses, like I mentioned in another comment here. Even if you assume the NSA-or-local-gov-equivalent isn’t interested in you, J Random ransomware group is just successfully pretending to be a law enforcement agency with a subpoena away (which, as we discovered this year, most orgs are doing very little to prevent) from vscode-remote-instance crash data from servers people were SSH’d into. Paths recorded in backtraces tend to have usernames, server names, etc.

                                                                                  “This data collected about me is harmless” speaks more to a lack of imagination than to the safety of data about you or your organization’s equipment.

                                                                              2. 4

                                                                                That point is irrelevant, since it’s impossible to prove that microsoft is NOT misusing it now and that they will NOT misuse it in the future.

                                                                                1. 3

                                                                                  No, so should we blindly trust Microsoft with our data, or be cautious?

                                                                                1. -4

                                                                                  People, if you’re not happy with VsCode/Electron and you don’t want to shell out for a Sublime Text license , CudaText is THE editor for you https://cudatext.github.io/

                                                                                  1. 6

                                                                                    Your comment is not very helpful. I would avoid “Use X” without bringing any additionnal information. Everyone could do baseless claim about X being THE editor.

                                                                                  1. 16

                                                                                    Stop using laptops. For the same money you can get a kickassssss workstation.

                                                                                    1. 27

                                                                                      But then for the time you want to work away from the desk you need an extra laptop. Not everyone needs that of course, but if you want to work remotely away from home or if you do on-call, then laptop’s a requirement.

                                                                                      1. 6

                                                                                        Laptops also have a built-in UPS! My iMac runs a few servers on the LAN and they all go down when there’s a blackout.

                                                                                        1. 2

                                                                                          Curious in which country you live that this is a significant enough problem to design for it?

                                                                                          1. 5

                                                                                            Can’t speak about the other poster, but I think power distribution in the US would qualify as risky. And not only in rural areas. consider that even Chicago burbs don’t have buried power lines. And every summer there’s the blackout due to AC surges. I’d naively expect at least 4 or 5 (brief) blackouts per year

                                                                                      2. 8

                                                                                        i get that, but it’s also not a very productive framework for discussion. i like my laptop because i work remotely – 16GB is personally enough for me to do anything i want from my living room, local coffee shop, on the road, etc. i do junior full-stack work, so that’s likely why i can get away with it. obviously, DS types and other power hungry development environments are better off with a workhorse workstation. it’s my goal to settle down somewhere and build one eventually, but it’s just not on the cards right now; i’m moving around quite a bit!

                                                                                        my solution? my work laptop is a work laptop – that’s it. my personal laptop is my personal laptop – that’s it. my raspberry pi is for one-off experiments and self-hosted stuff – that’s it. in the past, i’ve used a single laptop for everything, and frequently found it working way too hard. i even tried out mighty for a while to see if that helped ((hint: only a little)). separation of concerns fixed it for me! obviously, this only works if your company supplies a laptop, but i would go as far as to say that even if they don’t it’s a good alternative solution, and might end up cheaper.

                                                                                        my personal laptop is a thinkpad i found whilst trash-hopping in the bins of the mathematics building at my uni. my raspberry pi was a christmas gift, and my work laptop was supplied to me. i spend most of my money on software, not really on the hardware.

                                                                                        edit: it’s also hard; since i have to keep things synced up. tmux and chezmoi are the only reasonable way i’ve been able to manage!

                                                                                        1. 6

                                                                                          Agree. The ergonomics of laptops are seriously terrible.

                                                                                          1. 7

                                                                                            Unfortunately I don’t think this is well known to most programmers. Recently a fairly visible blogger posted his workstation setup and the screen was positioned such that he would have to look downward just like with a laptop. It baffled many that someone who is clearly a skilled programmer could be so uninformed on proper working ergonomics and the disastrous effects it can have on one’s posture and long-term health.

                                                                                            Anyone who regularly sits at a desk for an extended period of time should be using an eye-level monitor. The logical consequence of that is that laptop screens should only be used sparingly or in exceptional circumstances. In that case, it’s not really necessary to have a laptop as your daily driver.

                                                                                            1. 6

                                                                                              After many years of using computers I don’t see a big harm of using a slightly tilted display. If anything a regular breaks and stretches/exercises make a lot more difference, especially in long term.

                                                                                              If you check out jcs’ setup more carefully you’ll see that the top line is not that much lower from the “default” eye-line so ergonomics there works just fine.

                                                                                              1. 2

                                                                                                We discuss how to improve laptop ergonomics and more at https://reddit.com/r/ergomobilecomputers .

                                                                                                (I switched to a tablet PC, the screen is also tilted a bit but raised closer to eye level. Perhaps the photo in the ‘fairly visible blogger’s setup was setup for the photo and might be raised higher normally)

                                                                                            2. 2

                                                                                              That assumes you’re using the laptop’s built-in keyboard and screen all day long. I have my laptop hooked up to a big external monitor and an ergonomic keyboard. The laptop screen acts as a second monitor and I do all my work on the big monitor which is at a comfortable eye level.

                                                                                              On most days it has the exact same ergonomics as a desktop machine. But then when I occasionally want to carry my work environment somewhere else, I just unplug the laptop and I’m good to go. That ability, plus the fact that the laptop is completely silent unless I’m doing something highly CPU-intensive, is well worth the loss of raw horsepower to me.

                                                                                            3. 2

                                                                                              A kickass workstation which can’t be taken into the hammock, yes.

                                                                                              1. 1

                                                                                                I bought a ThinkStation P330 2.5y ago and it is still my best computing purchase. Once my X220 dies, if ever, then I will go for a second ThinkStation.

                                                                                                1. 3

                                                                                                  A few years ago I bought an used thinkcentre m92. Ultra small form factor. Replaced the hard drive with a cheap SSD and threw in extra RAM and a 4k screen. Great set up. I could work very comfortably and do anything I want to do on a desktop. Including development or whatching 4k videos. I used that setup for five years and have recently changed to a 2 year old iMac with an Intel processor so I can smoothly run Linux on it.

                                                                                                  There is no way I am suffering through laptop usage. I see laptops as something suited for sales people, car repair, construction workers and that sort of thing. For a person sitting a whole day in front of the screen… No way.

                                                                                                  I don’t get the need for people to be able to use their computers in a zillion places. Why? What’s so critical about it? How many people actually carries their own portable office Vs just doing their work on their desks before the advent of the personal computer? We even already carry a small computer in our pocket att all times that fills up lot of personal work needs such as email, chat, checking webpages, conference calls, etc. Is it really that critical to have a laptop?

                                                                                                  1. 4

                                                                                                    I don’t get the need for people to be able to use their computers in a zillion places. Why? What’s so critical about it?

                                                                                                    I work at/in:

                                                                                                    1. The office
                                                                                                    2. Home office
                                                                                                    3. Living room

                                                                                                    The first two are absolutely essential, the third is because if I want to do some hobbyist computing, it’s not nice if I disappear in the home office. Plus my wife and I sometimes both work at home.

                                                                                                    Having three different workstations would be annoying. Not everything is on Dropbox, so I’d have to pass files between machines. I like fast machines, so I’d be upgrading three workstations frequently.

                                                                                                    Instead, I just use a single MacBook with an M1 Pro. Performance-wise it’s somewhere between a Ryzen 5900X and 5950X. For some things I care about for work (matrix multiplication), it’s even much faster. We have a Thunderbolt Dock, 4k screen, keyboard and trackpad at each of these desks, so I plug in a single Thunderbolt cable and have my full working environment there. When I need to do heavy GPU training, I SSH into a work machine, but at least I don’t have a terribly noisy NVIDIA card next to me on or under the desk.

                                                                                                    1. 3

                                                                                                      The first two are absolutely essential, the third is because if I want to do some hobbyist computing, it’s not nice if I disappear in the home office.

                                                                                                      I believe this is the crux of it. It boils down to personal preference. There is no way I am suffering to the horrible experience of using a laptop because it is not nice to disappear to the office. If anything, it raises the barrier to be in front of a screen.

                                                                                                    2. 2

                                                                                                      Your last paragraph is exactly my thoughts. Having a workstation is a great way to reduce lazy habits IMNSHO. Mobility that comes with a laptop is ultimately a recipe for neck pain, strain in arms and hands and poor posture and habits.

                                                                                                      1. 6

                                                                                                        I have 3 places in which I use my computer (a laptop). In two of them, I connect it to an external monitor, mouse and keyboard, and I do my best to optimize ergonomics.

                                                                                                        But the fact that I can take my computer with me and use it almost anywhere, is a huge bonus.

                                                                                                1. 2

                                                                                                  ninja TLD ? Do pirate or cowboy TLD exists too ?

                                                                                                  1. 3

                                                                                                    No, but if you have money you can create them.

                                                                                                  1. 1

                                                                                                    Not to disparage the effort, but I’m curious why the author has chosen to implement an X11 compatibility layer and not a Wayland one, since X is rapidly approaching obsolescence in the Linux space.

                                                                                                    1. 23

                                                                                                      since X is rapidly approaching obsolescence in the Linux space

                                                                                                      This is said a lot, but it isn’t really true.

                                                                                                      1. 3

                                                                                                        This is said a lot, but it isn’t really true.

                                                                                                        But it should be. X is …… old. It should be resting.

                                                                                                        1. 18

                                                                                                          Linux is only about seven years younger than X. I guess it must be approaching obsolescence too.

                                                                                                          For that matter, I was released in 1986….. oh dear, I don’t think my retirement account is ready for that :(

                                                                                                          1. 13

                                                                                                            Personally I can’t believe lobster.rs is served primarily via TCP and UDP. They are 42 years old and should be put to rest.

                                                                                                            </s>

                                                                                                            1. 1

                                                                                                              You’re right. We should be using SCTP instead.

                                                                                                        2. 11

                                                                                                          The author explained this here.

                                                                                                          1. 9

                                                                                                            Even if Wayland does finally replace Xorg for Linux users, it doesn’t necessarily mean people will stop wanting to run X11 applications.

                                                                                                            1. 7

                                                                                                              X was obsolete, full stop, a decade or two ago. Whether or not a thing is obsolete has little to do with how ubiquitous or useful it is.

                                                                                                            1. 2

                                                                                                              For “regular” applications, one solution for this is to put all external dependencies in the repo. Otherwise if your build depends of external package manager X having version Y of package Z ….eventually this will not be true anymore.

                                                                                                              For Flash, or any other proprietary product, it it stops making money, there is no guarantee it will be maintained/available for a long period of time. For Flash specifically….maybe that’s for the best :)

                                                                                                              1. 2

                                                                                                                How does the windows package manager compare to something like apt or pacman on Linux these days? Last I used it, it used a git repository for packages, and worked quite well, but I’m unsure how big the ecosystem is now since then.

                                                                                                                1. 4

                                                                                                                  I’d say it’s good enought, it gets the job done.

                                                                                                                  1. 4

                                                                                                                    I tried it at my previous job, and it didn’t seem comparable. For starters, it does not care about dependencies at all, so you can install something that doesn’t work, or break something by uninstalling another thing and you won’t get as much as a warning.

                                                                                                                    It seemed more like a fancy curl that downloads .exes by name or ID.

                                                                                                                    1. 1

                                                                                                                      Yeah that was my experience before as well. I’m hoping it becomes more like package managers on Linux or like homebrew on Mac. But unfortunately it seems currently it’s as you said, just a fancy curl.

                                                                                                                  1. 16

                                                                                                                    I wonder who at System76 was responsible for evaluating all possible directions they could invest in, and decided the desktop environment is the biggest deficiency of System76

                                                                                                                    1. 11

                                                                                                                      It’s also great marketing. I’ve heard “System76” way more since they have released Pop_OS. So while people may not be buying machines for the OS it seems that as a pretty popular distro it keeps the name in their head and they may be likely to buy a system on the next upgrade.

                                                                                                                      1. 1

                                                                                                                        Well I’d buy a machine, but they’re not selling anything with EU layouts or powercords.

                                                                                                                      2. 5

                                                                                                                        I know a few people who run Pop_OS, and none of them run it on a System76 machine, but they all choose Pop over Ubuntu for its Gnome hacks.

                                                                                                                        Gnome itself isn’t particularly friendly to hacks — the extension system is really half baked (though perhaps it’s one of the only uses of the Spidermonkey JS engine outside Firefox, that’s pretty cool!). KDE Plasma has quite a lot of features, but it doesn’t really focus on usability the way they could.

                                                                                                                        There’s a lot of room for disruption in the DE segment of the desktop Linux market. This is a small segment of an even smaller market, but it exists, and most people buying System76 machines are part of it.

                                                                                                                        Honestly, I think that if something more friendly than Gnome and KDE came along and was well-supported, it could really be a big deal. “Year of the Linux desktop” is a meme, but it’s something we’ve been flirting with for decades now and the main holdups are compatibility and usability. Compatibility isn’t a big deal if most of what we do on computers is web-based. If we can tame usability, there’s surely a fighting chance. It just needs the financial support of a company like System76 to be able to keep going.

                                                                                                                        1. 7

                                                                                                                          There’s a lot of room for disruption in the DE segment of the desktop Linux market. This is a small segment of an even smaller market, but it exists, and most people buying System76 machines are part of it.

                                                                                                                          It’s very difficult to do anything meaningful here. Consistency is one of the biggest features of a good DE. This was something that Apple was very good at before they went a bit crazy around 10.7 and they’re still better than most. To give a couple of trivial examples, every application on my Mac has the buttons the same way around in dialog boxes and uses verbs as labels. Every app that has a preferences panel can open it with command-, and has it in the same place in the menus. Neither of these is the case on Windows or any *NIX DE that I’ve used. Whether the Mac way is better or worse than any other system doesn’t really matter, the important thing is that when I’ve learned how to perform an operation on the Mac I can do the same thing on every Mac app.

                                                                                                                          In contrast, *NIX applications mostly use one of two widget sets (though there is a long tail of other ones) each of which has subtly different behaviour for things like text navigation shortcut keys. Ones designed for a particular DE use the HIGs from that DE (or, at least, try to) and the KDE and GNOME ones say different things. Even something simple like having a consistent ‘open file’ dialog is very hard in this environment.

                                                                                                                          Any new DE has a choice of either following the KDE or GNOME HIGs and not being significantly different, or having no major applications that follow the rules of the DE. You can tweak things like the window manager or application launcher but anything core to the behaviour of the environment is incredibly hard to do.

                                                                                                                          1. 4

                                                                                                                            There’s a lot of room for disruption in the DE segment of the desktop Linux market.

                                                                                                                            Ok, so now we have :

                                                                                                                            • kitchen sink / do everything : KDE

                                                                                                                            • MacOS like : Gnome

                                                                                                                            • MacOS lookalike : Elementary

                                                                                                                            • Old Windows : Gnome 2 forks (eg MATE)

                                                                                                                            • lightweight environments : XFCE / LXDE

                                                                                                                            • tiling : i3, sway etc etc (super niche).

                                                                                                                            • something new from scratch but not entirely different : Enlightment

                                                                                                                            So what exactly can be disrupted here when there are so many options ? What is the disruptive angle ?

                                                                                                                            1. 15

                                                                                                                              I think you’re replying to @br, not to me, but your post makes me quite sad. All of the DEs that you list are basically variations on the 1984 Macintosh UI model. You have siloed applications, each of which owns one or more windows. Each window is owned by precisely one application and provides a sharp boundary between different UIs.

                                                                                                                              The space of UI models beyond these constraints is huge.

                                                                                                                              1. 5

                                                                                                                                I think any divergence would be interesting, but it’s also punished by users - every time Gnome tries to diverge from Windows 98 (Gnome 3 is obvious, but this has happened long before - see spatial Nautilus), everyone screams at them.

                                                                                                                              2. 3

                                                                                                                                I would hesitate to call elementary or Gnome Mac-like. Taking elements more than others, sure. But there’s a lot of critical UI elements from Mac OS looking, and they admit they’re doing their own thing, which a casual poke would reveal that.

                                                                                                                                I’d also argue KDE is more the Windows lookalike, considering how historically they slavishly copied whatever trends MS was doing at the time. (I’d say Gnome 2 draws more from both.)

                                                                                                                                1. 3

                                                                                                                                  I’d also argue KDE is more the Windows lookalike, considering how historically they slavishly copied whatever trends MS was doing at the time

                                                                                                                                  I would have argued that at one point. I’d have argued it loudly around 2001, which is the last time that I really lived with it for longer than a 6 months.

                                                                                                                                  Having just spent a few days giving KDE an honest try for the first time in a while, though, I no longer think so.

                                                                                                                                  I’d characterize KDE as an attempt to copy all the trends for all time in Windows + Mac + UNIX add a few innovations, an all encompassing settings manager, and let each user choose their own specific mix of those.

                                                                                                                                  My current KDE setup after playing with it for a few days is like an unholy mix of Mac OS X Snow Leopard and i3, with a weird earthy colorscheme that might remind you of Windows XP’s olive scheme if it were a little more brown and less green.

                                                                                                                                  But all the options are here, from slavish mac adherence to slavish win3.1 adherence to slavish CDE adherence to pure Windows Vista. They’ve really left nothing out.

                                                                                                                                  1. 1

                                                                                                                                    But all the options are here, from slavish mac adherence to slavish win3.1 adherence to slavish CDE adherence to pure Windows Vista. They’ve really left nothing out.

                                                                                                                                    I stopped using KDE when 4.x came out (because it was basically tech preview and not usable), but before that I was a big fan of the 3.x series. They always had settings for everything. Good to hear they kept that around.

                                                                                                                                2. 2

                                                                                                                                  GNOME really isn’t macOS like, either by accident or design.

                                                                                                                                3. 3

                                                                                                                                  I am no longer buying this consistency thing and how the Mac is superior. So many things we do all day are web-apps which all look and function completely different. I use gmail, slack, github enterprise, office, what-have-you daily at work and they are all just browser tabs. None looks like the other and it is totally fine. The only real local apps I use are my IDE which is writen in Java and also looks nothing like the Mac, a terminal and a browser.

                                                                                                                                  1. 7

                                                                                                                                    Just because it’s what we’re forced to accept today doesn’t mean the current state we’re in is desirable. If you know what we’ve lost, you’d miss it too.

                                                                                                                                    1. 2

                                                                                                                                      I am saying that the time of native apps is over and it is not coming back. Webapps and webapps disguised as desktop applications a la Electron are going to dominate the future. Even traditionally desktop heavy things like IDEs are moving into the cloud and the browser. It may be unfortunate, but it is a reality. So even if the Mac was superior in its design the importance of that is fading quickly.

                                                                                                                                      1. 2

                                                                                                                                        “The time of native apps is over .. webapps … the future”

                                                                                                                                        Non-rhetorical question: Why is that, though?

                                                                                                                                        1. 4

                                                                                                                                          Write once, deploy everywhere.

                                                                                                                                          Google has done the hard work of implementing a JS platform for almost every computing platform in existence. By targeting that platform, you reach more users for less developer-hours.

                                                                                                                                          1. 3

                                                                                                                                            The web is the easiest and best understood application deployment platform there is. Want to upgrade all user? F5 and you are done. Best of all: it is cross platform

                                                                                                                                          2. 1

                                                                                                                                            I mean, if you really care about such things, the Mac has plenty of native applications and the users there still fight for such things. But you’re right that most don’t on most platforms, even the Mac.

                                                                                                                                        2. 2

                                                                                                                                          And that’s why the Linux desktop I use most (outside of work) is… ChromeOS.

                                                                                                                                          Now, I primarily use it for entertainment like video streaming. But with just a SSH client, I can access my “for fun” development machine too.

                                                                                                                                        3. 3

                                                                                                                                          Any new DE has a choice of either following the KDE or GNOME HIGs and not being significantly different, or having no major applications that follow the rules of the DE. You can tweak things like the window manager or application launcher but anything core to the behaviour of the environment is incredibly hard to do.

                                                                                                                                          Honestly, I’d say Windows is more easily extensible. I could write a shell extension and immediately reap its benefit in all applications - I couldn’t say the same for other DEs without probably having to patch the source, and that’ll be a pain.

                                                                                                                                          1. 1

                                                                                                                                            GNOME HIG also keeps changing, which creates more fragmentation.

                                                                                                                                            20 years ago, they did express a desire of unification: https://lwn.net/Articles/8210/

                                                                                                                                        4. 1

                                                                                                                                          It certainly is a differentiator.