Archive of articles
I've written a number of articles. You can explore them by series, or by date.
Article Series
- Best Of – Some of my favourite articles from over the years.
- Going Overboard – Sometimes I get way too in to a topic.
- Moments in a Life – Some of the more interesting things I've experienced.
- Podcasts – The art and craft of podcasts.
- Making Great Products – Interesting aspects of product development.
- Steamclock – Some lessons and moments from building Steamclock.
- Building Teams – Approaches to leading and serving a team.
- Living Thoughtfully – Making the most of what we've got.
- You Should Have a Research Question – How to turn curiosity into a superpower.
- Build a Deck of Heroes – A way to relate to inspiring people.
- The Curse of Dialup World – An acquisition gets weird.
- Make the Thing a Link – A quick way to level up prose.
- The Feedback Wizard →
- Do Something, So We Can Change It! – A habit for addressing two-way decisions.
- Going Way Beyond ChatGPT – Techniques for building products on LLMs today.
- How Leaders Manage Time & Attention – Some findings on productivity.
- Collect Stories, Not Generalizations – An approach for product interviewing.
- 32K of Context in Your Pocket – A wild large-context LLM appears.
- A 175-Billion-Parameter Goldfish – The problem and opportunity of language model context.
- Humans Need Play – On a vicious pattern that breeds burnout.
- The Care and Feeding of Feeds – Three new apps make for healthier scrolling.
- Dungeons & Developers – How to simulate tricky conversations.
- It Shipped That Way →
- You Should Propose More Things – A habit for getting decisions made.
- 2022 Vancouver Election Guide – 9 parties. 59 candidates. One ballot.
- A Password Autofill Surprise – On psychological safety.
- How to Go Over Budget – On working within an estimate.
- Setting Two Spies Free →
- Giving a Shit as a Service – A mental model for service businesses.
- Someone Wants to Learn From You – How writing habits pay odd dividends.
- How to Buy a Family EV – Doing battle with the global supply chain.
- Coda vs. Notion, and Emoji Pickers – On tools for building knowledge together.
- How Two Spies Closes Cities – A little story about iterative experimentation.
- What Doesn't Need to Be Done – Finishing things requires simplification.
- Beyond Optimism – On a mindset for doing hard things.
- The Burgeoning Need for Focus – How increasing resources can decrease effectiveness.
- Fresh Air Life – On getting out in the rain.
- Fight for Outside Perspective – The case of too many team meetings.
- The Persistent Gravity of Cross Platform – Coordinating a large product org is hard.
- How to Write Docs People Read – On the power of a guide.
- Amazing Atelic Activities – On doing things for the doing.
- The Teams You Worked on May Have Sucked – On who we compare ourselves to.
- Should You Build a Mobile App? →
- Books Are a Seed You Can Plant – Why every diet could use the occasional book.
- Remote Hiring at Steamclock →
- An Iterative Workflow for Attention – My current OmniFocus setup, and why it works.
- Do Great Work, Then Tell People About It – On marketing, and when it matters.
- App Tracking and Analytics →
- Streaming Stories and Troubling Tales – Apple Music proves an imperfect source of kids' stories.
- Two Birds, One Scone – On retiring words from our vocabulary.
- Living, Fast and Slow – On the importance of pacing.
- On Refining Apps' Text →
- How to Not Build a Social Network – I attempt stop you from making a mistake.
- 6 Months in the Closet – I make do with a rather small office.
- The Case of the Missing Tuna – DoorDash loses money on me for the last time.
- Being Good at Roulette – Luck causes problems.
- The Secret Rules of iOS Development – Undocumented rules make for unpleasant surprises.
- Half Here, Half There – A simple suggestion for putting money to work.
- The Unified Theory of Cereal – How to do better than Corn Flakes.
- Explain Like I'm 3 – A new germ turns things upside down.
- Don't Drink the Cream – Social etiquette proves hard to navigate.
- Ode to the Beginning – The tech industry threatens to grow up.
- Two Spies →
- Guide to the Cold-Industrial Complex – A primer on making sense of cold medicine.
- The Coming Supremacy of AR – How augmented reality is far more than a phone on your face.
- Rate This App →
- Canada Election Guide, 2019 – Your vote – it's in you to give.
- Kitten See, Kitten Do – A cat teaches me something about parenting.
- Multiply Your Time – Separating the garbage from the important tasks.
- Being More than Nice – Being nice proves insufficient.
- Control the Silence – The one weird trick to MCing an event.
- iTunes: An Error Occurred – Like all good things, iTunes comes to an end.
- Making a List, Bolding It Twice – One weird trick for writing readable lists.
- Information Needed – App Review just has a few questions for you.
- 325: Podcast Episode Numbers – Podcast episode numbers may not belong in titles.
- Navigation Should Be Boring – Apps should be interesting, but not like that.
- Fun Fact →
- No More Oppatoo – Kids grow up, one quirk at a time.
- Leadership Mode Activate – On taking the controls of a powerful team.
- Vancouver Election Guide, 2018 – A housing crisis and dueling viewpoints make for a fascinating election.
- Blowing Up Your OmniFocus – We break some eggs upgrading to OmniFocus 3.
- White Guys Are the Worst – An old tweet summons a troll brigade.
- The Big Deal – The danger of a client you can't afford to lose.
- 372 Easy Steps to Expanding Your Mind – A long Instapaper backlog meets its match.
- The Great Bug Hunt – A crashing Xbox proves hard to debug.
- Caravan to Xcoders – A Meetup competitor lives and dies.
- The Canadian Cheese Cartel – Cheese please.
- Human-Only Inboxes – Bringing humanity to email with filters.
- Try the Opposite – We avoid local maxima by branching out.
- Chain of Fools – We dive into smart contracts - and bananas.
- No Pain, No Gain – We get out of the comfort zone.
- Longphone – We consider a very tall phone.
- Top Banana – A general plan for generalists.
- Do Not Disturb While Living – We suffer the tyranny of notifications.
- Bright Side of the Moon – We see an eclipse.
- Developing for iPhone Pro – We reimagine navigation bars.
- What Your Career Wants to Be – We learn Bluetooth, and it works.
- People You Want to Work With – We assemble a team.
- Steve Stories – Some tales of a legend.
- The Principle of Least Surprise – An iceberg looms, and we take evasive action.
- Feedback Mountain – I get religion about 1:1s.
- Assassinating for Fun and Profit – A new game appears.
- Goals, Dreams, and Pea Mayo – Goals get made, things get done.
- Rules to Get Paid By – We get paid the nice way.
- The Disclosure Indicator – Idea Guy wants an NDA signed.
- Socking Simians – We buy some App Store Search Ads.
- Creative Destruction – Good apps die young.
- New Here – A wild baby appears.
- Organizational Size Classes – I come to terms with growth.
- Too Many Slacks – Slack can't handle my scale.
- Diagrammatically Correct – Prototypers hack, architects diagram.
- Cofounding Variables – Finding a co-founder gets weird.
- The Joy of Shortcuts – Parse teaches us about shipping.
- Some Things About OmniFocus – Things is out, OmniFocus is in.
- The Worst App – Stephanie isn't the only one upset about an app.
- Being Less Wrong – Estimation is hard.
- Working Title – A junior developer wants to rule the world.
- Moving Swiftly – Steamclock bets big on Swift.
- Can't Stop the Music – Apple Music throws a wrench in the gears.
- The Supply-side Blues – Building apps for love can be unprofitable.
- Fix Your Mac With One Weird Trick – My Mac is sad.
- User Agents of Change – The user-agent string just can't stop.
- Moving Mountains – We run to the press.
- A JS Framework on Every Table – There are too many JavaScript frameworks.
- When Used Properly – The Aeropress box causes me great pain.
- Maximal Products at Çingleton – I give a talk.
- Buying One of Everything – We buy some ETFs.
- A Great App for Recording Podcasts – I evaluate building an app.
- The iPad Zombie – The iPad 2 shambles along.
- Schrödinger's Shift Key – I get upset about a shift key.
- Being Bad at Things – I learn to be less bad at being bad.
- A Lot Can Change in 6 Years – The App Store matures.
- A Company Made of People – Apple proves it's human.
- Feeding the Baby – Running a startup turns out to be weird.
- Burying the URL – Chrome considers hiding the location field.
- Hashed Out – Hashtags get banned.
- Up Up Down Down – I start a podcast.
- Elizabeth and Samantha – AI companions warm my heart.
- Unprofessionalism – Being real brings the haters.
- The Fall and Rise of Podcasting – Podcasting just keeps getting better.
- Searching the Curatorium – We search Twitter on the App Store.
- Maximum Viable Products – We try to make the best products we can.
- iOS 7: Catch Me if You Can – iOS 7 throws CSS a curveball.
- Making a funky app video
- Shipping Party Monster
- The Retina 13": Awkward
- The end of Rich Corinthian Leather
- 50 shades of black
- iPhone product shots, 5 years on
- A Monster in the lab
- Speciation in computing
- iPhone apps on the iPad 3
- iTunes' ball and chain: Windows
- The tweet to nowhere: protected replies
- 3 megapixels in your lap
- Anchoring startups
- Homes for Vancouver startups
- The pain of text formatting on iOS
- Design your way out of that paper bag
- Prism, the image browser
- Web technology in native apps
- Video: Making a JS meetup blow minds
- Providing joy at 60 fps – We make an app feel fast.
- Micro-subscriptions are here
- The Chrome Web Store: get paid to make things
- HOWTO start a technical meetup
- Simple lessons about the App Store
- Announcing WeddingDJ
- A Tale of two Budgetable competitors
- SproutCore spreads its wings
- Leaving Apple – I leave my dream job.
- Twitter is fixing links
- Scrolling libraries for Mobile Safari
- Choosing a viewport for iPad sites
- Four-way racing coming to PS3
- Altering Time retired
- Cassandra: Too fast
- More JSLint, less JSWTF
- An ode to split screen
- Unladen Follow 2: How annoying would this user be?
- Crafting realistic interfaces
- Tab Modality: Chrome makes it happen
- Announcing Unladen Follow
- Chrome for Mac annoyances
- Accessing Twitter with the OAuth Gem and Rails
- IE9 will be faster and rounder
- Feeds worth reading
- Blogger impersonation rampant
- Friedisms
- Stop the fire hose: Primary sources
- Not everybody likes LinkedIn
- I am not a contact
- Vancouver Javascript Meetup
- iPhone coming to everyone else in Canada
- Sony is Going after the touch
- iWork.com updated
- Want to use Wave in Explorer? No problem!
- GMail for HTML5: Loading code via comments
- Forum upgraded!
- Web app theme showdown: Aristo and Ace
- Rainbow pies
- Shaw trying to drown Novus
- Niche blogs: Saving you from my tea rants
- Unlimited music downloads
- Array.sort browser differences
- 3D CSS Transforms hit WebKit trunk
- Wine, donuts, and sex
- Electrolysis: Separating Firefox
- Textmate 2 Still Coming™
- Chrome's Webkit fork ends
- Real function names come to WebKit debugger
- Google's 3D on the web vs. Mozilla's
- Pricing games by length
- Mobifying the world
- GMail adds Undo Send
- iTunes DJ
- What your time is worth
- The California Guys – I run a project. Poorly.
- Kindle for iPhone
- Safari 4: Webkit gets dressed up
- Taking advantage of IE
- Dropping IE6 Roundup
- Twitter and URL mangling
- Antipode realigned
- All content needs dates
- Vancouver now in 3D
- Wesabe spices up your budgets
- Just let me play, would you kindly?
- iWork.com launches
- I'm not dead yet!
- Chromey Goodness
- Designing a dune buggy genetically
- Feature shotguns vs. feature lasers
- Textmate 2: "I'm not dead yet!"
- WordPress admin usability study
- SurfaceWare video
- Ten Tidbits from IE8
- JQuery kicking Prototype's ass
- Translink iPhone site launches
- CSS3 Borders still mired
- Seeing red: CSS sprite borders
- IE8 takes on Firebug
- Javascript engine showdown
- A better object.toString() in Javascript
- Firefox 3.1 adds border-image
- The horror of sneaker design
- Free Ideas
- XBox 360 drops to 5th place
- Two down, n to go
- Not another photoshop montage
- Google Lively
- No unlimited plan, thank you
- IE wants to know your background
- Canadian iPhone plans released
- Shipley on being oneself
- Appled
- Bad UI followup
- Cancelling "Yes or No" – We say no to bad modal dialogs.
- You will lose all unsaved progress!
- Twitter and dogs' butts
- Mac addicts and Firefox
- Elegant authentication in CodeIgniter?
- C++ getting lambdas and closures
- Farewell floating footer
- Japan shuns URLs
- Your browser's command line
- iPhone developer program stalled
- OLPC dream dies
- Indentation voodoo in Python
- Facebook attacks application spam
- Highlights from Web Directions North '08
- Firefox's new Mac theme
- The MacBook Cube
- One week of Safari
- Thinking about Amazon's SimpleDB
- The framework shouldn't wag the app
- phpBB 3 Released
- Antipode tweaked
- Programming as checklists
- Flickr integrates Picnik
- Hosting software rocks
- Web designers converging on Vancouver
- Competition in wireless coming to Canada
- Should eBook readers display double-up?
- Games, cores, and functional languages
- Why scale teams?
- OmniFocus gets 2500 preorders in 5 days
- Firefox 3 hits beta
- Death to minimization
- Altering Time news moved
- Alterations delivered to your doorstep
- The Long Tail of your Tunes
- Worst web design known to man
- Goodbye Boing Boing
- Eee: Linux notebook for $200
- Walking on the nightly side
- Fake unlimited gets the smackdown
- Really hard things
- Apple Store coming to Vancouver... in 2009
- 10 Days until Mac OS X 10.5
- Reddit killing Silicon Valley?
- Welcome to Antipode
- Palm responds to stimulus
- PHP tip: Path-independent sites
- Showdown: iPod touch vs. iPhone
- Fat nano will fit in change pockets
- The dialog is dead, long live the bar
- Worst ISP acquisition ever – The death of dialup turns weird.
- BuyMeNowNowNowNow!
- One Year of Altering Log
- Death to 'unlimited'
- EA's UI design sucks: won't let you play hockey
- Facebook commits seppuku
- The average marriage
- A message from the heavens Mountain View
- Workspacing
- Virtuosity: More Faith, fewer numbers
- Google Analyzes Altering Time
- Apache can do your speling for you
- Programming in a towel
- The iPhone: Awesome! Wait...
- The horror of ring tunes
- Q: Why was Google Answers axed?
- FantasyTech 3: GOTO FUN – A kid tries to make an RPG in BASIC.
- The Zuney Bin
- What's a Budgetable?
- Please let me design a cell phone
- Bye Bye Internet Explorer 6
- iPod SDK, where art thou?
- Sony doesn't want you to buy a PlayStation 3
- Getting people to do boring things for fun and profit
- Faith competing for Engineering
- Altering Time altered
- Review: Coke and coffee, sitting in a tree
- Report from WWDC 2006
- Comment away!
- What won't happen at WWDC 2006
- New Weblog Format
- Ass worked off; still faithful
- Vancouver Skytrain anagram map
- Places of Insanity
- Speaking of Faith
- Not discouraged by hurricanes
- Hurricane honours Faith
- It's Beta time!
- Beta: Baking for a couple weeks at 350
- Beta approaches
- What does loyalty look like?
- New insights
- Rocking in the free time
- Players want to interact
- First endgame nears
- health- burden+
- One thumb up
- It'll be a game Real Soon Now™
- Alpha Test: Round 3
- Apple goes Intel; Force disrupted
- Trying to keep faith
- Finding the gaps
- Fixing bugs you don't care about
- The blog post... of science!
- Quintillions of followers - a roundup
- Faith 3D and Internet Explorer 2 support
- New news article rumoured; experts baffled
- Eventful day of development
- Things to do, places to worship
- Graphs shown who's boss
- Beings of worship & psychotic episodes
- RSS newsreaders
- Back to engineering
- Work resumes
- Bit by bit
- Coding begins
- Logo chosen
- Engineering Faith announced!
- Google offers 1000MB of free email
- Next-gen barcodes track your every move
- "New cell phones suck" - youth
- US passes anti-spam bill; spammers rejoice
- Apple kicks ass, takes names
- The oddly placed wet floor sign
- Netscape Dies
- 200 million Hotmail accounts compromised
- Unquestionable evidence of evil: Powell
- "Asylum" development living up to namesake
- Youth sued for liking ninjas
- Get $10k for naming a baby
- Giga Hurts
- The Theatre Company Movie
- Why Ogg Vorbis?
- Website will suck less, experts expect
- Altering Time Newsroom uninspired
- Real's bloated mess seeps into naming
- Cell phone spam to be banned
- 5" by 7" PC to be released; Mavis Beacon sues
- The Sims more addictive than cocaine, experts suggest
- Napster to be purchased by Bertelsmann - both users interviewed
- Microsoft Xbox sells poorly in Japan
- Microsoft's anti-UNIX site hosted by UNIX