Collin Donnell

April 28, 2021

Other people's domains

The whole Basecamp policy changecontroversy has got me thinking about whether I want to continue using HEY World for blogging. Not because I specifically agree or disagree with what happened or how it's been handled — it seems complicated and commenting on it specifically is out of scope for this post — but because regardless of anythi...
Read more

April 22, 2021

Thinking about health and lifestyle in 2021

The last time I lived in Portland full-time, before now, was 2014. Almost exactly seven years ago. The period between me moving here and leaving is absolutely the best shape I've been in. I didn't own a car, and so for the most part, I rode my bike or walked to get anywhere I had to go. When I left Portland for San Francisco, I started...
Read more

April 19, 2021

Getting back to Portland

I’ve been trying to blog everyday, but I’m going to give myself a pass on the last two. The last time I posted, I was writing from a hotel room in Cupertino, California. Tonight I am laying on an air mattress in an empty house in Portland, Oregon. I spent Friday finishing up the things which needed to get done, and then driving as far ...
Read more

April 16, 2021

A long and exhausting day

It is a truth universally acknowledged, that moving is the worst. The plan was that yesterday, people would come to pack what was left to be packed, and then today, movers would put everything into containers to be shipped, and I’d be on the road from California to Oregon by 3 or 4 pm. Instead, I found myself trying to shove more thing...
Read more

April 14, 2021

Add a command palette to any macOS app

Do you know how some apps (Sublime Text, Visual Studio Code, Nova) have a shortcut you can type to bring up a command palette to do more quickly get to menu items? Paletro is an app that adds that functionality to every app on macOS. I've been using it for a few days now, and it's been incredibly convenient. On top of accessing menu it...
Read more

April 13, 2021

An iOS Developer Learns Ruby, Part 2: Blocks and Callbacks

In Swift and Objective-C, it’s common to use a block/closure as a callback method when a method or function finishes what it’s doing, or there’s some update. Here’s a contrived example: func sum(first: Int, second: Int, completion: (Int)->()) { completion(first + second); } sum(first: 3, second: 2) { sum in print("The value of sum is \...
Read more

April 12, 2021

Leaving California

I came to California at the end of 2018 to work for Apple on the Reminders app. Since then, I’ve: • Helped write an app that ships to hundreds of millions of people and that lots of them use. • Attended WWDC as an Apple engineer and helped developers as a volunteer at the Core Data lab. • Worked with some of the most incredible enginee...
Read more

April 12, 2021

More on blog analytics

In my last post, I said I wasn't sure if the lack of analytics on HEY World was a good or bad thing. I thought I remembered Brent posting something about this a while back, so I looked it up. Here's what he had to say in 2018: “I don’t have any analytics on this blog. I don’t know how many visitors it gets, how many RSS subscribers it ...
Read more

April 11, 2021

Blogging with HEY World

I’ve made a few posts on HEY World now, and I have thoughts. They’re not that hot, but they are thoughts. Mostly? It’s good. It’s super new and basic, but there’s a lot to love. The Good Easy Posting Posting on HEY World is easy. Anywhere you can use HEY, you can post. I want to be able to use MarsEdit, which feels unlikely will ever h...
Read more

April 11, 2021

An iOS developer learns Ruby

I've been coding Objective-C professionally for thirteen years and Swift for five-and-a-half. I've also dabbled in Python for almost as long as I've done Objective-C, although never professionally. My experience with Python is writing lots of little scripts and quite a bit of dabbling with Django. More recently, however, I've been lear...
Read more

See more posts »