Hacker News new | past | comments | ask | show | jobs | submit login

Apple doesn't deserve to have such careful and detail-oriented FOSS developers like Jason, developing for their platform. He is genuinely wasting time in order to work around Apple's developer-unfriendly platform. Not that I should be telling devs where they should spend their time... but I feel like so much effort is being devoted to fix Apple's issues.

> When I'm debugging these issues, I'll often times spend a few hours in IDA Pro (Apple doesn't provide debug symbols, unlike Microsoft, which makes this process even more miserable than it already is), and after identifying the issue I'll often have several ideas for "clever" workarounds. Which of them are acceptable for the App Store? Usually none!

Really, why we need to have very talented people spending their time in dealing with this, instead of contributing actual value on other parts of the project? Apple should be losing devs in favor of other better platforms, not the other way around. With less and worse products at their disposal, Apple users would then be well aware that they are choosing a platform that alienates developers.




Completely agree. Apple has nothing but contempt for its developers, and treats them like indentured servants. "Oh it took 10 years to get your app working right? Well, it doesn't work right anymore after yesterday's patch."


Also you're an open source and free project? If you want donations we're going to need a cut of that. Doesn't matter that you're providing our OS with functionality (for free) that we can't or won't create on our own.


Is this true? That can't be legal.


Yes, he says it right in the post. They had a donation link in the about section that Apple forced them to remove because the payments weren't going through the app store payment system where they get a cut.


It might be worth appealing that rule by claiming that the payment is a donation and optional.


That would be an instance of very talented developers sinking even more of their time into Apple's despicable platform.


There's a lot of very undespicable people using the platform, unfortunately…


I would say not. Supporting a tyrant and a fascist by giving them your money is also despicable.

If you buy your stuff used that's fine IMO.


That could be said for any platform these days. It's certainly not specific to Apple!


I guess Windows doesn't break their compatibility almost ever. Linux doesn't break user-space, but of course the libraries you depend on might change in a few decades.


There are some old games I can't get to work on Windows 10 which worked fine on Windows XP. Amusingly, what usually ends up working best is wine.


There's a 2004 article about this by Joel Spolsky that can be found here[0]. Obviously it is a "tad" out of date (and I don't work on Windows so I can't comment on the situation right now), but it seems that at some point Windows cared deeply about backwards-compatibility.

[0]: https://www.joelonsoftware.com/2004/06/13/how-microsoft-lost...


I've actually spent about 25 years writing software on Windows, mostly desktop. Stuff breaks all the time and getting it fixed is nigh on impossible even if you happen to be a partner with contract.

What is claimed to be backwards compatibility is only partially true; reality is that bugs and their workarounds will exist forever.

As for Linux and breaking userspace, that's the kernel interface which is stable, not the whole distribution. I really wish people would report that honestly. NT's API is stable too. It doesn't mean Gtk and ComCtl32 doesn't have abhorrent stability problems and bugs in them.

The issue is, on all platforms, the thousands of libraries each containing hundreds of calls and data structures.


Microsoft broke a lot in the past few years when they got rid of their dedicated QA department(s) but they are very keen of fixing backwards compatibility issues. I can still run my desktop application that I compiled in 1998. Try that on a Mac.


Try running 16-bit visual basic, which I was still writing as late as 2000, on a Ryzen and your analogy falls to bits. I remember the entire win16 to win32 porting effort that had to go in. APIs are never stable forever.

Change is the only constant and I've learned to embrace it where possible or suffer later.


That would actually work fine on Windows 10 32bit. It still has NTVDM and can run 16bit and DOS programs.


No, but Apple does it worst, and the fact that other companies do it doesn't excuse them in the the slightest.


It's completely untrue in my experience working with WWW, GNU, and POSIX. Compared to Android, Apple, Facebook, Twitter, eBay, and many other platforms I've developed for, I feel supported and catered to, and if I have a problem or a question, there is an actual human on the other end to guide me, politely and helpfully.

Developing for Windows back in the day, it was about halfway there. I had zero ability to communicate back to the platform owners, but I rarely if ever felt shit on, disrespected or disregarded. In contrast, on Win32, I felt like everything I wanted to do had already been considered ahead of time, thought through, and there was an existing and elegant solution available.


Untrue, Microsoft is much much more open (yes it hurts to say that) in that regard.


> Apple should be losing devs in favor of other better platforms, not the other way around.

So far, good hardware, close-to-*ix-OS software, and penetration are kind of make them a hard competitor to beat.

What other "better" platforms are you thinking about?


Linux? It's as close to *ix as you can get without time traveling to ancient AT&T sites and beholding original Unix boxen. Good hardware exists, even if it takes more effort to learn how to source it. Penetration shows Linux is about the same minority Desktop OS as macOS is in general (even if statistics among Developers is sometimes lopsided).

Windows? Microsoft hate and distrust aside, they are a company founded for Developers, by Developers and in general the "Developers, Developers, Developers" mantra still resonates through the halls and they try to make life easy as they can for developers. (They publish debugging symbols of the entire OS just about, as a specifically referenced point elsewhere in this thread, which affected the specific complaints of the article. Even all of the "developer unfriendly" complaints about their more recent platforms/SDKs/toolkits have mostly been walked back or are still in the process of evolving.) Just as with Linux systems, plenty of good hardware exists even if it is harder to find. WSL1 and WSL2 provide a bunch of options for how "close to *ix" you want to get. It's hard to beat Windows on penetration, because it is still the majority OS for most of the mainstream world.


System76 is one: https://system76.com/

Edit: and don't forget that ElementaryOS gets you pretty damned close to the Mac UI experience. I personally prefer GNOME, which seemingly steals inspiration from across the industry, so it's different but also really slick (the use of Super/Winkey as both alt-tab and the launcher is genius).


Hmm...maybe. I know several people who have System76 laptops and none of them would say that they're made well. At best they seem to tolerate poor Clevo-rebrand construction out of a desire to support a libre ecosystem. Complaints like needing to reboot to switch between integrated and discrete graphics, low quality screens, extreme fan noise that then interferes heavily with the microphone, and terribly overpromised battery life are the norm. Has something changed very recently?


I have a Sytem76 Oryx as my personal dev machine and a new macbook pro at work. The System76 was much more trouble to setup initially, but has been better in almost every way since then. The Oryx fan can be kind of loud, but the fan on my new macbook is CRAZY loud when it kicks on.

I like the thicker case as well. The mac just feels too flimsy when I'm banging away on the keyboard.


I don't know about older models, but my Lemur Pro laptop (released last summer) has been pretty awesome so far, and their cousins about battery life were spot on.


Honestly, I was thinking on "better" as in "more developer-friendly", especially regarding the phrase I quoted... i.e. Microsoft Windows.

As for myself, I work on Linux systems, so my preferred platform would be a beefy PC with some Linux distro.

Yes, Apple makes good hardware. Or, at least lets say they worked hard on creating a distinctive perception about their quality on the consumer's minds. On the other hand, for some reason people tend to avoid spending similar amounts of money in the other ecosystems (or that's what I feel in my circles). I mean, try spending the same money that you would pay for the latest iPhone or Macbook, and you will get a fabulously spec'd Android phone or laptop.


Ye olde "Thinkpad + Linux" is unironically one of the best options around. I've owned 3 or 4 Thinkpads, and all of them run Linux like they were designed for it. Considering the security issues and hidden analytics in Big Sur, there are plenty of better platforms around. If you're looking to outright replace MacOS, KDE will mostly do the trick. It's super customizable, and contains all of the MacOS idiosyncratic staples (Global menu, dock bar, you get the point). With that, you get perfect Unix compatibility and software freedom, and you're only losing a few proprietary apps in the migration process.


think pads have pre installed fedora or ubuntu dells have pre installed ubuntu system76 was already mentioned with linux preinstalls. and for those wanting to go a step further into the boot chain (sans chip manufacturer blobs), there is purism https://puri.sm/products/librem-14/

personally, I've been really enjoying the Thinkpad 14s AMD - 8 core / 16 thread / 32gb of ram in under 3lbs, shame about the screen though.


System76 is the best linux-first manufacturer I've found.

Second best is Dell[0], I have used two generations of their Ubuntu-oriented XPS 13 or Precision laptops. They're fantastic.

[0] - https://www.dell.com/en-us/work/shop/overview/cp/linuxsystem...


A thinkpad with Fedora?


I wish Apple would just integrate Wireguard into macOS itself. macOS has a built-in option for VPNs in the network preferences but it's shit like L2TP over IPSec.


I don't think Apple cares very much about personal VPNs, only corporate ones.

The number of people who gate a mac purchase on the capability to speak WireGuard is tiny.

I now only connect my macs and ios devices to the internet via external VPN router/firewalls on which I have root; I can no longer invest the time to hack macOS sufficiently to permit me to ensure that no unauthorized traffic is leaving it.

This means none of my iPads or iPhones have SIMs in them any longer, as I take this approach even when mobile (gl.inet makes a travel VPN router with an LTE interface that runs OpenWRT).


I would imagine Wireguard usage in corporate networks to increase in the future, so if Apple only cares about corporate VPNs, surely there'd be reason to implement that as well.

My guess would rather be that Apple at some point cared about corporate VPNs but no longer do, and that option is mainly just legacy.


If Wireguard would be certified and you can have a contract with a company to carry the risk of this VPN solution then it will gain traction. I know that technically it is probably superior and safer, but for regulatory things people might still chose Ipsec


> I can no longer invest the time to hack macOS sufficiently to permit me to ensure that no unauthorized traffic is leaving it.

> This means none of my iPads or iPhones have SIMs in them any longer

If you use Apple products for personal use: you sound like a masochist.

If you are forced to use them professionally: I'm sorry for you.


Neither is true. Android in the stock configuration is much the same, and the hardware is worse.


To the point you feel forced to use your Android phone without SIM?

I bought my android phone for less than 150€ and it does what I need (phone calls, navigation). For everything else I use a debian based distro on my laptop (in some rare case, I dual boot windows).

I really have no issues and I spent way way less than any Apple fan ever will to do basically the same thing.

Let's be honest, most people are willing to pay hefty prices for Apple's products just because of the social status they provide.


The displays on iOS devices already ruin the experience for me nowadays. The perceivable smoothness from a 90-120Hz display still surprises me but now I can't really go back to an older display for daily use. Flagship Android devices also have far more hardware features in general (faster charging, more interfacing options, more cutting-edge "gimmicks," etc.). To be honest, I don't mind iOS, but I'm not really sure what iPhone hardware you think is better or even on par at a comparable price point.


This is exactly why I won't use or develop for Apple products for any amount of money.

I can't justify wasting that much time and stress on a platform that clearly is more concerned with meeting the needs of casual users and media professionals rather than developers or those concerned with freedom, security, or privacy.


> can't justify wasting that much time and stress on a platform that clearly is more concerned with meeting the needs of casual users and media professionals rather than developers

It’s because Apple prioritizes users over developers that they have so many users.


This is kind of weird though, but aren't developers also users? Or are they just small enough fraction of the users?

Probably it just seems bigger here in Hacker News where most of Apple users are also developers...


Apple has poorly documented APIs and locked down platforms and app stores.

Windows has decades of cruft and the OS itself is basically adware at this point with "recommendations" and shit showing up constantly, un-removable foistware, dark patterns to herd you into MS cloud, and loads of gratuitous telemetry. Windows drivers, driver signing, and installers are all horrors that can reduce one to a gibbering lunatic like the poor souls in Lovecraft's fiction. Networking is horrific too, and NTFS is slow.

Linux has fragmentation, fragmentation, fragmentation. There are at least three package formats, two or three inits (though I think we're converging on systemd in spite of its many warts), and loads of gratuitous distributions and sub-distributions and spins of distributions that have no reason to exist except for some minor holy war over some minutia or license holy wars. Oh and the most popular package formats, dpkg and RPM, are arcane nightmares from the pit of hell.

Every time I get mad at Apple I try working with another platform and realize Apple is not that bad. They all suck.


What about BSD? They tend to be less fragmented than Linux. The only showstopper for me with BSD is the lack of docker, but if you are happy not using docker or using jails instead BSD can be a good experience.


I like it, but the fact is that not many people use it and the ecosystem is small. That makes it hard to convince more people to use it due to difficulty hiring, staffing, getting answers on forums, etc.


I can't believe great, generous people in their best intentions keep developing FOSS for a closed platform like Apple's.

Do they want a closed platform? Let's give it to them. Stop developing FOSS for Apple. It's a "market share" I'll happily give up (and I did already).


My dearest Jason, please just stop wasting time on the closed crApple platforms with all the censorship these days. Your talents can be put to better use. If crApple users want to use wireguard, they can switch to linux or windows. In fact, this will benefit all of us.




Consider applying for YC's Summer 2025 batch! Applications are open till May 13

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: