At work, in one of our engineering meetings, we’ve started a new series where engineers get up and show how they work. It’s fun to see your co-workers talk about themselves and each speaker gives me something to consider about my own setup. I thought I’d document mine here just for fun.

The first thing I should say is that despite all the scripts and services I use the one thing that is core to my work is a real notepad and pen next to my keyboard. I’ve tried many times to to move this to a digital, synced method and every time I go back to pen and paper. It’s just too easy to get ideas down and crossed off.

My first thing to do when I get into work is write the three or four things I know I have to do in a day. The scope is very high-level and usually just a few words describing something I’d like to have done. I’ll probably copy these lines over again later as a headers to longer lists, or just cross it off as it’s done and not think about it again.

Later in the day I’ll add more things to the list at a lower level. Sometimes at a very low level to motivate myself. “Open file x” for example. At the end of the day or especially on a weekend I’ll write a few things I need to do when I get back to my desk.

Right now my pen of choice is the rOtring ArtPen. I don’t know if I’ll ever go back to ball-point or pencil–fountain pens feel so good.

I always have a window open looking at logs while I work. I know most people just tail -F a log file but I tend to add | grep someword and then preface my own debug statements with someword. Often that word is PIZZA.

I use the Utime Chrome extension a lot. A LOT.

I use Vim. I use ctrl-p. I can’t work without gitgutter. And I depend on ag as a much faster “ack”.

Ctags are my life. I can’t imagine using a text editor without ctags. I could write a whole blog post about how great ctags are and maybe someday I will. If you don’t know what they are you should consider putting them to work for you. I really couldn’t imagine working without them.

I use the Fish shell mainly for the clever auto-complete.

I also use some Fish script to put my current branch name and branch state in the prompt. I do a very small amount of branch switching in a day and it’s good to be reminded that I am no longer on the branch I think I am.

As you may remember I use a Chromebook at work.

There’s some Slack-specific stuff I use in a day, but other than that I think my setup is rather simple.