Escape from Tutorial Hell

Go Beyond Coding: Build, Ship, and Maintain Real Apps

Most books, articles, and tutorials issue a lot of orders: create this project, add that file, insert some properties, write some code. Usually, only the write some code section is explained in any detail, and even then, the explanations tend to be focused on the details of the programming language. I know, because I've written those sorts of books and articles myself.

But knowing the nuts and bolts of programming doesn't make you an app developer and this is why many learners get stuck in tutorial hell. They can understand the code snippets that have been taught and they can write functions to perform specific tasks, but there is a crucial gap.

It isn't easy to sit down at your computer and create an app from scratch. There are a lot of decisions to make before you can start coding:

  • What app should I build?
  • What platform am I building for?
  • What frameworks and libraries should I use?

Once you start writing the code, there are even more decisions:

  • What do I write first — data or user interface?
  • How should I structure my data?
  • How should I lay out my code files?
  • What goes where in my project?

In this book, I am not going to concentrate on the code itself — there are lots of other resources for that, including my other books. Instead, I'm going to show you how to take an app from the original idea, through development and on to distribution.

The book is available for sale through Gumroad at Escape from Tutorial Hell.

If you'd like to check out the start of the book including the table of contents and the first chapter, you can read it online at Escape from Tutorial Hell Sample.

Version 1.0 requires macOS 15 Sequoia & Xcode 16.


Book cover

This book is split into six sections:

Section I: Configuring Your Tools

  • Set up Xcode
  • Set up Git & GitHub

Section II: Designing the App

  • What will we build together?
  • Explore MapKit
  • Use test data to layout the UI
  • Include some Mac-specific features: icons, about, help

Section III: Setting up the Data Flow

  • Use a playground to test the API
  • Work out the data models
  • Import the models into the project

Section IV: Working With Xcode

  • Structure the project
  • Format the files consistently
  • Documentation
  • Debugging
  • Using a 3rd party library
  • Testing

Section V: Coding with AI

  • Code completion
  • Using AI chat

Section VI: Distributing the App

  • Distribution - App Store
  • Distribution - external