Case Study: First Out
You are standing on a tube platform. The train arrives. You get on. Four minutes later, you arrive at your station. The doors open and you are at the wrong end of the platform. You walk past everyone, up the stairs, through the tunnel, and by the time you reach the exit you have lost two or three minutes that you did not need to lose. Multiply that by two journeys a day, five days a week, and you are losing hours of your life to standing on the wrong spot.
First Out solves that problem. It tells you where to stand on the platform so that when the doors open, you are right next to the exit. That is the entire product. One question answered brilliantly for every station on every line.
The scale
383 stations. 19 lines: Bakerloo, Central, Circle, District, Hammersmith and City, Jubilee, Metropolitan, Northern, Piccadilly, Victoria, Waterloo and City, Elizabeth line, DLR, and six London Overground lines (Lioness, Mildmay, Windrush, Weaver, Suffragette, Liberty). Every station has exit positioning data, carriage counts, and platform notes. The data covers the Tube, DLR, Elizabeth line, and London Overground. If you can stand on a platform in London, First Out has an opinion about where you should stand.
That scale is the product. Most tube tips cover a handful of popular stations. First Out covers all of them. The comprehensiveness is the feature.
What is inside
Exit positions. The core feature. For every station on every line, First Out tells you which carriage and door to stand at for the fastest exit. "Stand at the front of car 3" is the level of specificity. Where the station has multiple exits, the app differentiates: the best position for the Northern line exit might be different from the one nearest the escalators.
Gap warnings. Certain platforms have dangerous gaps between the train and the platform edge. First Out flags these with clear visual warnings. "Mind the gap" is a generic announcement. First Out tells you exactly where the gap is worst and which door to avoid.
Parent and buggy mode. This is the feature I am proudest of. Toggle parent mode and the entire app shifts perspective. Instead of optimising for speed, it optimises for accessibility. Lifts over stairs. Step-free routes over escalators. Gap warnings become critical rather than advisory. Live lift status pulls from the TfL API to tell you in real time whether the lift at your destination is working. Because arriving at a step-free station with a buggy only to find the lift is out of service is not an inconvenience. It is a catastrophe.
The buggy mode includes buggy report cards for stations (rating their accessibility), escalator guides, and twenty curated family day out routes with step-free directions. It also powers a separate brand, Buggy Smart (buggysmart.app), which acts as a dedicated front door for parents. Two brands, one engine, same data, different audience.
First and last trains. For 373 station-line combinations, First Out shows the time of the first and last train. Including Night Tube services on the Central, Jubilee, Northern, Piccadilly, and Victoria lines. This is the information you need at 6am or 11:45pm, and it saves opening the TfL website and navigating three pages to find it.
Door-side indicators. When the exit is on a specific side of the train, the app shows which side the doors will open. Left or right. A small detail that saves the awkward shuffle across the carriage when you realise you are standing on the wrong side.
User verification. Every piece of information in First Out can be verified by users. "Was this helpful?" prompts collect real-world feedback. Users can submit corrections. The data is only as good as its accuracy, and crowdsourcing verification is how the dataset improves over time.
The best products solve problems you did not know you had until someone showed you the solution. Nobody thinks about where they stand on a tube platform. Once you use First Out, you cannot stop thinking about it.
The ambition
First Out is built as a Progressive Web App. It works offline, which matters because you are often underground without signal when you need it most. The service worker caches everything locally. Install it to your home screen and it behaves like a native app. No app store, no downloads, no updates to manage. Open the URL, tap "Add to Home Screen," and it is there.
But the ambition goes further. First Out has a full iOS build via Capacitor. Four native plugins: Geolocation (for nearest station suggestions), Haptics (for tactile feedback when selecting stations), Local Notifications (for service alerts), and Share (for sharing station info natively). Custom app icon, branded splash screens, App Store screenshots at 1320 by 2868 pixels, a support page, and the privacy declarations Apple requires. It is app store ready.
The deploy includes over 60 files across multiple feature tiers, each adding a layer of functionality. Station search, line filtering, favourites, recent stations, accessibility features, time data, verification, and visual polish. WCAG AA contrast compliance, focus-visible states, prefers-reduced-motion support, and cross-platform haptics. The attention to detail is deliberate. A utility app that feels rough loses trust. First Out needs to feel as reliable as the data it provides.
Product thinking at scale
The interesting challenge with First Out was not building any single feature. It was making 383 stations feel like a coherent product rather than a database with a search bar.
Each station page needs to feel useful within three seconds. You open it, you see where to stand, you get off the app. That is the interaction model. Speed is the product promise, so the product itself has to be fast. No loading states for station data. No onboarding flow. No account required. Open, search, answer.
The line-based colour coding is borrowed directly from Transport for London's own visual system. Bakerloo is brown. Central is red. The colours are not decorative. They are navigational. When you see the familiar TfL colour, you trust that you are looking at the right line. That is borrowed credibility, and it works.
Parent mode is a fundamentally different product within the same shell. The priorities shift entirely. Speed becomes secondary. Safety and accessibility become primary. This is not a filter or a sort order. It is a different worldview applied to the same dataset. Building it required thinking about every station from two perspectives: the commuter who wants to save thirty seconds, and the parent with a buggy who needs to know if the lift is working before they leave the house.
What it demonstrates
First Out demonstrates obsessive attention to detail applied to a mundane problem. Nobody wakes up thinking "I need an app that tells me where to stand on the tube." But everyone who uses the tube has experienced the frustration of being at the wrong end of the platform. The product insight is noticing the problem nobody talks about and solving it so thoroughly that the solution feels obvious in hindsight.
383 stations is a product decision, not a technical one. Building for twenty popular stations would have been quicker and covered most users. But the product promise is "the fastest way off the tube." Not "the fastest way off the tube at some stations." The comprehensiveness is the credibility. If your station is missing, the promise is broken.
The parent mode is the same instinct applied to a specific audience. It would have been easy to build First Out for commuters only. Adding parent mode tripled the scope but created a product that serves two distinct audiences from one codebase. That is the kind of product thinking that separates a feature from a product.
What it taught me
The best products are the ones you build for yourself. I use the tube. I have stood on the wrong part of the platform. I have arrived at a station with a buggy and found the lift broken. Every feature in First Out exists because I experienced the problem it solves.
That is not a nice-to-have insight. It is fundamental. When you build for yourself, the quality bar is personal. You notice the gap warnings because you have been caught by the gap. You build the live lift status checker because you have been stranded at street level with a pushchair and a set of stairs. You add Night Tube times because you have been the person at 11:50pm wondering if you have missed the last train.
Utility is the hardest kind of product to get right. A culture publication can have a slightly off headline and still be interesting. A utility app that gives you the wrong carriage number is useless. First Out taught me that when the product promise is precision, every detail matters. Every station. Every line. Every gap warning. Every lift status. The product is the sum of three hundred and eighty-three small acts of accuracy.
Try First Out The fastest way off the tube Open First Out