13 ms·
From the perspective of a consumer, my MacBook Pro is basically the perfect laptop, at least in theory. I love the battery life and performance of the hardware
by apatheticonion 4y ago
From the perspective of a consumer, my MacBook Pro is basically the perfect laptop, at least in theory.
I love the battery life and performance of the hardware, not to mention the unrivaled build quality of the MacBook (screen, trackpad, keyboard).
In practice, however, MacOS limits the capabilities of the hardware such that I cannot daily drive my MacBook Pro as a work or personal computer (poor containerization support, an annoying development toolchain, and no _real_ support for video games).
When Asahi Linux is mainlined, stable and features full hardware acceleration - the MacBook running Linux will likely be the best laptop money could buy. Until then, please AMD, Intel, release some mobile hardware that's at least as good. It sucks so bad seeing what is possible with today's technology but that being exclusive to a company unsuccessfully determined to ring fence you into their API ecosystem.
- kanbara 4y agoi've used a mac for development for various projects which have been globally impactful for over a decade. it's literally unix, man. docker on mac can be improved, but if i'm developing for other architectures it's much easier to just test natively. toolchain for all the languages i use is exactly the same as any other *nix. gaming i'll give you a point, but that's why i have windows dual boot at home. /shrug
- unxdfa 4y agoIt’s Unix but it’s not Linux. When Linux is your target it makes sense to use it on your development stack entirely. The irony being that Microsoft seem to make the best Linux OS for development for my use cases of docker / server side / cloud operations. And it runs Office better than Linux or Mac.
- jb1991 4y ago> The irony being that Microsoft seem to make the best Linux OS for development WSL?
- unxdfa 4y agoYes WSL2
- bharathyes 4y agowhile WSL2 is great for what it is it just doesn't compare to working in a linux distro. there are a lot of pain points where external tools wont always work well with WSL. I also like the productivity customizations posseble in Linux while the same are difficult or impossible on Windows. of course if your work is tied into the windows eco system having WSL is good to have.
- unxdfa 4y agoCompletely agree. For me it’s a trade off. I’d rather use Linux on the desktop myself but it doesn’t work for me or the business I work for.
- jb1991 4y agoThat's interesting to hear. I've not used Windows in over a decade (I primarily work on mac) but I've heard that WSL was quite compromising and not a great experience for people who primarily use Linux tools.
- weeeeelp 4y agobash (and other shells), coreutils, pipes, git, text/cli utilities etc. work just fine on WSL, I'd call them Linux tools. My in-shell workflow consists of using mainly those + VSCode (with the WSL plugin) + ssh'ing somewhere now and then, and it's entirely sufficient for this purpose. I haven't tried running typical webserver/db services on it though.
- unxdfa 4y agoI’ve run 120 containers in native docker on it and it worked fine :)
- 4y ago
- sufehmi 4y ago"And it runs Office better than Linux or Mac" Yup, been doing that for decades. It's called "vendor lock-in". And its unethicality has been discussed comprehensively for decades as well. And when countries tried to move into an open document format - they'll bully the country, using the strong arm of the Uncle Sam, until they're back to MS Office again. So when people are amazed by Bill Gates' charities - I don't. His money comes from the sufferings of countries.
- unxdfa 4y agoI understand that corporations are bastards and built on foundations of the crushed skulls of children and involuntary human sacrifice but Office on the Mac is not a bad product and is improving. But the windows version has just been around longer and had more work done on it. And don’t get me started on LibreOffice - it’s buggy as hell. Even more than Office on a bad day I’ve met Bill. He wouldn’t be out of place among HN’s defective half: the dubious pro SaaS VC funded US university alumni…
- sufehmi 4y agoI wasn't talking about the product - I was talking about MS using the product to lock the whole world into its own =proprietary= format (so no one could reliably open & process it - and then others got blamed for it, not Microsoft), AND then aggressively attack those who try to escape from its lock, even countries.
- unxdfa 4y agoAll the protocols and standards are documented here https://learn.microsoft.com/en-us/openspecs/main/ms-openspeclp/3589baea-5b22-48f2-9d43-f5bea4960ddb https://learn.microsoft.com/en-us/openspecs/main/ms-openspec...
- sufehmi 4y ago"it's literally unix, man" Yup, it's NOT Linux. Been using MacOSX since Powerbook up to first gen Macbook - and I finally gave up: I installed Linux on it instead. Pretty much all servers are running Linux even back then. Using Unix on work computer/laptop causes way too many encounters with various quirks and glitches. It continuously drags down your productivity too many times everyday. After much stress, I installed Linux on my Macbook instead - but then I encountered various hardware-related glitches instead. So I finally gave up, and bought a Thinkpad.
- howinteresting 4y agoMac being a certified Unix just means that Unix certification is meaningless, bought and paid for drivel. OS X was a certified Unix before it had atomic renames!
- rfoo 4y ago> poor containerization support, an annoying development toolchain Just run an always-on (headless!) Linux VM in the background, and don't use the host macOS for anything besides desktop apps (Slack, VSCode, Browser, mpv, terminal emulator but always ssh into the VM, etc). The same way you deal with a Windows machine. This works good enough unless you work on hypervisors or other bare metal only tech. But hey, that's currently non-existing on M1 Macbooks (or undocumented and locked to Apple ecosystem) anyways. > and no _real_ support for video games That's the real deal breaker if you are into gaming.
- teekert 4y agoThe Windows machine (X86) has WSL2 though, which seamlessly integrates with VSCode. Add Windows Terminal and for me it made Windows the better dev platform. I still prefer Linux though. Sometimes working local is just the easiest/fastest most convenient.
- rewgs 4y ago> Just run an always-on (headless!) Linux VM in the background, and don't use the host macOS for anything besides desktop apps (Slack, VSCode, Browser, mpv, terminal emulator but always ssh into the VM, etc). This is what I do. Specifically, I use Canonical's Multipass, and treat tmux as my "window manager," -- I even mapped my iTerm profile's Command+[key] to the hex code for tmux-prefix+[key], so that Command essentially feels like the Super key in, say, i3. For example, rather than having to type Control+p h, Command+h selects the pane to the left. The Multipass VM is flawless. Closing the laptop doesn't shut it down, and with the tmux resurrect plugin, sessions persist between Mac restarts (which are rare). If I didn't know better, I'd think it was just a native terminal session. If I need proper x86_64, I just ssh into my super beefy Linux NAS at home via Tailscale. Both Linux machines are identical in terms of dotfiles/etc, so it feels exactly the same. I've truly never been happier with Linux. I no longer obsess over my window manager (which used to be a serious time sink for me), and I still get what is IMO the best desktop experience via my Mac. The only tinkering I do is checking out the occasional new neovim plugin, but I really enjoy doing that, as it has a tangible benefit to my dev workflow, and kind of feels like gardening, in a way -- I like the slow but persistent act of improving and culling my environment. I still have a PC, but I actually recently uninstalled WSL2. It never felt truly finished or "right", and Windows Terminal can be incredibly sluggish -- keystrokes have far more latency than iTerm. I've actually started to embrace just letting "Windows be Windows," even learning Powershell (and enjoying it more than I'd expected). I've also pretty much moved from gaming on a PC to PS5. So, for me personally, I don't really see a place for Windows anymore. Every single time I boot into my PC, something is wrong -- most recently, it literally won't shutdown unless I execute `shutdown /s`, and no amount of troubleshooting has been able to fix it. I know Windows like the back of my hand, and still it's a constant feeling of death by a thousand cuts.
- unxdfa 4y agoIn the same situation. I’ve unfortunately realised that “worse is better” applies to hardware too if it supports the software you need.
- vasco 4y agoMillions of people use macs for work successfully.
- bayindirh 4y agoFrom my experience developing C++ on it, as long as you don't use anything exotic, everything is portable (i.e. just recompile). On the other hand, for the missing apps and other stuff, I'm running a Linux VM via VMWare Fusion Pro. It works efficiently, and interoperability is good. Just add another internal network card to the VM, and keep an always on SSH/SFTP connection. Then everything works seamlessly. Never had any problems for 7 or so years when developing that application and writing my Ph.D. in the process.
- sufehmi 4y agoBeen there done that since the era of Powerbooks - and it always causes my laptop's battery to deplete much faster. Because I'm using my laptop to, well, work on the go a lot; this is a showstopper.
- bayindirh 4y agoFrom my experience, the newest VMWare versions and Linux kernels are very good at conserving power when the VM is mostly idle. I'm doing on that my 2014MBP, and it didn't cut the endurance to half, but need to re-test it for exact numbers. However, it doesn't appear in "power hungry applications" list unless you continuously compile something or run some service at 100% CPU load. Also, you can limit the resources it can use if you want to further limit it down.
- sufehmi 4y agoThat's so good to hear. Very well done to everyone involved.
- dagw 4y agoFrom my experience developing C++ on it, 99+% of everything is portable, but the ~1% that isn't, causes a disproportionate amount of annoyances and extra work. We still have a program that we have to run in an x86 docker container (with all the problems that brings), just to get it to work on our M1 Macs. The being said, the M1 Pro is a more than good enough piece of hardware that I'm willing to put up with this.
- duckmysick 4y ago> no _real_ support for video games Would Wine (Proton) work out of the box on M1 Linux? My knowledge of Wine is limited. Based on the How Wine works 101 article [1]: > The code inside the executables is “portable” between Windows and Linux (assuming the same CPU architecture). because the CPU architecture is different, Wine would need changes to support it too - just like x32 and x64. Is that correct? 1 - https://werat.dev/blog/how-wine-works-101/ https://werat.dev/blog/how-wine-works-101/
- oblio 4y agoIt's not impossible but it is extremely hard to do in an efficient way.
- scns 4y agoIt will be possible in the near future. https://www.phoronix.com/news/Hangover-0.8.1-Released https://www.phoronix.com/news/Hangover-0.8.1-Released
- gorbypark 4y agoApple has released Rosetta for linux. I believe the use case is running x86 binaries inside of an Arm virtual machine on Apple Silicon, instead of emulating an entire x86 CPU and running the entire OS as x86. Apparently it works pretty good and some people have even used it on non-Apple arm chips. Anyways, I wonder if it could be used in combination with something like Proton to emulate x86 on linux.
- inasio 4y agoI tried a few apple watches, and almost got used to the routine of daily charging, but other annoyances made me try others. Eventually I settled for a Garmin smartwatch and the difference that having to charge once every 10-15 days is huge (you give up a few features, but surprisingly little, at least for my use case). I hope this new emphasis on energy efficiency enables this on laptops (and cellphones)
- datadeft 4y ago> poor containerization support I use UTM and Docker on a daily basis and it is extremely smooth. What exactly is missing? > an annoying development toolchain What are you talking about exactly? For example most Python and Rust builds just work out of the box. > no _real_ support for video games https://docs.unity3d.com/Manual/Metal.html https://docs.unity3d.com/Manual/Metal.html These claims look like a bit of an exaggeration.
- moondev 4y agonested virtualization is missing on m1/m2 on both MacOS and Asahi - it's unclear if this is a hardware or software limitation.
- transpute 4y agoAsahi said it's present in M2 hardware, will likely be supported in future MacOS. https://social.treehouse.systems/@marcan/109838053800961073 https://social.treehouse.systems/@marcan/109838053800961073 Asahi Linux is introducing support for some brand new Apple Silicon features faster than macOS.. M1 has a virtual GIC interrupt controller for enhanced virtualization performance. Linux supports it, macOS does not.. M2 introduced Nested Virtualization support. The patches for supporting that on Linux are in review; macOS still doesn't support it.
- moondev 4y agoThanks for link, that is very exciting if it works as expected. Curious what will enable this in M2 vs M1. Looking at https://developer.arm.com/documentation/102142/0100/Nested-virtualization https://developer.arm.com/documentation/102142/0100/Nested-v... it appears to indicate nested virtualization is in Armv8.3-A and both M1 and M2 are ARMv8.5-A according to https://en.wikipedia.org/wiki/Apple_M1 https://en.wikipedia.org/wiki/Apple_M1 and https://en.wikipedia.org/wiki/Apple_M2 https://en.wikipedia.org/wiki/Apple_M2 Will be interesting to see what other arm cpus gain this with the Linux patches. Have you used (non-nested) virtualization at all on Asahi? If so what is your experience with performance and overall thoughts so far?
- addandsubtract 4y agoMy biggest complaint is that I have a "16-core Neural Engine" in my MacBook, but nothing that can be run on it. Sure, internal macOS tools such as the fingerprint reader or even webcam might use it, but not a single ML project on github makes use of it. I can be lucky if ML projects don't depend on CUDA to run.
- Tepix 4y agoHere's one project https://machinelearning.apple.com/research/stable-diffusion-coreml-apple-silicon https://machinelearning.apple.com/research/stable-diffusion-... https://huggingface.co/blog/diffusers-coreml https://huggingface.co/blog/diffusers-coreml Not surprisingly, they are quite a bit slower than those power-hungry nVidia GPUs.
- thecupisblue 4y agoHonestly, I think I'll sell my MacBook Pro and just buy a new one with less cores. Bought it expecting to be able to abuse it towards ML, but it's barely even supported.
- thereddaikon 4y agoMacOS has seemingly gotten worse over the years not better. Features removed. Interface has been changed for the worse. The drive to unify the desktop experience with iOS. I could go on.
- ibiza 4y ago> the unrivaled build quality of the MacBook (screen, trackpad, keyboard) Typing this on a ThinkPad X13, after years of MBPs, I beg to differ. The screen on the ThinkPad is better, even at a slightly lower resolution of 1920 x 1200. It's IPS like the Mac of course, but also Anti-Reflective (matte), which Apple hasn't offered since 2008? The ThinkPad has Left, Right, and Scroll mouse buttons, as well as a TrackPoint stick. Not so on the Mac. Finally, the keyboard. You're going to laud Apple for their quality keyboards, really? The ThinkPad has a nicer keyboard feel (subjective, I know), has actual Home, End, PageUp, PageDn, and Delete keys, two Ctrl keys, and praise Jesus, gaps between the function keys, so you can use them confidently w/o looking.