They are aware. They are also aware of the designs sitting in the cabinet right next to them in Cupertino that would make all the reverse engineering instantly unnecessary.
Such a monumentally Sisyphean waste of effort in behalf of the Asahi devs in my opinion.
If you care about personal computing or Linux, don’t buy a Mac.
I'm sure Apple has data showing that their extremely lockdown strategy is good for their business but I feel like I'm one of the potential customers Apple could gain if they didn't have that.
They're a fantastic hardware company. But my admittedly very limited experience with Apple software, from iPad to their streaming service website, has been miserable. The UX doesn't work for me, the software just doesn't do what I want. Understandable, Apple very much designs their software to work for a particular workflow they come up with, if you like that workflow it's great, for someone like me it's miserable. But I would gladly buy their hardware if I could freely run an OS of my own choosing.
I doubt that any company actually cares about what any of the myriad of metrics they collect mean at the C-suite level. I mean, "maybe" I just think it is unlikely. I bet 9/10 times someone just makes a decision about how things "ought" to be and then that's the way it is going forward.
The assumption that this is a triangulated and well researched strategy doesn't match my experience in "real-job" world. I mean, maybe Apple is different because of their history, but I am not convinced anyone listens to anyone that articulates any math ideas beyond Algebra outside of some niche specialties because they don't understand it. And it's not that I'm some math god - I mean, that's what I studied, but there are people SO much more knowledgeable and capable, and they seem to get ignored too.
Like, I'm sure the guy who runs an insurance company listens to the actuaries about relative risk, but mostly, what I've just seen is someone makes a decision, and then finds post hoc ergo proctor hoc rationales for why this was a good decision down the line when they have to account for their choices.
For instance, it took my like a year at my old job, but I finally got most of the KPIs we were using to set strategy cancelled. The data we were using to generate those KPIs? Well in a few cases, after you seasonally differenced the data was no different than white noise. No autocorrelation whatsoever. In ALL the cases the autocorrelation was weak and it was all evaporated after a month or 2. You could MAYBE fit an MA model to it, but that seemed dodgy to me. And like, I'm not a major expert - I took 1 time series class in gradschool, and frankly, time series is kind of hard. But management had ZERO idea of what I was talking about when I was like, "hey, I don't think these numbers actually mean anything at all? Did anyone run an ACF?"
Then each month someone higher up the chain would say, "why is this number low?" And then they go out and search through the reams of data they had to come up with an answer that plausibly explained things. Was the number particularly "low?" No, it was within expected statistical noise thresholds, you are probably going to have at least have 1 number out of whack every 20 cycles or so... You still had to spend an hour in a meeting coming up with reasons for why it was low that went beyond "ummm, well, this is kind of random, and we'd expect to see this sort of thing ever couple years once or twice, we won't know if it's a trend for a few more months."
Anyway, this is a long anecdote to explain why I have no confidence that most companies do any sort of actual introspection. CEO creates targets and underlings build models that show how they're meeting or not meeting those targets. Now, hilariously, with Apple in particular I might be wrong, because in Tim Cook's defense, I'm pretty sure his education is in Industrial Engineering? So if any CEO is thinking about that stuff, it's him. Still, I am totally and completely unimpressed with the C-Suite sort of thinkers.
They're not dumb - like I've never really had a straight up dumbass manager outside of shitty lower jobs or small-mom-and-pop businesses? But I have seldom met any company that actually cared about the numbers - most say they do, but most just use those numbers to justify decisions they've already made.
Am I just unlucky? I'm I the witch in church here?
The environment is why I quit my job and started working for myself in January. I hated it. And not to sound like an arrogant ass because there were a LOT of way smarter people than me at $PREVIOUS_EMPLOYER, but having to have meetings to set our meetings, having to explain things that aren't statistically meaningful to people who don't understand stats anyway, and getting code reviews (when I could get them scheduled) from dudes who hadn't touched a keyboard in 5 years was... soul sucking? I'm not doing that anymore. Or ever again.
I mean, maybe it's because I had a more hands-on blue-collar adjacent job before I got into tech? Maybe it's because I'm a fool and couldn't play the game of "pretend to work and look busy. But - and I know this might be kind of messed up - I really like not having to explain things in a series of emails to people other than the customers. I really like not having to answer to anyone but my self and my customers. If I want to do something, well, I just do it now? That's a nice place to be. Riskier for sure, but I think the prior environment would have killed me, so maybe not.
Also, I have time to do shit that's interesting? Who would have guessed how much more time I'd have in the day when I didn't have 4.5 hours of meetings per day? Hell, I'm taking 2 classes at the university for fun (weird right?!) - I never could have done that before because I would have had to make a slide deck for Thursdays All-Hands or whatever and couldn't have missed the SUPER IMPORTANT MEETING that Jake has on the schedule that he'll show up for unprepared or just not show up to.
As opposed to what hardware, then? Because this is pretty much how most other drivers became a thing in the first place. Linux has come a long way and due to it "winning the cloud" many hardware vendors started properly supporting it, but this was absolutely not the case for the longest times.
You don't need an arm processor, many modern x86 chips match or outcompete m series on power efficiency and performance. Mainly lunar lake gen 1 and the new gen 3 (arrow lake not really).
The efficiency of arm chips was never arm, really, it was the manufacturing node and SOC design. Well, Intel and AMD can make SOCs, and they do.
There are reasons beyond pure power efficiency to use ARM processors. It is a nice architecture to work with, especially if you plan to write low-level code. Also, you might want to deploy on ARM servers.
Also, there is the question who in general makes Laptops as nice as a MB Air? Who makes a fan less laptop of roughly comparable power?
If you're writing true low-level code then you're most likely doing it for performance reasons, like ffmpeg. But ARM doesn't have the instruction set to make the best use of that, x86 does with its extensions. Otherwise, the compiler handles translation, so there's just no reason for you to care about the assembly unless you're writing assembly.
As for nice laptops, I think Asus and Lenovo makes some nice ones. I don't believe any are fanless, but most are quiet - Lunar Lake gen 3 is an SOC with a base TDP of 25 watts, and it can even go down to 15 watts. These CPUs are slightly faster in multi-core performance than M4, and they use similar wattage. I believe the Asus zenbook duo gets better battery life by a wide margin because of the 99 watt-hour battery. They still fall a little short of M5 in performance, but it's very close.
As for servers, it's a good point. But I think currently most servers are still using x86 CPUs, so it might not be relevant for a while.
ARM servers definitely seem to get more popular. Seems that for a lot of tasks they are the more economic option. Consequently, you want more and more development for ARM. That would be one reason. The other is, that developing for ARM is more fun, whenever you touch parts which are architecture-dependent.
For the computer: the Air is a great laptop. I am very happy it doesn't have a fan, so it can never get a clogged fan and it works great. Currently, I am running Linux on it via VMWare, so I get the best of two worlds. And Linux really flies on it. Once it is no longer supported by macOS, I am certainly going to go native Linux. As it is an M2, that probably would work already today.
If you want an ARM CPU, there are now a few single-board computers with a quadruple Cortex-A78 CPU in the "Qualcomm Dragonwing QCM6490" SoC (similar to a Snapdragon from the flagships of 2021), which run circles around Raspberry Pi and the like.
There are also older NVIDIA Orin SBCs with Cortex-A78, but those are severely overpriced, so they are not worthwhile, unless you really want to use them in an automotive project.
For software development, the Arm-designed cores have the advantage of excellent documentation, unlike the proprietary cores designed by Apple and Qualcomm, which are almost undocumented. Good documentation simplifies software debugging and tuning.
Unfortunately there are no cheap solutions for developing on the latest ARM ISA variants (except for a Chinese Armv9.2-A CPU, which has some quirks and is available in mini-ITX and smaller formats). For the latest ISA, you should develop software on a smartphone, e.g. on one of the Motorola smartphones that have DisplayPort for connecting an external monitor and a desktop mode for Android.
The Qualcomm laptops have various problems with Linux that have not been solved yet.
You have much better Linux support for an older Snapdragon from 2021 (with quadruple Cortex-A78 cores) which has been rebranded as "Dragonwing QCM6490" and which is sold by Qualcomm for use in embedded computers. Thus Qualcomm promises at least 10 years of support for it.
There are a few cheap single-board computers with it, e.g. Particle Tachyon 5G and Radxa Dragon Q6A.
Unfortunately, "cheap" means something very different today than last summer, due to the huge increase in the price of DRAM. Nevertheless, the SBCs with soldered LPDDR memory have been affected less by the price increase than the computers for which you have to buy SODIMM or DIMM memory modules, which may cost now more than a mini-PC in which you would want to install them.
Nothing seems to be close to the MB Air. I would definitely be interested in buying a comparable hardware, if Linux is better supported than on the Air.
Maybe I was lucky, but I never had any serious problems in Linux with any of the many Dell, HP and Lenovo laptops that I have used during the last 2 decades.
The most serious problem that I had was about 10 years ago in a Lenovo laptop with NVIDIA Optimus (i.e. where the NVIDIA GPU does not have direct video outputs, but it must pass through the Intel GPU). At that time, I spent a couple of days until succeeding to make NVIDIA Optimus work OK in Linux. With the Intel GPU, Linux worked fine since the beginning. This happened because at that time the Linux NVIDIA driver did not support Optimus, so you had to install a separate program to be able to select which GPU shall be used by an application. I do not know if any laptops with Optimus still exist today.
Except for that case, I never encountered any hardware compatibility problem that could not be solved in minutes or a few hours of most. For contrast, with Windows I have seen many problems that could not be solved in weeks, even with the assistance of IT support personnel from multiple continents, because nobody, not even the "professionals", had any idea about what Windows is really doing and what may be wrong.
It is true that some of the laptops that I have used had a few features that I have never used, so I do not know if they worked in Linux. For instance I have never used a fingerprint reader or a NFC reader.
There are millions of Macbooks out there that will be out of MacOS support one day. If this project diverts just a fraction of them from becoming e-waste for a little, it will be a win.
And then beyond that, there is simply no laptop manufacturer that meets the quality of Apple's hardware design. I like Macs for their hardware, the software is a compromise. A linux macbook would be my ideal laptop.
Maybe so, but 15-20 year old laptops are definitely starting to show their age.
An M2 MacBook Pro, on the other hand, is only 4 years old, has a fairly OK keyboard, and is still in striking distance of current high-end ultrabooks when it comes to performance.
The only thing my X230 struggles to do is run LLMs locally. My needs are simple, and I think normal people (i.e. probably not most people on this site) don't have needs that are any more demanding than mine.
Granted, this is running GNU/Linux rather than Windows. If you're running Windows then yeah, they show their age.
I think an X230 would be performant enough for 95% of the things I do, but a 14 year old CPU is going to have pretty terrible battery life for anything more than very light usage. And things that would be light usage on a recent PC, like watching video encoded with a modern codec, would be fairly taxing on an old CPU with no hardware decode.
True. By the time I upgraded from my X200 (fantastic machine, noticeably outdated), the lack of software support for hardware decoding H264 was noticeable. Also being stuck with OpenGL 2.1 isn't the best either.
I don't know what I'll do if and when my X230 stops being sufficient. If I could buy an Apple motherboard in an X200 chassis I'd do it in a heartbeat.
Congrats, but I think you may be in a small minority when it comes to developers shopping for laptops.
Personally, I had to upgrade from a late-model i9 MacBook Pro to this M2 MacBook Pro, because the npm + docker setup at work was taking upwards of 20 minutes for a production build...
>The only thing my X230 struggles to do is run LLMs locally. My needs are simple, and I think normal people (i.e. probably not most people on this site) don't have needs that are any more demanding than mine.
People who edit video or make music and other such tasks are totally normal too, and there are hundreds of millions of them
I think maybe you don't understand what the needs are of normal people. It's only partially about what software they run.
I recommend Mac's to the people in my life because when they have a problem they can take the machine to the Apple Store in the mall. Or if they want to understand iPhoto or Pages better, they can go to the Apple Store and take a class. They like Apple laptops because they look nice, they feel great, sound amazing (for a laptop) and have excellent battery life.
Like you, I have a ThinkPad (a P-something) and, frankly, it kind of sucks. It's all plasticy, it flexes, battery life is a joke, the trackpad is meh, and the fans are almost always running. I do like the keyboard though (I'm a fan of backspace).
The problem is that now one else is currently making hardware that is competitive with apple silicone. Apple is the only one offering both performance and battery time.
I love my Thinkpads, I really do but they are bulky, loud and the battery doesn't last very long. They are not an option for many people.
1. Asahi Linux's battery life is like 2/3 as long as on macOS
2. The Thinkpad X1 Carbon is just about as thin and nice as a Mac but it also costs just as much.
3. Apple is still leading in single core CPU speeds but x86 has caught up or surpassed M devices in both multicore and graphics. And even last gen x86 can beat the 3-generations-old M2 that is the latest one supported by Asahi Linux.
Re:3- only because they've only released the base M3 so far- once they release Pro/Max configs they'll easily regain the lead, as seen by the single core dominance.
Intel lunar lake gen 1 and 3 are competitive with the M series both in battery life and performance. Qualcomm makes arm chips that are somewhat competitive too, but you run into similar problems as M. x86 chips can most definitely reach the efficiency of M.
If I have learned one thing it's is that current corporate strategy is no guarantee for the future. If you want to purchase a laptop now and want a great linux experience, then the M2 Is a great option. But don't assume that M(n+1) will ever get support.
This reasoning is essentially just as true for any other laptop maker Dell, Lenovo, Asus, Framework, HP etc might also decide to bomb linux support at any time.
> Apple allows booting unsigned/custom kernels on Apple Silicon Macs without a jailbreak! This isn’t a hack or an omission, but an actual feature that Apple built into these devices. That means that, unlike iOS devices, Apple does not intend to lock down what OS you can use on Macs (though they probably won’t help with the development).
Such a monumentally Sisyphean waste of effort in behalf of the Asahi devs in my opinion.
If you care about personal computing or Linux, don’t buy a Mac.