Archive
Every post, sorted by year. Nearly two decades of notes, experiments, and lessons.
2025
- This time it’s not fatigue, but disconnectionDecember 06, 2025
- AlanNovember 26, 2025
- All Your Brand Are Belong To UsJune 12, 2025
- minifeedJanuary 15, 2025
- AdviceJanuary 10, 2025
2024
- Re: Music Year-End ListsDecember 19, 2024
- SteveDecember 17, 2024
- Little Known macOS Sequoia System ExtensionsSeptember 18, 2024
- HereJuly 15, 2024
- Light Switch in a Dark RoomJune 08, 2024
- Inner WorkingsMay 30, 2024
- It's not about the 30 percentMarch 22, 2024
- Break the Build on PurposeFebruary 06, 2024
- Because what the world needs is one more post about their initial reactions to using Vision Pro, here's mine.February 04, 2024
- Modern Day AppleJanuary 17, 2024
- ...not worthy of your love.January 17, 2024
2023
- Using Reminders to Add Attachments to Calendar EventsSeptember 18, 2023
- MouseosaurusRexJuly 31, 2023
2022
- Do good. Get even more apps.September 05, 2022
- Straight out of 2003July 04, 2022
- Ode to That Thing We All Loved Dearly but Also Understand That Its Time Has Passed and We Should Probably Just Move OnMay 12, 2022
- Half-assed FollowupMarch 06, 2022
- Half-assed Mac AppsMarch 04, 2022
- Roar NotificationsJanuary 04, 2022
2021
- A Better Way to Copy Two-Factor Codes on macOSDecember 18, 2021
- Retina StudioDecember 02, 2021
- Triple Tap to CaptureDecember 01, 2021
- Capture ThingNovember 23, 2021
- That Person ExistsOctober 29, 2021
- SixOctober 09, 2021
- The 4:15 to San FranciscoOctober 09, 2021
- Augmented Reality DucksSeptember 30, 2021
- Conversations in the Dark with a Six-Year-OldSeptember 18, 2021
- A Computer CompanyAugust 07, 2021
- The TitleJuly 21, 2021
- MeetingBuddyJuly 20, 2021
- Delight on a Grand ScaleJuly 10, 2021
- Three Things AgainJune 26, 2021
- This Only Happens HereJune 25, 2021
- Time MachineJune 25, 2021
- Let's Reimplement an Amazing First-Party Feature in the Dumbest Way PossibleJune 18, 2021
- No thanks to the App StoreJune 06, 2021
- The Entire Amount of CommerceJune 06, 2021
- TextBuddy is a Mac|Life Editor's ChoiceMay 28, 2021
- Extra Searchable Meeting NotesMay 20, 2021
- Finder Catalog NumbersApril 01, 2021
- Mortal Mac App SinsMarch 20, 2021
- Calendar HeroMarch 08, 2021
- TextBuddy for macOSMarch 01, 2021
- ReceiptsFebruary 13, 2021
- Roundabout SyncingFebruary 05, 2021
- Email Followup About Standing Desks and Ultrawide MonitorsJanuary 28, 2021
- Ow, My BackJanuary 21, 2021
2020
- 240 Invisible PixelsDecember 14, 2020
- One Year of App Pricing ExperimentsDecember 09, 2020
- Standup.appDecember 01, 2020
- The Apple Hero 2020 NeedsOctober 31, 2020
- Voxmail Voice Email with SiriOctober 26, 2020
- Talking to OmniFocusOctober 25, 2020
- MotivationOctober 18, 2020
- Does Not ContainOctober 10, 2020
- Dot Dee TeeOctober 10, 2020
- FiveOctober 09, 2020
- Solving Problems on SystematicOctober 09, 2020
- The App That Never WasOctober 02, 2020
- Digital HeirloomsSeptember 27, 2020
- Sample Code to Make your Mac App Open at Launch and How to Handle Global Keyboard ShortcutsSeptember 22, 2020
- Listen upSeptember 18, 2020
- Don't Let Experience Get in Your WaySeptember 12, 2020
- Surtainly NotSeptember 05, 2020
- ShelleyAugust 27, 2020
- Merging and Deduplicating a Whole Lot of Google PhotosAugust 22, 2020
- An Epic Blog PostAugust 16, 2020
- Download Jigsaw for macOSAugust 05, 2020
- Visually Syncing Your Mac's DesktopAugust 02, 2020
- DIY Video HostingJuly 20, 2020
- ProcessJuly 15, 2020
- BespokeAppJune 29, 2020
- A Pirate Looks (Nearly) at FortyJune 21, 2020
- Very SimpleJune 16, 2020
- GrannySmithJune 13, 2020
- Do You Hear That?June 04, 2020
- Absolutely PricelessMay 23, 2020
- Preparing For Work MeetingsMay 22, 2020
- JavaScript - A Bedtime StoryMay 16, 2020
- topthejeffMay 08, 2020
- Additional MailMate TipsApril 28, 2020
- Fear and LightApril 24, 2020
- Fastmail Wrapper for macOSApril 15, 2020
- Roland is a Static Website Generator Written in SwiftApril 13, 2020
- mailmateApril 06, 2020
- April 5, 2020April 05, 2020
- #IndieSupportWeeksApril 01, 2020
- So, uh, I think Catalina 10.15.4 Broke SSH?March 31, 2020
- A Quick Shell Script to Keep a LAN File Server Mounted All the TimeMarch 25, 2020
- Spotish for macOSMarch 25, 2020
- Three Things TodayMarch 20, 2020
- The Stack View is a LiarMarch 16, 2020
- Default App for Mac iOSMarch 14, 2020
- Followup: Comparing my Current B2 Storage Costs against Amazon S3 Glacier Deep ArchiveMarch 07, 2020
- My Family's Photo and Video Library Backup Strategy in 2020 - Plus a Fun Anecdote I've Never Told BeforeMarch 06, 2020
- Better Recurring Projects Using OmniFocus and TaskPaperFebruary 27, 2020
- BegrudginglyFebruary 17, 2020
- DeactivatedFebruary 06, 2020
- I May Have Gone Overboard with My Keyboard ShortcutsFebruary 01, 2020
- How to Set Custom Display Values and Localize NspredicateeditorJanuary 26, 2020
- Quick Access to My Favorite Folders with Keyboard MaestroJanuary 23, 2020
- FocusJanuary 17, 2020
- Running commands remotely on a Mac that you don't have access to using Hazel and DropboxJanuary 07, 2020
- RebudgetJanuary 02, 2020
2019
- Subscriptions or BustDecember 12, 2019
- Making Siri Shortcuts run automatically - even when iOS doesn't want you toDecember 03, 2019
- Triage Your Email in the Car with SiriNovember 24, 2019
- Rebecca Stand and the phone reasonNovember 18, 2019
- GoneNovember 05, 2019
- Perfectly CroppedOctober 17, 2019
- Feels like the futureOctober 16, 2019
- AftermathOctober 14, 2019
- BrokenOctober 09, 2019
- macOS 10.15 VistaOctober 07, 2019
- A Stupid-Simple Automated iOS Build ScriptJuly 27, 2019
- More Apple Photos FuckeryJuly 06, 2019
- Reviving an Old Mac AppJune 22, 2019
- The Mac Won't Be SherlockedJune 10, 2019
- My Favorite Email Spam Filtering RuleJune 09, 2019
- Automatically backup up the full contents of your Pinboard (and Pocket) bookmarks in DEVONthinkJune 07, 2019
- How to Import Your Pinboard Bookmarks Into DEVONthink and Convert Them to Searchable Web ArchivesMay 30, 2019
- My One Feature Request For iOS 13May 27, 2019
- Creating a Permanent SSH Tunnel Back to Your Mac at HomeMay 26, 2019
- Apple Asked For FeedbackMay 24, 2019
- Missing Rdio and Making the Best of Apple Music with ShortcutsMay 23, 2019
- Starting and Finishing More Long-Form Writing in Drafts.appMay 21, 2019
- Losing FaithMay 19, 2019
- Why Many of My Apps Failed and What Comes NextMay 11, 2019
- iTunes Match Failed MeMay 03, 2019
- Moving back to Google - just a little bitApril 23, 2019
- Finder Folder Actions not being triggered when files are added with rsyncApril 22, 2019
- Fixing Broken Backblaze B2 Scripts when Run From cronApril 22, 2019
- A Faster Way to Create Multiple Tasks in OmniFocus (with all sorts of details!) Using Drafts.appApril 20, 2019
- Creating New GitHub Issues From Drafts.appApril 20, 2019
- Backing Up Shared iCloud Photo Albums and Where to Find Them on DiskApril 19, 2019
- Creating GitHub Issues (with image attachments!) From an EmailApril 08, 2019
- Fixing a Broken Service With a Tiny Bit of AutomationMarch 29, 2019
- Backing up Everything AgainMarch 27, 2019
- A Simple, Open-Source URL ShortenerMarch 21, 2019
2018
- Moving Projects ForwardFebruary 15, 2018
- Switching to Google Photos from a Dropbox Photo LibraryJanuary 04, 2018
- Permission to ForgetJanuary 03, 2018
- GeoHooksJanuary 02, 2018
2017
- Moving to a More Comprehensive Weekly ReviewSeptember 26, 2017
- Can the Cloud Be Your Only Backup?August 23, 2017
2016
- Creating a Daily Standup Perspective With OmniFocusDecember 01, 2016
- A Stupid Idea?July 04, 2016
- Making Money Outside the Mac App StoreFebruary 01, 2016
- Coding on My iPad ProJanuary 19, 2016
2015
- Wrapping up 2015December 16, 2015
- Switching Email ProvidersNovember 28, 2015
- Harper ElizabethOctober 20, 2015
- Must, Will, MightAugust 24, 2015
- No Phone ThursdaysAugust 24, 2015
- My New Email Routine With SaneBoxAugust 09, 2015
- Connecting Amazon Alexa's Todo's with OmniFocusAugust 01, 2015
- Duplicate TasksMarch 18, 2015
- Where do External Triggers Belong?January 23, 2015
- I Will Not Use the Phrase "Growth HackingJanuary 22, 2015
- Creating a Weekly Preview from your Weekly ReviewJanuary 14, 2015
- External Triggers in OmniFocusJanuary 12, 2015
- Lowering the Project ThresholdJanuary 08, 2015
- Even Panic is Having Trouble Making Money on iOSJanuary 05, 2015
- Benefits of Selling Outside the Mac App StoreJanuary 02, 2015
2014
- 2014 Business Yearly ReviewDecember 29, 2014
- My InboxesDecember 29, 2014
- That ConnectionDecember 17, 2014
- More App RejectionsDecember 09, 2014
- Writing Without EditingDecember 04, 2014
- Being an Indie is HardDecember 01, 2014
- 36 Hours With Amazon EchoNovember 30, 2014
- Knowing When to QuitNovember 24, 2014
- An Indie Mac Business - Breaking Down the YearNovember 23, 2014
- Twelve HoursNovember 22, 2014
- Handling Repeating Tasks and Routines in OmniFocusNovember 21, 2014
- My Checklist For Releasing a New Mac AppNovember 10, 2014
- My Evernote @InboxNovember 08, 2014
- My OmniFocus Habits - Four Years LaterNovember 04, 2014
- Delegating Tasks and Outsourcing Your Indie BusinessOctober 27, 2014
- ConstraintsOctober 13, 2014
- Paul Kim on His Indie JourneyOctober 06, 2014
- Marching Through the WildernessSeptember 16, 2014
- Assigning Relationships Between Tasks and People in OmniFocusSeptember 15, 2014
- Big or SmallSeptember 13, 2014
- How I Manage My EmailSeptember 10, 2014
- All The Services and Tools I Use to Run My Software BusinessSeptember 09, 2014
- First Impressions of Using Drip for Email Marketing AutomationAugust 27, 2014
- My Favorite Coffee CupAugust 27, 2014
- Indie Developers are Stronger Together / Sharing Our NumbersAugust 25, 2014
- Mailing Lists Are Your FriendAugust 24, 2014
- Marketing is just another stage in the development processAugust 19, 2014
- Encouraging SerendipityAugust 18, 2014
- Zero Sales Days with a Little Impostor Syndrome Mixed InAugust 14, 2014
- Your First Success is a TrapAugust 04, 2014
- My App Strategy - Keep Trying New ThingsJuly 29, 2014
- A Candid Look at the Financial Side of Building Mac Apps on Your OwnJuly 28, 2014
- Daniel Jalkut says, in a tweet, what I tried to say with 2,000 wordsJuly 28, 2014
- More Business Advice from Gus MuellerJuly 28, 2014
- How to Export Slow Motion Videos From iOS to FacebookJune 19, 2014
- Dropbox Photography IntroductionMay 05, 2014
- Bellroy Note Sleeve Wallet ReviewMay 01, 2014
- Day One Journal Total Word CountApril 15, 2014
- A Happy Side-effect of Journaling Every DayApril 15, 2014
- Rockwell - Sort of like a private Foursquare meets Fire EagleApril 14, 2014
- Minion for MacApril 12, 2014
- The ThrillApril 06, 2014
- One Concrete ActionApril 03, 2014
- Pricing a New Mac App Without CompetitionApril 03, 2014
- iCloud Doesn't Backup Your PhotosApril 02, 2014
- Printing and Mailing Photos to Your GrandparentsApril 01, 2014
- Dealing with Asshole CustomersMarch 31, 2014
- My Favorite ChairMarch 28, 2014
- Importing Jekyll Posts into WordPressMarch 21, 2014
- Switching from GitHub to GitLabMarch 19, 2014
- AaronJanuary 01, 2014
2013
- Nostalgia - Rename Your PhotosDecember 31, 2013
- JournalingOctober 22, 2013
- Choosing the Right AppOctober 14, 2013
- Finding Related Messages in Apple MailOctober 07, 2013
- Setting Up NSOutlineView Drag and Drop with Core Data in CocoaSeptember 12, 2013
- PebbleCamApril 08, 2013
- Hazel and GitMarch 04, 2013
- OmniFocus for People Who Work From HomeFebruary 20, 2013
2012
- Cutting Back on iPhone NotificationsSeptember 09, 2012
2011
- Remember to BackupNovember 26, 2011
- Publishing Your Blog with Dropbox and JekyllNovember 16, 2011
- Guessing a User's Location on iOSSeptember 25, 2011
- Why I Took the JobSeptember 11, 2011
- Switching From WordPress to JekyllAugust 28, 2011
- Automatically Reposition the iOS Simulator on ScreenJuly 12, 2011
- Creating a Universal Binary With Xcode 3.2.6July 08, 2011
- A Big Mouse CursorMay 25, 2011
- Experimenting with Piracy - An Indie Mac Developer's PerspectiveMay 18, 2011
- Syncing Your Adium Chat Logs into Dropbox (again)April 20, 2011
- Unsupported Architecture When Submitting to Mac App StoreApril 18, 2011
- Search Mac and iOS Documentation From Chrome's OmniboxFebruary 25, 2011
2010
- Sosumi for Mac - Find Your iPhone From Your DeskopNovember 30, 2010
- Backblaze Saves the DayNovember 23, 2010
- Automatically Compressing Your Amazon S3 Images Using Yahoo!'s Smush.it ServiceOctober 15, 2010
- How I Use OmniFocus to Organize My LifeOctober 13, 2010
- Generating Strong, User Friendly Passwords in PHPAugust 12, 2010
- How I Backup my MacJuly 01, 2010
- Open Source UpdatesJune 21, 2010
2009
- OpenFeedback Part DeuxDecember 27, 2009
- Switching From PayPal to FastSpringDecember 23, 2009
- Hine an Indie Mac DashboardAugust 06, 2009
- Sosumi - A MobileMe ScraperJune 23, 2009
- Persistant Location Updates From iPhone to Fire EagleApril 20, 2009
- Google Voice DialerMarch 26, 2009
- YUI App ThemeMarch 09, 2009
- PHP Wrapper for Yahoo! GeoPlanetFebruary 25, 2009
- Serving Static Content on Amazon S3 with s3upFebruary 07, 2009
- Download All of Your Flickr Photos and SetsJanuary 28, 2009
- Sync Your Adium Chat Logs With DropboxJanuary 24, 2009
- Use Rapache to Manage Virtual Hosts on UbuntuJanuary 14, 2009
- Forward Your Growl Notifications to TwitterJanuary 05, 2009
2008
- Amazon S3 Improvements in PHP-AWSNovember 18, 2008
- Parse Command Line Arguments in PHPNovember 14, 2008
- How to Stream Your iTunes Music Over the InternetSeptember 10, 2008
- Too SoonAugust 20, 2008
- Dial a Phone Number Using Grand Central and PHPAugust 15, 2008
- Cornerstone SVN Client for MacJuly 01, 2008
- Let Google Do The Work For YouJune 17, 2008
- Sort Apple Mail Messages Using the KeyboardJune 10, 2008
- Introducing Appcaster + OpenFeedbackJune 02, 2008
- Scraping IMDB With PHPMay 21, 2008
- Two Weeks With DroboMay 18, 2008
- Quickly Evaluate Your Referral LinksMay 13, 2008
- Using Amazon S3 as a Content Delivery NetworkMay 09, 2008
- Building a Better Website With Yahoo!May 06, 2008
- Dark City Director's CutApril 29, 2008
- Mercury MoverApril 28, 2008
- Holy Crap! Mint PluginApril 26, 2008
- Bank of America RSS FeedsApril 07, 2008
- Managing Exchange Invites in Apple's iCalFebruary 19, 2008
- Microsoft and Yahoo! - My TakeFebruary 01, 2008
- Lost's Buried TreasuresJanuary 16, 2008
- Uncov Nails ItJanuary 16, 2008
- How To Install PEAR in Mac OS X LeopardJanuary 02, 2008
2007
- Navigate Yahoo! Search Results Using Only Your KeyboardNovember 08, 2007
- Retain Your Employees With Your Ideals, Not Your PerksNovember 05, 2007
- 50 States Programming PuzzleNovember 01, 2007
- How to Enable PHP5 In Mac OS X LeopardOctober 26, 2007
- Leopard First ImpressionsOctober 25, 2007
- My Favorite New Leopard FeatureOctober 25, 2007
- What is Twitter?October 24, 2007
- foo9 URL ShortenerOctober 03, 2007
- iPhone Versus DogSeptember 13, 2007
- Lessons From a First Time Mac DeveloperSeptember 10, 2007