// Written by // // Read it in about 10 minutes // RE: Trivia

This post is brought to you by Clerk. Add secure, native iOS authentication in minutes with Clerk’s pre-built SwiftUI components.

Tern up for what! They’ll never Ternus against each other! Okay. Sorry. I’m done now. But it is that time…

The 12th annual Swiftjective-C pregame quiz is here!

This year, I’m rolling with (mostly) 2026 news, updates, and shenanigans. No “Objective-C without the C” questions, or Steve Notes, or other Swiftjective-C staples of year’s past. This edition is all about stuff Cupertino & Friends™️ have shipped, announced, clarified, regulated, re-org’d or otherwise made us all read release notes about this year.

If you want to warm up first, you’ve got eleven years of quiz backlog to spelunk through:

Ground Rules

There are three rounds, and the point break down is as follows:

  • Round 1 - 1 point each answer
  • Round 2 - 2 points each answer
  • Round 3 - 3 points each answer

The last question of each round is an optional wildcard question. Get it right, and your team gets 4 points, but miss it and the team will be deducted 2 points.

Round 1 - App Store Paperwork Speedrun

Nothing says pre-W.W.D.C. vibes quite like reading support docs, release notes and regulatory compliance copy. With that, let’s emotionally process App Store Connect together.

Question 1

In 2026, Apple detailed changes to iOS in Japan that created new options for developers, including alternative marketplaces and payment options. Which law are those changes designed to comply with?

Question 2

The App Review Guidelines got a February 2026 clarification that apps with random or anonymous chat are subject to which guideline?

Question 3

Before February 17, 2026, an App Store bundle had a very hall-monitor rule: every included app had to support the same platform as the primary app. For new bundles, what did Apple stop requiring?

Question 4

Apple's new monthly subscription with a 12-month commitment is basically an annual plan masquerading as a monthly sub. But, to me, that's not the oddest bit, it's the availability. Developers can offer it almost everywhere, but not in two storefronts. Which two are left out?

Wildcard

In March 2026, Apple quietly retired a tiny App Store Connect lever that developers used when they wanted to hand out a free in-app thing without creating a whole campaign around it. What went away?

Round 2 - Hardware and Tooling Side Quests

This year’s spring product and tooling cycle was inspired by…The Matrix? Let’s see who read the footnotes!

Question 1

iPhone 17e starts at the same $599 price as its predecessor, but Apple doubled the entry storage. What storage capacity does it start with?

Question 2

Apple's March 2026 retail update says the new fanless MacBook Neo starts at $599 and, somehow, runs on an iPhone chip. Which chip powers it?

Question 3

Hardware nerd alert question. The 2026 iPad Air with M4 brought two Apple-designed connectivity chips to the Air line. Which pair was it?

Question 4

MacBook Neo's color lineup looks like Apple put an iMac G3, some Starburst and a $599 price point in the same room. iPhone 5c vibes! Which of these is not one of the official colors?

Wildcard

Still on the Neo, Apple's marketing went fully TikTok fever dream for it: fruit, FaceTime and a laptop color called Citrus doing a lot of emotional work. And, I kinda dig it? In the clip that made r/apple take notice, which two fruits FaceTimed each other?

Round 3 - Coming Bright Up

The conference page is glowing, Apple Park attendees are afoot, and Tim Cook has a new title on deck.

Question 1

As we all converge for dub dub, there is a central rally point in San Jose where the Apple developer diaspora seems to materialize before the week kicks off. Where are the hallowed grounds where everyone first meets on Saturday, and sometimes Sunday, before W.W.D.C.?

Question 2

The last fully in-person San Jose dub dub before everything became a browser tab was W.W.D.C. 2019. At the Thursday night Bash in Discovery Meadow, which band took the stage and turned a field of badge-wearing developers into the world's most type-safe alt-rock crowd?

Question 3

Before John Ternus was demoing titanium and starring in everyone's Apple succession takes, his Penn senior project already had very Apple-coded hardware-meets-human-need feel. What did he build?

Question 4

This year's pre-W.W.D.C. tea-leaf reading has not been subtle: glowing Swift birds, Siri rings and now Apple DNS archaeology. A few weeks before the keynote, which dormant Apple subdomain kicked off another round of "oh, so it is AI season" chatter?

Wildcard

The Apple Design Awards are basically Cupertino's annual "yes, we noticed your pixels" ceremony. This year's finalists span six categories, but one of these is not on the 2026 list. Which one is the beautiful impostor?

👉

👈

Answer Key

Round 1:

  1. B. The Mobile Software Competition Act. Apple says iOS 26.2 introduced the Japan changes to comply with the MSCA. 1
  2. B. Guideline 1.2, User-Generated Content. Random or anonymous chat now gets pulled under that umbrella. 2
  3. D. Apps in a bundle no longer need to support the same platform as the primary app for bundles created on February 17, 2026 or later. 3
  4. A. The United States and Singapore. Outside those two storefronts, monthly subscriptions can now have a 12-month commitment. 3
  5. Wildcard: C. Promo codes for In-App Purchases are no longer supported. Pour one out for the old tiny-code economy. 3

Round 2:

  1. C. 256GB. The 17e starts with double the previous generation’s entry storage. 4
  2. C. A18 Pro. Yes, the footnote really does say preproduction MacBook Neo systems with Apple A18 Pro. 5
  3. D. N1 and C1X. Wi-Fi 7, Bluetooth 6, Thread and cellular modem trivia all in one tidy pair. 6
  4. C. Sage. Apple lists MacBook Neo in silver, blush, citrus and indigo, which means Sage is the very tasteful impostor. 5
  5. Wildcard: A. A lime and a lemon. Sometimes product marketing is just a tiny citrus FaceTime call on main. 7, 8

Round 3:

  1. A. San Pedro Square Market. The 2026 pre-W.W.D.C. community gathering listing puts the ritual right at 87 N San Pedro St, patio and all. 13
  2. B. Weezer. W.W.D.C. 2019’s Bash at Discovery Meadow featured the multi-platinum alt-rock heroes themselves. 9
  3. A. A mechanical feeding arm controlled with head movements. Ternus’s Penn senior project was built for people with quadriplegia, which is vastly more interesting than another succession answer. 10
  4. C. genai.apple.com. A dormant Apple subdomain with “genai” in the name is exactly the kind of nothing that becomes pre-W.W.D.C. something. 11
  5. Wildcard: C. Spatial Computing. It sounds like it should be a category, but the 2026 list is Delight and Fun, Inclusivity, Innovation, Interaction, Social Impact, and Visuals and Graphics. 12
···
// Written by // // Read it in about 1 minutes // RE: The Indie Dev Diaries

This post is brought to you by Clerk. Add secure, native iOS authentication in minutes with Clerk’s pre-built SwiftUI components.

This W.W.D.C. will probably be unlike any other. Things are going a bit wild lately, and even ardent A.I. detractors would likely concede that’s undeniably true now. The way we work compared to a year ago is drastically different. And, even six months ago? Might as well be a lifetime.

Cupertino & Friends™️ would do well to adapt to a rapidly changing landscape. I’m hopeful they will, too, if recent trends are any indication. We received agentic support in Xcode not long ago, something typically reserved #ForTheKeynote.

In the world of 2026, here’s what I’d love to see:

  • The usual fare: Video sessions, in-depth deep dives, the works. Let’s not forget that Apple has done a fantastic job at packaging these now. Closed captions, links to demo projects, and other relevant materials are all tidy and available in the developer app. But in today’s world, stopping here would be a missed opportunity.
  • Skills: Consider this — each dub dub session which presents a new API comes packaged with a skill. That would be incredible. In fact, Apple has kinda sorta already done this, but it was tucked away deep in the file system. Don’t make me poke around, link a skill with each dub dub session.
  • MCP: Depending on who you ask, MCPs are amazing or terrible token wasters on their way out. Regardless, I’d love a direct, official line to Apple’s docs. For now, ex-Apple employee and NSHipter stalwart Mattt has the best solution with sosumi.
  • Xcode: And, Xcode should lean into agentic engineering, whatever that looks like. I still use an IDE quite frequently, and that’s certainly true of iOS development. There is not one piece of software I could ship that hasn’t had my fingerprints on it. Little tweaks, the UI and UX, all layers I am unwilling to concede to AI.

In short, I hope Apple helps me do two things: adopt the latest APIs, and do that quickly. All of the above would help.

Code and implementation were always the time sink. They don’t have to be anymore. If using agents puts you in a state of torpor, that’s a shame. Instead, use them to get into a loop of build, review, and refine as quickly as you can so that you can make your apps the absolute best they can be. Let me stand up a working draft, and then let me make it great.

Until next time ✌️

···
// Written by // // Read it in about 3 minutes // RE: The Indie Dev Diaries

This post is brought to you by Clerk. Add secure, native iOS authentication in minutes with Clerk’s pre-built SwiftUI components.

Do you know Adam Tow?

If not, you definitely should - he has some fantastic stories to tell. Did you know he once ran into Steve Jobs at a Sushi takeout restaurant which later led to a fairly in-depth email exchange between the two of them about the Newton? Or, that he organized a Newton protest outside of Apple? I learned all this from this recent talk at Deep Dish Swift 26’, and it was a delight.

Or, how about our favorite neighborhood alternative App Store developer Riley? He has battled Apple tooth and nail, and somehow came out on the other side. Armed with the wit and determination only found in a man who has the patience to actually make another App Store, his recount of how it was all finally approved is simply hilarious. In short, he basically gave Apple an ultimatum on which of his two apps they should accept during a long notarization process. I won’t spoil it, you should just watch the talk. Especially if you’ve ever been burned by App Review, you’ll find a little poetic justice somewhere in there.

…and I, of course, could go on. So many great talks, and even better people.

This week, I began to realize I’ve…kinda been around the iOS scene awhile now? Ya know? Like, I’m not new here anymore. If you will allow it, here’s how my oldest looked when I first started on Spend Stack, and what he looks like now:

Image 1
Image 2
Tiny Benny
Not-Tiny Benny

🥹 They grow up so fast!

And, as the years tick on, as they do for all of us, life thankfully starts to arm you with more wisdom, perspectives on life, and new angles to look at things. In an industry where, currently, everything is changing, we tend to forget the best part of any app — it’s the person behind it.

This is the primary reason I lament Apple’s modern approach to W.W.D.C. — the community is fractured at the one single time during the year when it should be united most. Going to Apple Park, I’m sure, is a fantastic experience for the few who win the lottery. Though, it’s nothing compared to when seemingly every single person in this industry was in one central place.

WWDC 2019.

AltConf going on next door, running down the halls of San Jose convention center, packed with iOS developers, designers, and Apple employees — you just can’t beat it. Every year, I plead with Apple on the developer survey to go back to this. I don’t think they ever will, though. And that’s a shame, because the relationships you formed, the people you met, the kind folks at Apple you could network with, all of those things could change the trajectory of your career. The best parts I’m talking about.

And, it’s the same still with social media. Twitter, in the before times, was a community and it felt like we were all there. Now, that’s obviously fractured too. Some are on Mastodon, others on Threads, a few kicking around on BlueSky, more still on X, etc. It’s changed quite a bit. For me? It was surreal to realize how others associate me with certain chapters of my career. Some personally know me from Spend Stack. Others, it’s the book series. Yet again, there’s more who associate me with Alyx or Elite Hoops. And, yeah, some hotshot bros know me as a vibe coder noob apparently. And honestly? I enjoy meeting every single one of them.

Where was I going with this again?

Oh yes — the people! The relationships. Events, social media, the places we can go, the way dub dub is held — all of that stuff will always change. No matter the landscape, though, I would encourage you to get around your people at least once a year if you can. Your other indie friends, the ones who work at giant companies, new kids on the scene eager to learn and show off their app. We don’t wake up and decide to start in this career just to met new people, it’s not why we do this, but it is certainly the best part.

Until next time ✌️

···
// Written by // // Read it in about 3 minutes // RE: A.I.

This post is brought to you by Clerk. Add secure, native iOS authentication in minutes with Clerk’s pre-built SwiftUI components.

Ah, the joy of building. Lately, my kids have acquired the bug. Now that they are a bit older, they’ve started to somewhat realize what I’m doing all day long, hunched over a brightly lit laptop — pecking away on a keyboard.

Click clack, clack clack, click click….boom, I made something. An app appears, and now they are at the age where they can comprehend that. And, well, they think that is amazing.

And thus, I’ve started to dip into the realm of kids and vibe coding. At first, I had an outline with something to say on this topic. But, you know what, I just threw it out. Both of my oldest kiddos, Benny (12) and Remy (9), have asked me to help them “make an app”, and we’ve had a blast.

What follows are just random observations in no particular order.

They have no idea what they’re doing

What even is an app to a kid? To them, anything entirely web-based for the whole experience is not an app (I raised them right!), and they were even surprised you could charge money on the web!

But, we all start somewhere. And, to that end, they’ve both taken completely different approaches to deciding where they should start. Remy, ever the analytical thinker among my kids, opted to spec it out. Benny? Two sheets to the wind, he just opened up Codex and let it rip. Which leads me to my first observation…

The prompts are just brutal

…and it’s somewhat endearing at the same time. Seeing Remy hunched over the keyboard, pecking away on one hand:

Remy typing on a keyboard on a kitchen counter.

…just tossing Codex the most open-ended instructions imaginable:

An open-ended prompt for an LLM to make a Pokemon app.

So many questions! What kind of app? Which platform? FIVE BUCKS? We using StoreKit for this, what about paywalls? The seasoned engineer in me reeled, but I wanted them to hit as many bumps and learn how to work around them as they could. Even then, though, they do get “Dad Assists” here and there. And, Remy used his to kickstart his project:

A more in-depth follow up to the previous prompt.

In this case, I mentioned he might want to say what kind of app it is, punt the money stuff for now, and hint to the LLM which general direction we’re taking things (iOS, minimum target is likely iOS 26).

Writing prompt cleanups have been fantastic learning and bonding moments. We get to briefly talk about why I wrote something the way I did, I try to gently explain how an LLM works, what they’re good at, what they’re not as good at, etc.

To that end, their prompts have improved. But even then…

Ohhhh my, the UX

…these apps are brutal right now. Remy’s has, like, three search functions - all doing different things. I mean, check this number out:

Remy's Pokemon app.

It’s easy for us to spot the issues. However, the bit that’s surprised me, though, is that they are…aware of it? Even as a 9 year old. Is this a potential byproduct of growing up in the digital age? They know it doesn’t feel right, and they can’t really say why yet, they just know it feels off.

That’s hardly surprising, as design and user experience are things that take years and years to develop.

Their imagination is on steroids

The fact that they now live in a world where they can type in a box and get something working has, quite literally, ignited their creativity, curiosity, and excitement. The boys are huge fans of neal.fun, especially his fantastic auction game:

neal.fun's auction game.

Remy, unshackled with unimaginable power at his disposal, immediately u-turned on a bug fix and just threw that at Codex and instructed it to add a Pokemon card version in his app. And, it came pretty close one-shotting it:

Remy's version of an auction game

This is the good stuff. Being able to think of something fun and have it come to life. It’s the same dopamine hit you get from building with legos, finishing a picture, or generally constructing a thought and turning it into something tangible. While it’s silly in this context, these are the moments that will inspire them to continue.

The skills still pay

The one ephiphany I’ve had with all of this (aside from how insane it is that my kids can get a functioning app working) is that the skills we have are magnified now, perhaps more than ever. We’ve all been so uneasy about the implication of “anyone can make an app”, we haven’t stopped much to consider that our hard-earned skills are still the thing that makes a good app.

You can throw all the skill files you want at an LLM (And you should! They’re great!), but they still have critical limitations. Take text, for example. What would you instinctively do if you have a view whose text was truncated, clipping, or otherwise not fitting into a container?

The layman would say, “Can you make this text not clip?” The hardened iOS veteran might say, “Apply a .minimumScaleFactor modifier to this text, and ensure you’re using a Text style and not hard coding the font size.”

Off the cuff? Visually, you may get the same result at first. But, well — if you know, you know. One is objectively better. And those of us who can speak the language will still be making the best apps. The same skills still win, as I mentioned before, the tools have simply changed. It does, however, highlight my one lingering worry: That the next generation my take an ignorance through obstinance stance towards coding. If the ease of it all could tempt a kid (or anyone) to never bother learning how something truly works, they’d be missing out on some required skills.

The sweet spot

While the kids have been using Codex, I think I’d opt to stick them in Bitrig’s nascent mac app. It’s a bit more harnessed, in a good way, and I think the results would be a little better. The app Anything spun something up quick, in Expo. With Codex, I have a ton of credits, so we’ve stuck with that. Personally? I prefer Codex for coding anyways, especially since they put a frontend on top of the CLI. If it becomes a native mac app, I’ll probably never close it.

But for them? I can’t stop thinking about how a Macbook Neo with Bitrig would be a fun addition to the Morgan family. You kinda sorta need to make sure these kids don’t blow up your house with this stuff, which, well, depending on your permissions — could certainly happen.

Wrapping up

Reflecting on the vibe coding experiences with the kids, I only have one prevailing thought: we are all having so much fun. The kids are becoming increasingly interested in what their dad actually does for a career now. Remy, especially, is getting into it. He’s developed the ineluctable urge to make something. The last two days he has come home from school, it’s “Dad, can I work on my app!?” He even stuck some post-it notes to his closet so he wouldn’t forget what to work on the next day:

Month of marketing gameplan.

Until next time ✌️

···
// Written by // // Read it in about 2 minutes // RE: A.I.

This post is brought to you by Clerk. Add secure, native iOS authentication in minutes with Clerk’s pre-built SwiftUI components.

When I first began my degree in the field of CompSci, I picked up a book: “Code”, by Charles Petzold. I don’t distinctly remember if it necessarily changed my life or sparked my love of software development. But, I remember with certainty that it did give me the gift of curiosity.

Code by Charles Petzold.

What was actually happening when I was typing in Visual Basic on some Windows desktop in a computer lab at Ozarks Technical Community College? How did the characters transform and…just…do stuff? I wanted to know, and that book went in on it all. I remember learning about how every computer begins with simple, basic physical states: on and off. Open, and closed. And, of course, 1 or 0.

From there, those binary states can be represented by all sorts of interesting modes: switches, relays, and then transistors. Building on that some more, wire enough of them together and now we get to the interesting stuff. Logic gates, adders, memory, clocks, and eventually down the line — a CPU that can read instructions from memory! And, execute them!

But in my day to day? That’s all abstracted away from me, as it should be. It’s just as well, though, since abstractions have long been a core part of our indsutry. In fact, who remembers interviews in the aughts when object orientated programming was king? We had to remember our favorite acronym, A.P.I.E. — abstraction, polymorphism, inheritance, and encapsulation. So, in that sense, code has long been an abstraction layer. It’s one that sits comfortably above the raw hardware, but it’s close enough that, after enough of said translation, it can still make silicon do something real and tangible in the world.

I’ve been thinking a lot about abstraction layers lately.

What the “abstraction” layer is now, and how we define it, is changing. And, naturally, it has me wondering. With the rise of agentic engineering, I’ve started to consider something I thought impossible only a few years ago:

Is code going to be abstracted away, entirely, soon?

And, yeah, I realize the word “soon” is doing some heavy lifting here.

Once the frontier models improve, how soon until it matters if you read what it outputs? No, seriously, I’m wondering that lately. I know, I know — I KNOW — it’s not there yet. Today. But, I think eventually, it will be. And what does that mean for software engineering? Is it then prompt engineering? Will knowing how the all the pieces fit together matter even more, or less?

How much longer is understanding code a competitive advantage? I know it certainly is today. And, lest I’m not making my stance clear enough, you do need to understand code to succeed in my opinion. In 2026, most of us in this field grew up figuring out its intimate inner workings. That’s why those with years of experience are currently building software at a blistering pace. Though, how long will it keep us ahead of everyone else? Because when it becomes abstracted away, well — that’s a different world we’ll live in.

let concatenatedThoughts = """

Of course, we will always need people in the world who understand code. In the same way that we need people in the world who have a professional, expert knowledge of how computers actually work. We can't afford to lose that, obviously, because when one machine drives another — both machines will always need a captain.

"""

I’m pondering here, not panicking. We need to remember that abstraction layers are not inherently bad. In fact, by most measures, not only are they incredibly useful — they are necessary. I don’t want to manually tweak logic gates. I want to write code to do it. Years ago, there was undoubtedly a time where writing code woud seem as outlandish as using a chat interface to produce that same code for you.

Naturally, as the future progresses and technology advances, making software will look different, too. The future of software engineering versus “AI does it all” hopefully will not be a zero-sum game. More abstraction does not automatically mean we need less understanding, but I think it does most likely change “what” is important to understand.

I don’t know the answer, and to be honest — I’m not scared of the answer, either. I’ve made my way in this industry by being curious. People like to say it’s all changing so fast, and there’s an inordinate amount of AI tooling, advances, or models to learn. I say it’s always been that way. I’ve done well in this career because of adapting to changes. By wondering how logic gates, bits and bytes, and code eventually create a piece of software I made. And whatever the tools and technology become to keep creating those things well and with precision, I’ll keep learning.

When I went back to speak at my community college years ago, I told the prospective students that the only constant in our industry is change. Now, I suppose, never has that been more apt.

Until next time ✌️

···