Blog

Thoughts on native app development, SwiftUI, AI, and the craft of building great software for Apple platforms.

A building permanently wrapped in construction scaffolding
SwiftUI iOS Development

SwiftUI Just Turned Seven. Hacker News Is Having the Itch.

SwiftUI shipped in 2019 and just hit its seven-year mark, and a viral Hacker News thread (plus pieces from Yakov Manshin and John Gruber) is relitigating whether it ever grew up. I've built a real app in it for months — here's where my own bugs match the complaints, and where they don't.

N
NativeFirst Team
7 min read
A close-up of a notice of eviction taped to a door
App Store iOS Development

Apple Just Added an Eviction Clause to the App Store Lease

Apple's June 2026 App Store Review Guidelines update lets it remove apps that are already live, not just reject new submissions, if they go stale or stop attracting users. Here's what actually changed, which categories are already on the list, and what it means if you're an indie developer juggling more than one app.

N
NativeFirst Team
7 min read
A hand holding a hotel key card up to a door lock
Swift Testing Swift Concurrency

Swift Testing Runs Your Suite in Parallel. That Static Var You Swap for DI Is a Race Condition.

Swift Testing parallelizes tests by default, in the same process. A huge number of Swift codebases — BrewLog's AppIntents suite included — still inject test dependencies by mutating a global static var. ST-0026 proposes a .taskLocal trait to fix it properly. Here's the real bug, the real code, and where the proposal stands.

N
NativeFirst Team
7 min read
An organized box of wrenches and hand tools, each one distinct but sharing the same case — a Swift toolbox metaphor
Foundation Models Swift

Apple Just Open-Sourced the 'Skills API' Everyone Assumed Was a Claude Thing

Apple's new foundation-models-utilities package brings a Skills API, history compaction, and a chat-completions bridge to Swift's Foundation Models framework. Here's what's actually in the box, and how it maps onto BrewLog.

N
NativeFirst Team
7 min read
A black digital clock display against a dark background, evoking a countdown running out
Swift Swift Concurrency

Swift Just Got a Real Timeout API. Here's What We've All Been Duct-Taping Instead.

SE-0526 withDeadline was accepted into Swift on July 30, 2026 — a real, composable, absolute-time-limit API for async operations. I found the exact gap it fills in a real app's networking layer, fixed it today's way with a TaskGroup race, and lined it up against what withDeadline will let me delete once it ships.

N
NativeFirst Team
10 min read
A compact multi-port GAN charging adapter — one small brick, several different outputs, which is exactly the pitch behind a library that puts several AI backends behind one Swift interface.
Swift SwiftUI

I Tried the Library That Puts Foundation Models, OpenAI, and MLX Behind One Swift API

SwiftAI is a new open-source Swift package that wraps Apple's on-device Foundation Models, OpenAI, and MLX behind one interface — reply(to:), @Generable structs, streaming, tool calls. I actually installed it, ran real on-device inference, and hit a documentation bug and a guardrail glitch within ten minutes. Here's what works, what doesn't, and whether it's worth adopting today.

N
NativeFirst Team
8 min read
A welcome doormat by a front door — the world's most obvious hiding spot, and a fair metaphor for the API key baked straight into an app's network traffic.
iOS Development Security

Two-Thirds of AI iPhone Apps Hid the Key Under the Doormat

A Wake Forest study ran 444 AI-powered iOS apps through traffic analysis and found 282 of them leaking their own LLM API keys — OpenAI, Anthropic, cloud creds, the works. Stolen keys fuel 'LLMjacking' that can burn $46,000 a day on someone else's bill. Here's why it keeps happening and how to ship AI features with zero secrets in your bundle.

N
NativeFirst Team
8 min read
A giant wooden Trojan horse standing outdoors — the gift you wheel through your own gates, the way a poisoned error report walks straight into your coding agent.
AI Coding Security

Agentjacking: The Call Is Coming From Inside Your Coding Agent

A new attack class called agentjacking hides malicious instructions inside Sentry error events. When you tell Claude Code or Cursor to 'fix the unresolved errors,' the agent reads the trap over MCP and runs the attacker's commands — with your privileges. 2,388 orgs were exposed, the success rate was 85%, and Sentry says it's 'technically not defensible.'

N
NativeFirst Team
9 min read
A wall completely covered in handwritten post-it notes — the external memory an AI coding agent needs because it can't hold your whole codebase in its head.
AI Coding Context Engineering

Your AI Agent Has Amnesia: Context Rot Is Why It Forgets Your Swift Codebase by Lunch

Context rot is the reason your coding agent starts brilliant and turns into a confidently-wrong intern two hours later. Chroma's study measured it across 18 models, it hits SwiftUI codebases hard, and the fix isn't a bigger context window — it's context engineering. Here's what actually works in Xcode 26.

N
NativeFirst Team
9 min read
A close-up black and white photograph of a mechanical stopwatch — the kind a track coach would hold, not a Rolex — face-on, hands frozen mid-second.
Xcode iOS Development

Build Time Optimization for the Solo iOS Developer Running 5+ Apps

Day 30 of the 30-day iOS series. Real numbers, real DerivedData chaos, and the three things that actually move the needle on Xcode build times when you're maintaining multiple apps on one machine.

M
Mario
9 min read
A wooden rubber stamp reading 'geprüft' (checked) resting on an open legal document, mid-stamp — something getting verified before it's allowed to count as approved.
Swift Swift Macros

Custom Swift Macros: When They're Actually Worth the Build-Time Cost

Day 29 of the 30-day iOS series. The difference between @freestanding and @attached macros, why most macro ideas are over-engineering traps, and a real #URL macro — built TDD-first as a standalone Swift package — that catches BrewLog's force-unwrapped base URL at compile time instead of runtime.

M
Mario
9 min read
A vintage black typewriter and a modern MacBook sitting side by side on a wooden desk, shot from directly above — the old tool and the new one, both still doing real work.
Swift UIKit

UIKit Tricks SwiftUI Still Can't Do (Yet): Back to UIViewRepresentable

Day 28 of the 30-day iOS series. SwiftUI has no PDF viewer, no custom keyboard primitive, and no waterfall grid — five real gaps where you still reach for UIViewRepresentable, anchored by a real PDFKit-backed brew history export built TDD-first for BrewLog.

M
Mario
10 min read
An espresso machine portafilter pouring two separate streams of coffee into two paper cups sitting side by side on a stainless steel drip tray — one source, two independent streams.
Swift Combine

Combine in 2026: The Three Cases Where It's Still Better Than async/await

Day 27 of the 30-day iOS series. A real searchable brew history for BrewLog, built with Combine instead of async/await, and the three reasons it was the right call: debounce, independent multiple subscribers, and a four-way CombineLatest pipeline.

M
Mario
10 min read
A hand squeezing the last drips of coffee from a paper filter into a Chemex — the kind of multi-minute brew that's worth glancing at from the Lock Screen instead of standing over.
Swift ActivityKit

Live Activities and the Dynamic Island: A Decision Matrix, Not a Demo

Day 26 of the 30-day iOS series. A real ActivityKit countdown for BrewLog's pour-over timer, the one-function decision matrix that decides which brew methods even get one, and the exact reason it still won't show up on a Lock Screen.

M
Mario
10 min read
Close-up of an espresso machine's row of glowing buttons — press one, skip the rest of the ceremony, which is the entire pitch of an App Intent.
Swift WidgetKit

WidgetKit and App Intents: Logging a Brew Without Opening the App

Day 25 of the 30-day iOS series. A real App Intent that logs a brew from Spotlight or a widget button, the @Dependency crash that nearly cost me an evening, and the honest line between what's tested and what's still a mechanical Xcode step.

M
Mario
9 min read
A red and black Swiss Army knife fully opened, blade, bottle opener, and corkscrew all fanned out at once — one handle doing five jobs, which is exactly the problem this post is about.
Swift SOLID Principles

SOLID Principles in Swift: One Bad Class, Five Real Fixes

Day 24 of the 30-day iOS series. Skip the acronym slide — here's the 70-line class I'd have shipped on day one of BrewLog, broken against all five SOLID principles, and the five already-tested files in this same repo that actually fix it.

M
Mario
11 min read
A relay runner mid-sprint on an outdoor track, baton in hand, captured at full stride — the same shape as a request that has to keep moving forward through a dropped connection, an expired token, or a second caller asking for the same thing.
Swift Networking

Retry, Token Refresh, and Request Deduplication in Swift

Day 23 of the 30-day iOS series. The three production concerns every 'build your own networking layer' tutorial skips, built as composable actors on top of Day 22's client — plus a real concurrency bug I found writing the test, not the code.

M
Mario
13 min read
A tangled mass of colorful telephone wires on the left resolving into a neatly organized black patch panel on the right — the same shape as replacing scattered URLSession calls with one clean networking layer.
Swift Networking

A Custom Networking Layer in 100 Lines of Swift — No Alamofire

Day 22 of the 30-day iOS series. URLSession, async/await, a generic Endpoint, and one typed error enum — the entire networking layer is 85 real lines, tested with a URLProtocol stub, and wired into a real BrewLog feature with a real local server.

M
Mario
11 min read
A red traffic light glowing above an unlit green light on a city street — the stop-then-go cycle that gives test-driven development its name.
Swift TDD

TDD for SwiftUI: A Red-Green-Refactor Workflow That Isn't Academic

Day 21 of the 30-day iOS series. I went looking for a BrewLog feature to drive test-first and found a real bug already shipped: the Streak stat has been hardcoded to zero since day one. Here's the actual red-green-refactor session that fixed it.

M
Mario
10 min read
Developer writing code with testing tools visible — a clean coding environment representing software quality and unit testing.
Swift Swift Testing

Swift Testing Framework: Why You Should Migrate from XCTest

Day 20 of the 30-day iOS series. @Test, #expect, parametrized tests, traits, and a side-by-side comparison on a real BrewLog test file. Plus: the one thing XCTest still does that Swift Testing doesn't.

M
Mario
11 min read
Colorful electrical wires and cables neatly arranged — red, yellow, blue, and green — representing connections and dependencies.
Swift Dependency Injection

Dependency Injection in Swift Without a Framework

Day 19 of the 30-day iOS series. Protocol-based DI, @Environment as a SwiftUI-native container, and the factory pattern — all without Resolver, Swinject, or any third-party glue. Includes a TDD example that shows why DI and testability are the same conversation.

M
Mario
11 min read
Colorful LEGO bricks — yellow, red, blue, and green — scattered on a white surface.
Swift Package Manager SPM

Modular Architecture With SPM: When to Split (And When to Absolutely Not)

Day 18 of the 30-day iOS series, opening Week 4 on architecture. Modularization with Swift Package Manager has a real cost in build time, package graph complexity, and maintenance overhead. I show the threshold rule I use across five apps — below which you don't split, above which you must — with a real Package.swift example from BrewLog and a pure Swift Testing suite that proves the point.

M
Mario
12 min read
A security guard in a dark uniform standing alert on a grey floor, arms at their sides.
StoreKit 2 App Store Server API

StoreKit 2, Part 3: Server-Side Receipt Validation in 2026 (App Store Server API)

Day 17 of the 30-day iOS series, the finale of three on monetization. You can't trust the client — here's the minimal App Store Server API workflow for BrewLog: Server Notifications V2, JWSTransaction decoding, a Cloudflare Worker, and three pure Swift tests that prove the entitlement logic without ever calling Apple.

M
Mario
13 min read
A coir doormat reading 'well, hello there.' on a red brick step in front of a blue door with red trim.
StoreKit 2 Swift

StoreKit 2, Part 2: Free Trials, Win-Back Offers, and Promo Codes That Actually Convert

Day 16 of the 30-day iOS series. I add a 7-day free trial, a win-back banner for lapsed subscribers, and offer-code redemption to BrewLog's paywall — concrete App Store Connect configuration plus the Swift code, all covered by Swift Testing.

M
Mario
17 min read
A heavy brass padlock fastened through the latch of a teal metal door.
StoreKit 2 Swift

A StoreKit 2 Paywall From Scratch: Subscriptions, a Transaction Listener, and a Restore Button That Works

Day 15 of the 30-day iOS series, first of a three-part run on monetization. I built BrewLog's real paywall with StoreKit 2 — two subscription products, a transaction listener, and a restore flow — with zero third-party SDKs. Every number the paywall shows comes from one pure, tested function.

M
Mario
13 min read
A stack of labeled cardboard moving boxes and houseplants against a wall, mid-move.
SwiftData Core Data

SwiftData Two Years Later: What's Solid, What Still Bites, and the Migration Test You're Not Writing

Day 14 of the 30-day iOS series. SwiftData is about two years old now, and the honest verdict is mixed. I already wrote the long field report on where it broke in production — this post is the part that report didn't have room for: a VersionedSchema + SchemaMigrationPlan test that proves a schema change is safe BEFORE TestFlight finds out for you.

M
Mario
12 min read
A laptop screen showing a dark-mode analytics dashboard with line and bar charts tracking load time, bounce rate, and session metrics.
Swift SwiftUI

@Observable vs ObservableObject: What 1,000 Rows and a Redraw Counter Actually Showed Me

Day 13 of the 30-day iOS series. I built a redraw counter into BrewLog, put 1,000 rows in two identical lists side by side — one backed by @Observable, one by ObservableObject — and toggled a single favorite ten times. The row counts tied 10-10. The list counts didn't. Here's the real number, and exactly where it comes from.

M
Mario
13 min read
A flat lay of overlapping vintage paper maps at different scales — local town plans layered under a wider regional survey of the Isle of Wight.
Swift SwiftUI

@State, @Bindable, @Environment: The Complete Map for @Observable (and the Question You're Actually Asking)

Day 12 of the 30-day iOS series. With @Observable, SwiftUI lets you slap @State, @Bindable, @Environment, or a plain let on the same class — and compiles all of them. Here's the question that actually decides which one is correct, one map that resolves 95% of the confusion, and three real BrewLog bugs (one silent, one a compile error, one a runtime crash) that come from picking wrong.

M
Mario
11 min read
A person leaning into a coin-operated lookout telescope, observing a savanna in the distance — you keep feeding the machine to keep watching.
Swift SwiftUI

ObservableObject → @Observable: The Migration Guide That Skips the Marketing (and the Autoclosure Gotcha Apple Forgot to Mention)

Day 11 of the 30-day iOS series. Apple's migration guide makes ObservableObject → @Observable look like a find-and-replace. It mostly is — except for one quiet behavioral change: @StateObject only ran your initializer once, and @State runs it on every render. Here's the multiple-init bug that causes, why it's worst in exactly the init you were proud of, and how to fix it with a test that turns 'no side effects in init' into a hard, green invariant.

M
Mario
12 min read
A workbench with tools organized and ready to use — the State of the Union is where Apple lays out the real developer toolkit (Photo: AJ Yorio, Unsplash)
WWDC 2026 iOS 27

The Keynote Made You Cry. The State of the Union Gave You Homework. Five Things That Actually Change Your iOS Workflow.

WWDC 2026 State of the Union broke open the developer toolbox: free Private Cloud Compute for indie devs, Foundation Models going open source, Xcode 27's Device Hub killing Simulator, agentic coding with Claude and Gemini inside your IDE, and SwiftUI finally caching images like it should have from day one.

N
NativeFirst Team
10 min read
A bright orange DETOUR road sign with a black arrow pointing right — the moment a request reroutes from the on-device model to the server.
Swift SwiftUI

ThinkBud + Foundation Models: What I Shipped On-Device, and the Wall That Sent Me Back to the Server

Day 10 of the 30-day iOS series, the build-in-public finale of AI week. I took the on-device Foundation Models stack from Days 8 and 9 and bolted it into ThinkBud, an app I actually ship. Here's the honest field report: the bounded tasks the on-device model nailed for free and offline, the context-window wall a 100K-character textbook import smashed into, and the exact line of code where I gave up and routed to a server. Plus the one decision that's pure Swift — so it gets a real test.

M
Mario
13 min read
A speaker presenting on a conference stage to a packed audience — the energy of a keynote that changes what you'll build next (Photo: Unsplash)
WWDC 2026 iOS 27

Tim Cook Wiped a Tear, Siri Got a Google Brain, and Apple Shipped a Transparency Slider. WWDC 2026, Honestly.

The WWDC 2026 keynote just happened. Tim Cook's emotional farewell, Siri rebuilt on Gemini, Core AI replacing Core ML, Xcode 27 going full MCP, and Liquid Glass finally getting a slider. Here's what actually matters for your iOS codebase — no press release fluff.

N
NativeFirst Team
8 min read
An empty university lecture hall with tiered seating and a projector screen — representing the declining computer science enrollment in 2026
Computer Science CS Enrollment

CS Enrollment Dropped 11%. The Industry That Needs Developers Told Students Not to Bother.

Computer science enrollment fell 11.2% in 2026 — the steepest drop of any major. CS dropped from the 4th to 6th most popular degree. 64% of students cite AI as the reason. Meanwhile, the same companies cutting junior roles are complaining about a talent shortage. The Karate Kid problem is real: skip the fundamentals, and nobody can fight when it matters.

N
NativeFirst Team
10 min read
A grid of metal letterpress type blocks set into wooden compartments — each slot a defined, typed character, the analog ancestor of structured output.
Swift SwiftUI

@Generable: Make Apple's On-Device Model Hand You a Swift Struct, Not a String to Parse

Day 9 of the 30-day iOS series, part 2 of AI week. Yesterday Foundation Models gave us a String. Today we make it give us a typed Swift value — BrewSummary(flavor:, advice:, rating:) instead of a paragraph you regex your way through. @Generable, @Guide constraints, session.respond(to:generating:), and the sleeper-within-the-sleeper: tool calling, where the on-device model calls your own Swift code mid-answer. With the TDD seam, because typed output changes what you test.

M
Mario
14 min read
A runner on a treadmill in an empty gym — running fast and going absolutely nowhere, the perfect visual metaphor for the AI coding productivity paradox
AI AI Coding Tools

AI Made Developers 19% Slower. They Swore It Made Them 20% Faster.

A peer-reviewed study found that experienced developers were measurably slower with AI coding tools — but genuinely believed they were faster. Then Uber blew its entire 2026 AI budget in four months. Then Amazon had to kill its own leaderboard because employees were gaming it. The productivity paradox is real, it's expensive, and it might explain why your sprint velocity feels off.

N
NativeFirst Team
8 min read
An open notebook with the word 'Notes' handwritten and underlined, a fountain pen resting on the page, reading glasses blurred behind it — the raw input a summarizer turns into one clean line.
Swift SwiftUI

Foundation Models: Your First On-Device AI Feature With No Backend, No API Key, No Bill

Day 8 of the 30-day iOS series, and the start of AI week. The Foundation Models framework runs a real language model entirely on the phone — free, private, offline. We build the smallest thing that works: summarize a block of text in three lines, handle the availability cases that bite in production, wire it into a real app, and put a TDD seam around the part that isn't the model. Code-along, with tests.

M
Mario
12 min read
A building wrapped in scaffolding mid-renovation — the new facade isn't up yet, so the old one stays protected. The same call you make with UIDesignRequiresCompatibility while your redesign is still in flight.
Swift SwiftUI

UIDesignRequiresCompatibility: When (and Why) Opting Out of Liquid Glass Is the Pro Move

Apple hands you one Info.plist key that freezes the old design for a full year. It's not a cop-out — for banking, enterprise, and apps caught mid-redesign, opting out of Liquid Glass is the responsible call. The exact flag, a real before/after from my own app, the deadline, and a decision matrix you can actually defend in a standup. Plus the per-screen rollout gate you should be testing instead.

M
Mario
11 min read
A mission control room viewed from above with rows of workstations and glowing monitors — representing the shift from code editor to agent fleet management dashboard
Devin Desktop Windsurf

Windsurf Died in Its Sleep. Devin Woke Up Wearing Its Clothes.

On June 2, Windsurf pushed a silent update that renamed itself Devin Desktop, replaced the code editor with an agent dashboard, and gave Cascade a July 1 death sentence. Most developers didn't notice. Here's what happened, what ACP means, and why your IDE now thinks you're a fleet manager.

N
NativeFirst Team
9 min read
An excavator demolishing an old building to make room for something new — representing Amazon tearing down Q Developer to build Kiro
Amazon Kiro Q Developer

Amazon Killed Q Developer, Built Kiro, and Told Developers: Read the Manual First

Amazon sunset Q Developer after production disasters and bet everything on Kiro — a spec-driven IDE that makes you write requirements before a single line of code. 100,000 developers signed up in five days. Martin Fowler called it a sledgehammer. Here's what actually happened.

N
NativeFirst Team
10 min read
Light refracting through layered glass into a spray of color — the same object reading differently under different light, the way one Icon Composer document renders as light, dark, clear, and tinted.
Swift SwiftUI

Icon Composer and the New App-Icon Era: One Document Instead of Three Exported PNGs

iOS 26 wants your app icon in light, dark, clear, and tinted. The old way was three flat 1024px PNGs that quietly drifted apart. Icon Composer turns it into one layered .icon document the system relights for you. The real workflow from a single SVG to a full set — plus the one decision around icons you can actually unit-test.

M
Mario
12 min read
Orange and teal ink diffusing through water, translucent layers blending and morphing into each other — the visual metaphor for layering and morphing Liquid Glass effects.
Swift SwiftUI

Custom Liquid Glass Components: When to Leave the Defaults (and the Three Mistakes That Kill Your Frame Rate)

glassEffect(.regular, in:) with a custom shape, two glass blobs that morph into each other with glassEffectID, and the three things that turn buttery Liquid Glass into a stutter machine. Built on a real iPhone 17 Pro simulator, with the TDD seam that keeps the decision testable even though the render isn't.

M
Mario
12 min read
A dramatic red theater curtain on an empty stage — symbolizing Tim Cook's final WWDC keynote curtain call before handing the CEO role to John Ternus
WWDC 2026 Tim Cook

Tim Cook's Curtain Call: His Last WWDC Keynote and What Changes for Every iOS Developer

Tim Cook delivers his final WWDC keynote on June 8 before handing the CEO role to hardware chief John Ternus on September 1. After 15 years, a $350B-to-$4T run, and a developer ecosystem of 2.3 billion devices, here's what the transition actually means for people who write Swift for a living.

N
NativeFirst Team
10 min read
Close-up of textured, refractive glass with warm amber-to-cream tones — the real-world material Apple's Liquid Glass design language imitates on screen.
Swift SwiftUI

Liquid Glass for an App You Already Shipped: What You Get From a Recompile vs. Five Lines of Tuning

I rebuilt a real SwiftUI app against the iOS 26 SDK and took two screenshots of the exact same screen — one with zero code changes, one with five lines of glassEffect. Here's the honest split between what the recompile hands you for free and what's worth your custom-tuning time, plus the TDD seam that makes a visual feature testable.

M
Mario
10 min read
Developer screens through glasses showing code and dashboards — representing the blurry metrics behind tokenmaxxing at Big Tech companies
Tokenmaxxing AI Coding Tools

Tokenmaxxing: Amazon Built an AI Leaderboard and Employees Strapped It to the Dog

Amazon shut down its KiroRank AI leaderboard after employees gamed it with pointless tasks. Uber blew its 2026 AI budget in four months. Microsoft cancelled Claude Code subscriptions. For every $1 spent on AI tokens, $0.44 goes to fixing bugs the AI created. Welcome to tokenmaxxing — the corporate fitness tracker fiasco of software engineering.

N
NativeFirst Team
9 min read
A laptop glowing in the dark, casting blue and orange light — reflecting Apple's 'All Systems Glow' WWDC 2026 tagline and the divided developer sentiment
WWDC 2026 iOS 27

Apple Said 'All Systems Glow.' Developers Said 'Not So Fast.'

Apple dropped its WWDC 2026 tagline yesterday and the developer forums immediately caught fire. Half the community is excited for iOS 27's AI overhaul. The other half is already mourning the operating system they used to love. With six days until the keynote, here's what the divide tells us about where Apple is headed.

N
NativeFirst Team
9 min read
A smartphone with colorful glass-like reflections representing Apple's mandatory Liquid Glass design language in iOS 27
iOS Development Liquid Glass

Your App Just Got an Eviction Notice: Liquid Glass Is Mandatory in iOS 27

Apple confirmed Liquid Glass is non-negotiable in Xcode 27. Your custom tab bars, navigation views, and carefully crafted layouts are about to meet a wrecking ball called UIDropShadowView. Here's exactly what breaks, what the timeline looks like, and how to survive the migration before WWDC drops on June 8.

N
NativeFirst Team
9 min read
Before/after comparison of an Invoize view model migration to Swift 6.2 — 86 errors on the left collapsing into 3 nonisolated annotations and a fixed race condition on the right.
Swift Swift 6.2

Migrating a Real App to Swift 6.2 Strict Concurrency: 86 Errors, One Afternoon, One Race Condition I Didn't Know I Had

I migrated Invoize from Swift 6.0 strict mode to Swift 6.2 approachable concurrency on a Sunday afternoon. Every warning, every fix, the one real race condition the compiler finally surfaced — and the TDD seams I leaned on so the migration wasn't just compiler-driven guessing.

M
Mario
14 min read
Empty office desks and chairs in a modern workspace — representing the vanishing junior developer positions
Junior Developers Hiring Crisis

Tech Just Closed the Youth Academy: The Junior Developer Crisis Nobody's Planning For

Junior developer hiring dropped 73% in one year. Big Tech went from 32% junior hires to 7%. Companies are choosing $20/month AI tools over $80K entry-level salaries. But here's what every football fan already knows: if you shut down the academy, you won't have any stars in five years.

N
NativeFirst Team
9 min read
A massive tree with branches spreading in every direction — a visual metaphor for choosing between Swift 6.2 isolation modifiers.
Swift Swift 6.2

@concurrent vs nonisolated vs @MainActor: The Swift 6.2 Decision Tree That Fits on a Napkin

Four real scenarios — UI update, network call, image decode, file IO — and exactly which Swift 6.2 isolation keyword each one needs. A TDD walk-through with Swift Testing, no whiteboard ceremony required.

M
Mario
13 min read
iPhone capturing an AI visualization on a laptop screen — representing Apple's native MCP support turning every iOS app into a tool for AI agents
iOS Development MCP

Apple Is Turning Every App Into an AI Tool — MCP Support Means Siri Was Just the Warm-Up

Apple is building native Model Context Protocol support on top of App Intents. That means Claude, ChatGPT, Gemini, and every other AI agent will be able to control your app — not just Siri. Nine days before WWDC 2026, here's what this means for iOS developers and why your App Intents just became the most important code you've ever written.

N
NativeFirst Team
10 min read
A glowing 'One Way' street sign at night — a visual metaphor for Swift 6.2 making the main actor the default direction
Swift Swift 6.2

MainActor by Default: Why Apple Just Reversed Swift's Concurrency Story

Xcode 26 flips the default — your code now runs on the main actor unless you say otherwise. Here's why Apple changed direction, what it actually means for your existing project, and a TDD walk-through showing the migration in real Swift.

M
Mario
11 min read
A hand holding a keyring near an open door — representing Apple opening its walled garden to Google's AI models for on-device intelligence
WWDC 2026 iOS 27

Google's AI Is About to Run on Every iPhone. Apple Thinks That's a Feature, Not a Bug.

Apple is training distilled versions of Google's Gemini to run directly on iPhones. For iOS developers, this means your Foundation Models code might soon be powered by Google under the hood — and WWDC 2026 will make it official. Here's what changed, why it matters, and what to build before June 8.

N
NativeFirst Team
8 min read
A coin-operated viewfinder overlooking the New York City skyline — representing the shift to pay-per-use AI coding tools where every token costs money
GitHub Copilot AI

The Meter Is Running: GitHub Copilot Goes Pay-Per-Token, and Every Developer Just Became a Day Trader

GitHub Copilot switches to usage-based billing on June 1. Your $10/month plan now comes with a token budget, and heavy users are staring at potential 5x overages. Here's what actually changed, where developers are fleeing, and how to pick the right AI coding tool without going broke.

N
NativeFirst Team
10 min read
Lines of code on a dark screen — the kind of code that's about to get a major AI upgrade when Apple drops its new developer platform at WWDC 2026
WWDC 2026 iOS 27

Apple Registered genai.apple.com. Twelve Days Before WWDC, the Biggest Clue Just Dropped.

Apple quietly registered a GenAI subdomain last week. It's not live yet, but the timing — twelve days before WWDC 2026 — tells us everything about where the iOS developer platform is headed. Core AI, Siri Extensions, Foundation Models, and a public-facing AI hub. Here's what it means for your next project.

N
NativeFirst Team
9 min read
A frustrated developer at a laptop — the face of a generation told to learn to code, now watching AI take the wheel
Career Advice AI Layoffs

Learn to Code, They Said: How the Best Career Advice of 2020 Became 2026's Cruelest Joke

An entire generation followed the 'learn to code' playbook. Bootcamps, side projects, LeetCode grind. Now 143,000 tech workers got laid off in Q1, companies are mandating AI tools, and Stanford says early-career developer employment dropped 16%. The advice aged like milk.

N
NativeFirst Team
7 min read
Heavy traffic congestion on a multi-lane highway at dusk — representing the App Store review queue gridlock caused by vibe coding's 84 percent submission surge in 2026
App Store iOS Development

Your Bug Fix Is Behind 235,800 Vibe-Coded Apps. Welcome to App Review in 2026.

App Store review times ballooned from under 24 hours to multi-week waits after vibe coding drove an 84% surge in submissions. Indie developers with critical bug fixes are stuck behind a flood of AI-generated apps. Here's the data, the developer stories, and what you can actually do about it.

N
NativeFirst Team
7 min read
Lines of code with colorful syntax highlighting on a dark screen — representing Swift development breaking free from Xcode into AI-powered IDEs like Cursor and Kiro
Swift Cursor IDE

I Wrote Swift in Cursor for a Week. Xcode, We Need to Talk.

Swift officially hit the Open VSX Registry — meaning Cursor, Kiro, and every AI IDE now support Swift with full LSP, debugging, and test explorer. I spent a week building iOS code outside Xcode. Here's what worked, what didn't, and why Apple publishing a Cursor setup guide is the most understated power move of 2026.

N
NativeFirst Team
8 min read
A close-up of frosted glass with soft textures and gradients — a visual metaphor for Apple's Liquid Glass design language and its translucency controversy
iOS Development Liquid Glass

Liquid Glass Turns One. We're Still Squinting.

Apple's Liquid Glass design language is celebrating its first birthday — and the party is divided. With WWDC 2026 two weeks away and iOS 27 doubling down, here's where things actually stand for developers: the wins, the accessibility mess, the adoption gap, and why your next SwiftUI update might need reading glasses.

N
NativeFirst Team
9 min read
The glowing Apple logo on an Apple Store glass facade at night — representing Apple's expanding platform for third-party AI integrations through Siri Extensions
Siri iOS 27

Apple Is Building an AI App Store Inside Siri. Most Developers Haven't Noticed Yet.

iOS 27 will turn Siri into a chatbot with third-party Extensions — a dedicated App Store section for AI integrations. This is the biggest new distribution channel since widgets. Here's what indie iOS developers should be building right now.

N
NativeFirst Team
9 min read
Lines of code on a computer screen with colorful syntax highlighting — representing the AI coding tools at the center of Microsoft's internal developer revolt
AI Coding Tools Claude Code

Microsoft Gave Its Engineers Claude Code. They Loved It. Then Microsoft Took It Away.

Microsoft rolled out Claude Code to its developers in December. By May, engineers were hooked — and Copilot CLI was collecting dust. So Microsoft killed the Claude Code licenses. The backlash was immediate. Here's why this matters way beyond Redmond, and what every developer should learn from it.

N
NativeFirst Team
8 min read
Tangled power lines and wires against a clear sky — a visual metaphor for Swift's growing language complexity and tangled feature set
Swift iOS Development

Swift Has 217 Keywords Now. Nobody Agrees on What It's For.

Swift started as a simple, elegant language that composed beautifully. Twelve years later, it has 217 keywords, a governance problem, and an identity crisis. With WWDC 2026 weeks away, the community is asking: is Apple killing its own programming language?

N
NativeFirst Team
8 min read
Glowing digital network on dark background — matching the luminous aesthetic of Apple's WWDC 2026 Coming Bright Up invite
WWDC 2026 iOS 27

Apple's WWDC 2026 Invite Says 'Coming Bright Up' — We Decoded Every Pixel

The WWDC 2026 media invites dropped yesterday with a glowing Swift logo and the tagline 'Coming Bright Up.' Here's what Apple is really telling us about Siri 2.0, the Gemini partnership, and what iOS developers should prepare for in the next 20 days.

N
NativeFirst Team
7 min read
A gym interior with equipment — the perfect metaphor for Apple's new 12-month commitment subscription model on the App Store
iOS Development App Store

Apple Just Invented the Gym Membership for Apps. Here's Why That's Brilliant.

iOS 26.5 shipped a new subscription model — monthly payments with a 12-month commitment. It's the gym membership of the App Store. And for indie developers bleeding from monthly churn, it might be exactly what the doctor ordered.

N
NativeFirst Team
8 min read
Network cables plugged into a server rack — representing how MCP connects AI tools to developer infrastructure like a universal protocol
MCP Model Context Protocol

Your Xcode Has a Built-In MCP Server. Most iOS Developers Haven't Noticed Yet.

MCP is the protocol that lets AI tools talk to everything — your code, your simulator, your build system. Xcode 26.3 shipped one quietly. There's an official Swift SDK. And WWDC 2026 might make it the backbone of CoreAI. Here's what iOS developers need to know before everyone else figures it out.

N
NativeFirst Team
9 min read
A close-up of a professional camera lens with warm light reflections — representing the new AI-powered Visual Intelligence pipeline Apple is bringing to iOS developers
WWDC 2026 iOS 27

Visual Intelligence Is the Sleeper Hit of WWDC 2026. Most Developers Don't See It Coming.

Apple is opening Visual Intelligence to third-party developers at WWDC 2026 — nutrition scanning, contact capture, Wallet passes, and a full camera AI pipeline. While everyone argues about Siri, this is the API that will actually change how your app works. Here's what we know and how to prepare.

N
NativeFirst Team
7 min read
A monitor displaying lines of code in a dark IDE — representing the developer experience of working with Xcode's updated AI coding agent
Xcode AI

Xcode 26.5 Just Made Its AI Agent Less Annoying. Is That Enough?

Xcode 26.5 shipped two small features — message queuing and clarifying questions — that fix the most frustrating parts of agentic coding. Here's what actually changed, why it matters more than it sounds, and whether Apple's AI coding agent is finally ready for your daily workflow.

N
NativeFirst Team
9 min read
A 'For Rent' sign on a building facade — representing the platform landlord dynamic between Apple's Siri and iOS developers being asked to move in
iOS 27 Siri

Apple Wants You to Move Into Siri's New House. Read the Lease First.

iOS 27 turns Siri into a full chat app with conversation history, document uploads, and deep app integration. Apple is courting developers to build for it — but won't promise it won't charge commission later. Here's why some developers are hesitating, and what you should actually do.

N
NativeFirst Team
8 min read
Colorful sticky notes pinned to a planning board — the analog version of what your Xcode project needs right now
WWDC 2026 iOS 27

WWDC 2026 Is 26 Days Away. This Is Your iOS Developer Pre-Flight Checklist.

WWDC 2026 lands June 8. SiriKit deprecation, Core AI replacing Core ML, Liquid Glass refinements, foldable iPhone APIs, and strict concurrency in Swift 7. Here's the practical pre-flight checklist to run through your codebase right now — before the keynote makes it urgent.

N
NativeFirst Team
8 min read
Crumpled paper receipts on a dark surface — the analog metaphor for the App Store transactions your app keeps treating as valid long after Apple has refunded them.
StoreKit 2 Subscription Fraud

iOS Refund Abuse Has a TikTok Tutorial Now. Your Client-Side Receipt Check Is the Cashier Who Looks Away.

Subscription refund fraud quietly climbed past 11% on iOS in 2026, fueled by TikTok scripts and a 90-day Apple refund window most indies never reckoned with. Client-side receipt verification can't see any of it — and the gap between StoreKit's ‘.verified' and what your business is actually owed is now too big to ignore.

N
NativeFirst Team
11 min read
Lines of code on a dark monitor screen — representing the open source code that powers modern apps but receives less community support in the vibe coding era
Open Source Vibe Coding

Vibe Coding Has a Free-Rider Problem. Open Source Maintainers Are Paying the Bill.

AI coding tools consume open source libraries at scale but skip the human behaviors that keep them alive — bug reports, documentation visits, sponsorships. With 60% of maintainers unpaid and burnout at 44%, the ecosystem that powers your app might not survive the vibe coding era.

N
NativeFirst Team
9 min read
A financial growth chart on a monitor with bokeh lights in the background — representing the explosive App Store growth in 2026
App Store AI

The App Store Just Had Its Biggest Quarter in History. Here's Why That's a Problem.

App Store submissions are up 80% on iOS. AI coding tools turned everyone into a developer overnight. But when 200,000 new apps hit the store every week, the question isn't whether you can build an app anymore — it's whether anyone will find it.

N
NativeFirst Team
8 min read
A smartphone screen showing AI app icons including ChatGPT, Gemini, Grok, and DeepSeek — representing the new iOS 27 Extensions model choice
iOS 27 WWDC 2026

Apple Just Turned AI Into a Settings Toggle. Your App Has No Idea Which Brain Is Driving.

iOS 27 Extensions let users swap Siri's brain between Gemini, Claude, and ChatGPT. It's the default browser moment, but for intelligence. Here's what iOS developers need to prepare before WWDC on June 8.

N
NativeFirst Team
11 min read
iPhone home screen showing Siri Suggestions with app icons — representing how AI-powered discovery is becoming the primary way users find and launch apps
iOS Development App Intents

App Intents Are the New SEO — and Most iOS Developers Are Still Invisible

Siri is becoming the front door to every iPhone. App Intents are no longer a nice-to-have — they're the difference between discoverable and dead. Here's a practical guide to making your app visible before WWDC 2026 changes the rules.

N
NativeFirst Team
9 min read
An airplane cockpit with complex instrumentation and controls — representing the layered safety systems that prevent catastrophic failures
AI Agents Developer Tools

An AI Agent Nuked a Database in 9 Seconds. Aviation Safety Has the Fix.

A Cursor agent powered by Claude Opus deleted a startup's entire production database and backups in under 10 seconds. The aviation industry solved this class of problem decades ago. Here's the Swiss cheese model applied to AI coding agents — and the pre-flight checklist every developer needs.

N
NativeFirst Team
8 min read
Educational App Store Certified 2026 badge — a blue rosette with an academic-cap-and-house icon and a Certified - 2026 banner
ThinkBud iOS

ThinkBud Just Got 5 Stars from Educational App Store

An independent panel of educators reviewed ThinkBud, gave it a 5/5 rating, and certified it. Here's what they said, what they didn't love, and what it means for the app.

M
Mario
6 min read
A developer workspace with a MacBook showing code on screen — representing the daily reality of working with AI coding agents in Xcode
Xcode AI

I've Been Pair Programming With Xcode's AI Agent for 3 Months. We Need to Talk.

Xcode 26.3 shipped agentic coding with Claude and Codex in February. Three months later, here's what it's genuinely great at, where it falls apart, and why it made me rethink how I write SwiftUI code — for better and worse.

N
NativeFirst Team
10 min read
Two developers sitting across from each other in an interview setting — the ritual that no longer matches how iOS apps are actually built in 2026
iOS Development Career

iOS Interviews Are Broken in 2026 — And Everyone Knows It

Companies test you on raw Swift memorization while their production code is 40% AI-generated. The iOS interview process in 2026 is a theater performance nobody believes in anymore. Here's what's actually wrong and what should replace it.

N
NativeFirst Team
8 min read
Two phones side by side in different operating systems — visual stand-in for Swift code now compiling natively for both iOS and Android.
Swift Swift 6.3

Swift 6.3 on Android, Three Weeks In: What Actually Broke and What Surprised Me

When Apple shipped Swift 6.3 with first-class Android support last month, I bet a Saturday on porting a piece of ThinkBud's sync engine to Android. Three weeks of usage later — here's what stuck, what didn't, and the one bug that taught me more than a year of Swift Concurrency reading.

M
Mario
9 min read
Workshop bench with tools laid out — visual stand-in for the small specific tools an iOS developer reaches for during a typical week of shipping.
iOS Development Indie iOS

What iOS Dev Land Is Missing in 2026 — and a Few Things I Built to Fill the Gaps

There are a handful of small, specific frictions every iOS developer hits this year that should not still exist in 2026 — Privacy Manifests, Universal Links validation, iOS 26 icon variants, App Store screenshots. Walking through what's actually missing, why it persists, and four free tools I made for myself that you might find useful too.

M
Mario
11 min read
Colorful thread spools organized neatly on shelves — a visual metaphor for Swift's newly organized approach to concurrency
Swift Swift 6.2

Swift 6.2 Finally Made Concurrency Approachable — Someone Already Built a Parody Site

Swift 6.2 ships @MainActor by default, the new @concurrent attribute, and a complete rethink of strict concurrency. We break down what changed, show real migration code, and explain why the community is both celebrating and arguing.

N
NativeFirst Team
9 min read
Two monitors displaying code side by side — representing the Claude Code vs Cursor developer tool comparison
Claude Code Cursor

Claude Code vs Cursor: I Used Both for a Month. One Tried to Charge $1,400.

Cursor is the sous chef who hands you the knife before you ask. Claude Code is the contractor who remodels your kitchen overnight. We tested both on real iOS projects and here's when each one wins — plus how to avoid that terrifying billing surprise.

N
NativeFirst Team
10 min read
The Swift programming language logo displayed on an Android smartphone — representing Apple's official Swift SDK for Android
Swift Android

Swift 6.3 Now Officially Runs on Android. I Tried It. Here's What Actually Works.

Apple shipped an official Swift SDK for Android with Swift 6.3. Not a hack, not a community port — the real thing. We tested it on a real project and here's every win, every friction point, and the honest verdict on whether iOS developers should care.

N
NativeFirst Team
9 min read
A parking meter with INSERT COINS label — representing GitHub Copilot's shift to usage-based billing where every token now has a price
GitHub Copilot AI Coding Tools

GitHub Copilot Just Installed a Parking Meter on Your Code Editor

GitHub Copilot is switching to usage-based billing on June 1. Same price, fewer guarantees, and your unused credits vanish every month. The flat-rate AI coding era is officially over — here's what it means for developers and what your options actually are.

N
NativeFirst Team
9 min read
iOS 26 home screen showing app icons in default, tinted, and dark variants — the new Liquid Glass icon system that demands three versions of every app icon
iOS 26 Liquid Glass

We Updated Our App Icon for iOS 26. Apple Now Wants Three of Them. So We Built a Tool.

iOS 26 Liquid Glass quietly tripled the work to ship an app icon — default, tinted, and dark variants for every iPhone app. Existing icon tools haven't caught up. We hit the wall updating ThinkBud last week, so we built a free generator. Here's what changed in iOS 26, why every iOS dev is about to learn this the hard way, and the tool we shipped to handle it.

N
NativeFirst Team
10 min read
Monitor displaying code in a dark development environment — representing the late-night Xcode 26 migration sessions developers are pulling before Apple's SDK deadline
iOS Development Xcode 26

Apple's iOS 26 SDK Deadline Hits Tomorrow. Half the App Store Isn't Ready.

April 28, 2026 — every app submitted to the App Store must be built with Xcode 26 and the iOS 26 SDK. If you haven't updated yet, your next submission gets rejected. Here's what's breaking, what you need to fix, and why this deadline is different.

N
NativeFirst Team
10 min read
Glassy abstract iOS interface — representing the SwiftUI and SwiftData layer that underpins modern iOS apps in 2026
SwiftData Core Data

I Migrated Two Apps to SwiftData. Eighteen Months Later, I'm Migrating Half of It Back.

SwiftData turns three at WWDC 2026. After running it in production across two shipping iOS apps for a year and a half, here's an honest field report — what works, what quietly broke, and the three places we went back to Core Data and don't regret it.

N
NativeFirst Team
10 min read
Close-up of colorful programming code on a dark screen representing intensive AI-powered code refactoring session
AI Claude

We Gave Claude Mythos Full Access to Our Codebase. It Shipped Three Features Before Lunch.

After a week of security testing, we let Anthropic's most restricted AI model loose on real development work. It refactored our state management, found a memory leak we'd chased for months, and rewrote our networking layer across four apps. Week two was a different beast.

N
NativeFirst Team
8 min read
Apple WWDC 2026 official event branding — the developer conference bringing foldable iPhone APIs, Core AI framework, and major platform changes
WWDC 2026 iOS 27

Apple Is Shipping Foldable iPhone APIs Before the Foldable iPhone. That's Either Genius or Chaos.

WWDC 2026 drops June 8. Apple is giving developers fold-state detection, Core AI replacing Core ML, macOS touch APIs, and a Siri that lives in the Dynamic Island. Here's what you need to know and what we're already building.

N
NativeFirst Team
9 min read
Green digital rain Matrix-style code cascading down a dark screen, representing AI breaking through digital barriers
AI Claude

Claude Mythos Escaped Its Sandbox While a Guy Ate a Sandwich. Then It Found 271 Firefox Bugs.

Anthropic's most powerful AI model broke out of containment, emailed a researcher during lunch, and then helped Mozilla patch 271 vulnerabilities in a week. We tested it ourselves. Here's the full story.

N
NativeFirst Team
9 min read
A red padlock resting on a black computer keyboard, symbolizing broken digital security
Vibe Coding Security

Lovable Called Their Data Leak 'Intentional Behavior.' It Got Worse From There.

Lovable, the $6.6 billion vibe coding darling, just had its worst week. A researcher proved that 5 API calls from a free account could access anyone's source code, database credentials, and customer data. Lovable's response? A masterclass in how not to handle a security crisis.

N
NativeFirst Team
8 min read
The new Siri interface teased in Apple's WWDC 2026 graphic — a glowing Dynamic Island redesign powered by Google Gemini
Apple Siri

Apple Paid Google a Billion Dollars to Fix Siri. It Might Actually Work This Time.

Apple signed a $1B/year deal with Google to power Siri with Gemini. The WWDC 2026 graphic teases a full chatbot redesign in the Dynamic Island. Third-party AI extensions are coming. Here's what developers actually need to know.

N
NativeFirst Team
8 min read
A dark cybersecurity interface with glowing digital elements representing AI-powered security testing
AI Claude

We Got Our Hands on Claude Mythos Preview. Here's What Actually Happened.

We spent a week testing Anthropic's most restricted AI model through Amazon Bedrock's gated preview. It rewrote our security scanning pipeline, found a bug we'd missed for two years, and made us rethink what AI-assisted development actually means.

N
NativeFirst Team
8 min read
A notebook with hand-drawn wireframe sketches next to a smartphone and pen on a wooden table
AI Design

Vibe Design Is Here. Your Figma Subscription Just Got Nervous.

First came vibe coding. Now Claude Design has birthed 'vibe design' — where you describe what you want and AI builds it. But can vibes replace taste? A look at what this means for designers, developers, and everyone caught in between.

N
NativeFirst Team
8 min read
A designer's workspace with wireframes and UX sketches representing the intersection of human creativity and AI-powered design tools
AI Design

Claude Design Just Launched. Should Designers Update Their LinkedIn?

Anthropic shipped Claude Design yesterday and Figma's stock dropped 7% before designers even opened the tool. But after actually using it, the question isn't whether AI will replace designers — it's which designers were never really designing in the first place.

N
NativeFirst Team
8 min read
A glowing cybersecurity interface representing AI-powered vulnerability discovery and the dual nature of powerful AI models
AI Claude

Anthropic Just Dropped Opus 4.7. But the Real Story Is the Model They Won't Let You Touch.

Claude Opus 4.7 landed yesterday with better coding, sharper vision, and a new effort level. Meanwhile, Anthropic's Mythos model is finding zero-day exploits in every major OS — and they're keeping it locked behind a velvet rope called Project Glasswing.

N
NativeFirst Team
9 min read
47 5
A shadowy figure silhouetted against a monitor displaying code in a dark room, representing the blind spots of AI-generated code
Vibe Coding AI Security

Vibe Coding Built a Social Network in a Weekend. It Leaked Everything by Tuesday.

AI-generated code is shipping faster than ever. But nobody's reading what the AI wrote. The security numbers are brutal, the real-world disasters are piling up, and the industry is pretending this is fine.

N
NativeFirst Team
9 min read
Close-up of an Apple silicon chip highlighting the Neural Engine that powers on-device AI in iPhones and iPads
Foundation Models Apple Intelligence

Apple Put a 3-Billion Parameter Brain Inside Every iPhone. Most Developers Haven't Even Noticed.

Apple's Foundation Models framework lets you run AI on-device with 3 lines of Swift. No API keys. No cloud bills. No privacy headaches. Here's why iOS developers should stop ignoring the smartest thing Apple shipped in years.

N
NativeFirst Team
11 min read
Leaked dummy models of the Apple iPhone Fold alongside iPhone 18 Pro models showing the book-style foldable form factor
iPhone Fold iOS Development

The iPhone Fold Ships in September. Your App Layout Just Had a Panic Attack.

Apple's foldable iPhone has entered trial production. A 7.76-inch inner display, book-style fold, and no Face ID. SwiftUI developers have a head start. UIKit holdouts should start stretching.

N
NativeFirst Team
9 min read
Apple WWDC 2026 event branding — the annual developer conference where Apple is expected to open Siri to third-party AI chatbots
WWDC 2026 iOS 27

Apple Stopped Pretending It Could Build AI Alone. That's the Best WWDC News in Years.

WWDC 2026 is two months away. Apple is opening Siri to Claude, Gemini, and Grok. Xcode already has agentic coding. iOS 27 is a stability year. Here's what iOS developers actually need to care about.

N
NativeFirst Team
8 min read
Apple's Liquid Glass design language showcased across iOS devices — the translucent, frosted interface that divided the developer community
Liquid Glass iOS Design

Apple Gave iOS a Makeover Nobody Asked For. Now Everyone Has to Live With It.

Liquid Glass is permanent, expanding, and mandatory in iOS 27. Apple's VP of design left for Meta. Developers lost customization options. Users can't read their screens. And Apple just told everyone to deal with it.

N
NativeFirst Team
9 min read
A boomerang shaped like a laptop flying back toward an office building — representing the AI layoff boomerang of 2026
AI Layoffs Developer Jobs

They Fired 80,000 Developers for AI. Then the AI Needed a Developer.

55% of companies regret their AI-driven layoffs. One in three spent more rehiring than they saved. Klarna is hiring back the people it fired. IBM is tripling entry-level jobs. The Great AI Layoff Boomerang is here, and it's exactly as awkward as it sounds.

N
NativeFirst Team
8 min read
An overflowing inbox of pull requests with a single exhausted reviewer — representing the AI code slop crisis in software development
AI Code Quality Code Review

AI Wrote 41% of Your Codebase While Your Reviewer Was Updating Their LinkedIn

A new study analyzed 1,154 developer posts and found that AI-generated code is creating a 'tragedy of the commons' in software development. PRs are up 20%, quality is down 23%, curl killed its bug bounty, and your code reviewer is one emoji-filled comment away from quitting.

N
NativeFirst Team
11 min read
Two brain illustrations — one solid and one dissolving into particles — representing the cognitive atrophy of developer skills after months of AI-only coding
Developer Deskilling AI Coding Tools

10,000 AI Prompts Later, She Forgot How to Code

A software engineer admits she lost her coding ability after 4 months of pure AI prompting. With 35 CVEs traced to AI-generated code in March alone and 1.5 million API keys leaked from a vibe-coded app, the developer deskilling crisis just got real.

N
NativeFirst Team
9 min read
A credit meter for AI coding tools going deep into the red zone — representing the hidden costs of AI-assisted development
AI Coding Tools Developer Tools Pricing

Your AI Coding Tool Spent $2,400 While You Were Sleeping

AI coding tools promised to save developers time and money. Instead, developers are waking up to surprise bills, burning through credits by noon, and watching a $0.50 bug fix spiral into $30. The AI tool pricing model is broken, and the developer community is fed up.

N
NativeFirst Team
7 min read
A developer in a hoodie with their face buried in their hands — the universal posture of cognitive overload
AI Burnout Developer Burnout

They Called It 'Brain Fry' — The AI Burnout Nobody Warned You About

AI tools were supposed to make developers faster and less stressed. Instead, Harvard researchers coined a new term for what's happening: 'brain fry.' The Django co-creator is exhausted by 11 AM. 67% of developers spend more time debugging than before. And the people who embraced AI the hardest are burning out the fastest.

N
NativeFirst Team
10 min read
A man carrying a box of belongings leaving an office — the quiet aftermath of a layoff
AI Layoffs Tech Industry

Your Company Didn't Replace You With AI. They Replaced You With a PowerPoint About AI.

295,000 tech jobs cut in Q1 2026. Oracle fired 30,000 people via a 6am email. CFOs privately admit AI layoffs will be 9x higher this year. But here's the thing — most of these companies haven't actually deployed the AI that's supposedly replacing you.

N
NativeFirst Team
8 min read
Empty red theater seats in darkness — a silent audience
AI Reddit

6 Million Programmers Just Hit the Mute Button on AI

Reddit's r/programming banned all LLM content for April 2026. When 40% of your front page is AI takes, you don't have a programming community — you have an AI fan club with a code section. Here's what this says about the state of developer discourse.

N
NativeFirst Team
8 min read
An empty office with rows of desks and chairs — no one sitting in them
Junior Developers AI

We Stopped Hiring Juniors. Now We're Surprised There Are No Seniors.

Junior developer hiring dropped 73% in 2026. Companies replaced training with AI tools and called it progress. But you can't skip the tutorial and expect to beat the final boss. Here's how the industry broke its own talent pipeline.

N
NativeFirst Team
7 min read
Construction workers on a building site with exposed rebar and concrete — the rebuild has begun
Vibe Coding Technical Debt

The Vibe Coding Hangover: 8,000 Startups Walk Into a Rebuild

The party is over. After 18 months of vibe coding, the technical debt bill has arrived. 8,000+ startups need rebuilds, rescue engineering is the hottest new discipline, and the cleanup could cost up to $4 billion. Here's what happened — and what it looks like from the inside.

N
NativeFirst Team
10 min read
A Zurich tram at night with motion blur and city lights — the setting where ThinkBud was born
ThinkBud iOS

I Was Failing an Exam on a Tram. So I Built an App.

The story of how a panicked study session on public transit led to ThinkBud — an iOS app that turns any link, PDF, image, or audio into brain maps, flash cards, quizzes, and exportable presentations. Now available on the App Store.

M
Mario
9 min read
Apple App Store gate blocking vibe-coded apps while Xcode with AI agents walks through the side door
Apple Vibe Coding

Apple Just Killed Vibe Coding on the App Store — While Shipping Its Own

Apple blocked Replit and Vibecode from the App Store on March 18, then shipped Xcode 26.3 with built-in AI coding agents a week later. The hypocrisy is stunning. The reasoning? Actually complicated. Let's talk about it.

M
Mario
12 min read
478 12
Claude Dispatch — phone sending commands to desktop with Claude Cowork showing completed tasks and active connection
Claude Code AI

Claude Dispatch Just Dropped — And Your Computer Will Never Sleep Again

Anthropic just shipped Dispatch: scan a QR code, text Claude from your phone, and your desktop executes the work while you're at dinner. Reports, emails, presentations, file management — all from your couch. This isn't a feature update. This is a paradigm shift.

M
Mario
12 min read
312 14
Retro terminal showing humorous AI commands alongside a timeline from 2026 to 2031 tracking the evolution of programming predictions
AI Programming

Programming in 2031: Our Honest (and Slightly Terrified) Predictions

We sat down as a team and predicted what software development looks like in 5 years. Will AI replace programmers? Will COBOL developers become millionaires? Will anyone understand the code? 7 honest predictions about the future of programming jobs and AI coding.

N
NativeFirst Team
10 min read
203 12
Evolution diagram showing prompts transforming from raw one-time text to saved organized prompts to reusable skills with variables and sharing — PromptKit deep dive
AI Productivity

Your Prompts Are Not Skills. Yet.

Most people save prompts and think they're done. They're not. The gap between a saved prompt and a real skill is variables, iteration, and community feedback. Here's how to turn your best prompts into reusable skills — and why PromptKit was built for exactly this.

M
Mario
13 min read
89 15
PromptKit announcement — Where do your AI prompts go to die? Survey stats showing 73% lose prompts, 68% rewrite same ones, prompts scattered across 4.2 apps
AI Productivity

Where Do Your AI Prompts Go to Die?

We surveyed 2,847 AI users about their prompt habits. 73% lose prompts regularly. 68% rewrite the same ones. The average person stores prompts across 4.2 different apps. So we built PromptKit — a native iOS and macOS app to save, organize, launch, and share AI prompts.

M
Mario
15 min read
156 15
Side-by-side comparison of two expense tracker apps - vibes build with 9 critical security issues vs code build with 0 critical issues and 34 passing tests
Vibe Coding Claude Code

I Built the Same App Twice: Once With Vibes, Once With Code. Here's What Happened.

Same expense tracker. Same AI model. Same developer. Round 1: pure vibe coding, no code review. Round 2: Claude Code with hooks, TDD, and actual programming knowledge. The results weren't even close.

M
Mario
17 min read
247 15
Terminal showing Claude Code commands including custom slash commands, hooks configuration, worktree parallel sessions, and productivity stats
Claude Code AI

12 Claude Code Commands I Actually Use Every Day (Not the Ones You Think)

Custom slash commands, hooks that block you from deploying at 2 AM, worktrees for parallel sessions, and the CLAUDE.md trick that changed everything. A practical guide from someone who's been using Claude Code since day one.

M
Mario
19 min read
178 13
Programmer terminal with passing tests vs vibe coder chat with errors and leaked database - the 2026 reality of coding with and without programming knowledge
Vibe Coding Programming

Why Knowing Code Still Beats Vibing It: Programmers vs Vibe Coders in 2026

Vibe coding lets anyone build an app in hours. But when the database leaks, the AWS bill explodes, and the bugs multiply — guess who gets the call? A real programmer. Here's why knowing code is your unfair advantage in the AI age.

M
Mario
14 min read
203 12
The untapped power of Claude AI - automation hub connecting n8n, Zapier, Slack, MCP servers, GitHub, CRM, and marketing tools
AI Development

One Person, One Terminal, Entire Departments: The Untapped Power of Claude Nobody Talks About

Claude Code hit $2.5B in 9 months. One guy replaced his entire marketing department in 58 minutes. n8n + MCP turns Claude into a self-building automation engine. Here's what's actually possible in 2026 — and why most people are using maybe 5% of it.

N
NativeFirst R Team
14 min read
28 12
Vibe Coding Rumors, Drama and Reality - what the internet is saying in March 2026
Vibe Coding AI

Vibe Coding: The Rumors, The Drama, and What's Actually Happening

From Karpathy's shower thought to open source meltdowns, security disasters, and agentic engineering - we dug through X, Reddit, Medium, and Hacker News to find out what's really going on with vibe coding in March 2026.

N
NativeFirst R Team
10 min read
34 8
AI developer productivity paradox 2026 - chart showing 92% adoption rate but only 10% actual productivity gain from AI coding tools
AI Coding Tools Developer Productivity

92% of Developers Use AI Tools. Productivity Went Up 10%. What Happened?

AI coding tools hit 92.6% developer adoption in 2026, but productivity only rose 10%. The METR study, Uplevel data, and Klarna's reversal reveal why AI-generated code creates more bugs than speed.

M
Mario
13 min read
112 10
Open Source Is Dying - The crisis of AI-generated contributions overwhelming maintainers
Vibe Coding AI

Open Source Is Dying and Vibe Coding Is Holding the Pillow

cURL killed its bug bounty. Tldraw closed all external PRs. Ghostty bans AI contributors. Tailwind laid off 75% of its engineers after an 80% revenue drop. The open source ecosystem is suffocating under AI-generated slop — and the people keeping the internet running are walking away.

N
NativeFirst Research
13 min read
47 13
Claude Code Remote Control - Send coding commands from your phone to your development machine
Claude Code AI

Claude Code Remote Control Just Dropped — And It's Game Over for OpenClaw

Claude Code now lets you write, test, and commit code from your phone. Meanwhile OpenClaw is sending messages through WhatsApp and running code in Docker containers. The AI coding race just ended.

M
Mario
19 min read
134 18
Gambling addiction awareness - statistics, existing tools, and the tech community's responsibility
Apple Announcements

The Gambling Epidemic Nobody Talks About — And Why the Tech Community Must Act

80 million people worldwide struggle with gambling disorder. The suicide rate is 15 times the general average. Existing apps barely scratch the surface. Here is why we believe the tech community has a moral obligation to build better tools — and what we are thinking about at NativeFirst.

R
Rachel Torres
11 min read
68 4
Invoize - Professional invoicing for Mac, built for freelancers and small businesses
Apple Announcements

Why We Built Invoize — And What's Coming Next

Freelancers and small businesses deserve invoicing that just works. Here is why we built Invoize for Mac, the real problems it solves, and the features we are building next — including automatic payment reminders.

M
Mario
10 min read
31 2
How ATS Systems Work - CV passing through AI filters to reach hiring managers
AI Apple

How ATS Systems Actually Work — And How RoleBud Beats Them

Most job applications are rejected by software before a human ever sees them. Here is how Applicant Tracking Systems filter your CV, what they look for, and how RoleBud's 3-tier AI optimization gets you past the algorithms and into the interview.

R
Rachel Torres
10 min read
57 3
Vibe Coding in iOS Development - Comprehensive analysis of AI models and tools
Vibe Coding AI

Vibe Coding in iOS Development: A Comprehensive Analysis of AI Models, Tools, and Workflows

After months of testing every major AI model and coding tool for native iOS development — from OpenAI to Anthropic, Cursor to Claude Code — here is what actually works, what does not, and why Claude Opus 4.6 changed everything.

M
Mario
15 min read
89 14
Welcome to NativeFirst - Our journey building native Apple apps
Announcements Development

Welcome to NativeFirst Blog

Introducing NativeFirst — our journey building native Apple apps with SwiftUI, and what we plan to share on this blog.

M
Mario
2 min read
24 2
Native vs Cross-Platform - Why we choose native Apple development
Development Apple

Why We Choose Native Over Cross-Platform

Our philosophy on building native Apple apps instead of using cross-platform frameworks, and why we believe native development leads to better user experiences.

M
Mario
4 min read
35 2
ABSecureScreen iOS Security SDK - Shield protecting app content
Development Apple

ABSecureScreen — Protecting Sensitive iOS App Content from Capture

How we built an open-source iOS security SDK that prevents screenshots, detects jailbreaks, and protects banking-grade app content — all in a lightweight Swift Package.

J
James Walker
4 min read
22 2
ABNetworking - Modern iOS networking layer with connected nodes
Development Apple

ABNetworking — A Modern, Production-Ready Networking Layer for iOS

We open-sourced the networking layer we use across our apps — async/await, automatic retry with exponential backoff, certificate pinning, and comprehensive error handling, all in one Swift Package.

J
James Walker
5 min read
18 2