I’m James, a front-end developer at Memrise where I build the web component of the world’s most entertaining learning app. I largely enjoy coding as much as I can, but I also love (live) music and reading about philosophy, tech, business, or whatever my latest obsession is.
I’ve got two matching 15” MacBook Pros: a base 2016 space-grey model for home, and a snappier 2018 model for work. I’m quite an Apple fan so can’t seriously consider using anything else.
Monitor-wise, I use a 27” Dell at work and a 27” Acer at home. Nothing crazy, but it’s nice to have the extra space sometimes.
I also have a matching Apple trackpads (space grey for home, white for work) and matching ErgoDox EZs (black for home, white for work).
I don’t know if you’d call this hardware, but I’m also a massive fan of the Midori Traveler’s Notebook. I love how you can combine multiple types of paper in one notebook, so I have plain pages for sketches and squares for my regular notes which I handwrite in Markdown (don’t ask me why).
My dev setup is growing and changing all the time, but its core components are nvim, tmux, zsh, and iTerm2. If you’re a dotfiles person, mine are here.
I use the Solarized theme on everything (terminal, Vim, tmux, Ulysses, React DevTools) because it has good syntax highlighting, is widely available, and because I can easily switch between light and dark modes with my dawn
and dusk
bash scripts.
Much my work involves design, so I also use a lot of Sketch. We also use Abstract at Memrise which helps bring git-like source control to the design process.
I also couldn’t live without Contrast and Sip which help me find, choose, and store accessible colors for my UIs.
My core productivity setup is based around Things and Notion (referral link), which I think are some of the best-built pieces of software I’ve found. I’m a moderately strong adherent to GTD, so almost everything I do ends up in Things at some point. I use Notion for taking notes, goal-setting, my book list, project planning, and anything else I need to get out my head.
Another big component of my productivity setup is Alfred. I used to use it as merely a nicer version of Spotlight, but I’ve recently been tricking it out with lots of dev-focused workflows like a Stack Overflow search, 1Password Search, clipboard manager, and documentation search.
Focus is very important to me, so I use a couple of programs to maintain it. I have a pomodoro timer command I run in my terminal, and I block out any distracting noise with Noizio or Spotify.
Other miscellaneous apps I like are Ulysses for writing, DayOne for journaling, and f.lux to help me get to sleep.
My ErgoDox EZ layout is a modified version of QWERTY that’s designed around writing a lot of JavaScript in vim. It has a few personal modifications like vim-style arrow keys, more accessible back-ticks, and a symbol layer with common combinations like (
)
, =
, and >
adjacent to one another.
For when I don’t have access to an ErgoDox, I use Karabiner Elements to modify my laptop keyboard to match my layout more closely and replace the never-used §
with a physical escape button instead of the Touch Bar default.
I dream about having some kind of VR space to work in so I can completely immerse myself in what I’m doing without distraction. That’s probably not very feasible, however, so for now I’ll just settle for somewhere quiet with a good cup of coffee.