Showing posts with label iphone. Show all posts
Showing posts with label iphone. Show all posts

Monday, February 2, 2026

The iPhone Triple Zero Meltdown

The iPhone Triple Zero Meltdown is a textbook example of a safety regression, where a software patch meant to fix a critical vulnerability ends up creating a larger disaster.

The incident sent shockwaves through the Australian telecommunications industry and resulted in tens of thousands of people not being able to call Triple Zero / 000 (the Aussie equivalent of US 911 or UK 999).

1. The Goal: fix camping on

Following an Optus network outage in late 2025, Aussie regulators discovered that older 4G phones had a lethal flaw: if their primary network (e.g. Telstra) went down, the phones couldn't always "camp on" to a backup alternative network (like Optus) to dial emergency services.

To address the problem, Apple proactively released an emergency patch (iOS 16.7.13) specifically to fix the emergency service failover logic on older devices (like the iPhone 8/8+ and iPhone X). That iOS update was released on Australia Day - Monday, January 26th, 2026.

2. The Result: bricked phones

On January 28th, 2026, the Telstra customers who had installed the iOS 16.7.13 patch woke up to find their iPhones had no connectivity.

  • The Bug: The update contained a flawed Carrier Settings profile that effectively mangled the handshake between the iPhone and Telstra’s towers.

  • The Irony: The software designed to ensure emergency calls always worked ended up preventing the phone from connecting to the network at all. Users couldn't call / text, or use data - and most importantly - couldn't reach the emergency number, 000.

3. The Recovery: the carrier fix

Apple and Telstra pushed out a hastily prepared "Carrier Settings Update" within 24 hours of the issue happening.

  • The Fix: Users were told to connect to Wi-Fi and navigate to Settings > General > About. A prompt would appear asking them to "Update to Telstra 54.1".

  • The Reality: For many regional Australians without a home Wi-Fi network, their only lifeline (their phone) was dead, and they had no way to download the fix that would bring it back to life. So they had to drive to the nearest public library or McDonald’s to get the patch, and restore their phone.



References:


Follow @dodgy_coder on X



Saturday, October 17, 2020

Does Xamarin owe its existence to Unity & Apple?

Image

Yes, Xamarin owes its existence to two other bits of technology that were huge around 2008 - the Unity Game Engine and the iPhone. The reason is that a confluence of events around 2008 provided the push to get the Mono project into mobile app development. This resulted in MonoTouch (for iOS) and Mono for Android, which eventually became Xamarin as we know it today.

The Mono project was founded in 2001 as a free open source implementation of Microsoft's .NET framework on Linux. But Mono had struggled since its inception to find its reason for being. According to Mono's founder, Miguel De Icaza, the hardcore free open source community never fully got behind Mono. The FOSS community feared that Microsoft would eventually cause problems for Mono, due to Microsoft being the creator of .NET. 

Outside of the Linux world however were other more pragmatic people from the MacOSX world who had no problem with Mono. One of these people was Joachim Ante, from Unity. Around 2005 the Unity game engine was just starting out and had a performance problem - their original scripting language of Python was far too slow - they needed something that was an order of magnitude faster. So Unity decided to replace the Python scripting with Mono/C# and immediately got all the performance they needed. This was the early days when the Unity Game Engine ran on MacOSX only. Mono filled the need of being a free open source JIT compiler with the modern language of C#.

Fast forward to 2008 when the iPhone App Store launched; Unity quickly set their sights on being able to compile games for the iPhone. Unity wanted to use Mono, but the additional requirement was that it had to be statically compiled for iOS, because Apple had banned the use of JIT (Just In Time) compilers in iOS Apps.

Unity comes back to us and says “Hey, we have this product on iOS, we need .NET to be statically compiled. Can you do that?” We were like, “Oh, that’s kind of impossible. Well, let’s think about it.”

One of our guys, Zoltán Varga - they went and made a static compiler for .NET, and it was amazing. We gave it to Unity. At this point, Unity is probably four or five employees.
    
They were working at somebody’s garage. And they shipped their product for iOS, built games for iOS using this thing, this 3D tech. They were the kings of this space.
    
- Miguel De Icaza (Xamarin)

Within a year of the iPhone App Store launch, Unity went from 4-5 employees to 80 employees. The iPhone and the App Store had launched Unity's massive growth, and along with this the Mono project had finally found its reason for being - mobile apps. The Mono developers realised there was interest in using .NET for mobile apps - so using the same tech given to Unity, they built their own product - MonoTouch, which allowed developers build native iOS apps using C#. Soon afterward, Mono turned its attention to Android and created Mono for Android.

Mobile app development was new and there were many developers who wanted to get into mobile apps but didn't really want to have to learn Objective-C and Java. So Mono now had a C# based cross platform app development platform with truly native performance. This was the killer combination that ensured Mono would take off in popularity.

The developers behind Mono founded the Xamarin company in 2011, MonoTouch became Xamarin.iOS and Mono for Android became Xamarin.Android. Xamarin was acquired by Microsoft in February 2016 and became a subsidiary of Microsoft, fully focused on the development of Xamarin's open source projects.

Inspiration for this article:

The History of GNOME, Mono, and Xamarin
https://changelog.com/podcast/275


Follow @dodgy_coder on Twitter