I wouldn't be so sure, there are a fair number of people who want a machine that will run x86 for various reasons. Windows support/ Linux support. Even considering how impressive x86 VMs looked in the demo, lots of people will prefer using intel silicon for guaranteed compatibility.
I could see the "final Intel Macs" having a value to folks; somewhat similar to the 2015 Macbook Pros which many considered the "last good Macbooks" before Apple fumbled things with the 2016-onward Macs and their gimpy keyboards.
In this case, I don't think the first ARM Macs will have undesirable hardware ala the first few years of Touchbar Macs, but there will be some straggler software whose ARM ports will be delayed or will never happen. For those who depend upon that software, the final Intel Macs will be invaluable.
> Yeah, the fact that they didn't show off Windows, but instead Debian of all things, was very telling.
I suspect developers running VMs with Linux on them is far more common than developers running Windows VMs. Likely by an order of magnitude. Web developers want Linux VMs, Windows developer have Windows laptops.
You'd be surprised. It was the only option for those writing native apps to have a platform that could legally run all of your tooling if you shipped Mac/Windows/Linux.
But given the amount of time they talked about how large a part native apps play into the transitions, an extremely strategically important segment for them.
Additionally, there's the Android/iOS crowd in the same boat, where emulation of non x86 in Android dev is pretty limited (but I can see that being rectified with the newer virtualization extensions).
I don't think there's a way to have a licensed Windows ARM copy right now on arbitrary hardware. I thought they only provided OEM versions on certified hardware.
The end goal isn't just using Windows for Windows sake, the reason people use Windows on mac hardware is to get access to apps that run on Windows. And most of those apps still run like garbage (if at all) on the ARM versions of Windows.
They showed Maya (x86 binary) running on their Chip. It has some ability to run intel binaries on Apple silicon through at least two options-emulation and something that sounds like “jit interpretations”-lack of a better word.
I think that is a slightly different use case, though. That demo was an x86 binary running on ARM MacOS via a translation layer. So if there is a MacOS x86 version of the app you want to run, that might be an option.
But I know a lot of people still run Windows because they want the Windows version of an app, either because it isn't available at all on Mac or just because the Windows version runs better (Excel was a classic example of this for a long time, might still be). In that case, I don't know if that same translation layer will have the same performance (if it can run at all outside of MacOS) when running an entirely different OS.
FWIW I remember running PowerPC binaries on Intel macs via Rosetta was pretty painless. They mentioned explicit support for linux/windows emulation so they know it’s an important use case.
I think this is called "transpiling" -- a version of compiling that's mainly translating from another architecture. And it didn't sound from their description like it was JIT -- it sounded like it would do the transpile when you first installed it (or maybe first ran it?) and keep the results.
Transpiling (as much as I hate that word, because the more you know about compilers, the more meaningless it is), is about source to source translations, not binary translation.
And they have a first pass AOT, with a JIT backup from the sounds of it to support JITs like browsers, node, and java.
I found the same problem when I tried running off Pi OS 64-bit for a day—almost every app that _did_ have a Linux binary available was only able to run under x86_64, not on arm64... More here: https://www.jeffgeerling.com/blog/2020/i-replaced-my-macbook...
Zoom, Bluejeans, Dropbox, pretty much all the popular apps I used where I could find a Linux version for my Dell laptop, I couldn't find a way (though got close at least, with Dropbox) to run them on an ARM64 CPU.
Have you tried box86? https://github.com/ptitSeb/box86 Let's you run x86 (not x86_64 though) programs on ARM Linux. It does a neat thing where system library calls are converted to ARM system library calls rather than using x86 ones for better performance.
For Dropbox, you could quite trivially get by getting an FTP account, mounting it locally with curlftpfs, and then using SVN or CVS on the mounted filesystem.
...and we need new, more hardware for CI/CD that's just dedicated for Apple OSes. Pretty sure we won't be able to use the 5 unused raspberry pi we have.
Like, a joke version of Windows, yes. As a developer, if my machine can't run Visual Studio then it's not interesting to me at all. I can see it being acceptable to people who work predominantly with tools that have an ARM binary though.
VSCodium works great on ARM64, I was testing it last week when I tried doing some dev work from a Raspberry Pi running the beta 64-bit OS: https://github.com/VSCodium/vscodium
Visual studio code has an arm build now [0]. I don't know what regular VS is written on but assuming it's .NET framework I assume a build will show up as the framework itself improves on ARM.
I known in 2010 the Visual Studio UI was rewritten in WPF/CSharp, I don't know which UI system they are using in 2019. It is documented in the wiki entry and a few blog posts MS made.
Unless the new ARM chips can handle VirtualBox well, I’ll pick up the last intel model. I have to work with old ASP apps in IE VMs side-by-side with stuff on my Mac every day.
I know, that’s why I run it in compatibility mode in a VM. Just because it’s dead, doesn’t mean there aren’t organizations that have built mission critical web apps that only work in IE and those of us who have the burden of dealing with them.
Dunno. The free Windows VMs I have saved can be reloaded in VirtualBox and used pretty much forever. They can’t run any serious software very well (on my old MacBook anyway), but I’m just using them to support some legacy web apps.
I am – right now even – but I agree it's become impractical.
This announcement is the final nail in the coffin I suppose. I hope some company will come out with great quality, well-designed, minimal laptops. That run Linux perfectly.
If it ran Linux perfectly, it could only do so if the manufacturer maintained its own Linux distribution. Laptop hardware and power management is just too complicated these days for anything else to work well.
If the PowerPC to Intel transition was any indication, they'll do just fine. Most consumers won't care, or will want to wait until Apple works out the kinks.
To put it a different way: the initial sales of the ARM-based chips won't be as strong as you think they might be, or as wide spread.
Having both Intel and ARM based systems in the market will even out the sales.
History is repeating itself, it's worth reviewing the previous transitions before making assumptions.
With the powerpc to x86 transition Apple was moving towards where everyone else already was. It was one less thing developers had to worry about when supporting Mac. With this migration it's the opposite, and MacOS is still a very small slice of the desktop/laptop market.
I remember Apple's m68k to PowerPC transition. Platform changes were a much bigger deal back then because it determined what kinds of apps you could run, but even so it went without a hitch. We lived with fat binaries for a while but otherwise it wasn't a big deal.
Apple's focus has always been the consumer market, and for most consumers, they're not likely to notice the platform change.
One might say, Apple gained a huge developer demographic when it moved to x64 from PowerPC, won't this matter to them? But most of those developers were creative types that don't work at the binary level anyway. If you're doing front-end web dev on VS Code and almost never fire up gcc/clang, your life isn't going to be impacted significantly.
Those whose lives were impacted (e.g. scientific computing folks who struggled to get certain Linux-specific software to compile on what was a BSD-ish platform) have probably moved off the Apple platform and on to Intel Linux years ago or at least they're likely to be running a Linux VM on their Macbook Pros. (homebrew doesn't really cut it)
Also unlike back in the day when most people were still running desktop apps, so much of what we do on a daily basis is on the browser nowadays. Calendar? Cloud-based. Email? Cloud-based. Word processor/spreadsheet/presentation? Cloud-based -- and Microsoft Office is being ported to ARM. We're living in much more platform-agnostic world than we were even 10 years ago.
I expect the x64 to ARM transition to be seamless to most people who are currently on the macOS platform.
A bunch of Python wheels might need to be recompiled though.
> I expect the x64 to ARM transition to be seamless to most people who are currently on the macOS platform.
I completely agree with you IF Apple contains this to just the Macbook market. If they push this to iMac Pro / Mac Pro, too, though? Or even Macbook Pro? That's a different story. For developers it probably won't matter much, but for users currently relying on things like Protools to make a living? There's a good chance this won't be a friendly transition to them in the short term.
The pro tools (like Pro Tools) are usually the tools that are being ported first. It was the same with all the other transitions.
If not, there will be Universal 2 binaries with both x64/Intel binaries for a while and an emulation mode for legacy binaries. Underoptimized at first? Maybe, but they work well enough and performance catches up eventually -- the transition is over 2 years. Same situation as before. Software that work will continue to work on existing and new hardware for a while. Nothing is going to stop working the moment the new processors come out.
We've seen all this happen before (m68k - PowerPC - Intel). And it's really not a problem.
It depends on where your perception of "where everyone else already was" in this context.
Is the future more like Intel desktops or more like ARM-based mobile devices? If you think the latter then Apple is definitely moving towards where people will be (insert Gretzky quote: "skate to where the puck is going to be, not to where it has been.)
I’m pretty sure their point is that last time, the incentives/burden was more aligned between Apple and soptware producers, because it meant devs had one LESS architecture they had to care about. This time they will have one MORE, and it could very well be an architecture they have no familiarity with. And Apple isn’t exactly known for their technical documentation of new platforms.
I don't know that it's one more platform. I mean, sure, it's not exactly an iPhone, a Pine 64, a Raspberry Pi, or a tablet. It is, however, a very broadly supported processor family. More and more support is coming out for ARM all the time. If you're targeting desktop and anything smaller (phones, tablets, watches, SBCs, smart home devices) then the something smaller if it's bigger than an Arduino is probably ARM.
I think quite a few developers would be happy to use the same basic software stack on on a phone app and a laptop app.
If I'm making a professional desktop app like Blender or whatever, then right now I only need to worry about x86 SIMD optimizations & behaviors. I don't care about iPhone/iPad/Raspberry Pi performance. I may care that it works, because why not? But I don't care about optimizing for it.
Now, though, suddenly I need to figure out how NEON works if I want to continue to support professional users on MacOS. I need to increase my hardware costs to ensure adequate test coverage. I need to use something other than Intel's glorious VTune for profiling & optimization. When I'm step-debugging my C++ or assembly tight-loops, I need to know double the amount of assembly than I do today. I need to learn ARM's memory model & cache behaviors.
If I'm just writing some silly native app that could have been a website as is trendy then yeah this is all no big deal, who cares? But if you're really pushing professional app boundaries, where time is money? That's a different story.
Many things in the world of software are neither webapps nor contain a lot of highly optimized hand-written assembly. That's the worst false dichotomy I've read so far today, and I read political Twitter.
Just because your use case is different from those who have C or C++ code and a good optimizing compiler doesn't mean you need to disparage every other type of developer on the planet.
There are a lot of people who write native ARM for phones and tablets for performance purposes, too. Some of them get down into ARM assembly. If they port to Intel and want to do assembly-level things there, they need to learn twice as much assembly coming the other direction.
I was waiting for Craig to say that every Mac with a T-series chip could be used as a dev platform, since they're pretty strong on their own. Oh well. Maybe to smooth things over they'll ship an A-series co-processor with those Macs.
Apple released a bunch of PPC Macs after they announced the switch to Intel, so this isn't unprecedented.
I'm in the market for a new laptop, and if I knew how long the Intel macs would be supported, I could see myself picking one up. Unfortunately, nothing was said about that so I guess I'm holding off.
Disagree. He said Intel Macs would be supported for "years to come" and that they had more in the pipeline. They'll be supported for significantly longer than 2 years.
On the contrary, I'm tempted to buy the latest Intel Macbook Pro so I can stick with Intel for a few more years. Whether or not I'll end up doing so depends a lot on how good the new ARM-based laptops are in terms of performance (esp. wrt virtualizing x86/x64 VMs). But the current lineup, however imperfect, is mature and a known quantity, in contrast to the unknowns surrounding the first generation of machines with the new architecture.
They said the same with the Intel transition, and also projected a two year timeline. The transition was over much sooner than that and there weren't any new PPC products to speak of, as far as I remember. And of course, PPC Macs only got one more version of OS X before support for them was dropped.
They're just trying not to Osbourne themselves too badly. They want you to keep buying Intel Macs, but who's to say how long they'll keep support.
PPC was complicated by coming after years of failing to have decent chips actually ship. In this case, Intel and AMD are both still heavily invested in pushing x86 forward and Apple doesn’t have to do all of the work maintaining things like compilers or the JVM so it’d be a lot easier to keep that option alive if there was a good enough reason.
And I reckon those of us who just bought a shiny new Intel Mac in the past few months might be questioning our decision. Should have held on to that 2010 MBP one more year?
Buying a Mac right now, need to replace my EOL Mac Pro. I definitely won't be getting a Pro now. Probably just an iMac with more RAM and SSD instead of Fusion. I really wish I knew when they were updating their iMac and Mac Pro lines.
Typing this on a 2010 MBP, bought a new MBP this weekend (was later canceled by the seller b/c of inventory issues) and thinking about waiting another year
Maybe it depends on the pricing for the x86 vs. ARM macs. If the ARM machines are significantly cheaper the x86 sales will probably suffer quite a bit. As someone else in this thread said, most people have no idea what processor is in their computer. They just care that it's cheaper and runs all of their stuff (browsers, photos, messages, etc.)
The Mac Pro (and possibly the iMac Pro) will still be Intel for a while. I expect the portable lineups to get the ARM treatment first (as they are the most similar with the iPhone/iPad in terms of power requirements), and then scale it up for actual high-power desktop CPUs.
Apple could continue to ship arm/x86 machines in parallel for years if the fat binaries+emulation work well. If say the desktop mac pro maintains an edge somehow, or Intel comes back from their current slump in 5 years this could go on indefinitely.
(that probably totally depends on whether Intel actually designs a desktop chip for the first time in nearly two decades, rather than continuing with their current sell server chips as poorly designed desktops path)
Do you think most people know who makes the CPU inside their Apple machine? Go into an Apple store and take a survey. I almost guarantee no one will know.
Remember the MacBook Pro with a DVD drive lived on for years after all its siblings were discontinued. We can expect some x86 support to remain available for years after the last new ARM machine is launched.
I think that's the mid-2012 MBP? They were still selling them in 2015, I bought one of the last ones before it was pulled from sale. It remained in the lineup because it continued to be a best-seller.
Apple was already grumpy about servicing it by 2018 or so though, even with AppleCare. (I've switched to Windows now.)
I think it could be tied to large contracts and ensured availability. I suspect there will be an x86-based Mac available well past the two year transition that was announced.
What is really sad is that I don't think the majority of Apple consumers really understand what this means for the Intel macs in the long run. I fear a number of people will buy them not realizing they have a very limited lifespan.
> […] not realizing they have a very limited lifespan.
It may depend on one's definition of "limited": the Rosetta was first released with Mac OS 10.4 in 2005, [1][2] and was last available in Mac OS 10.6, which first released in 2010, [3] but whose last update was in 2011.
Six years of transitional support is not unreasonable.
They won't, necessarily. Fat binaries worked ok the last time around. Sure, Apple could stop making updates available for Intel Macs, but they can stop making updates available for any older model of Mac if they want to.
If those devices will have 4-5 years worth of use, then I think most people would be fine with the purchase. 4-5 years already does require upgrading for either performance or quality of life features.
Part of the motivation for the transition is the hope that the progress will be much faster over the next 6. If that happens, those intel macs may age out sooner.