Out of curiosity, why would a Googler elect to use a Linux based workstation as opposed to a macOS workstation? Are they testing Linux binaries? Developing kernel extensions? Linux build tools? macOS offers such a superior desktop experience I can't imagine why else you'd ask an employer offering you a macOS machine to substitute it with a Linux one.
So first this comment is clearly influenced by your own preferences for MacOS. Stackoverflow Developer Survey shows irl about 40% of development is done on Windows, 30% Mac and 30% Linux. So the platforms are at least equally appealing in real world circumstances.
Secondly Goobuntu was insanely well integrated with Google’s custom source control and internal ecosystem. No one actually did real engineering work on Macs because it was disallowed for security reasons by policy, but I also never met anyone who wanted to. The tooling and customization on Goobuntu was very good and although I’m sure people asked for a better experience on Mac, the ability to customize and control the Linux dev experience just beat Googles ability to modify MacOS hands down.
Also I think there’s very little MacOS offers from a developer perspective that isn’t matched or easily trumped by Linux, but now that’s my personal bias showing ;)
> So first this comment is clearly influenced by your own preferences for MacOS.
I've always found very strange the love for MacOS professed by so many here on HN!
> Stackoverflow Developer Survey shows irl about 40% of development is done on Windows, 30% Mac and 30% Linux. So the platforms are at least equally appealing in real world circumstances.
Indeed. I use Windows and there's no amount of money you could pay me to use a Mac: at the bare minimum, I want an OLED screen, and there's no such option on MacOS.
OTOH, I try Linux every know and then, the terminal experience is still sub-par but the foot terminal emulator, despite how hard it is to configure it, is quite promising!
> I want an OLED screen, and there's no such option on MacOS.
Mini LED on M1 MBPs is not OLED quality, but it's quite close in many cases.
Additionally, in my experience (and from reading various reviews), M1 laptops are really quiet (fans are not loud even under load), have great battery life, and don't get nearly as hot as most (if not all) PC counterparts (under the same load conditions.)
> Mini LED on M1 MBPs is not OLED quality, but it's quite close in many cases.
No, it's not even close.
When I say OLED, I mean OLED, not qled or something that's "almost like" it.
To be clear: no OLED= I won't buy it.
> Additionally, in my experience (and from reading various reviews), M1 laptops are really quiet (fans are not loud even under load), have great battery life, and don't get nearly as hot as most (if not all) PC counterparts (under the same load conditions.)
Thanks, it might be nice if I cared about such things, but I absolutely don't - especially if the only non negotiable requirement (OLED) can't even be met.
FYI, if you want to know other things I care about once the bare minimum of an OLED screen is there: ECC RAM, removable NVMe drives, ideally 2 of them (or better: 3x)
Unfortunately, there're no such things on macs.
I'm sure "quiet, long battery life, cold to the touch" are important factors for those who purchase macs- but not for me.
It seems that those who have found the M1 macs suitable to their needs think that it must be ideal for everyone else - it's not!
Thanks this is a great answer. So are the others, I think I poorly expressed my initial post.
I use Linux on the desktop myself. I can't justify the price, so I don't use Mac. But if my employer gave me a choice in the matter, I'd pick a macOS machine given - why not go for the fancier option? One where the UI, OS and hardware are tightly integrated. I can always download Debian for free any run it on anything. That's what I was wondering and what you've answered.
(not a googler but discussed this with some) If I recall correctly, if you choose mac and you aren't in a team directly working on mac stuff, then it means you're going to do everything using SSH to Linux workstation - iirc the choice is essentially on what kind of laptop you want and you can't do development on the laptops by policy
You can work on your Mac (I do, and my official duties pertain to Android) but you get to deal with the janky FUSE/network server mount, and if you're running builds locally they're going to be slow.
> But if my employer gave me a choice in the matter, I'd pick a macOS machine
Provided the convenience is the same. If one is used to certain way of working with linux (may be scripts, desktop environment, or workflow - Keyboard shortcuts etc. ) then just picking a machine for "fancier option" is worthless or even annoying. Also wait to migrate scripts from bash to zsh. Again not all macs allow for baremetal install of Debian.
People who typically want to use Macs don't care much for Google's ability to modify macOS. In fact, the less Google puts on the computer the happier I think most of them would be.
Because almost all of our production fleet is Linux derived, it makes sense to use a platform that is nearly identical.
Additionally, cost is a huge factor as well. Think about the cost of purchasing 100,000 macOS machines. Compare that to purchasing 100,000 generic x86_64 machines from several manufacturers, which are generally more friendly to customization for Google's needs.
Feel free to ask questions!
Disclaimer: Googler that has a gLinux Desktop, a gLinux Cloud VM, and a macOS laptop. Not in CorpEng.
>Because almost all of our production fleet is Linux derived, it makes sense to use a platform that is nearly identical.
Yeah, it surprises me that more people who use Linux on their infrastructure don't also dogfood it on their personal machines. We run a Linux-based cloud, and my colleagues use a variety of OSes for their daily drivers; I definitely see a difference in capability between those who dogfood and those who think they can get by just fine on Windows or Mac.
As someone currently working in a company that has linux-only product but somehow decided to standardise on macbooks in engineering...
It turns out I'm not the only person with the complaint "macOS in Engineering considered Harmful". Pretty much all backend work is done in either a Linux VM using Parallels, or in docker containers, and the developer experience sucks because of that. While theoretically someone could try building some components on mac, that would be a small portion useless to general work.
We might not be at the scale of Google, but we have even less mac-specific work and similar Linux focus (hell, I'm working on custom distro even)
It doesn't surprise me at all. It's not the software, it's the hardware.
PC hardware is absolutely terrible i.e. cheaply built, poor battery life, poor quality displays, numerous bugs and Linux compatibility issues and so on. My 16" MBP will reliably allow me to work between 15 and 20 hours without needing to recharge. The mini-LED screen is far more advanced than anything on a PC laptop, daylight visible, and can go head-to-head with professional reference displays. The CPU is substantially faster and cooler than Intel's top of the line. The audio is the best on any modern laptop. It's not like there are one or two features that Macs excel at, they are better in too many ways to count.
The average Googler doesn't get to pick the OS that their workstation runs. It's going to be Linux. The typical work setup is a browser, some kind of editor and terminals - which is something that works well in Linux.
Generally, a Googler does actually get to pick their OS, it's part of the onboarding process that every Noogler goes through, and you're given 30 days from your start to swap around and test the other platforms (gLinux, macOS, gWindows, or Chrome OS).
I was under the impression that unless you have an actual business need that calls for something other than gLinux, then it's going to be gLinux. Like a Chromium dev who primarily works on the Windows side of Chrome obviously has a need for it.
I'll fully admit that my onboarding experience is quite out of date since I've been there for a decade. When I joined I didn't really have a choice for workstation since I only worked on server side stuff. Sounds like things have changed.
No they're the same. Pretty much all google3 work is done on Linux, but folks usually get 2 machines: a laptop you pick the OS and the workstation (or cloudtop) which is Linux unless there's a special need like chrome eng. Lots of folks do stuff like use Chrome OS + cider + cloudtop though.
Okay, then it sounds like I did give an accurate answer to OP's question (which was about workstations, not laptops) :)
I've used different setups over the years, but my workstation has always been Linux. Currently running gLinux on the workstation and cloudtop. My current laptop is running ChromeOS (I'm a ChromeOS swe).
Are you sure you're talking about workstation and not laptop? What you're saying sounds true for laptops, but I was at Google for 10 years on a variety of teams and I was only ever aware of Linux workstations unless one has a specific need for a different OS. (Or you could get a Chromebox at one point, but then you'd be SSHing to and building on a VM.)
> The typical work setup is a browser, some kind of editor and terminals
I have all those things open in my work setup, but I also have 3 or 4 different chat apps that don't run on linux, a few music apps that don't run on linux, a ton of Adobe software that doesn't run on linux, a stock trading app that doesn't run on linux, Kindle, a huge number of random productivity apps and games that don't run on Linux, the list goes on.
Having to deal with half-baked Linux alternatives or mess with a Windows compatibility layer sounds like a total nightmare. I also think it doesn't support modern DRM so you're SOL if you want to put on Netflix or something in the background.
> but I also have 3 or 4 different chat apps that don't run on linux, a few music apps that don't run on linux, a ton of Adobe software that doesn't run on linux, a stock trading app that doesn't run on linux, Kindle, a huge number of random productivity apps and games that don't run on Linux, the list goes on.
Well, from the viewpoint of Google the corporation, the inability of devs running these software that only detracts them from real work can be considered a feature rather than a bug.