back
165 comments
One of the reasons I’m very for open-source (including all my code) is for the reason that porting is easier. It seems like the gripe should not be with Apple changing processors (or OS’s or hardware features or ...), but rather that (especially commercial) software is so fragile to medium-term environmental change. Binaries are just not very resilient artifacts, especially when they so closely depend on their surroundings. High-level programming language code, on the other hand, is much more resilient.

It’s also a reason I use Lisp: the spec doesn’t change and won’t change. Stuff runs forever.

Bingo! It’s boil-the-ocean level crazy to attempt to recreate the environment for a particular file, when the sensible approach would be to just have the file format and it’s reader/viewer software be open so it can be recompiled or ported to any new platform. The blame/responsibility lies not with those innovating on hardware, but those who have created brittle software systems which have no ability to adapt to the changing environment.

Yet another example of how holding binary artifacts is not functional equivalent to “owning” software.

"Adapting old programs to fit new machines usually means adapting new machines to behave like old ones."

Epigram 120, Alan Perlis.

http://www.cs.yale.edu/homes/perlis-alan/quotes.html

> Binaries are just not very resilient artifacts, especially when they so closely depend on their surroundings.

Depends on the platform. I can run statically compiled Linux binaries that were released 20 years ago just fine. Similarly, I'm able play Windows games that were released over 20 years ago.

Which was, in fact, a lot of the impetus behind open source generally early on. And even the less formal sharing of Unix source code given that it was written in a high-level language and could therefore be relatively easily ported to new systems.
Binaries are just not very resilient artifacts, especially when they so closely depend on their surroundings. High-level programming language code, on the other hand, is much more resilient.

That’s a modern phenomenon. AS/400 or Solaris binaries were different.

Will Lisp ever specify concurrency as part of the specification ? Standard well-supported concurrency is vital for any modern-day programming language. Without that, common LISP is relegated to the realm of gradually dying languages.
+1 right on.

I would like to see more companies open source their commercial products after maintaining them is not cost effective. I would like to see mostly open source code, period.

re: Lisps: I have been using Common Lisp since 1982 (and other Lisps before that) and I love it that my old code and archives of other peoples’ Common Lisp code usually runs with no problems.

Right... Let me know how Python 2.7 code runs ina few years.
This is just a problem with technology generally and digital archives. It's part of the reason why the Internet Archive exists and its mission keeps expanding (thankfully). This is hardly unique to the Apple Silicon moment, especially as the author's concerns largely date back to M64 and PPC days.

I'm certain an open source x86 emulator on ARM will get done (QEMU already?), as these requirements aren't specific to Apple Silicon (although will likely accelerate it).

But if the author is concerned about PageMaker and old zines, why not run the original in something like SheepSaver that emulates PPC? Surely that port will exist (ARM -> PPC) with no need to run old Intel Mac apps.

For PPC Mac emulation specifically, QEMU has been making strides in the past couple of years. It can competently run several versions of Classic Mac OS as well as OS X up through 10.4. 3D acceleration is still missing, but last I checked was in the works.
As someone who went through the PowerPC->Intel change, it was very smooth. At some point Apple decided that the translation layer would not be supported in the new OS (leaving 3 applications for me to unexpectedly stop working, as I had forgotten they weren't x86 apps). Probably why they had pop-ups telling us the old 32 bit applications would stop working recently.

Apple could have made "Rosetta 1" open source for enthusiast to maintain. They didn't. I doubt they'll do it now for Rosetta2.

Apple does this all the time, pushing aside the old to make way for newer stuff. (MacOS before X, 32/64 bit, a lot of my old iOS apps just stopped working with a note to contact the publisher). My my old snow leopard machine stopped working getting updates from macOS and became useless, but will run windows/linux. Software support requires endless maintenance esp on mac, and Apple limits support to the last 5 years (or so) of machines.

The "WinTel" (is that still a term window/ intel) machines seem to bend over backward for legacy applications to still run, which is part of their appeal (esp to business), but probably saddles them with technical debt. The "new" cost of lower performing machines and shorter battery life, is software lifespan.

This is an anti-technology point of view. It's astounding to read (on HN of all places) a complaint about this major new processor advancement, because it won't support all his legacy desktop apps.

Technology can't simultaneously progress while still remaining backwards-compatible for years or decades. As another commenter here says: just use an old computer to run your old software. When your old computer breaks, buy another on ebay. Ebay won't run out anytime soon.

While I agree the issue is most certainly real, I feel that Apple Silicon is the scapegoat. Computing platforms need to evolve in order to progress, and sometimes the burden lies on developers to keep up. I think this is more of a story about legacy software compatibility and lack of open source solutions.
This is a strange complaint because PageMaker etc are document editors which produce paper documents - or PDFs in the worst case.

There's no benefit to archiving the source files and demanding they be opened on new hardware because the historical interest is in the content. And the content hasn't been edited for decades and won't need to be edited in the future.

If you really need the content you can pull it out of a PDF or scan it from paper. And if you really need to preserve it you can scan or screen shot the source files - which takes work, but so does setting up old software on new machines. (Probably at least as much considering how hard it is to emulate an identical operating environment with all fonts, deprecated image formats, and so on.)

So this makes as much sense as complaining that MacOS or Windows don't support the ancient professional magazine typesetting systems that used to run on minicomputers.

The files for those are doubtless backed up somewhere - probably on mag tape, possibly in landfill - but they're culturally irrelevant because the output has either been scanned and put on the web or simply forgotten because it's of no cultural value.

The bigger question is why there's a cultural fixation with preserving every last element of the past. It makes sense for content of record such as newspapers and certain magazines, but it's hard to understand why a crossword puzzle magazine for seniors from 1982 or a zine that only ever had twenty five readers needs to be preserved.

And what's going to happen 25 years from now? Are we going to have the entire archives of YouTube, Spotify, Facebook, IG, and Twitter to sift through?

Would we want to, even if we could?

I'm all for archival, but "help us access these files in the future even though people aren't bothering with accessing them now" is an odd request.

The time to access those files and migrate them into more durable and supported formats is right now. Or 5-10 years ago for that matter.

> In a perfect world, someone would write a Mac emulator that lets you emulate a High Sierra Mac on Apple Silicon hardware, just like SheepShaver lets you emulate a PowerPC Mac on Intel hardware.

OR... or... there are computers other than Apple's. Computers which could be used to emulate an x86-64 Mac without having to deal with ARM translation because they're x86-64 based themselves.

The author's viewpoint is so Apple-centric that the idea of this digital archaeology happening on something besides Apple hardware didn't even enter the picture.

Is this Apple's fault? Processors change architecture. Code becomes obsolete. I don't want to minimize the problem the author is decrying, but it doesn't seem like specifically Apple's fault.

That being said, why write an emulator to ARM? Apple Silicon will die someday as well. Write an emulator to JavaScript. If there's a day where JavaScript isn't a valid platform, we'll probably have transcended physical matter by then. There's definitely prior art in browser emulators too.

This article seems to laying a lot of blame/duty on Apple for reasons I don't think are very valid. The author even recognizes the fact in the piece.

If there is anyone to lay a duty toward, I would argue it's the developers (Big developers, like Adobe) who could contribute directly in providing code/documentation for their legacy formats.

I had to convert some ancient college stuff I had done in PageMaker 4, and it was bizarre enough to do it using a mixture od DOSBox and Windows FLP on Parallels, so I fully get this.

And it's not "just" the software or the architecture or the OS, sometimes things like fonts (and other minor things) get in the way. But it's amazing to unpack an old Windows binary from 1994 and having it _just work_:

https://taoofmac.com/space/blog/2020/10/24/2100

I feel an enormous amount of sympathy for those suffering from this issue, but part of the problem is that these are closed source programs and document formats.

> I opened PageMaker 4 files in PageMaker 6, opened the PageMaker 6 files in InDesign CS6, and opened the InDesign CS6 files in InDesign 2020.

If these applications (or even just the file processing parts of them) were open source, it would be much easier for someone to port them to the new platform than for someone to write an emulator for intel macs.

File formats are the real lock in, not operating systems.

Keeping people on Windows was never Microsoft's goal - the real lock in is the .doc/.xls/.ppt (and newer "Open" XML versions that aren't really that open), and keeping them buying Office or SaaS offering year in and out so they can open older files.

GSuite and Libreoffice are more of a threat to Microsoft than Linux ever was...

I'm not so concerned about the Intel versions of macOS in the near future, because there are a lot of x86 processors out in the world, and most of them can be hacked to run macOS.

macOS is a little strict about processor generations—in order to run Mavericks (10.9, circa 2013), I had to build my Hackintosh around Haswell—but I think a kernel developer could get around this by lightly modifying macOS's open-source XNU kernel. There are custom Mavericks kernels that work on modern Ryzen processors, for instance[1].

The graphics side of things is admittedly a bit more worrisome—macOS doesn't work with all that many GPUs, and none of the driver code is open source. Graphics acceleration isn't strictly necessary, but you will have a gimped experience without it.

1: https://macintoshgarden.org/apps/custom-kernels-ryzen-proces...

I have no background on PageMaker etc. but this is a perfect example for why fully open, well-documented file formats are an absolute requirement in computing today.

If you have a .xyz file but not the ability to write software from scratch to read/write/manipulate this file as needed, you cannot consider access to that file to be permanent.

The author never clarified why SheepShaver and other emulators can't be made to work on ARM.

SheepShaver in particular already works on PowerPC and Intel so clearly they structured the code to support multiple platforms. Instead of trying to get Apple to open source Rosetta 2 maybe instead focus on adding ARM support.

I think this is not so much a gripe about Apple's new chip, as it is the painfully fragile nature of maintaining access to anything digital made in closed formats.

We are, for good or ill, the first generations for whom more of our 'legacy' is digital, and as much as there's the idea that anything on the net is forever, the reality is that more is lost, perhaps forever, than is magically, infinitely available.

Future humans (and AIs) will reverse engineer old file formats for fun. As long as the data is there, it will be readable.
Just out of curiosity, has anyone ever reverse-engineered the PageMaker file formats?
The most surprising part is that LiveJournal is still around.
Someone using livejournal in 2020 is complaining that Apple’s new M1, won’t open their quark publishing app from 1998.

this is front page on HN?

"writing an emulator for x86–64 on ARM is a huge undertaking, something beyond what an open source project is likely to do" - There are already open source projects that have tackled complex emulations so I feel like this isn't unlikely in the long term but maybe true in the short term.
I understand the author's fears, but the things he is afraid of have absolutely nothing to do with Apple Silicon.
The striking thing to me was how much easier these conversion tasks would be, if the author truly insists on using new hardware, with a new x86-based PC. All the software the author is worried about existed on Windows, and those old Windows versions are easy to run in Virtualbox.
Apart from the fact that this is a somewhat niche complaint (and that has been covered by many other comments), I in general am still flabbergasted to this day that the basic promise of source code -- compile it under a different machine and platform and it should work -- somehow doesn't hold.

But I know that's not the fault of the tooling. Sometimes it's the fault of the OS / framework vendor for aggressively deprecating stuff (like Apple does). But most of the time my observation has been that a lot of companies simply won't budge and won't even hire an intern to try and recompile their app for the new platform. Sad.

My old man is going through a similar thought exercise right now. He is a retired hardware engineer/software entrepreneur who built a few businesses on top of SCO's Unix back in the day. All the licensing (and floppys) are long gone but there exists a few towers that still boot. In the spirit of archiving all his work, he is now systematically DD'ing the SCSI drives onto external usb harddrives, moving them onto modern hardware and creating bootable VMware images. I am sure that once VMware and etc catch up with the new Apple Silicon/ARM instruction, we won't be hearing much from people like the author who fear architecture and technology changes.
Hmm, LibreOffice (via libpagemaker) can read PageMaker and it is open source and runs on ARM so it should work on Apple Silicon at some point. Also pmd2odg (from writerperfect) can use libpagemaker to convert PageMaker files to OpenDocument
I don't understand this attitude at all. The existence of new platforms does nothing to affect legacy software or hardware. And when these things eventually break, that's OK. Not everything needs to be forever.
I'm more worried about software that relies on temporal things - like internet services being accessible and running still, for example. Such external dependencies are a worry for retaining old software.
Perhaps archiving to PDF is the right solution to this specific dilemma?
> But for various arcane technical reasons, writing an emulator for x86–64 on ARM is a huge undertaking, something beyond what an open source project is likely to do. I honestly don’t see the open source community writing a Mac emulator that will run High Sierra on Apple Silicon. Emulating x86 on ARM is an enormous project, one that requires a well-resources company to do.

A company like Oracle or VMware? Lots of developers are going to not just want, but need Docker to run properly. Just be patient and pipe down.

And don't forget all the email history trapped in .pst files

Imagine how much more we could know about the motivations of Galileo's inquisitors if we could read their archived email.

You can run macOS in a QEMU VM.
It seems that proprietary software and mindless dependence on it has been killed the legacy; not the change or evolution of hardware platform.
It's a solution with a lot of its own problems, but old hardware can help mitigate a lot of this. I can easily run software written for any Apple platform back to the original Apple II (along with several other non-Apple platforms) on original hardware. I'm not suggesting everybody with an interest in old data hoard old machines like me, but perhaps organizations like the Computer History Museum could make available machines for accessing, converting, and saving old software and data to those who need it (possibly for a fee).

And for the specific items in this post, it's not as if anything is an emergency right now. It's reasonable to expect that working Intel Macs will be around for decades to come, just like you can find operational 68K and PowerPC Macs without much trouble right now. It's actually gotten easier to get data on/off a lot of old machines with time, due to things like floppy emulators, SCSI2SD adapters, serial to WiFi adapters, etc. The author could buy a G4 capable of running OS 9 and OS X for less than $100 if they wanted to, and it would still easily connect to modern networks, access modern USB drives, etc.

All hardware will die eventually, but that's going to happen regardless of any processor transition, and there's just no way that these same problems are going to be entirely prevented by sticking with x86 forever.

I do hope somebody comes up with a (non-Apple/Rosetta) x86 emulator for Apple Silicon Macs, sort of like VirtualPC for PowerPC Macs.

Game console emulators simulate entire chipsets in memory that have nothing in common with the underlying hardware. This approach doesn't perform nearly as well as virtualization, of course, but it would be enough for preservation purposes. What's stopping people from doing that with legacy Apple architectures? Is x86 just too complicated?
Just use an old computer
It would be awesome if operating systems had super-powered file type detection, to the point where you could double click a “ancient” file format and it would download the correct “ancient” program and run it in the correct emulator transparently.
This article applies to every architecture and os transition that isn’t backwards compatible.

PDP->intel meant we can’t run pdp code (oh wait many banks now just emulate PDPs running cobol)

macOS: 68k->ppc, ppc->intel, and now intel->arm. macOS <= 9 to X

Etc

> InDesign CS6, the last modern app that can read a PageMaker file, won’t run on new versions of macOS because it’s 32-bit only.

Does the author not realize that emulators exist?