Come on, Apple. What are you doing? I was thinking just the other day that Apple should virtualize older iPhones within the latest iPhone system software, so you could seamlessly open old apps and games (32-bit, anyone?) in their own containerized environments. I can't think why they haven't added this feature for any reason other than money grubbing.
You could even customize the containers to be completely closed off from the rest of the iPhone—no contacts, no Internet access (or high security Internet access), etc.
Come on, Apple. Do something good for once. Oh and bring back the headphone jack.
For better or worse it's never been Apples MO to keep software working forever, that's Microsoft's schtick. PPC OSX software is gone, x86-32 OSX software is gone even on hardware that could still run it natively, AArch32 iOS software is gone, and if history is any indication it's only a matter of time before x86-64 OSX software is gone too.
One time I had to run a very old version of Eagle CAD on Linux and it turned out that even tho I had a native Linux version, it was easier to run the windows version in wine! I guess stable interfaces have their advantages.
I have a half-joking, half-serious thought: has anyone written a desktop environment for Linux that uses the Win32 API? Since Win32 is much more stable than Qt and GTK, it would be easier to target that API. The side bonus is API compatibility with Windows.
This might not have been viable 25 years ago when KDE and GNOME were in their infancy, but WINE has come a very long way since then. Standardizing on Win32 would eliminate the churn of dealing with Qt and GTK major version revisions.
> Standardizing on Win32 would eliminate the churn of dealing with Qt and GTK major version revisions.
What makes it so hard to write a GUI toolkit that is long-term (say for 25 years) backwards compatible. If Microsoft is capable of doing this, why can't open-source developers?
In the Linux desktop world, there is no single entity in control over the entire software stack ranging from the kernel all the way up to the desktop environment. In a typical Linux distribution, you have the Linux kernel (run by Linus Torvalds), various command-line tools written by many different developers and managed by different projects (some of them are part of the GNU Project, but others aren't), some type of display system (this used to be solely X11, but Wayland is growing in popularity these days), one or more GUI toolkits (Qt, GTK, some custom ones), and a desktop environment (typically KDE or GNOME, but others exist). The goal of a Linux distribution is to take these disparate parts and present a coherent system to the user.
The problem, though, is that because the Linux desktop is made up of disparate parts from separate teams that have separate, often competing visions for their roles in the Linux ecosystem, often major changes are made with little regard to how they affect the system as a whole. This is the essence of the lack of control over the entire software stack. Thus, the developers of X11/Wayland, Qt, GTK, and other infrastructure can make breaking changes, and application developers relying on those subsystems have to either adapt or lobby for forks. Thus, the churn.
By comparison, Microsoft is in full control over Windows, and Apple is in full control over macOS. Even the BSDs are in full control over their base systems (for example, OpenBSD isn't just a kernel; the OpenBSD team also has control over the command-line tools that make up the base system), though I'm not aware of any BSD (besides macOS) that is in full control over GUI environments. It's not to say there is no churn in these environments; indeed, macOS does not prioritize backwards compatibility like Windows does and thus there's some churn macOS developers need to deal with in order to keep up with the latest releases. But there seems to be a lot of churn at the GUI level in the Linux desktop ecosystem.
It baffles me as to why. I think it’s hilarious how Linus is so careful to not break user space (for good reason) and all the user space libraries break every week.
Because every distro runs it’s compilers with a variety of flags and safety features and library versions and ABI quirks that make supporting stable ABIs a pain in the butt.
Distribution maintainers pretty much do whatever they want with the OS level ABI. That on top of whatever those user space libraries want to do anyways makes native application ABI stability basically impossible.
Again, how do Windows and macOS (to an extent) solve this? It’s possible, just not incentivized. Show me the incentives and I’ll show you the outcomes.
I think the main thing is that it's common for apps to bundle their dependencies. The default for Linux is to use the system libraries for everything - not just glibc but also things like zlib, libpng, etc. As a result you have to go to significant extra effort to make a portable binary app, e.g. linking against musl.
That's one of the attractions of Go, and to a lesser extent Rust; it's way less work than C to get a portable binary.
I think 90% of the problems I've encountered are due to glibc. They could easily fix all of them by adding a GCC flag that would allow you to compile against old glibc versions.
They'll never do that though because they are ideologically opposed to it.
Back when IDA Pro for Linux & macOS was finally released, they decided to make every OS a separate license purchase. The net result of this was that every single person I knew who used it just kept buying Windows licenses and using it under WINE when they wanted to use it on their other computers.
You make a good point. It was kind of the breaking point for me when Apple killed 32-bit executables, because it meant even old steam stuff couldn't run.
But that's a casual consumer viewpoint. It's valid to buy them if they solve your problems in the here-and-now. (I used one for a year at work and it was a bad experience, but a lot of that was having x86 libraries I had to use, so... Bad choice for here-and-now.)
In addition to this, Steam provides an option for developers to expose the older game versions to the players, which Valve themselves make an active use of. So if you have a specific old mod that’s not compatible with the new update, or don’t want to deal with the update in a middle of playthrough, you don’t have to upgrade
Maintaining the build artifacts and pipelines and testing backward compatibility for a long-lived project like HL2 must be pretty difficult, I would think? That’s a great example and counterpoint.
I think it's likely x86-64 support (via Rosetta) will continue for quite some time.
Rosetta is giving Apple a competitive advantage by being able to run x86-64 binaries in VMs (Linux or maybe even Windows) at near-native speeds. This enables doing cool things like running MS SQL Server in a Docker container - which enables developing on a full local .NET stack on a Mac.
Having tried both, I would in fact say that WSL is a huge advantage for Windows over the Mac in many cases. Sure, the Mac is a *Nix, but there are lots of small differences from Linux that cause issues. WSL runs very, very well.
I suppose allowing developers targeting x86_64 Linux to still use Macs and the power efficiency of ARM CPUs, since I don’t think (maybe wrong) that ARM Windows machines support emulation inside WSL.
But that’s more feature parity with x86 Windows machines, not an advantage.
Perhaps there will be an intermediate step where they drop support for x86-64 executables, but retain support for x86-64 virtualization. That would still let Apple slim down the macOS system frameworks to a single architecture like they did previously when they dropped the x86-32 frameworks.
There is no support for x86-64 virtualization on ARM Macs. Do you mean dropping support for Rosetta for macOS apps but keeping support for Rosetta for Linux VMs (which run ARM Linux kernels and use Rosetta to support x86 userspace software)?
Yeah, that's just their MO. I think it's easier to run old windows games on a mac than to run old mac games.
And architecture aside, at one point I had to install an old version of iWork (I thin it was '09) to update a file so the latest iWork could read it. They had code on hand that could read those older files, but decided not to integrate it. They don't prioritize backwards compatibility.
32bit ARM and aarch64 are wildly different instruction sets. 32bit ARM may as well be x86 or MIPS as far as running it on aarch64 hardware, it is going to require just about the same level of emulation(memory models may be similar which would help, but that's about it).
Unlike x86/64, the 32bit silicon is entirely gone in most aarch64.
X86S allows 32-bit ring3 (userland) but even VMs are stuck in long mode and only support 32-bit code for userland. Booting a VM for a 64-bit OS that has a legacy bootloader with 16-bit or 32-bit code would require software emulation of that code.
32-bit applications are still pretty ubiquitous, including Office add-ins, and there is no particular benefit on x86 in removing support for 32-bit on the application side.
Apple does a lot of good stuff, But remember that their whole business model is selling hardware. They have no financial interest in making it easy to continue to use old phones.
They have to maintain a balance that still incentivizes current purchases. Otherwise it’ll be a constantly trend of “don’t buy now, support might not last.”
In terms of length of official support, and aftermarket value, Apple is at the top of the game. Those strike me as the most important metrics here.
And while you might think that once official support is over, that's the end of the story, this is far from true. Those phones end up in developing markets, where there's an entire cottage industry dedicated to keeping them going. Jailbreaking is getting harder, so that might stop being an option eventually, but so far it's viable, and that's what happens.
This isn't as true as it used to be, now that Apple is getting increased revenue from subscriptions. If your old iPhone continues to work well, then Apple has a better chance of selling you Apple Music, Apple TV, etc. etc.
Old phones no, but old apps yes. If a developer has abandoned an app and hasn't been investing in the update treadmill, but end users still care about it, that can make people feel negatively about Apple.
> Old phones no, but old apps yes. If a developer has abandoned an app and hasn't been investing in the update treadmill, but end users still care about it, that can make people feel negatively about Apple.
On the other hand, it is well within the standard Apple approach to say "here's how we want people to use our hardware. We are well aware that this is not consistent with how some potential and past users want to use the hardware, but we are comfortable with losing those customers if they will not adapt to the new set-up."
I know it's not the Apple approach, I'm just pointing out an interpretation that it isn't particularly focused on end user needs in this area.
I feel like it's mostly an attitude about where to focus engineering resources, which is very "inside baseball", but people have post hoc justifications that it's really what end users want anyway.
> Apple should virtualize older iPhones within the latest iPhone system software, so you could seamlessly open old apps and games (32-bit, anyone?) in their own containerized environments
What is the practical, broad use case for this? (And can't you virtualize older iOS version on a Mac?)
> bring back the headphone jack
The article is about Macs. If you want a headphone jack, get a 3.5mm:USB-C converter.
Speaking of headphone adapters. It’s crazy to me that something like an iPod released in 2005 will output better audio when playing a lossless file than the most state of the art $2,000 iPhone with Apple’s most state of the art $549 headphones in 2024.
The remarkable thing is that 90% of listeners don’t seem to notice.
Their reference point is a lossy 128kb/s file from a streaming service double transcoded over bluetooth so that must be what music sounds like. Who would have thought technology would progress backwards.
What streaming service even does 128kb/s?
Youtube is the only one that comes to mind and that's for free usage only. Paid accounts get 256kbit AAC
Spotify uses OGG Vorbis codec and streams at 160 kbps at standard bitrate and 320 kbps at high quality
In addition to AAC, the entire Apple Music catalog is now also encoded using ALAC in resolutions ranging from 16-bit/44.1 kHz (CD Quality) up to 24-bit/192 kHz
Amazon Prime Music at 256 kbps
That's about 99% of the streaming music market people actually use
> remarkable thing is that 90% of listeners don’t seem to notice
That's not a remarkable thing, it's the reason.
(And out of the remaining 10%, a good fraction may notice but prefer the new convenience. Those who remain can find the difference between most and all, or go corded.)
>Their reference point is a lossy 128kb/s file from a streaming service double transcoded over bluetooth so that must be what music sounds like. Who would have thought technology would progress backwards.
The only major streaming service that doesn't do lossless is Spotify.
Further just about no one is going to be able to tell the 256kb/s AAC that the iPhone sends to headphones across bluetooth from the lossless audio file.
Also, portable headphones have progressed leaps and bound since 2005 and they'll all basically sound better playing over bluetooth than the portable headphones that were out in 2005.
Of course to make this strawman argument you have to ignore the previous comment that says you can do wired connections just over a different port type.
Let’s also ignore any understanding of the DAC quality between older iPods and newer iPhones, where even the dongle Apple sell are considered a high quality DAC.
Let’s also ignore any advances in Codecs in that time, or advances in audio hardware itself.
Let’s also ignore that most iPod users would have bought low quality MP3s or medium quality AACs at the time. Not to mention that most customers use streaming today so wouldn’t even be able to take advantage of the higher quality codecs today.
Finally let’s ignore customer preferences and what niche set of customers would have bought high end enough audio equipment and have the hearing to appreciate and also not want wires today to even fall into your narrow band description.
Who would have thought that if you ignore all aspects that are inconvenient to an argument that you could make any argument you want?
And they’re listening on AirPods or whatever stuck on their ear. I have AirPods 2 Pro and sure, they sound nice. Less sweaty on the treadmill. But even a $100 DJ headset from a $200 streamer blows it away.
>I have AirPods 2 Pro and sure, they sound nice. Less sweaty on the treadmill. But even a $100 DJ headset from a $200 streamer blows it away.
Doubt. Doubt. Doubt. Airpods Pro 2 are actually decent headphones worth the amount of money they are. They are most definitely better than $100 DJ headsets.
Yeah.. Those aren't as good or as accurate as the Airpods Pro 2. They are very bass heavy and muddle mids and highs where the Airpods Pro 2 are much more neutral in sound signature.
Now if you like it that way, great! But that doesn't mean the headphones are objectively better than the Airpods Pro 2. It just means you like those ones better.
I mean, if you need the backup, you do that and I’ll get popcorn. I’ve never seen anything on Reddit get agreement. Even r/FuckTedFaro had someone arguing he was just misunderstood.
I don't think almost anyone actually want a headphone jack anymore. Just the consumer reality in 2024. I do obviously, but it's clearly too rare for them to bother with.
Not who you are replying to but my $30 wired Apple earbuds (came with my 6S) have outlived all of my co-workers half dozen $160 AirPods. That’s reason enough for a lot of people.
You can buy Apples wired earbuds with the lightning connector for $18. Or the lightning to 3.5mm adapter (that’s what I have because I also still have my decade old original earbuds).
My wired Shure in ear monitors have much better sound quality, and battery management on AirPods is pretty annoying. Even when they’re not running out mid-trip, it’s just unnecessary mental overhead to keep another thing charged.
I don't daily drive my phone for commuting anymore, but the trade-offs aren't exactly new:
- battery frustrations
- cost of a dozen cheap but good quality headphones vs a wireless equivalent
- easier to lose wireless headsets when you put them down somewhere (wired too, but way cheaper so less big deal)
- audio quality? Who knows
For people that demand noise cancelling, you need an active power source, but I personally hate noise cancellation and always turn them off. Maybe valuable in a plane with lots of engine noise.
Yes people seem happy to buy not only new phones every couple of years but new accessory devices as well. I don't understand it but it's quite apparent.
I find it very practical with small Bluetooth earbuds, but I agree on the consumption aspect of it. I really don’t like that I can’t change the batteries in my AirPods. I would even be semi-okay with having to hand in them to a technician for battery exchange, for a reasonable cost. But the current battery exchange for airpods is just another name for buying new earbuds. And the third party solutions that actually change the batteries cost about as much as new buds.
Someone would have to maintain all the old OS versions that would be required to run those old apps, and keep those OS versions reasonably secure. That sounds like a maintenance nightmare to me.
No, the old versions would not have access to anything else, so the only thing that needs to change is the part running the container. Present one folder as the whole disk drive to the old. Send touch screen input to the old. That's about it really.
If you're trying to play older 32-bit games, chances are you'd like to have sound, too.
Who is going to develop the virtual audio device drivers (for each OS) that are required to virtualize sound? Who is going to run all the tests needed to make sure that the guest-side 32-bit iOS 7 (and 8, 9, 10) drivers are going to play well with the host-side driver?
Who is going to accept the risk that someone takes over the guest VM after exploiting one of the well-known and unpatched kernel-level vulnerabilities present in iOS 10? What happens if malware finds and exploits a bug in that new audio driver virtualization pipeline so it can escape the VM and then compromise the host iOS?
yeah it's much better to lose access to games you've paid for. this is why I stopped buying apps on Android - if it's not open source, I'm not interested. I also don't buy DRM stuff unless I know I can remove the lock.
For Apple Hanlon's razor rarely holds, they're both too competent and anticonsumer for this sort of thing to not be intentional malice in an attempt to sell more stuff. Maybe not, but very unlikely and even if it's a bug they'll probably call it a feature and keep it.
This is one of the things I dislike about hacker news: People responding to what is clearly emotional hyperbole as though it were a literal statement.
The OP expresses disappointment with Apple -- exactly what the cause was is unstated. People are allowed to have such feelings. I've had them myself. In recent years, Apple has killed things I liked and pushed a lot of services/login crap I have zero interest in. Other people like the new changes. That's OK too.
Nobody wants to read emotional hyperbole when it's just an excuse to lie or exaggerate instead of being truthful or accurate. It's more common than not to find people expressing disappointment with Apple online who are lying, ignorant to the point that their complaint is just incomprehensible, using long outdated and incorrect information, exaggerating the problem to the point of absurdity, or applying expectations or standards that literally no company or alternative product on Earth meets. A good chunk of the time you can even get people to reply in a way that betray the fact that they never even owned or used the Apple product they're complaining about, they're just seeking upvotes or karma with easy and popular sentiments even if they're factually wrong.
Holding Apple accountable and having a negative opinion is fine, but it's a fairly rare thing to find someone online doing it in good faith.
I agree that feelings are okay. But also the internet and society is so overloaded with emotional hyperboles. I like with HN that a lot of people make the effort to be bit more diplomatic, less aggressive and more based in facts than most online communities.
I read it as polarisation against Apple. As in what follows is not to be taken literally, but as a diatribe. The message being, in essence, "I don't like Apple." If that wasn't the intended message, OP is right--the comment is stronger without it.
It's not leaked. It was posted publicly to YouTube, which is where I watched it. It was the first or second video in my recommended feed. I even left a comment, "Thank you, Stanford, for uploading this talk for us." which Stanford put a heart on, pinning it to the top of the YouTube comments: https://i.imgur.com/LSi6mqN.png
It was a good talk on a technical level. My guess is he ran into trouble when he briefly criticized modern Google's corporate culture when it comes to work-from-home?
The main thing is the funny anecdote about Lua that I shared over there. I'll post it here too. We used Lua for all of the visual programming for the music tracks. This was not allowed by the 2008 App Store policies. We decided to just rename all our .lua files as .cfg (.config?) to obfuscate our rule bending. After the app blew up in popularity, Apple eventually reversed course on this rule.
Seeing the creative ways developers got around Apple's rules, which were even crazier back then, was interesting. I recall downloading HandyLight, a supposed app that lit up your screen in different colours... that was actually a secret mobile hotspot app that allowed wifi tethering before Apple did. Everyone had to scramble to download it in the narrow slice of time between word getting out what it did, and Apple removing it.
I had fun Jailbreaking too and installing Cycorder so I could record video on my iPhone 3g. Good times.
One interesting fact about the game. We designed all the levels around Lua, which was officially banned from the App Store when we were making it. I remember deciding with the other main developer, that we should rename all our .lua files, .cfg (.configure) to buy us some time.
Ultimately, Apple eventually changed the rules to allow for this.
I don't recall Tap Tap Dance, but I loved Tap Tap Revenge!! One day I want to get an old iPhone or iPod Touch and jailbreak it and load up some of those old games you can't get anymore. I've always loved music games, and that was back around 2009 on my first iPhone and in the Rock Band era. It was great to be able to play a music game while on the bus.
I remember the App Store rules being even more draconian then than they are now - I recall a brief period where they tried to ban even tools that transpiled other languages into Objective-C by making a rule that all apps must be originally written in Objective-C. That insanity didn't last long, obviously. Now half of apps are React Native.
By the way if this post was supposed to be a link somewhere, it isn't working.
Loved working on those music games. And that we have a nice document of some of its creation in the video above. I have great memories of working on the series, spread out across Champaign, IL (home of UIUC), the NYU Tisch Center, even a restaurant in Montreal.
Steve Jobs even demoed Tap Tap Revenge at an iPhone keynote in 2009! Our little game!
> At the end of each difficulty tier, you unlock a new song that's accompanied by art specific to the track. Daft Punk's "Technologic," for example, has an old-school TV screen that flashes images and the band's name as notes stream down bars that are much shorter and shaped differently than the main game screen. Moby's "Disco Lies" also uses short bars that unfurl from what looks like the mouth of an alien designed by a nine-year-old using MS Paint. (And that's not a slam to the artist -- I think it's very cool.) Once you finish a boss track, that song become parts of the track list on the next tier.
> Unless you want to stab your ears when you hear techno, Tap Tap Dance is the best music game on the App Store right now. The note placement and control sensitivity is just right, making it instantly playable to anybody. But Tap Tap Dance doesn't hold its fire. By the time you reach the hard tier, you are getting a serious thumb workout. With excellent song selection and super-cool graphics, Tap Tap Dance is a pleasure to recommend.
What video are you referring to? This post is just taking me back to this same page, I'm not seeing any video link. Maybe I'm missing something.
Getting Steve Jobs personal acknowledgement must have been pretty amazing. That's a good sign you paid attention to detail. I do think I can recall the visual customization done for specific artists and tracks, was very cool. Style matters alot for the vibe in music games, the attention to it is one of the reasons I always preferred Rock Band to Guitar Hero.
Thanks for the cool game! I was actually at uni for game development at the time and as one of my major projects I made a design document for a DJ music game. The Tap Tap Revenge series was definitely an inspiration and contributor to my love of music games at the time and I had alot of fun playing it. May have been one of the first few apps I ever spent money on.
It's making me nostalgic for the time when my smartphone was a new, cool, and fun device and not the addictive attention span sucking portal to hell it is now.
Oh I think you might have an error in your submission. I don't think it's correctly linking to the youtube video, but I've just found it searching on youtube.
Unfortunately a reality if you care for vintage iPhone games. Piracy is sometimes the last line of defense for game preservation.
In our case, a group of hackers have released a fangame that is in many ways equal to a modern Tap Tap Revenge, and it can be found here: https://taptapreloaded.com/
Apple's conduct is what I'm sad about. It's shameful that their walled garden destroys legally-legitimate and easy ways to use software that they arbitrarily deem "old". They've conditioned the public to just accept this (both end users and devs), and that's ultimately what fills me with crushing sadness.
This may be technically correct, and I do have .DS_Store in my global, but I also put it in projects, because I know not everyone on my team is going to do that. I add it to the .gitignore in projects to save me from other people junking up the project. It’s a lot easier to add some lines to a file than it is to micromanage the global file for every potential future contributor.
This touches on something I've learned to be more mindful of: the "right answer" (especially to a techie) is often not the right answer in real world cases.
I’m fine with the occasional .DS_Store getting added, because you can just remove it afterwards. Most of my work is either my own projects or at work, and whether people at work commit .DS_Store files is a question that touches on code reviews, company onboarding guides, etc.
Maybe the benefits / drawbacks would be different for an open-source project with a lot of contributors.
Playable in the Browser on COMPUTER KEYBOARDS.