A Pirate Looks (Nearly) at Forty

One night last June we managed to get the kids to bed early and decided to rent a movie from iTunes. About forty-five minutes in, our youngest throws up, the oldest starts screaming because of the smell, and all hell breaks loose. Movie night over.

For us, that’s when the spell broke. For seven years we played by the rules. So I walked from the couch to my office iMac, visited an old favorite website of ill repute, and ten minutes later streamed the move in 4K to our TV.

That one evening re-opened the piracy floodgates for us, and we haven’t bought or rented another TV show or movie since.

Read More »


Categories
Personal

Very Simple

I'll keep this post short because there's really nothing more of substance I can add to this argument that many developers and pundits way smarter than myself haven't already said.

But I suppose it's flaring up again in the community because of the hey.com controversy, the recent developer survey Apple sent out (my less polite response from last year), and WWDC looming next week.

From my point of view this is all very simple:

The App Store opened eleven years, eleven months, and seven days ago. It is not a game. It is literally the livelihood of millions of people.

The 30% shakedown has never been justified other than "we can".

The capricious and inconsistent review process has never been explained other than "no comment".

With all the awfulness and urgency in the world right now; and with all the good Apple truly is doing, it feels like a waste of precious attention and resources to complain about the App Store. But, hey, that's business.

Antitrust.

Now.

Read More »


Categories
Apple Indie Business

GrannySmith

And so now I think about not just all the photos and videos - but the 65,234 comments across 16,752 items we've shared. (How do I know those exact numbers? I'll tell you in a minute.) Each one may be insignificant by itself. But combined? They represent 2,596 days of shared family history.

And when I think about losing the post she made about our newborn son in the hospital? Or the one she commented on last week? Only because there's no way to get access to that trove of data? It breaks my heart.

Read More »

Do You Hear That?

Shortly into quarantine at the beginning of March, I realized I had a problem. My iMac has too many audio devices, and managing them was becoming a pain in the ass. And it was all because working full-time at home again, in this new age of frequent work video meetings, Slack and Discord calls, and dealing with two young, screaming kids with no school to attend, created a perfect storm of audio requirements.

So I did what I always end up doing, and wrote the app I wanted for myself.

Read More »

Absolutely Priceless

Just in case anyone is still worried about all those irreplaceable memories - and the years of comments and likes from friends and family that go along with them - I'm workin' on it.

Read More »


Categories
Photography

Preparing For Work Meetings

I have too many meetings at work. (But that's a topic for another day.) And I take very detailed notes during each one so I have a running history of our project I can refer back to, so I know what's expected of our team, and what we expect from the other groups we work closely with.

There's nothing unique about that. It's just meeting notes.

But what I want to share today are two quick iOS Shortcuts I use to prepare for each meeting.

Read More »

JavaScript - A Bedtime Story

It all started with a nightlight that looked like a snowman and ended up taking 89 lines of JavaScript to make my kids go to sleep.

Read More »

StopTheJeff

Jeff Johnson is my favorite kind of developer. He's stubbornly pragmatic in solving the most infuriating types of problems that customers face: The myriad software paper-cuts forced upon us by large corporations trying to squeeze an extra penny of engagement out of every user and the skeezy, underhanded, web developers exploiting our every click.

This post is my next in the ongoing series I promised to write about my favorite apps in support of #IndieSupportWeeks. I've been meaning to write about Jeff's apps for a couple weeks now, and today’s blog post about his newest creation finally forced my hand into doing so. It's just too deviously clever an app not to write about.

Read More »

Additional MailMate Tips

I received a ton of great feedback from visitors about my MailMate love-fest earlier this month. Most people didn't know the app existed. So, here's a few more details around how I have my setup configured along with the hidden preferences I've enabled.

Read More »

Fear and Light

It's remained that way because I've been afraid.

Always, always in the pit of my stomach, deep down in the back of my lizard brain, there's this nagging voice when it comes to the low-level work, the real work, the type of code that real developers write

You're not good enough. You can't make it work. You're not smart enough to figure it out.

So I keep punting on the work. I keep pushing that bug fix further and further out and just hope that my code keeps working and that a random macOS point release doesn't bring it all crashing down.

But two nights ago I sat down in my office. And just fucking did it. I told myself “no” was not an acceptable answer and dove into every arcane, unmaintained bit of Apple documentation I could find. Searched old Cocoa mailing lists for sample code, and finally, finally have a working solution.

After thirteen, years I finally got past my own shit and mental demons and made it happen. I guess I was just fed up with myself constantly ducking out of doing the hard work. That, plus a looming deadline I have to meet, finally held my feet to the fire on this particular feature in a way that has never been done before. So many features. So many bug fixes. Thousands of customer emails and replies. Brainstorming sessions. UI mockups on the back up napkins at bars or doodling on a notepad while at my real job. But this one damn bug was always out of reach. And now it’s done.

To my future self ten years from now: this post is for you.

Read More »