I find it amusing how some Linux users completely ignore the myriad of problems users can find when using Linux on the desktop, from hardware incompatibilities to a much poorer experience in daily tasks (lack of commercial software like Adobe CS / MS Office, problems with hardware video decoding especially on popular platforms like Netflix, desktop environments like GNOME3 that like to remove features periodically) that they even can't understand why someone would use a different platform.
The OP isn't talking about Linux users as consumers though, but about Linux developers. So:
> lack of commercial software like Adobe CS / MS Office
Usually inconsequential for developers
> problems with hardware video decoding
Same
> desktop environments like GNOME3 that like to remove features periodically
This is subjective.
1) You can choose not to use Gnome
2) Personally, I've been using Gnome for the past ~6 years and I haven't noticed any significant feature reduction. I'm sure there've been many, I just haven't noticed (hence subjective).
> that they even can't understand why someone would use a different platform.
I fully understand why people want to use Apple for their consuming needs. I really don't understand why my fellow developers choose to go with Apple as their work machine. I then frequently see they have to fire up VMs/containers to do work that I can do natively. No idea what's the upside for work (dev, coding-heavy).
PS: I'm writing this from my personal Apple computer. When I'm up for my hardware refresh at work, I'll 100% go with another Linux-compatible Lenovo/Dell.
>I fully understand why people want to use Apple for their consuming needs. I really don't understand why my fellow developers choose to go with Apple as their work machine.
Because many of your fellow developers do not have and don't want a separate machine for just conding? Why is this idea so alien for some people?
I've been using linux distros (mainly Ubuntu before unity nonsense and then arch and even maintained a package in AUR) since around 2006 to 2013-14. Every now and then I install Fedora\Ubuntu\Manjaro etc to see if anything got better to allow me to use it as a universal device should be used. Every time the answer is a firm NO.
In fact sometimes the disto won't even install because of some weird reasons. For example I only managed to install Fedora on my current PC (build mainly for gaming) after changing some GRUB options (and spending two hours searching all over the web for a needed recipe). What the hell is this?
As a sibling commenter said - Linux is still only good as close-to-targed (server) work machine. And it also has a few OSS tools for musicians and painters (like MuseScore and Krita). But that's it.
Installation is still a mess, updates are still unpredictable. Software distribution is still a nightmare. General consumer software availability is ... there is almost none.
If at some point my mac will become too unfriendly to work with as a dev tool (I don't see it coming really. Some people on HN usually treat some minor things as a catastrophe) - I will build a small dev server (or rent one).
>> I fully understand why people want to use Apple for their consuming needs. I really don't understand why my fellow developers choose to go with Apple as their work machine.
> Because many of your fellow developers do not have and don't want a separate machine for just conding? Why is this idea so alien for some people?
Well as a salaried employee, which I have been all my working life, you are generally required to have a seperate machine for work. So yes, this idea is pretty alien to me.
Different fields I guess. Cultural differences too maybe.
My first serious jobs in IT were in consulting (Hyperion Planning in oil and gas in Russia) and this one company (aside from Accenture were I've had a bit of experience) where the only places that required me to use the provided notebook for the job. Same for British Petroleum. Security reasons etc.
Not as single soft dev company I've worked since around 2012 required me to use their PCs (backend dev here) even though most of the do proived their macs or Thinkpads, or something else.
Anyway - many devs are self employed and\or work remotely. They don't use corporate tech at all. Corporate VPN to access the net? Sure. But that's it.
Honestly, I won't even consider a job offer that will restrict me to employer provided PC.
> > lack of commercial software like Adobe CS / MS Office
> Usually inconsequential for developers
I agree that most developers view it this way, but I find this perspective hard to understand. Why would a developer, whose craft is software, go out of there way to not understand and use the software most people use? Including of course their own coworkers? I understand that a lot of developers are content, and able to function, in a bubble of their own creating, but I would find that incredibly limiting, both from a productivity perspective, and in an understanding software as whole (and by extension the world) perspective.
> I fully understand why people want to use Apple for their consuming needs.
You do qualify this as being only about developers a bit later, but statements like this seem fundamentally out of touch with creative work on computers (i.e., illustrating my point from the previous paragraph). Logic, Final Cut, Media Composer, Pro Tools, Cinema 4D, the Adobe Creative Suite, Max/MSP, Reaktor are just a small sampling of important creative software that run on Mac but not Linux. Saying it's about "consuming" is patently ridiculous.
I understand the viewpoint the way you're expressing it here completely. What I don't understand is when I see developers on Linux expressing confusion about why anyone would use macOS, as if there aren't obvious trade-offs to each platform.
Saying you'd rather spend less money, or just prioritizing other advantages of Linux over macOS, makes sense. But pretending it's not a big deal to give up most of the industry-defining creative and productivity software (notably excluding most developer tools) just doesn't make much sense to me.
I think it's because most software most people use works fine on Linux. E.g. browsers, email, steam, websites, etc.
The ones that don't aren't necessarily widely used software. They're just specialized software for specific fields. Another example is CAD, not necessarily something everyone uses.
I also wouldn't mind using my Mac as my main computer, the problem is that my 1080p 23inch monitors don't work well with them due to pixel density.
Because as a developer, none of the software packages you listed matter to me. They are as far removed from my line of work as is notepad.exe.
You have to realize, that a lot of the software you listed is only relevant in the creative / media production industry. So, it is really not software that most people use.
That's because I was responding to replying to this comment:
> I fully understand why people want to use Apple for their consuming needs.
So I listed creative apps in contrast to their point about "consuming", but I could have listed Microsoft Office, or the iWork Suite.
I also think you're discounting how popular these apps actually are. Affinity Designer, Affinity Photo, Logic Pro, Final Cut Pro, GarageBand, and iMovie are all in the top ten charts for the Mac App Store (an interesting tangential point here is about how mobile eating so many consumer software use cases has shifted laptops and desktops more towards creative use cases).
But the point is, familiarity with these apps is useful for software developers for a couple of reasons:
1. While they may not be developer tools, they are certainly related: User-facing apps all have a UI, and most involve media of some sort, whether it's photos, videos, icons, etc... Being able to work with those file formats is a great supporting skill for a software developer.
2. As a software developer, whose "art" is software, it's good to be able to use applications that other users prefer to use, just like, say, an interior designer might be interested in how people decorate their homes. As a software developer, I'm extremely interested in the what and why of the software people like to use.
> I fully understand why people want to use Apple for their consuming needs. I really don't understand why my fellow developers choose to go with Apple as their work machine. I then frequently see they have to fire up VMs/containers to do work that I can do natively. No idea what's the upside for work (dev, coding-heavy).
Once we get a Linux laptop with great and fuss free hardware, then developers will continue buying Macbooks.
Great app support might be inconsequential for software development but not for quality of life. Programmers are people too.
If a programmer who happens to do music production or art as hobby for example, which do you think he would choose, a Macbook or a Linux laptop?
> If a programmer who happens to do music production or art as hobby for example, which do you think he would choose, a Macbook or a Linux laptop?
Don't the vast majority of companies have clauses in contracts that say whatever you create on your particular work laptop belongs to the company? I certainly have that in my contract.
In general, I would say that you're getting your work laptop for work. Work-related things should have a priority from hobbies. Having to have a VM for various thing is a strange trade off when you say the upside is producing music as a hobby.
A better example of useful-to-developers-software-that-isn't-available on Linux would be prototyping and UI design apps like Sketch, Principle, ProtoPie, Framer Desktop, and Origami Sudio. There’s a good list here (https://uxtools.co/tools/prototyping).
I’d also argue that the Adobe Creative Suite is a great grab bag of tools generally useful in communication and digital asset preparation crossing the gamut from bitmap, vector, video, and motion graphics, all of which have uses when working with software, especially user-facing applications.
>> Don't the vast majority of companies have clauses in contracts that say whatever you create on your particular work laptop belongs to the company? I certainly have that in my contract.
What do you think the chances are of your company actually being able to enforce said clauses?
>> Don't the vast majority of companies have clauses in contracts that say whatever you create on your particular work laptop belongs to the company? I certainly have that in my contract.
> What do you think the chances are of your company actually being able to enforce said clauses?
Moderate to Very high, depending on the jurisdiction you live in. Like I’ve seen it play out multiple times with colleagues even, and one took it to court even and lost.
> > lack of commercial software like Adobe CS / MS Office
Usually inconsequential for developers
You're really focusing on a certain type of developer at that point (systems/kernel only?). As a developer of both front end and back end systems, I use Adobe and Office all the time.
I do both front end and back end development without either Adobe nor Office. I'm not sure what you're using these for, but you most certainly don't need them for your existence.
Sure, and no one needs GCC for their existence either, but that sets a pretty high bar, doesn't it?
Wouldn't a better bar for judging software choices be "does this make you more or less productive?" rather than "is this an existential necessity as a software developer"?
> I then frequently see they have to fire up VMs/containers to do work that I can do natively. No idea what's the upside for work (dev, coding-heavy).
When you figure it out, let the rest of us know, because this is exactly what I think about every one of the breathless articles about how great WSL is. Speak of the devil... https://news.ycombinator.com/item?id=25965231
I’m in the same boat. I have to use a Mac for work and it’s fine. But doing personal projects on my personal laptop on Linux is just so much easier - containers are faster, Emacs is faster, upgrades don’t break things etc.
20 years ago I wanted to try graphics programming. Friend of Mine suggested Linux because it came with free software. Gimp.
Six months of recompiling and reinstalling Linux lead to a career in server development.
Linux took My dreams of graphic development and turned them into a much higher paying career.