(I also resurrected a Macbook Pro 2011 and got it to run about 5 years after Apple stopped supporting it as well.)
(I also resurrected a Macbook Pro 2011 and got it to run about 5 years after Apple stopped supporting it as well.)
My ultimately conclusion is that when I run linux on my desktop I focus too much on the OS and too little on what I'm trying to accomplish.
Oh cool there's a .001 version bump on the graphics drivers, let me spend all day recompiling that and tweaking my awesomerc.
MacOS, you just can't do that simply by virtue of being less customizable.
Am I quite as efficient as I was when my computer would reboot in <30 seconds to a desktop with all of my browsers open exactly as I wanted them (slack here, different monitoring/graphs exactly tiled exactly on another monitor) and I could switch between specific task-focused desktops with awesome (programming work here, ops here, email/biz work here, etc) no I am not as productive, but, how much time did I spend fine-tuning that setup? It felt like A LOT and I know (for a variety of reasons, this being only one of them) that I'm generally more productive since I retired my last Linux desktop in 2018.
That said, please don't take any of this to diminish the accomplishment of the Ashai team. The fact that they did what they did and did it well enough to get mainstreamed is an absurd feat. The fact that it was significantly (primarily?) done by an anime-girl live streaming on twitch is absolutely hilarious.
I also tried to avoid maintenance a lot with XFCE, but part of the problem is that I could never get it to look exactly like I wanted. There were always some minor GUI bugs that irked me to no end. Add to that, there were some weird inconsistencies because for a long time there were both GTK2 and GTK3 programs running at the same time and they didn't look quite normal.
Then there was the problem of those new-style GTK interfaces with just the hamburger menu, and not all programs were like that. I tried to fix that too somehow by moving to other Window managers but there was always some weird problem.....arrgg I LOVE linux, but (I hate to say it) MacOS just looks nicer with less fiddling.
> I also tried to avoid maintenance a lot with XFCE, but part of the problem is that I could never get it to look exactly like I wanted. There were always some minor GUI bugs that irked me to no end. Add to that, there were some weird inconsistencies because for a long time there were both GTK2 and GTK3 programs running at the same time and they didn't look quite normal
I take the point, but part of my maturation with “full time” Linux systems - personal desktop, laptop and work machine (Linux VM) to different degrees - was
(1) tinkering less,
(2) getting orders of magnitude more efficient when I did want to edit my OS or core programs, and
(3) buying an M1: while being amazed at many aspects of M1, and admitting I never got proficient with MacOS, I went back to Linux and i3 because I had just as many frustrations with MacOS as any graphical bugs I get in Linux
(4) the comfort of familiarly with my Linux configuration, rather better or worse
Now I’m comfortable with any configuration time I spend these days. It’s not much, and easily justifiable as some combination of work, hobby, and learning. I no longer think of it as serious work, which has been very good for me not wasting hours for stuff I didn’t really didn’t need to care about.
In fact, I'd probably still be on Linux if it weren't for the fact that I shifted from programming to content creation and certain apps like Davinci Resolve and some photography apps work better on MacOS, and it's impossible to get M1 performance (especially in a laptop) with Linux at the price of an M1 laptop.
That's a worst case. Most of the time I don't touch anything.
> the problem is that I could never get it to look exactly like I wanted. There were always some minor GUI bugs that irked me to no end. Add to that, there were some weird inconsistencies because for a long time there were both GTK2 and GTK3 programs running at the same time and they didn't look quite normal.
I think that is the big issue with environments that allow for endless customization. People look for perfection, and when you have too much free time it's tempting.
This is... still significant.
Outside of auto updates sometimes rebooting my laptop overnight and major version bumps requiring me to hit the "update" button explicitly once a year, I'm unsure what "maintaining my configuration" would entail once things were setup to your liking on macOS.
How often are things changing for these people that configs need to constantly reviewed?
I have been using different Linux distros in the last 15 years (mostly Arch, so rolling), and really I don't customise much (default i3, default vim, etc). Doesn't really require any maintenance at all, I would say.
And with NixOS it's more than cummulative it's a multiplier.
Gonna get me a second-hand M1 or M2 soon.....
I didn’t learn much about algorithms, or digital systems, or compilers by setting up arch Linux. Even my OS class, it’s not like learning about swap helps understand context switching or even virtual memory.
I relate to how satisfying it can be tinkering with things but a lot of times it’s just distracting. Like spending a day optimizing productivity tools instead of being productive. Or trying to get your laptop to recognize and change audio output when plugging in headphones instead of studying for a midterm.
Did not Yogi Berra state that in theory there's no theory between theory and practice but that in practice there is?
Is an abacus useful in Computer Science or is it an impediment to purely conceptual algorithmics?
I use Linux precisely because it enables good Computer Science, as telescopes enable good astronomy, as particle accelerators enable the realisation of the prediction of the Higgs Boson.
Try Linux from scratch, then ask yourself how macOS, Windows and *BSD solve those problems. Wouldn't you call that computer science?
You've learnt about telescopes, which is a very useful skill, but it's not the same thing as astronomy.
> I don’t see how this can be true under any definition of computer science.
Let me arbitrarily copy one definition of computer science, from Wikipedia:
> Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (including the design and implementation of hardware and software).
I think that designing an OS counts as computer science, at least under "some definition of computer science". And learning how to maintain an OS is a step towards understanding how it is designed.
Of course, maintaining your OS does not teach you Javascript. But Computer Science is not limited to Javascript. I wouldn't be very happy if you told me that I am not a software engineer because I don't know Javascript, to be honest.
> I don’t see how this can be true under any definition of computer science.
Let me arbitrarily copy one definition of computer science, from Wikipedia:
> Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (including the design and implementation of hardware and software).
I think that designing an OS counts as computer science, at least under "some definition of computer science". And learning how to maintain an OS is a step towards understanding how it is designed.
Of course, maintaining your OS does not teach you Javascript. But Computer Science is not limited to Javascript. And I have seen many developers distribute libraries without having a clue about how package management works, which results in a big mess. And then they complain about the tools ("CMake sucks, it's not my fault"), where actually they just don't have a clue how it works below.
I see computer science as the discipline that makes the whole computer work. Because one can't be bothered to understand anything below their favourite framework doesn't mean it doesn't count as "computer science".
2 years ago I made the switch to Linux, mostly because I was inspired by r/unixporn. I took a long weekend to install a barebones arch setup with i3. Everything needed to be touched, and I realized that although I'd been using computers for nearly 30 years, I really didn't understand how they worked.
Maintaining things like Linux, Vim, or some semi-complicated, interlinked toolchain makes me need to learn things constantly. Running updates becomes a lot more complicated, and every time I do it, I learn something new about how computers work that I didn't before.
Why do I do this? Well, I like learning! I also really enjoy my work and if fully retired, would still fiddle with computers as a hobby. Nothing against it, but I think a lot of people use their computers simple to get to their end task, and don't really care much about how that end task might sit on top of a bunch of other core systems.
In my heart, everytime I fiddle with Linux I'm reminded of the seven-year-old kid who sat at the family kitchen computer trying to learn just what the hell DOS was and why my games didn't work. These are magical machines, and it's fun learning why they work. That's what Linux gives me... something to explore.
Like others have said, that is a lot.
And I'm saying this as someone who's been running Ubuntu with i3 for the past 10 years or so. I practically don't spend any time on my configuration, unless maybe an hour or two when I upgrade Ubuntu.
I mean, I probably spend more time reading HN comments or restarting Xcode (after cleaning the cache, and the hidden cache, and the DerivedData) when I work on macOS xD
Some people get stuck down the customization/r/unixporn rabbit hole.
I mean reading HN comments probably doesn't take them much less, does it?
Anyways, my impression on debian stable would also be that I spend about zero hours for 3 years until there is a major upgrade (which is basically starting the upgrade and then drinking coffee until it is done). However, I am probably also wrong about that and actually spend a few seconds here and there on changing a wallpaper, seeing what is new in a new Firefox version etc. Summed up over a month that might actually be many minutes, but it does not feel like it.
I love Linux and I'm glad so many people are happy with their setups, but it just hasn't worked flawlessly enough for me over the years.
Note: I'm specifically talking about laptops here. It has worked great for me as a mostly headless workstation and of course as a server.
I am not doing any significant manual configuration, tweaking, or futzing with my system setup beyond maybe half an hour after initial install. There might be occasional changes I try but they are (1) rare, (2) just toggle a setting, and (3) are very occasional - in the order of seconds-single digit minutes over the course of a year.
Your phrasing makes it sound like you are spending multiple hours every month fiddling with your system.
I think most people aren’t measuring the time spend doing updates because for most people they are done overnight, and aside from major updates take just a slightly extended reboot if done during the day. No one is including the os updates, chrome updates, etc downloading in the background as time that they’re are spending maintaining their system, etc.
It is reasonable to read someone saying “I spent X amount of time doing Y” as meaning the person is saying that they were personally spending that time doing Y, not “my computer spent X amount of time doing Y while I was using it”
Who is "you"?
I agree that there is all this software tedium as well, that I'd much prefer to eliminate, but it sadly exists across all platforms.
But that's not what I'm talking about here. I'm talking about time spent getting and keeping hardware working properly, writing stuff into x11 or networking config files, that sort of thing. I have always found myself doing significantly more of that when running Linux (specifically on a laptop) than I have any interest doing anymore.
My routine maint tasks are `fwupdmgr get-updates` and `yay -Syu --devel` followed by `reboot`
I'm not sure what else people are doing other than tinkering with how things are setup. I spend a lot of time trying out other window managers and compositors or setting up various keybinds or automations I think would be useful, but I don't consider those maintenance tasks.
> I spend a lot of time trying out other window managers and compositors or setting up various keybinds or automations I think would be useful, but I don't consider those maintenance tasks.
This is the kind of (in my opinion) low value tedium I'm talking about.
I'm aware that we're talking past each other in these threads. Some people are thinking of software updates, others of us are thinking of stuff like trying out window managers and messing with keybindings, and these are indeed very different kinds of toil.
What are you referring to here?
That's like saying it's low value tedium to set folder view in finder to compact. Or trying out Rectangle or one of the auto-tilers, enable night shift.. They're preferences and I don't see how the experience would differ from one OS to another. Maybe you like the way everything works out of the box on OSX. That's cool. I don't. I don't really like how any OS (or wm or compositor) works out of the box.
Reading and commenting on HN is also fairly low-value activity, but I certainly learn useful things more often than I do when futzing around with my OS, and that's just bonus; it's mostly an entertainment activity. Playing with my Linux configuration used to be an entertainment activity for me as well, but once that stopped being the case, it stopped being a good use of my time.
You can disagree and find this enjoyable, no one is saying you need to see things their way. We all have different hobbies and priorities. It is fine if other people do not want to use Linux as a daily driver.
Like I said, I love linux, I run linux on literally 1000s of servers worldwide, the work Ashai developers are doing is amazing. I'll probably never again run it on my desktop/laptop.
I use Windows and the number of hours per month I spend on maintenance and configuration is close to zero.
Every so often I think about switching back to Linux but these comments remind me why I switched.
Those are a bunch of options for people who like optimising and configuring (nothing wrong with that).
I spend zero time on config in Linux just by accepting distro defaults. Maintenance would be less than on Windows or Mac just due to updates installing a hell of a lot faster.
At one point I aspired to a setup like that, but I thought I was too lazy.
Windows Update alone is a 15-20 min ordeal every 2 weeks (usually requiring 2-3 restarts to get all updates).
I did use Ubuntu as my main desktop for a while, I guess about a decade ago. I stopped because it took so much effort to get basic stuff working on my system at the time - graphics drivers were especially hard. As others pointed out, I did learn a lot from this experience. But nowadays my life is busy, I run a business and I need to focus my work time and spend it, well, working. Not tinkering with the systems I use to do work.
My free time, I also don't want to spend tinkering with the OS. I'd rather go to the beach.
Which is why I tend to avoid windows. Windows updates, updates by the individual apps, figuring out how to disable misfeatures etc. ; takes much more time and maintenance than linux.
When I am writing about this I realize that I my solution has always been a variant of the Linus Torvalds, move the old system to a chroot and reinstall. That has happened once every six years always because of user error or a new system. On Win/mac that happens more often (judging from my support load).
I've been on linux for the past however many years and I don't waste time on my setup at all. I pretty much have the same setup for the last 4-5 years. I've spent maybe 20 hours since then tweaking things / switching distros. Never had to recompile my kernel, my drivers or anything like that since I'm on a t490 thinkpad and it pretty much just works.
I wasn't really having any problems per se, window management on macos is a bit lacking and I'm not fond of the forced animations everywhere, but overall I was pretty happy with how everything functions.
Until few weeks ago I had free time and an adventurous mood to try out the Asahi (It's really painless to do so), and the moment I git clone'd my dotfiles and logged into my old i3 configuration I was very astounded by the sheer snappiness of everything, fingers remember all the shortcuts and all of the workspace switching is /instant/. That's something I have tried to replicate on MacOS multiple times and always failed, yabai and the like are not even close.
I still reboot into macos for when I'm mobile as I don't trust sleep on asahi (I don't think it even works that is), but when I use it at home I am very impressed by how stable and daily drive-able it is if current (admittedly, significant) compromises work for you.
BTW, many professionals like and use a highly customized setup which only Linux can offer. This is true in other fields too. See, for example, Euroracks.
My work Mac requires constant TLC, although that's mostly because they want a container based workflow which is obviously not native to MacOS and there is always something going wrong that requires a couple of hours tweaking to get healthy again each month.
It also doesn't help that my Mac feels more responsive but also feels much slower. Again it's probably the container based workflow, or all the crappy AV and management software scanning each other but compiling code feels like it takes forever compared to my several year old Linux laptop.
Unfortunately we are now at that state with Mac as well. I have a pre-VPN (Netskope?) that starts before logon which networks the laptop directly to the work public network that I then have to Cisco VPN from that to reach the work network.
I have SentinalOne, Netskope, Qualys all installed and all "realtime scanning". And it's slow. Security don't trust the employees and will mandate all this "security" software that could be bypassed if I actually was hostile but makes everyone else's environment terrible.
I'm sure if Linux became the desktop of developers we will end up with a load of rootkits too.
SentinelOne is the most unuseable piece of software I have ever used, it only gives you false positives and can not handle spear phishing from people who actually know what they are doing. It sounds good on paper and once you deploy it you will have a hard time arguing for making system "less secure".
> So how much anti-security software is mandated, and what is the impact on the developer mandated hardware?
The base fedora install + the proprietary codecs repo is literally all you need. Everything else is a waste of time.
However, in addition, I think there’s probably a significant amount of highly transferable learnings you’ve gone through while spending all that time configuring your machine. Was any of that time wasted? Well, probably, at least by some measure… But it’s also very hard to gauge the value of all the incidental knowledge you gained about what computers are, how they work, etc.
My point is this: don’t over-penalize yourself for wasting time when you’re learning in the process, and try and remember how magical it is to learn things for the first time. And for other readers… It’s good to be pragmatic, but if you’re lucky enough to be in a position to spend a lot of time tinkering, playing, learning, then DO IT. Life is meant to enjoy!
I kept doing that for awhile after I graduated, but eventually I realized it wasn't a good learning experience anymore, it was just a tedious waste of my time. I realized I should have been socializing or recreating outdoors or reading or picking up new hobbies if I wasn't working. Since then I've mostly used Macs or Linux machines maintained by the company I work for, and this is definitely a much better use of my time.
There are only so many fundamentals to learn here before it becomes just so much minutia and non-essential complexity.
Oh my god no.
I ran gentoo ~amd64 on my desktop for YEARS. If you don't know gentoo you don't know what that means, but, I learned A LOT. I wouldn't trade it for anything, it's just not right for me anymore.
Part of this might have to do with how the sorts of tiling WM setups that Linux aficionados seem to love aren't compatible with me at all, and more traditional minimalist setups (e.g. OpenBox+tint2 or whatever the modern equivalents to those are) left too many unfilled or badly filled holes, which drives me to the bigger DEs, which are opinionated in ways that don't necessarily align with me which drives the twiddling.
The only way I can see this changing is if I somehow become able to pay the bills without working and pour myself into developing my own DE and essentially make the twiddling my job (which I think I would actually love doing, but doesn't seem particularly realistic).
That's a you problem, not a Linux problem.
I haven't compiled any drivers for Linux in many, many years, probably decades even.
It helps to avoid Nvidia GPUs however, but even here I haven't seen a big problem in ages (my work computer unfortunately sticks me with an Nvidia, but Debian updates seem to work as normal).
Such as for example the cpu/ram/net/disk usage thing in the Gnome top bar. I have no idea whether there's something like that for Mac, and even if there was, I wouldn't know how to find it.
Most of those things (small utilities/plugins) exist for macOS, with two massive caveats - they are often paid (e.g. only 2 out of ~10 window managers are free; 1 out of ~3 usage thing in top bar is free), and the second one which bugs me more, they're often very Apple ecosystem centric (first or third party doesn't matter). They do things in the Apple way, integrate only with Apple tooling and services and devices, often in non-obvious ways. E.g. a fun one is that you can extend your macOS screen to an iPad, if you fill a bunch of Apple requirements (same AppleID account), but with zero feedback on which one you don't fill. If you don't, the button just isn't there, nothing says why, and all online guides boil down to "make sure you've done this". Which is my biggest problem with macOS - it isn't made for technical people because it is incapable of providing actual usable feedback that can help you debug. Be it magic buttons that only appear if everything is there, or useless error messages ("A USB device is consuming too much power and has been shut down". Which device?), or lacking features like separate scroll direction between mouse and touchpad. Oh and there's no native package manager for some unknown reason.
It's a decent shiny OS, fine for a graphical designer/video editor. I don't get technical people who swear by it, I'd be tempted to say Win 10 with WSL is better than it for techies.
This is an option for Mac: https://github.com/exelban/stats
I had two older Mac laptops that stopped functioning with the latest macOS update for encrypted iCloud files (now just about everything is encrypted in motion and at rest). I put Ubuntu on both, a MacBook and a very old (tiny model) MacBook Air that is many years old.
It is never too late to try out an Apple Silicon Mac. They just get out of your way and they just work much faster.