1. For my open source projects, running tests has sped up so much that I find it more of a joy to work on this projects now. Test suites that take ~60 seconds on my 2017 MacBook Pro i7, now take just ~15 seconds. That's a HUGE win in the edit, run test suite cycle.
2. My Rust projects now compile in WAY less time. Something that used to take 3 minutes to compile + link for a debug build is now down to 40 seconds. Once again, this has increased my productivity in the edit, compile, test cycle.
For other projects like node/npm the speedups are also massive and running various pipelines to go from source code to final deployable object is also much faster.
I use vim to develop, and it runs on Rosetta just fine, so I can continue to use all my existing plugins. I don't extensively use docker containers, but for those I connect to the cloud instead of running them locally, which is a move I was already making even on my Intel based MacBook Pro.
I got the 16GB 13" MacBook Pro. I, like the blog author, was thinking of this as a secondary laptop, something fun to have around, but I have hardly touched my old 15" MacBook Pro because this one does everything I already need. And does it faster.
I've been living with 16GB of RAM forever, so maybe I am used to fitting in that memory space... I avoid Electron based apps like the plague, and with being able to run iPad/iOS apps on the M1, I've been able to cut down even further since things like Authy are way faster to launch when they aren't large Chrome based hogs.
I am looking forward to the 16" MacBook Pro's with Apple Silicon based processors, but only because I do miss the additional screen real-estate, and prefer the larger size. But the 13" MacBook Pro M1 has been absolutely fantastic so far.
iOS apps on the Mac are a game changer for me. The UX isn't 100% perfect, but it sure is better than web apps, which are very often slow, resource intensive and kill your battery. I haven't touched the Twitter web app since I've installed the iOS/Catalyst app on my Mac. Even with its iOS-optimized user interface, the better performance of the iOS app makes it so much more enjoyable than the web version.
I'm very much looking forward to seeing other iOS apps arrive on the Mac, to replace their web variants.
There's really something to be said about how web developers have been killing the performance of their websites with their bloated frameworks or whatever. I know web apps will always be at a performance disadvantage compared to native apps, but the performance regression has gotten absurd. Using Reddit via the Apollo iOS app is a quick and buttery smooth experience, meanwhile the redesigned Reddit webpage is a laggy stuttering mess on my MacBook Pro.
Totally agree, particularly for small utility apps and the like. Most good iOS apps launch instantly and sip power even on comparatively limited iPhone and iPad batteries, so the impact they have on a Macbook battery should be close to nothing. Night and day compared to electron stuff.
Had Apple switched to AMD Ryzen processors on TSMC's 7nm node the performance improvement will have been similarly stark.
wow, a 5x improvement without you doing anything but changing hardware!? That's an excellent upgrade imho.
I wish apple would be able to sell the M1 as a generic processor to which other machines can use.
Interesting! Are you compiling to arm64 or emulating x86?
For Rust I am running the ARM toolchain that was recently released, so no Rosetta involved at all.
I'm honestly for the first time in a decade a bit excited about an upcoming computer, pretty great.
Still running on a 2014 MBP that honestly is still great so can wait a bit.
I think we are more excited about a shake up in the whole computer world, that may mean the dead of ATX/MB's/etc as we know it. And a more profound move to eGPU/NUC/Laptop like powerful devices with a low power usage.
This feels a bit like a wakeup call to the industry. Like how the first (commercial) successful smartphone, the iPhone 1 fueled a entire industry for over 10 years to massive evolve. What is kind of funny because i felt like the smartphone evolution was starting to loos steam. The conversion between PC/Laptop/Smarthones will begin now.
The MacRumours buyers guide has the MacBook Pro 16” as due an update right now: https://buyersguide.macrumors.com/#MacBook_Pro_16
Honestly, I’d be surprised if we don’t get an M1x (or whatever it’s called) within six months.
Don't forget—Vim comes as a Universal binary, so it already runs natively on the M1.
/usr/bin/vim: Mach-O universal binary with 2 architectures
[x86_64:Mach-O 64-bit executable x86_64] [arm64e]
/usr/bin/vim (for architecture x86_64): Mach-O 64-bit executable x86_64
/usr/bin/vim (for architecture arm64e): Mach-O 64-bit executable arm64eI'm glad Vim is running fine on Rosetta, still, if you wanted to compile it from source, it really shouldn't be too hard.
(Rust is a harder problem, so I wouldn't worry too much, still, once the dependencies are downloaded and compiled it's usually fine)
$ file `which vim`
/usr/bin/vim: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit executable x86_64] [arm64e]
/usr/bin/vim (for architecture x86_64): Mach-O 64-bit executable x86_64
/usr/bin/vim (for architecture arm64e): Mach-O 64-bit executable arm64eThe nice thing is I can just wait out the compatibility issues re: arm migration, especially with some of the third party crates my rust projects depend on currently failing to build.
Also, the ARM version of Homebrew is not yet ready for primetime, there is a ton of software that doesn't compile for ARM yet (Including MacVim).
So far all the crates that were not working have been getting updates to work on the new platform, so far I haven't found any issues!
1990s me laughs remembering edit/compile/test cycles measured in hours.
Your post reads less like a sincere question and more like "you should be doing it this way unless you can defend your position". Maybe--just maybe--people weigh up tradeoffs differently than you do personally.
FWIW 'on the move' can mean going into a meeting room or even just walking over to a coworker's desk with your computer. Desktops kinda suck when you work around humans who don't just stare at their screens with cans on all day.
Portability.
Meetings, is another one.
Doing presentations.
Also for me at least: On-Call.
I would prefer a workstation at home and a lightweight laptop with company network access but hey my companie prefers to buy me a Laptop for 3k over a desktop for 1k and a light laptop for 1k.
What can i do? yeah nothing :)
It also greatly simplifies working from home. Not just for portability.
Maybe this big leap in processor / thermal / battery life (and a revision back to proper keyboards) will be enough to get us to switch! I think 64GB (or at least 32GB) would be a nice sweetener.
A new laptop isn't critical to my work at the moment, so I'm happy to wait for an M2, if that's what it will be called. Looking at Apple timelines a new chip tends to be 1-2 years apart, and I'm fine with that.
I'm also reluctant to give up Magsafe, or at least have to buy a magnetic USB C connector.
With the 'touchification' of big sur, it seems pretty likely apple is going to release some sort of convertible macbook or maybe something iPad style. Or maybe iPads can start running macos?
Work laptop will get upgraded to an M1 one way or another anyway.
Nothing enticing because my computer is lightning fast and this means having to use the Apple ecosystem.
It's almost like Apple has a culture of forcing people to do things the hard way, just so it feels rewarding when it's done. Gamifying the experience?
I don't think expecting more than 16GB of ram for entry level Apple laptops should be expected.
The low amount of ram, energy inefficiency and plateauing performance are the exact reason why Apple is moving away from Intel and onto a platform where they can control their own destiny.
At the moment I have around 2 GB free on my 8 GB Linux machine with a webserver, MariaDB, a JetBrains IDE, Slack and Firefox running. It would be easy and dirt cheap to increase the RAM to 16 or 32 GB but I'm too lazy to even order it and open the machine up since I have never felt the need to have more.
I'm just saying this so that people like me remember that they're still professionals and their work is valuable even if they don't need 64 GB of RAM.
Folks working with data intensive applications often need to trade off writing code to page data in and out of memory during development with larger dev boxes.
Certainly some devs need more than 16gb, but they know who they are. And you know who they are because, well, they love telling you :).
As always, for some people 16 GB will be fine, for some it won’t.
After upgrading to 24 GB the machine became very usable.
I wouldn't ever want to go back to 8 GB. Perhaps 16 GB might be usable for iOS and Xamarin development, especially if the Android emulator can run in some kind of HAXM [0] mode, but for ARM processors ... not sure if that's possible right now. I'm sure the SSD also makes a big difference compared to my Fusion drive right now.
Still it feels safer (more future-proof) if the machine has a bit more memory than 16 GB.
---
[0]: https://github.com/intel/haxm/wiki/Installation-Instructions...
As always, more RAM extends the usefulness of a computer.
Edit: not my opinion, just what I found on the internets, not sure why the downvotes if it invites discussion.
I bought a computer with 16GB in 2011 and around 2015 it was already lagging quite a bit due to swap - switching to 64GB in 2016 was day and night, I don't have to fear launching arbitrarily many jobs anymore.
Apple has killed any good will among nerdy developers by treating them like shit for 20 years. Sure there are still corporate developers that are forced to make iOS apps, but it's not like a hobbyist is going to buy an Apple computer for embedded, web dev, gaming, PC applications, etc...
Until Apple treats us(and maybe their non dev customers) better, I don't see any reason outside iOS Apps to ever buy a macbook for dev.
Yeah, this is simply just false.
Apple being a consumer grade Posix OS is exactly why hobbiest choose it. It has first tier support every consumer app you need, with no configuration headaches and has all the tools you want for modern development.
This is why most web devs today are still carrying Macbooks. Even if Apple has not been prioritizing building machines with beefy specs.
(A notable exception to that feeling is VSCode. While I would quite prefer a native app with its features, I’ll gladly pay the Electron tax because it’s the best editor I’ve ever used.)
This may surprise you, but yes, it's what people seem to be doing.
It’s fine if it’s not for you, but to stereotype an entire part of the industry like this isn’t fair.
I really don't know what you are talking about. All my development work could probably be made on a linux computer, or windows, but I choose to use Mac just because it makes embedded work and web development so much easier.
I can say for me personally that yeah I have my issues with macOS, but the amount of fiddling I have to do with Linux and the different patterns I have to learn with Windows means macOS will likely continue to be my choice for years to come.
Apple’s far from perfect, but there is something to be said for ‘just works’.
Amusingly you mentioned bluetooth, apparently the new M1s are having serious bluetooth issues, so much that those with the apple bluetooth mouse and keyboard are resorting to wired devices.
I have the complete opposite experience. I don't feel any burden from apple when using a mac. MacOS being a unix like operating system makes developing on it a breeze. On windows i need to use archaic developer tools like powershell. Linux commands I use on my production servers don't work on my development environment. If I want to use git in a sane manner from the command line i need to install an emulator that has its own issues.
There is a reason almost all companies in silicon valley use macbooks for their developers.
> but it's not like a hobbyist is going to buy an Apple computer for embedded, web dev, gaming, PC applications, etc...
As someone else has said, this is exactly what people seem to be doing.
I mean, you can dislike Powershell and love Unix tools, but your choice of words is remarkably funny.
If anything, Unix tools are archaic, generally organically grown and not that designed or designed based on principles from 50 years ago, in many cases principles that have been superseded.
Powershell actually has a design and a modern one.
Again, you might like one and dislike the other, it depends a lot on personal preference and familiarity.
But... Poor choice of words :-)
What makes PowerShell archaic, in your opinion?
No. Stop presuming to speak for all of us. Apple has generally treated me a lot better than Microsoft did, as a user and as a developer.
Downvoting the other side may give the impression that everybody is of the same opinion in this echo chamber, but it won’t change the reality that many people are happy with Apple and excited for the direction they’re taking.
This is telling just about how unrealistic Geekbench benchmarks, used by most reviewers, really are - they were all forecasting M1 completely humiliating everything from Intel and yet in practice it's not quite right. It's a dang impressive chip still though.
Not really comparable though.
My daily driver is a Hackintosh and with the CPUs pegged pulls about 70W from the wall. The two displays add another 90W.
M1 is impressively efficient but there's still a gap for fast, no-compromise workstations.
Not sure how power use actually matters when I'm sitting and waiting for things to compile several times a day.
If anything, then numbers in TFA are an outlier rather than a contradiction.
The top Intel MacBook has 8 cores and only beats the M1 (4 performance cores) by 1 minute.
The desktop Hackintosh most likely has way more cores, expecting the low power M1 to beat it is unrealistic.
Don't congratulate Apple for failing to ship trash.
There's an argument for efficiency on a laptop, no doubt, but that's not what the parent commenter is talking about.
M1 is the highest perf-per-watt CPU today, no question. Ignoring efficiency, there are plenty of faster CPUs both for single-core and multi-core tasks. That's what "my Hackintosh did the build in 5 minutes" is showing.
Think about the future where a new developer needs to pay a license fee, and have their software reviewed just to show his friends.
Also, your point about Mac future is pure speculation at this point, which contradicts public statements from Apple.
Why is that so difficult?
How would optimized M1 assembly differ from optimized ARM assembly in general?
I imagine good ARM assembly code on a Gravitron2 or a Snapdragon chip would be similarly good on an M1 chip
Apple of course uses these things in the lower levels of their software, so if you're using their APIs you're getting this for free across OSes and CPUs.
Some things like the instruction density and inlining heuristics translate from processor to processor, but the actual microarchitecture (rather than the ISA) determine what is "good" code from platform to platform e.g. Good instruction scheduling depends on how the CPU is designed.
Apple have stated multiple times that they don't have any intention to lock down macOS more or less - I can't really think why anyone would think Apple would lock down macOS. There's... really no reason right?
My gut feeling is that there are a lot of people that don't like Apple, mostly due to their proprietary nature, and they just... argue against Apple. Before the M1 appeared, the argument was that Apple's Macs are expensive for nothing, they have terrible hardware, Touch Bar is bad, software quality has declined, etc... and now it's all about the user's freedom.
Seriously people. This article is about using dev tools on the M1 Mac. Let's not start arguing about how Apple is bad for freedom, etc.
NO company can, or should be above criticism. You will see comments critical of _all_ large companies in HN threads, but only comments defensive in these threads. Imagine a comment like yours on a thread about Amazon or Facebook.
I have gut feeling of my own - that many people identify with their Apple products (identity politics) and are personally offended by any criticism that the organisation receives.
--
Edit: To put it in a little perspective... I invite you to view the contemporary Amazon thread. What would happen if you posted that everyone should focus on AMZN creating jobs and hiring people rather than criticizing them?
This should be enough to make you look elsewhere.
But then there is the locked bootloader, the Apple tax, etc. etc.
By supporting Apple, things will only get worse.
Because they keep introducing new security features that get progressively more annoying to disable. Have you looked at how difficult it is to modify system files these days?
In fact the only difference I can think of is that there's always some degree of reactionary discourse when Apple is mentioned by people who feel the need to defend the company personally. You never see this type of comment on a thread full of people complaining about Windows or AWS, but you almost always see it when there are a few comments critical of Apple.
What Apple says and Apple does can or are two different things. And it applies to any company in the world. Blindly believing them is naive at best.
> I can't really think why anyone would think Apple would lock down macOS
I can think of one: iOS. Locking down the software and hardware can allow Apple to funnel people to their own stores and services. It is not rocket science to figure out that a company is trying to increase their revenue. Right now you have only MacOS as the operating system, Linux may never come and Windows support is anyones guess right now.
These new CPUs will represent a huge generational leap and dropping of old baggage. A laptop which has nearly 20h battery life, is small/portable, and is still fast? Wow.
Anything Apple delivers on for the CPUs will find its way into Linux and Windows machine.
This is good for everyone. Eventually you’ll see the next generation Lenovo’s X series or Dell’s XPS series with the same generational improvements.
Generally it's people who aren't even invested in the ecosystem anyway.
They've said this stuff for years, I can't do anything less on Big Sur than I've been able to do on any mac.
But all that said, given the quality of developer tools from Apple I don't have much faith that they won't impede everything but swift development in Xcode.
Didn't they also say that notarization was about security?
Oh hell no! This is the scenario that Stallman warned us about, over two decades ago:
I do believe Microsoft would love to head down a path like that, but are too burned with the massive frankenstein of legacy tech that is Windows. I also tend to share a bleak view of the future of computing as many of the people voicing concerns, I just don’t believe that a niche set of consumers can overpower that of the majority who could care less if you ranted to them about control or privacy or whatever.
And what if it is too late? E.g. Apple owning the entire space you want to develop apps for? Or, if this seems an impossible theory to you, how about competitors copying Apple's model?
Please understand that as a consumer you have power, but if you don't use it you can end up like the proverbial boiled frog.
Practically speaking being “locked” into a system would only be a possibility in a world where highly distributed, massively supported OS’s (Windows, Linux) didn’t exist.
Anti-apple people have a hard time fathoming the degree to which many other “power users” are okay with privacy/security trade offs if it results in a more robust/stable environment that just works.
Problem is, it’s being framed as some sort of Faustian bargain when it’s really not that big of a deal.
Of course, there will always be a need for running dev toolchains locally, but I wonder how many other people are like me who would rather use Linux over an internet connection, and really only need a terminal emulator and an IDE.
I am still waiting for a premium chromebook with ARM CPU and great battery life to hit the market.
Warning: You are using macOS 11.0.
We do not provide support for this released but not yet supported version.
You will encounter build failures with some formulae. Please create pull requests instead of asking for help on Homebrew's GitHub, Twitter or any other official channels. You are responsible for resolving any issues you experience while you are running this released but not yet supported version.[1] https://apple.stackexchange.com/questions/312330/brew-link-u...
Homebrew is the perfect glue between the traditional Unix world and the somewhat unexpected Unix environment that macOS is providing these days (mostly a consequence of Xcode wanting to be a self-contained .app and /usr being read-only while still honoring the tradition of leaving /usr/local alone for you as a user)
How do you run the command line tools through Rosetta once they are installed?
Another pain point is code that relies heavily on SIMD. AVX/AVX2/AVX-512 instructions are not translated, so in those cases you'll be using slower kernels. My machine learned models are ~10 times slower with libtorch under Rosetta. Though they are competitive when compiling libtorch natively.
(Source: I have used an M1 Air for a week, but decided to return it.)
For now, I'm mostly using Rosetta2 for running iTerm. It works great. I do fine sluggishness on some initial builds, but then it's off to the races.
Edit: this is totally wrong. see thread.
https://github.com/JuliaLang/julia/issues/36617#issuecomment...
Tried looking for docs but didn’t find anything decisive either way
What is opinion on these m1 machines longevity. Some tech people are comparing it to first gen iPad.Like they will be sunset after a couple of years vs 2nd gen which are supported much longer. but I am not so sure most of the issues with these first gen m1 machines are software so in theory they should be supported for long time.
If you look back at the Intel transition, if I remember correctly they released the MacBook Pro with a Core Duo in January of 2006 and Core 2 Duo in October. The latter being 64-bit. Sure, the latter ones were better, but the former ones worked fine. OS support seems to go with architecture generations. The early 2006 laptops supported Snow Leopard which had its last release in 2011. The next laptops supported Lion which had its last release in 2012 (but with hacks could get updated until 2018).
I think the major question is if you want to wait to see what the "pro" machines look like or if Apple has tweaks in 6 months to the current line up. The Mac Pro has some big questions about what may need to change if they're looking for parity with the current Mac Pro (improved multi-monitor support, more RAM options, upgradable GPUs). Those changes may show up in the high end Macbook Pros (likely not upgradable GPUs).
* iPad 1, which was basically a iPhone 3GS with a bigger screen, and from day 1 didn't have enough RAM to drive the big screen
* First Intel macs, which were 32-bit, before Apple quickly transitioned everything to 64-bit
* First Apple Watch ("series 0") which was just underpowered in general
The M1 Macs really don't appear to have any obvious flaws like these.
What a bizarre perspective with nothing to support it except apparently blind optimism.
Unlike Microsoft dipping its toes into the ARM waters, everyone knows Apple is committed to this.
This is a step toward mobile/iOS. Apple isn't the same underdog that it was when PowerPC was put to bed, and the transition is challenging because the Mac platform is bifurcated in the interim.
PowerPC to Intel isn't a good proxy for this because the technology is different, the transition strategy is different, and the company itself is different.
If the M1 transition is to be smooth, it has to achieve that on its own merits, without looking back in search of comparable transitions past.
* Virtualization not supported
* Gradle is extremely slow
* Webkit crashes
* No Docker yet
* Builds not as fast as their top-end Intel based MBP
* Builds not nearly as fast as their Hackintosh
* Can't wait to migrate CI to it
wut
It's worth noting that Apple has a 14 day return policy, and on the rare occasions I've used it it's been hassle-free.
Also I'd highly recommend coming up with specifications for your computer you want.
Don't just buy brands because you've seen them on tv.
M1 is just going to make macs even more dominant.
And AMD is not going to rescue Windows/Intel. These night and day improvements are simply too big to be explained by TSMC being a better fab than Intel.
- Linux 55%
- Windows 53%
...
- MacOS 24%
"Linux and Windows maintain the top spots for most popular platforms, with over half of the respondents reporting that they have done development work with them this year. We also see some year over year growth in the popularity of container technologies such as Docker and Kubernetes."
Inside my world little circle of freelance Java / JavaScript developers 2/3 are on a mac. People buy their own work machine unlike maybe working for a big organisation where that is provided for you.
This says you can run it on arm with fall creators update or newer.
Apple deems itself a consumer company and perfection is too expensive. Apple quality is generally going up every year, but slowly.
Apple makes incremental improvements manufacturing nearly weekly just like software builds. I always say never buy first gen, or at least never on the first day. Never assume your machine is just going to work.
Apple cedes a lot of sales by not attempting to bring into their fold all the gaming companies. Just looking at Steam alone shows the disparity and there is a lot of money to be had. The idea of just own two systems is one that not everyone can justify.
Thus I’ve been using an 8gb M1 Mac mini doing this for a week now and haven’t had any problems. It makes a very nice terminal computer with luxury desktop. When a suitable 27” approx iMac appears with an M-series CPU in it, I will buy one. It’s nice being able to triple swipe between a Mac desktop with native apps, a desktop full of terminals to Linux VMs and a windows desktop machine via RDP transparently!
Java does not need to be run through emulation. Azul already published ARM64 Zulu builds for OpenJDK (here: https://www.azul.com/downloads/zulu-community/?package=jdk) and they work great on the M1. I'm currently using IntelliJ running in emulation mode (an official release for the M1 was originally expected by the end of November) and but build/run my projects on a local Zulu JVM with ARM64 support.
I am not bothered as much by the 16gb of ram, it is still rather usable. What I really bought the machine for was the battery life. I've had it for a day or two and it is amazing how long I can stay away from my power socket. Also this thing runs really cool. I have not even heard the fans spin up once, even during the recent Sydney heatwave (45°C).
I was looking into buying the new MacBook Air. Anybody has any particular alternative to recommend? I am looking for a new laptop and haven't found anything similar to the MacBook Air (I hate the touchbar) for a similar price (the 16GB of RAM model, if expandable better). Anything similar is either a lot more expensive or the build quality is a lot worse.
Any recommendation is more than welcomed!
My current computers feel like they have enough memory until I load virtual box, or VMware.
Personally I will try to wait it out until they release a new design... although may end up with a Mac Mini build machine
I think Apple is expecting all developers to jump and port their apps so they are ready when the high-end Apple Silicon devices hit the market.
The author lists several bugs, instead of posting the issue number with a link, he puts his Tweet with the bug numbers (without link). Im not sure what the author is trying to accomplish here. Also I guess these kind of bugs, although not nice, they are mostly because MacOS suffered the biggest change since its history and supporting 2 completely different architectures is not an easy job. Of course we are at the mercy of Apple to fix them but this is part of the deal when you buy such a machine at this point.
Then all other points are just showing all the known the same issues that some commercial SW was not yet ported to a new architecture.