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.
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".
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.
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?
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.
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.
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.
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).
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).