25 ms·
It's just a "better integrated" virtual machine: "Lima launches Linux virtual machines on macOS" This might be a controversial opinion, but I find developers f
by Naac 5y ago
It's just a "better integrated" virtual machine: "Lima launches Linux virtual machines on macOS"
This might be a controversial opinion, but I find developers flocking to macOS really bewildering. As a developer, why do you want to fight your operating system to get basic things done? This Lima thing, docker running in a virtual machine, Apple being actively hostile with the default coreutils requiring you to layer multiple third party tools just to get a modern version of awk and grep.
I Just recently I learned you can't add more swap ( creating a swap file and adding it ). That seems incredible to me.
- porcc 5y agoAs a longtime macOS user and an ex-Linux user, I believe for many the idea goes the other way around. Why fight to keep your linux installation working? MacOS has worked nearly unconfigured for me for almost a decade now.
- OJFord 5y agoThat's fine if you're content with whatever changeable (just not by you) defaults. I use both, but mostly Linux, and macOS is way more of a 'battle' because something I have set to behave how I want it to will suddenly stop working, or have been barely possible (e.g. window managers) in the first place.
- gjsman-1000 5y ago"why do you want to fight your operating system to get basic things done?" Depends on the developer. How many developers use awk and grep? Most web developers probably have touched them once and never used them again, and prefer using MacOS compared to fighting Windows to do their web dev. Making a blanket statement that doing any development requires "fighting MacOS" is silly.
- Naac 5y agoThat was just an example though. My point was that you're constantly fighting an operating system that's clearly not designed for you ( the developer ).
- gjsman-1000 5y agoApple has always made it clear that they care about the experience of their users, not the developers. Because the customers are there, the developers follow. That's just how it works unfortunately. Also, clearly not designed for you? You can install Brew to have a package manager, Magnet to add Window snapping for a dollar, you can make it fit your use case for not that much effort or money. You don't have to use vanilla MacOS. Furthermore, consider the alternatives. You've got Windows (bleh for a thousand reasons and clearly also not designed for developers), or you've got Linux (which doesn't have many of the apps you need, worse battery life, doesn't have Handoff to your iPhone). MacOS is the best all-rounder option for many people.
- mxcrossr 5y agoYou forgot BSD… oh wait I guess they’re also user hostile because they dare to ship without GNU grep
- mixmastamyk 5y agoYou can’t stop dozens of chatty network services, due to a read only system partition. Without defeating other security that is. That’s a poor design.
- gjsman-1000 5y agoUmm... yes, you can. You can use Little Snitch just fine.
- mixmastamyk 5y agoThat’s a band aid, rather than the proper solution of not having them on by default.
- smoldesu 5y agoPoor design is leveraging a security model on an arbitrary and centralized root of trust, but maybe it's just a matter of perspective.
- sidlls 5y agoI develop backend (services and other infra-y things) and ML systems on a MacBook Pro. I use awk, grep, find, cut, sort, etc. frequently (awk and grep daily). They work fine. And I really enjoy developing on my laptop. I was forever the biggest anti-Apple, anti-M$, pro Linux “fanboy” you could imagine until a year ago or so. So it’s quite new to me really.
- pkulak 5y agoA couple years ago I realized that if I had a good terminal environment, all I really needed was a terminal, browser, and IDE. So, by using Linux, I lose, I dunno, iPhoto and iCal and whatever, but I gain real Linux with a real Linux package manager and immediate access to the latest version of every tool I can imagine. Plus fun stuff like BTRFS, a tiling window manager, and a feeling that I'm actually in control of the system I spend 8 hours a day in front of.
- HaoZeke 5y ago+1000 for the tiling window manager comment! I can't stand the weird nightmare which is macos desktop management with spaces. iCal is a big draw though, Linux calendars are terrible and since thunderbird choked and left xul Mailmate is attractive too.
- VWWHFSfQ 5y agoLong time Linux user and also long time macos user. I've never had any problems getting "basic things done" on either platform. Except for Linux, which has inferior applications for most things.
- dreamer7 5y agoWould you call tethering your Android phone via USB to your laptop a basic thing? Recently, I was having trouble with my phone's WiFi hotspot and tried to tether via USB. The only solution was Horndis, a 3rd party kernel extension. I quickly became knowledgeable about kexts and csrutil, rebuilt a kernel extension for M1 architecture and gave up after several hours of frustration. It's ridiculous that Apple can get away with being so closed
- gjsman-1000 5y agoOr maybe it's ridiculous that Google leaves this "basic feature" to Horndis and doesn't make a nice way to do it themselves. Which is telling on how "basic" this feature is and how many people actually use it in the real world. I wouldn't call it a basic thing.
- VWWHFSfQ 5y agoyou can just use adb to forward a socks proxy through your phone. not sure why you would need a kext
- yjftsjthsd-h 5y agoIf a Linux user suggested that, they'd be laughed out of the room. "Yeah, just use this semi-obscure command line tool to forward a port, then set your system to proxy through it" is a technically workable solution, but poor UX.
- olyjohn 5y agoExactly! I keep seeing this shit about how you have to fuck around with all these config files in Linux... Then when you have to do the same trash for basic things in OSX, nobody blinks an eye.
- bovermyer 5y agoI use a Macbook Pro for development. I spend a fair amount of time in Linux servers. Running a Linux VM for local development of things that require Linux doesn't bother me. I don't have to fight my OS. It works with my brain. When I'm using awk and grep, it's in Linux, not macOS. Not judging you or your opinion here - just explaining that I'm as bewildered by your experience as you are by mine.
- smoldesu 5y ago>I don't have to fight my OS. It works with my brain. I think that's a mantra that applies a little better to Linux than it does MacOS. Linux is well known for it's customization, and you can really pad out your desktop to be an ergonomic and customized place designed for you. MacOS, on the other hand, is practically the definition of fighting your OS: you aren't allowed to have a proper package manager, Apple has to drip-feed you old coreutils through their notoriously slow XCode service, and now you aren't even allowed to use a VPN without Apple disabling it on some of their apps. I don't really see how a Mac elevates your workflow that much, especially when most of your praise seems to be towards GNU tools and your Linux machines.
- gjsman-1000 5y agoLinux users clearly have an echo chamber too.
- gjsman-1000 5y agoThe VPN thing has been fixed months ago.
- kergonath 5y agoLinux is more customisable, but macOS is much, much better out of the box. I use both every day for about the same amount of time, and macOS requires much less fighting to get the basics right (i.e. networking and Bluetooth just works, no need to tinker with X or Wayland, printing is much less problematic, OS updates are non-events, etc). I am happy to use Linux at work, but I would never put it on my main computer at home. It’s just too much trouble. > you aren't allowed to have a proper package manager I don’t know why you say that there is no package manager. This is demonstrably false. It’s just a different update mechanism than the core OS, which hasn’t been a problem for about a decade. > Apple has to drip-feed you old coreutils through their notoriously slow XCode service The old coreutils are the result of GPLv3. Latest versions are one command away with your package manager of choice. > now you aren't even allowed to use a VPN without Apple disabling it on some of their apps If you’re alluding to the Little Snitch thing, it had nothing to do with VPNs, and has been fixed AFAIK. Honestly, your points sound like third-hand complaints you’ve heard in an echo chamber. It’s fine if you don’t want to use the OS, but then you don’t need to comment either.
- gjsman-1000 5y ago"I Just recently I learned you can't add more swap ( creating a swap file and adding it ). That seems incredible to me." At what point are you just approaching MacOS with the wrong mindset? MacOS isn't something you should or need to manage swap for or should really think about. It's the same reason you don't think about managing swap on Windows or your iPhone or your Android or your Smart TV.
- jcelerier 5y ago> It's the same reason you don't think about managing swap on Windows not managing swap on windows means being condmned to slowness
- OJFord 5y ago> you don't think about managing swap on Windows I haven't really been a Windows user since Win7, but as I remember it 'increase page file size' was right up there with 'clean the registry' and 'try turning it off and on again'.
- Naac 5y ago> MacOS isn't something you should or need to manage swap for I would 100% agree with you with regards to most macOS users. But as a software dev of course this is something you might have to do every once in a while. The fact that you can't doesn't seem to align with the fact that macOS is the operating system of choice for software devs.
- mikestew 5y agoBut as a software dev of course this is something you might have to do every once in a while. In about twelve years of a variety of software development on Mac, from embedded to iOS/Mac apps to web, it has never even once occurred to me to do that. Considering that the OS will fill the disk with swap if need be, I'm trying to think of a reason to even want to do this.
- Toutouxc 5y agoAFAIK macOS will use the whole drive for swap (or at least an awfully large number of gigabytes, correct me if I'm wrong), why would you want to add more?
- smoldesu 5y agoI'm also pretty baffled. I fell for the M1 Macbook Air, and now that I have it... I still reach for my Thinkpad 90% of the time. Maybe it's just because we're in a pandemic, but the battery life didn't really wow me, and the performance was a little underwhelming compared to the Ryzen APUs I had seen on laptops half that price a mere 12 months ago. And that's just the hardware side of things! Not only are your coreutils horribly outdated, but getting a complete set of development tools on MacOS is a nightmare. Unless you install the 65 gigabyte monster (!!!) that XCode is, you're getting a gimped toolset, and Apple is kind enough to offer the end user absolutely no modularity in that install. MacOS still doesn't have a good package manager (though Brew and Macports are fine), it still doesn't have support for any industry-standard graphics APIs (sorry, Metal is still a joke), and your "end-to-end" encryption still sends your keys to Apple and third parties. Seeing a developer use a Macbook used to be a symbol of pedigree back when OSX debuted, since it offered a pretty unparalleled Unix desktop experience. Nowadays though, MacOS has become such a bloated beast that its hardly worth using in my opinion. Big Sur feels like Apple's take on Windows 7, and I can only imagine that they will make the same mistakes that Microsoft did in their hubris with Windows 8.
- gjsman-1000 5y agoSo much of this is incorrect. You can prefer the ThinkPad, that's fine! But you've got several incorrect statements. "Unless you install the 65 gigabyte monster" - It's 9GB. With caches and Simulator, maybe another 9GB. 1/3 of 65 GB. "sorry, Metal is still a joke" - It's different, but developers who have to write shaders in Metal actually have pretty good reviews of it. They admit it isn't as convenient as having native Vulkan or OpenGL, but Metal has it's charm as a language. "your "end-to-end" encryption still sends your keys to Apple and third parties." - INCORRECT. It sends your data over an encrypted connection to iCloud without any end-to-end encryption, but if you disable iCloud Backup, your data is completely end-to-end encrypted. This is very different than sending your E2E keys to Apple. "bloated beast that its hardly worth using in my opinion" - The same could be said for Windows 10, eh?
- smoldesu 5y agoSorry, I was referring to an older setup I had where I kept multiple copies of Xcode for project testing. Either way, 20 gigabytes is still way too large for a program running on a laptop that starts at 256 gigs of storage (220 after the worlds largest operating system gets comfortably situated). As for Metal, I think my statement still stands. I can't think of a single developer who would prefer to write shaders in a language that is slower than Vulkan and more complicated than OpenGL. Charm be damned, it's an asinine practice, and Apple should just default to an open standard like Vulkan, which would likely be a win-win situation for all of their users. I don't care about Metal and it's existence as an API is what makes developers around the world lament cross platform development. I'm not really sure what point you're trying to make with the encryption bit, but it's a well known (and demonstrated) fact that Apple has the ability to unlock and access your iCloud data without your permission or credentials. They've done it several times, and have even used it to wiretap high-profile targets before (like poor Rudy Giuliani, or our friends over at SciHub!) >The same could be said for Windows 10, eh? Almost, though MacOS is technically the "larger" operating system: the disk image is more than twice as large as Windows, and it occupies about 50% more space on a fresh install. Both operating systems are pretty terrible choices though, and I should hope that incoming CS grads care enough about their freedom and privacy not to hand it all over to a centralized company that is ultimately beholden to a board of shareholders.
- Toutouxc 5y agoOh I'm not fighting my OS to get basic things done, also I can't remember the last time I used awk. I use grep often, but I'm okay with whatever version I have (apparently it's BSD grep 2.5.1).
- kergonath 5y ago> This might be a controversial opinion, but I find developers flocking to macOS really bewildering. You’re entitled to your opinion, but it is a good platform to work on. A real UNIX underneath, with a great GUI on top. Most things that run on Linux a recompile away from working natively, and still native versions of Office and such. > This Lima thing It is a VM to run Linux. How is that a demonstration that the OS is hostile? > docker running in a virtual machine This hasn’t much to do with the OS. OTOH if you want Linux containers, then I don’t see how you can avoid using a VM somewhere. > Apple being actively hostile with the default coreutils requiring you to layer multiple third party tools just to get a modern version of awk and grep. The versions of the GNU tools are ancient because they are pre-GPLv3. The BSD tools are more up to date. In any case, you can just do what you’d do on Linux and use a package manager. > I Just recently I learned you can't add more swap ( creating a swap file and adding it ). That seems incredible to me. What is the use case for this? The OS just adds some swap by himself, no need to mess around
- ravenstine 5y agoHere's why I moved away from Linux to macOS: - I'm sorry, but no Linux DE I've ever used beats macOS in terms of stability. The file explorers are also a joke and frequently changing. - I've never booted to a black screen when upgrading macOS. - 99% of the work I do never needs anything that has to be virtualized under macOS. - Macbooks are solid laptops. Every other laptop I've owned hasn't stood the test of time as well as my Mac. - More [actually good] software supports macOS. It's just a fact. - macOS is fundamentally the same as it was 10 years ago, just with some relatively minor changes to the design. I'm pretty confident they're not going to move the dock to the top and force a new window toolkit on me that most existing software can't use. - macOS has hardware that I know it will work with. Finding compatible hardware for Linux can be frustrating and not as complete as is claimed. - Windows and macOS solved vsync issues long ago. Somehow, even with Wayland, you can still experience horizontal tearing if you have the wrong monitor or graphics card. --- All the customization doesn't offset the trouble that desktop Linux can bring.
- vvanpo 5y agoThere are many ways macOS improves over Linux desktops, but file explorers is not one of the arguments I would have made. Finder is practically unusable.
- Toutouxc 5y agoHonest question, what's wrong with Finder? I use ForkLift for the heavy lifting (lol), but it works just fine for "navigate to file, open/move/delete file, sort by size/date, tag files, find files".
- hyakosm 5y ago- It's slow - Middle-click don't open the folder in a new tab - It doesn't natively handle SFTP mounting - The visual fixed arrangement of icons can be weird
- smoldesu 5y agoFinder still can't handle SFTP connections. In 2021. I feel like I'm going insane, or I've missed some sort of critical update, but no, it's just sitting there.
- emptysongglass 5y agoI have two MacBooks now given to me by work. I loathe these things. The two finger scroll is awful. I'm constantly getting what feels like palm rejection mid-scroll. Everything is mouse driven, including split windows and if you want to use your mouse to split your windows it shifts the window and you over to a new virtual desktop. MacOS is constantly roosterblocking me from installing any apps not from the App Store. If I connect it to my little HDMI type-C dock that hooks me into my multi-monitor setup, then leave it to sleep it will begin making a chime saying it can't provide power to my peripherals. Docker is awful on it, (yes that's what ssh is for), devland in general is awful on it. It feels like I'm using an overwrought iOS interface. The trackpad is obnoxiously large. There's no reason for it to be so large. My XPS 13 Developer Edition's trackpad legitimately feels as good and leagues better as far as scrolling goes. There's also some huge performance issues if you upgrade Catalina to Big Sur and you use a model with hybrid graphics. Like out of the box, upgrade, bam issues.
- mypalmike 5y agoI definitely agree with the trackpad complaints. Pre-2016 MacBook trackpads were basically perfect. But the newer ones are truly junk. I'm holding onto my 2015 Air as long as possible, for this and other reasons related to the hardware.
- m463 5y agoI use macos for my desktop, but it has gradually become a terminal emulator + firefox + mail. and for mail, I won't move to catalina mail because they nerfed it. Eventually this will all be linux. I just have to make the time to figure out a good desktop setup. EDIT: actually preview (space bar in finder) on macos is quite useful.
- globular-toast 5y agoThat's pretty much what I use these days. Plus emacs. I run a minimal gentoo setup and hate using other computers as they are always sluggish despite having newer and more powerful hardware. You should look into a tiling window manager. It's really liberating to stop worrying about wm behaviour.
- m463 5y agoand emacs (yes)
- guidoism 5y agoIt’s just a trade-off. Which part of the OS do you hate fighting the least. Given that by the early 2000s you couldn’t really get away with a text-only terminal as your dev machine and years of fighting with XF86Config and some other bullshit I left it for MacOS using Emacs tramp-mode on the Linux box for development. I’m still waiting for the “year of desktop Linux” to arrive.
- TheAceOfHearts 5y agoI don't feel that I have to fight the operating system at all. In order to get the package manager and a modern version of coreutils you have to run three commands: $ sudo xcode-select --install $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" $ brew install coreutils The upside is getting a system where most of what I need works out of the box with fairly sensible defaults. The viability of macOS probably depends heavily on the kind of work you're doing.
- nathancahill 5y agoI can't tell if you're being sarcastic, and I say this as a Mac fan, but your 3 commands are: - Install a whole IDE, so you can... - Install an unofficial package managar, so you can... - Install coreutils
- Ducki 5y ago"sudo xcode-select --install" doesn't install the whole IDE, just some cli tools.
- xodice 5y ago'xcode-select --install' literally just installs the developer command line utilities, not an IDE. Xcode, the IDE, is a separate download on the App Store.
- kalleboo 5y ago> an unofficial package manager I thought the reason everyone loved Linux was because you could mix and match components and choose what fits for you. But suddenly "an unofficial package manager" is out of bounds?
- metalforever 5y agoIt’s because web design software does not work in Linux and a lot of developers are expected to be full stack. Sometimes the software packages don’t work well in windows
- notsureaboutpg 5y agoI also don't understand it at all. The tooling is worse. The CLI tools are worse. The underlying OS is slightly different than your likely development target which causes issues. In addition the machine is not able to have its components updated easily (compare to a Thinkpad where RAM, hard drive, battery, etc. can be easily replaced) There's less customizability, and it just seems less full of the magic that drove me to be a developer in the first place. The place I work at now mandates Macbooks for all developers, and I have gotten used to it, but I'll never love it
- bostonsre 5y agoI kind of think similarly on the subject. They make some beautiful hardware, but I've never been able to get comfortable on macos. I love linux, but that also has some drawbacks when running that as your desktop or laptop. I have been really liking WSL on windows 10. I don't need to worry about installing stuff on windows, but having linux as my shell has been pretty great. I wouldn't call it just a better integrated VM, it's almost like having a chimera of an OS that is both linux and windows. e.g. I have this in my .bashrc in my centos container. It runs the windows powershell executeable to write to my windows clipboard. Not sure how they're doing it but, seems pretty magical. function cb () { powershell.exe -command "\$input | set-clipboard" } echo "hello" | cb # hello written to windows clipboard All that being said, I'd be really interested in how well this project integrates the container on macs. Maybe this will be a good option for the future.
- vereis 5y agoI found the start up time for powershell to be quite noticeable in WSL for scripts like that. If copying is all you're after you can invoke `clip.exe` instead. Honestly though I just caved and ended up using an xserver with WSL for really smooth copy and paste support. Paste requires a powershell invocation without an xserver. Definitely recommending X410 (paid) or VcrXsrv (free) -- let's you launch x11 apps too! Once WSLu is released everything will be even more seamless though.
- bostonsre 5y agoWhat latency do you get? Haven't checked, but would guess I see ~100ms. I've been using centos 7 with bash.
- samatman 5y agoJust to address one part in detail, what "layer multiple third party tools" means in practice is: install brew, install gnu-utils, and add the relevant directory to $PATH. It's fire and forget. I'm quite confident you can do it with ports, or even nix if you really want to. I know it's subjective, but it doesn't feel like Apple is being "actively hostile" here. It's just configuring your system to be different from the default. I don't even remember the steps in detail (like what does brew call the gnu utils?) because I did it, once, four years and three laptops ago. I actually did it seven years ago as well, but that laptop was stolen. Edit: also, I didn't "flock to" OS X, I eagerly bought a G5 as soon as I could afford it, in 2003. I learned Unix on workstations (Sparcs mostly) and my Yggdrasil Linux partition was always a poor substitute in comparison. So when Apple started selling workstations? and they were Macs? Yes please!
- f6v 5y ago> As a developer, why do you want to fight your operating system to get basic things done? I've been using Macs for development since 2013. I've done Android, Ruby on Rails, React, data science with Python and R. Apart from Docker, I don't remember "fighting" the system.
- sethhochberg 5y agoSame story as you. Nearly a decade of professional software development, most of it on company-supplied Apple hardware. I spent... maybe a week or two getting used to macOS with my first laptop after coming from linux and Windows, and don't really recall fighting much in the decade since. I used to be a heavy desktop linux user, and can kind of empathize with the idea of being frustrated with less control. But at the same time... I feel like if you're legitimately fighting with an operating system, you're just picking a fight because you're unwilling to adjust your workflow even the smallest amount. If I had to use a Windows laptop for work tomorrow, I'd probably spend a couple of weeks annoyed about relearning it, and then I'd be fine again (though I'd miss unlocking with my Apple Watch and having iMessage). Life is too short to get worked up over stuff like this. Sometimes I'm frustrated by AWS and miss being able to SSH into bare metal. Sometimes I'm also annoyed by payroll software. Confluence's text editor has a habit of freezing input if it thinks I'm offline. No tools are perfect. Imperfect tools still let you earn a living, and you can even do it without fighting holy wars in internet comments. There have got to be dozens of us around here who are competent technologists without the zealousness.
- domano 5y ago"As a developer, why do you want to fight your operating system to get basic things done" After 10 years of linux it took me 1 month with a macbook to decide that i just dont have the time to keep my linux running the way i want to, play the hardware lottery and fear every major update (or every update after a vacation with arch).
- monocasa 5y agoI mean, I just don't understand the fascination with rolling update models for the core os. I've got other things to worry about than playing with config files, so I just install a new LTS distro every couple years or so and amortize the pain to less than the yearly macos updates.
- moshmosh 5y agoI, too, dislike rolling updates for my workstation OS. I don't like using anything OS- or package-manager-provided on my dev workstation for per-project development dependencies, since usually it's much less painful (sooner or later) to manage those with a special tool for that purpose, or to vendor them, or to pick some OS that you might not like for your workstation as your deployment target (Alpine, say, or a very vanilla stable Debian) and just use scriptedly-reproduceable VM or docker or whatever. I do like rolling updates for my actual tools and programs that I, personally, use. Editors (code or otherwise—image, video, audio, document, whatever), multimedia programs, browsers, quality-of-life improvement tools, command-line tools that aren't build dependencies, that kind of thing. If I hit a bug, then see that it's fixed in the latest release, I want there to be a very good chance I can just update my packages and get the fix, no further effort required. Or at worst wait a day or two for the package to be updated, and get it that way. If I read that a tool has some functionality, and install it specifically for that functionality, I don't want to lose time wondering why the hell I don't see it in the program, only to realize that it's because Ubuntu's packages serve a version that dates to before that feature was added (real thing that's happened to me on Linux). That's where LTS Linux distros end up being a bad fit for me, because I want most of the stuff I actually use to be newer than what's in the repos. macOS with Brew is about as close to perfect (for me) as I've seen. Slow-paced and relatively-reliable major OS updates, but my tools and programs stay up-to-date, and I can install damn near anything though the package manager (the closest I've seen to being as good as Brew as far as likelihood of my asking it to install something without checking that it has it first, and that actually working nearly every time, including for closed-source software, is Gentoo's Portage). I wouldn't prefer to install a project-dependency (say, PostgreSQL) through my workstation package manager anyway, so I don't care that it's rolling, since if I need something pinned I'll be fetching it some other way. Given how fragmented Linux's GUI desktop is, and the way so much of it blurs the line between system- and user-packages, I think it'd be very challenging for a Linux distro to deliver as clean an experience, if that's the workflow you prefer (as, I've discovered, I do).
- asdff 5y ago>Apple being actively hostile with the default coreutils requiring you to layer multiple third party tools just to get a modern version of awk and grep This is a pretty trivial complaint. It's three lines pasted into the shell available on like a hundred blogs on the internet to update your coreutils. If you are at the point where you need a modern awk or grep and you absolutely cannot do with what is installed already, I would be shocked if you didn't already know about brew and have them installed.
- MR4D 5y agoBecause the touchpad works. And my dev is in the cloud (mostly).
- jpgvm 5y agoFor me I stopped fighting the OS by abstracting the OS away from my work. The JVM is my target and it "runs everywhere" essentially. Then I chose macOS over Linux or Windows because I like the way it looks, iTerm is good, brew is "good enough", my IDE (IntelliJ) runs nicely and looks good with nice crisp fonts on big 4k display. I do Docker things but only because others write code in JS, generally I use tools like Google's Jib that allow me to build and push containers without needing Docker locally. Docker does nothing for JVM apps, we have jars/wars/nars for distribution and already get that "runs the same everywhere" for free without all the nonsense that comes with languages that depend on system libraries and architecture specific code like Node/Python/Ruby/Go. Build with Jib, push to registry, run with k8s, enjoy life without Dockerfiles. You can do similar with Bazel too but I imagine it would be harder if you need to cross-compile from Darwin to Linux, etc so probably only works this well with JVM.
- soheil 5y agoNot sure what alternative you might have in mind, but none comes close to macOS if you want a half descent desktop experience based on unix. Ubuntu Desktop is an utterly terrible user experience, people who advocate for it generally still believe for example the mouse should have never been invented and those lesser people who find it useful should be happy with Ubuntu Desktop. Windows is also a no go, if you think Apple is hostile wait until you're presented with Internet Explorer or a slew of administrative layers meant to control you on a Windows box.
- DCKing 5y ago> As a developer, why do you want to fight your operating system to get basic things done? This kind of thing easily goes both ways, and shows you're considering things only from a narrow angle. Which is understandable by the way - but please do consider other views :) There are lots of "basic things" that Linux doesn't get done, depending on your definition of basic thing. It's entirely reasonable for developers to consider things like "accurate and versatile trackpad movement" [1], "renders things consistently on HiDPI screens", "natively runs mainstream image editing or word processing apps", "can stream Disney+ above 720p", "has font rendering at least on par with Windows Vista", "has a Little Snitch type application that's both usable and actively maintained" or "there's stronger accountability in the development of apps I use because it's not largely developed by volunteers or people who assume I should solve my own problems". All of these "basic" things are a fight on Linux, most are a fight you can't even win, and this isn't even a comprehensive list. A lot of these have a good explanation as to why they're a fight, but you can't blame people for wanting to avoid that fight. I too run desktop Linux on machines because it offers a lot of flexibility while tinkering with things and a greater sense of control. But failing to see why Linux is not the objective pinnacle of desktop computing - even objective pinnacle of desktop computing for developers - is just really for a lack of trying. Desktop Linux is really awesome but damn it does it still have long ways to go. [1]: Up until recently, and maybe up until this day, the best trackpad experience on Linux is running desktop Linux in a VM on a macOS host.
- bscphil 5y ago> "accurate and versatile trackpad movement" I think you should leave this one out, because it's at best subjective. I've had a much better experience with trackpads on Linux than I have had on any Mac I've used, thanks to the synaptics driver. Far more customizable as well. Additionally, until pretty recently you'd be stuck with the nasty hinge-based touch pad on Mac laptops which required quite a bit of force to push, and tap-to-click was very much an afterthought.
- read_if_gay_ 5y ago> Additionally, until pretty recently you'd be stuck with the nasty hinge-based touch pad on Mac laptops I don’t remember that being the case for at least half a decade, while my 2019 Thinkpad still has such an awful trackpad. I would agree that trackpads are good enough on Linux, but not great like on a MacBook. Things like gesture support are unquestionably better on macOS.
- Ericson2314 5y agoYes, I am the same way. As soon as you leave some tiny sandbox whose borders I can't even make out, development on macOS is absolute hell and the world breaks every new version. I guess macos devs just know how to confine themselves better to the sandbox than me (don't use other shell, don't use postgresql, only do web/jvm/interpretted language programing, never ever need a C library that isn't installed?) NixOS doesn't make the things linux is bad at better, but it sure makes the things linux is better at better, so the difference between linux and macOS for me is especially stark.
- eschaton 5y agoWhy do you assume running a bunch or GNU utilities and Linux chroots (“containers”) is something developers need generally? Only developers working on specific things and working in pretty specific ways will need that. Maybe that’s a lot of the folks here on Hacker News, but it’s not, say, the millions of people doing iOS development.
- latexr 5y ago> I find developers flocking to macOS really bewildering. As a developer, why do you want to fight your operating system to get basic things done? Why is it hard to grasp that different people have different needs and experiences? Maybe you would have to fight macOS. Others have to fight Linux, or Windows, or Android, or iOS. There’s a reason not everyone is on the same platforms. Developers, like scotsmen[1], aren’t an amorphous group. [1]: https://en.wikipedia.org/wiki/No_true_Scotsman https://en.wikipedia.org/wiki/No_true_Scotsman
- fnord77 5y agofor me, I travel a lot. Have you seen the size of workstation-class laptops? Just the powerbrick on the top-end lenovo is almost the size of a shoebox. And even the upgrade screens don't hold a candle to macbook screens. So I will put up with Macos interop quirks with docker and so on for the great screen and ease of carrying.
- toastal 5y agoYou're kidding right? There's a decent number of thin & light laptops with HiDPI and 100% DCI-P3 coverage screens offered by OEMs. Some offer 16:10 and 3:2 ratios too. The only downside is all of these high-end models will be Intel quad-core (even if Tiger Lake has been pretty good compared to previous Intel generations)
- michaelmrose 5y ago> shoebox it's closer to the size of a cellphone https://www.amazon.com/Charger-Compatible-Lenovo-ThinkPad-Adapter/dp/B07BXVTX7M https://www.amazon.com/Charger-Compatible-Lenovo-ThinkPad-Ad...
- da39a3ee 5y ago> I find developers flocking to macOS really bewildering. As a developer, why do you want to fight your operating system to get basic things done? Haha! (I assume that was sarcasm. If not, you might want to look at the voluminous writings of humans who have had trouble getting standard modern laptop functionality working on linux, suspend to disk, battery life, hi res screens etc etc. Not you -- I mean mere mortals who don't want to change their OS's swap configuration)
- soraminazuki 5y ago> Apple being actively hostile with the default coreutils requiring you to layer multiple third party tools just to get a modern version of awk and grep This makes no sense. Apple's Unix CLI tools are largely derived from FreeBSD, not GNU coreutils. I've seen no evidence that Apple is actively holding those back. That you prefer the GNU version is an entirely different matter from Apple not shipping "a modern version." Frankly I'd prefer the GNU version too, but still.
- pjmlp 5y agoPlenty of us don't really have any need for Docker other than stuffing CV, and not every developer on whatever platform is doing UNIX stuff. Thankfully the world of development is much more richer than that.
- hutrdvnj 5y agoIsn't WSL2 at its core also just a better integrated linux virtual machine?