This page serves as a living document describing some of the hardware and software I use day-to-day and how I have it set up. I try to keep this updated as I make changes.
Home Office Setup #
I've been working from home full time since March 2020 and hope to continue working from home the majority of the time for the forseeable future. My setup isn't quite where I'd like it to be so let's record where it's at now and see how it evolves. I'm aiming for as close to a one cable setup as I can get.
- I finally upgraded my desk. The old black glass desk from Homebase is gone, and standing in its place is the Fully Jarvis sit/stand frame with an IKEA Gerton solid wood top (now discontinued, think I got one of the last ones). It's only been a few weeks but I'm glad I upgraded. I spend roughly half my day standing which is more than I expected. One noticeable difference this has made is that I now make much more use of my whiteboard. While standing at the desk I can just turn around, take the one or two steps over to the whiteboard, scribble or sketch something quick, and easily return to the desk without really breaking my flow.
- My chair is an IKEA MARKUS (or very similar) that I've had for 10+ years. It's reasonably comfortable, has good lumbar support, is OK-ish for sitting cross-legged for short periods thanks to its wide seat, but I wish the arms were adjustable or easily removable.
- MacBook Pro (Retina, 15-inch, mid 2015) - this is my work machine, provided by my employer. Specs:
- Processor: 2.5 GHz Quad-Core Intel Core i7
- Memory: 16 GB 1600 MHz DDR3
- Graphics: AMD Radeon R9 M370X 2GB, Intel Iris Pro 1536 MB
- Storage: 500 GB SSD
- iMac (Retina 5K, 27-inch, 2019) - this is my main personal machine. I treated myself a few years ago, and I love the screen on this thing. Specs:
- Processor: 3.6 GHz 8-core Intel Core i9
- Memory: 40 GB 2667 MHz DDR4
- Graphics: Radeon Pro 580X 8GB
- Storage: 500 GB SSD
- My previous monitor died about 6 months ago after many years of faithful service although I was long overdue an upgrade anyway. I finally took the plunge last month and replaced it with an LG 34WN780-B 34-inch UltraWide Ergo. I was expecting an improvement compared to my old 24-inch display but I have to admit I was surprised at just how big a difference it's made to my workflow. The 3440x1440 resolution gives plenty of screen real estate to have my editor, browser, and a few other things all visible at once, significantly reducing the need to tab switch and go hunting for that one window I need. The anti-glare finish is excellent even with a window right beside my desk perpendicular to the display. I'm also loving the included Ergo stand which clamps to the edge of the desk, keeping the monitor at the perfect height and saving precious desk space.
- Apple Magic Keyboard - I've tried a few mechanical keyboards, but couldn't justify the purchase when this works so well for me.
- Apple Magic Trackpad 2 - not a mouse in sight for 5+ years.
- Sony WH-1000XM3 wireless noise cancelling headphones. Great sound quality, noise cancellation, and comfort. Highly recommend!
- One of my favourite things in the office is a large dry erase / whiteboard made using a high-gloss white glass IKEA table top (about €100 in 2014) and a picture ledge, neither of which appear to be available anymore. Much cheaper than the €500+ actual whiteboards of the same size / quality. I use this daily: for reminders and to-do lists, to sketch out design ideas, work through complex flows, etc. Even at €500 it would still be worth it, but I'm glad I could do it at a fraction of the price for no real additional effort.
Mobile / Personal #
- OnePlus 6 - this is a solid phone. I bought it in 2018 and it's been great. I'll probably look at OnePlus again when it's time to replace it. Get a $10 voucher for your next purchase of OnePlus gear and accesories.
- iPad Pro (11-inch, 64 GB) - I use this for sketching in Procreate, light photo editing (still use the Mac for heavier Lightroom work), and for reading on the couch.
- Fitbit Charge 3 Special Edition - for notifications from my phone, heart rate and activity tracking, but not so special really. The difference between this and the standard edition is the addition of Fitbit Pay to enable contactless payments. It looks great on paper but in practice I've only used the Pay feature once as the experience is incredibly clunky; taking out my wallet and grabbing my card is significantly faster every time. I've also had two warranty replacements in under two years due to failing screens… That said, when it works it's great and I'm definitely a fan of the sleeker design compared to many of the alternative activity trackers and smart watches on the market.
Network and Home Stuff #
My network setup is most definitely overkill but I like it. I segregate traffic based on use so my IoT stuff only has the access it needs, guests can queue up tracks on the playlist and access the internet but can't access other internal systems, etc. I also like the UniFi interface (for the most part) and how easy it makes it to keep an eye on things.
The core of my network is comprised of:
- Ubiquiti UniFi Dream Machine Pro (UDM-Pro)
- Ubiquiti UniFi Switch Pro 24 (USW-Pro-24)
- Ubiquiti UniFi Access Point nanoHD (UAP-nanoHD)
- all housed in an 18U ZPAS SJB 19" network cabinet
The single UAP-nanoHD provides coverage with decent speed to the whole house and both gardens, although a second AP would probably help boost signal in a few slightly weaker areas.
I've been a Mac user since 2005 but also have a few Linux boxes around for home automation (mostly Home Assistant) and other stuff. These are a mixture of single board computers such as the Raspberry Pi, and other small form factor machines like the Intel NUC. Apart from a couple of the Raspberry Pis which run Raspbian they all run Ubuntu Server. I run Pi-hole for ad blocking and local DNS.
Backup Strategy #
- I backup most of the content on my personal machine to Backblaze. They provide unlimited storage for a very reasonable price, and the recovery options are great. Download content directly from the website, or for larger recoveries they'll ship you a USB flash drive (up to 256 GB) or a hard drive (up to 8 TB) via FedEx, with a full refund if you return it to them within 30 days. Sign up and get a month free.
- I sync photos from my phone to Dropbox, and from there to my NAS. I have some other content on Dropbox too, but mainly because I've been too lazy to move it elsewhere yet. Sign up and get 500 MB of bonus space.
- I have a Synology DS918+ 4-bay NAS with 4x Seagate IronWolf 4 TB hard drives in SHR-2 (2-drive redundancy). Expensive but solid, would buy again. It's quickly filling up though so I'll need to start swapping in higher capacity drives or look into an alternative.
- and a Netgear ReadyNAS NV+ 4-bay with 4x Western Digital Caviar Green 2 TB hard drives that I bought in 2011, now used for off-site backups. It's 10 years old, painfully slow, and long overdue replacing.
Sublime Text 3 is my main editor. I've been a Sublime Text user since I first discovered it way back in 2012.
Here are some of the plugins I use:
- Package Control
I use the default theme and colour scheme (Monokai); I've tried others but something about Monokai just feels right to me. I use the default font too, I'm not a fan of many of the coding fonts that make heavy use of ligatures but I do think I'll be trying out some new fonts soon.
Every so often I'll try another editor for a while, since they all have particular strengths that make them stand out. I always find myself coming back to Sublime though, due to its speed, stability, features, and plugins.
One of the editors I keep revisiting is Visual Studio Code, and each time I'm surprised at how much it's improved. It has a lot going for it and has come a long way since its initial release. A lot of the features that require plugins in Sublime are built in to Code, and on paper at least, it's excellent at most of the things I need. The reason I'm not currently using it is that in the past I've run into enough usability issues or quirks that got in the way of my flow to prevent me switching. I'm going to give it another go over the next few weeks and see if it's come far enough to replace Sublime for me.
- iTerm2 - I almost exclusively use the hotkey window with my tmux sessions loaded so my terminal is never far away.
- bash 5 (macOS comes with bash 3…)
Since I spend a fair amount of time on the command line I've put some effort into making it work better for me. See my dotfiles for details of how I've set up my prompt, aliases, etc. Beware, what works for me may not work for you.
I recently switched from a home-rolled prompt to using Starship and apart from a few minor nits it's been great; super fast, easily configurable, and comes with lots of useful features built in.
I'll probably write a separate post going into more detail about my terminal setup.
My main browser for development and general use is Google Chrome.
I also regularly use Firefox and Safari for testing.
- 1Password (requires the desktop app)
- React Developer Tools
- Redux DevTools
- ZenHub (+ ZenHub Enterprise for work)
Other Desktop Apps #
You can find details of all the other apps I auto-install on a new Mac in my starter repo's Brewfile. Here are a few highlights:
- 1Password - for managing all my passwords, having this on my phone too makes it so easy to be more secure
- Backblaze - for backup
- Docker Desktop - for "container stuff"
- Insomnia - for testing REST APIs
- Keybase - you can contact me securely at alangreene
- Spotify - usually have this open while I'm working, listening to some instrumental music or occasionally ambient noise. My non-work playlists are quite eclectic.
- VLC - my go-to media player for video
As with the desktop apps, you can find details of everything I auto-install in my starter repo and its Brewfile. Some highlights:
- GitHub CLI - so I don't have to switch to the browser as often
- Homebrew - if I can install it via Homebrew, I do.
- jq - for processing JSON data
- kind - great for Kubernetes-based development and testing
- thefuck - to quickly recover from typos or after using the wrong flags, e.g.
git branch -Dvs.
git branch -d
- tmuxinator - so I can ensure consistency in my tmux sessions across machines
- Trello - for planning home improvement projects, tracking longer term to-do lists, etc.
- I also always keep paper and pens/pencils handy. I really want to buy myself a nice leather bound notebook one of these days but any I've found locally were too small or thin.
- Rectangle - an open source app for moving and resizing windows on macOS with keyboard shortcuts.