Doing to Track What I’m Doing

A computer is in front of me most of every day, but I’m terrible at knowing what I’ve accomplished there. It’s a source of play and work (which is often itself a sort of play).

My platform of choice is macOS split with work in Ubuntu linux at the terminal. As a longtime “computer aficionado,” of the Apple variety, I found myself drawn to Brett Terpstra1 for his amazing work on the platform.2 One of the projects he has shared with the world is doing, a command line tool for tracking what you’re, uhm, doing.

I’ve had this app installed for years, but never really built a habit of using it regularly. My most recent career change requires me to be a little more attentive to what I’m doing where and how much time I spend doing it. Since I’m in iTerm2 so often anyway, I am overdue to give it a proper spin.

Once installed,3 just type doing now the thing you're doing and it creates a timestamped log entry. There are options for backdating tasks as well as annotating, archiving, tagging entries that can be accessed, exported, and shared in a number of ways. Used properly, which is my goal, doing can be used to accurately track your time devoted to each task.

For now, I’m studying up and sharing these possibilities with you. I plan to throw myself into using it for real next week.

  1. Known as @ttscoff most places online. 
  2. Seriously, just look at all of the projects Brett has shared with us! 
  3. Brett provides a generous wiki with full documentation in addition to extensive help within the app by typing doing help

Tricking Out iTerm2

The new year brought with it a new job for me as a full stack developer for Webinology,1 a small firm in Chattanooga, Tenn. I’ve always been a fan of linux, appreciate that macOS is built atop BSD, and have long been comfortable at the command line. While Apple provides, I’ve always preferred applications I can fully customize. Years ago, I found the best app for working in a shell is iTerm2.

Before my new professional role, I would only dip into iTerm2 occasionally to log into my Linode server or maintain a few apps installed with Homebrew. Now that I spend a good deal more time typing commands at a shell prompt, I decided it was time to pimp my ride.

Setting the Baseline

Apple switched the default shell from bash to zsh some time ago and that was just fine with me. As everyone should, I’ve installed oh-my-zsh (Links to site and GitHub) on top of the shell to easily enhance the environment.

Once oh-my-zsh is installed, it’s easy to enable plugins. For me, after some configuration, those include docker-compose, git, extract, zsh-autosuggestions, and zsh-syntax-highlighting. I also use the popular powerline10k theme.

iTerm Settings

There is a lot to fiddle with in iTerm’s settings window. My most important customizations are under the Profiles tab in my Default Profile. I’ve chosen the Calamity theme to set my colors and use the font MesloLGS NF to prettify the Powerline10k prompt.

Alternate Apps

I have “upgraded” a handful of command line apps to enjoy their feature enhancements for common tasks.

  • exa is a replacement for ls
  • bat is a replacement for cat


Aliases are a great way for users in any shell to save long commands to short ones that are easier to type. They also provide an easy way to replace default apps like those mentioned above. For example, instead of typing ls -laFh, I type ll. Not only is it shorter and easier to type, it actually invokes exa. All I had to do was add a line to my ~/.zshrc file.

alias ll='exa -l --icons --no-user --group-directories-first --time-style long-iso'

To include hidden .dot files, I type lll, which actually sends this.

alias lll='exa -la --icons --no-user --group-directories-first --time-style long-iso'

Another good use of aliases is to help you remember IP addresses. For instance, when I type linode, it logs into my Linode server by sending something like this:

ssh user@

  1. I speak for myself, all comments my own, blah blah blah. 

New Job, New Perspective

Soon after New Year’s Day I started a new job as what is easiest to describe as full stack developer.

I turned 50 in February and have learned more in the past two months than any other point in my life. I bought books on Linux (to refresh my memory) and a great book on PHP & MySQL.1 My employer, Webinology bought me a book on GitLab to learn more about CI/CD.

We don’t have a brick & mortar office so I work 100 percent from home. My coworkers are awesome. I get to do the very work I’ve been tinkering with for fun since I was in my 20s. Dreams come true!

Never stop learning!

  1. True story: I searched for a book on these topics on Feb. 15, the very day that book was published. You can buy it on Amazon with this PHP & MySQL affiliate link. Talk about Karma!

Mullenweg Interview

The Verge published a great interview with Automattic CEO Matt Mullenweg. So quotable! Here are a few hotspots.

  • I try to make as few decisions as possible and really say, “How do we push that out to the teams, the divisions, the edges of the branches of the tree versus the trunk?” The assumption is that none of us are as smart as all of us [emphasis mine], so now what do we build in there?
  • “Reversible decisions quickly, and irreversible decisions deliberately, or slowly.”
  • When we acquired it, Tumblr had a backload of 80,000 support tickets.
    We got that to zero just a few weeks ago.
  • AI on its own can be bad, humans on their own aren’t as good as AI at some things, but when you combine them, you can actually get superhuman results — better than either on their own.

He’s one smart dude and I think he has great ideas for growing the web and the world in the right direction.

Beginning to Understand DNS

Montreal developer Julie Evans has been publishing information about the Domain Name System (DNS) that is easier to understand than anything I’ve read before. If you’re interested in learning more about the topic, check out these articles:

This “series” (my term, not hers) is up-to-date as of February 15, 2022. There may be more articles to come, so subscribe to Julie Evans’ Blog.

Updated 2022-02-15 to added recent related post to series list.

The modern curriculum | Seth’s Blog

The modern curriculum | Seth’s Blog:

It’s been a century of biology, chemistry, arithmetic, social studies and the rest. So long that the foundational building blocks are seen as a given, unquestioned and unimproved. The very structure of the curriculum actually prevents school from working as it should.

I think that a significant shift is overdue. The one [detailed in this article] could work for kids from the age of 6. It doesn’t eliminate the fundamentals of being educated, but it puts them into context. More important, because it’s self-directed and project-based, kids can choose to learn, instead of being forced to.

Seth has been talking about education models for years and I’ve always agreed with him. Society and technology have changed in the past century. Why hasn’t public education?

A Madonna Who Shows the Beauty in Going Overboard – The New York Times

A Madonna Who Shows the Beauty in Going Overboard – The New York Times:

What makes a picture “good”?

This is the question Jason Farago strives to answer in this New York Times article focused on “Madonna of the Long Neck” by Parmigianino.

I’m not sure what it is, but this article drew me in and somehow inspires me. Maybe it’s the short review of great art or the witty discussion with shifting focus on different parts of multiple works of “Great Art.”

Whatever it is, I like it.

Why handwriting is good for learning – On my Om

Why handwriting is good for learning – On my Om:

I have always taken notes and handwritten first drafts of articles on paper. That has allowed me to learn, recall and imagine better. I couldn’t recommend writing more highly.

Agreed. I don’t attend many meetings these days, but when I do I have a decent pen (the Pilot G2 is my OG) and a yellow legal pad with me.

Daring Fireball: Fleets, We Hardly Knew Ye

Daring Fireball: Fleets, We Hardly Knew Ye started with…

I’ll resist dunking on Twitter for this, because I think it’s better for Twitter to try more new ideas — even if many wind up abandoned — than to find itself paralyzed by indecision over how to evolve the platform.

…and pivoted to…

Fear of letting the other side achieve its goals when they’re in the majority has resulted in a legislature that can barely pass anything — and that hasn’t worked out well.

I really appreciate how John took an observation about Twitter’s rightful abandonment of “fleets” and turned into a conversation about the filibuster.

The filibuster is a bad idea. It’s OK to kill it and move on.