Collin Donnell

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

April 6, 2021

Running the current file in Nova

In my previous post on Mac code editors, Nova did pretty well-fitting some of my criteria, but a big one that it didn't was that I couldn't find a way to hit Command+R and run whatever script I'm currently editing. It turns out I was partially wrong, and this is sort of doable in Nova right now. If you open a file in Nova directly, I c...
Read more

April 3, 2021

Useful Shell Aliases

Like any good computer person, I maintain a collection of dotfiles. Mine is pretty basic. I don’t use any crazy zsh package manager framework thing or external dependencies. I do have a bunch of aliases, however, that I think are pretty helpful. I’m sharing them here. I hope some of these are useful to other people. If they are, or you...
Read more

March 29, 2021

The state of Mac code editors

I like to think of myself as a typist who doesn’t ask for much. The last thing I ever wanted to be was another programmer, dissatisfied with the state of text editors for macOS in 2021, writing yet another article comparing code editors. Regardless of my best intentions, however, here we are. My short answer is this: it’s pretty bleak ...
Read more

March 29, 2021

NetNewsWire 6 for Mac

NetNewsWire — my RSS reader of choice — and possibly the most Mac-assed app there is, just released version 6. It's a big update, with the two most visible things being iCloud sync and a UI refresh to match Big Sur. I even contributed a bug fix to the release, which I hope to do more of in the future. Go read Brent's post about it.
Read more

March 28, 2021

On missing out

Until pretty recently, whenever some new social networking thing would come along, I would go and sign up. I wanted to see what everyone was on about or, at the very least, make sure I got my name. Not so much lately, though. The realization was that these services aren't here to, well, serve me. They're here to monetize me or add me a...
Read more