My Home Office

Desktop with a 2018 Macbook Pro and two external monitors

The COVID-19 pandemic transformed the workplace for many people during 2020, closing offices and forcing millions to work from home. The figures don’t lie: in April 2020, almost half of the workforce in the UK worked from home.

Personally, I have been enjoying the benefits of home working since 2014, although I am fortunate to have a separate room in which to call my ‘office’, and so it is easier to maintain a healthy work/life balance, and I can shut the door to drown out the noise from the rest of the household. In this article I’d like to share my home office setup.

Here it is in full:

A standing desk adorned with a 2018 Macbook Pro and two external monitors, flanked by a Steelcase Leap chair


The lowdown

  • 2018 MacBook Pro, 15”
  • Pair of 24” Samsung 4k monitors
  • Startech Thunderbolt 3 dock
  • Bose QC35 headphones
  • IKEA BEKANT sit/stand desk
  • Steelcase Leap chair


My main machine is a 2018 Macbook Pro (aka the one with the touch bar), 15” screen, 2.9 GHz 6-Core Intel Core i9, 32GB RAM, 1TB SSD. Purchased second hand on eBay in October 2019 for £2,399.00, which included 2 years Apple Care.

This is the second time I’ve bought a Mac from eBay. Each time I’ve made sure to buy one with Apple Care, which has been essential - in both cases I have made a claim (for this device, the screen had a group of dead pixels - the screen replacement would have cost £600 otherwise).

Thankfully, the laptop is docked 99% of the time, which means I don’t have to use the awful keyboard. I still stare occasionally at the touch bar, marvelling in its uselessness.

I have serious M1 envy, but two things are holding me back:

  • The M1 Macbook Pro only supports a single external display. My setup has always included two external monitors, and going back to one would seriously hamper my productivity. I have considered a Mac Mini but the portability of the MBP (even in lockdown times) is not something I’m prepared to sacrifice.
  • Docker is not fully supported on the M1 chip (yet). I use Docker on a daily basis and although at the time of writing there is a tech preview available, it doesn’t seem worth the upgrade until it is ready for prime time.


A dual desk mount arm holds two Samsung U24E850 4k monitors. They are 24” in size, which is unusual for 4k displays: most are at least 28”. I specifically wanted two smaller screens to preserve ‘retina’ sharpness: these displays offer a screen density of 183ppi (pixels per inch), which is not too far away from the MBP’s built-in screen (which has 220ppi). Since I look at code all day, crispness of text is of paramount importance to me.

For reference, here is the ppi for some other common 4k screen sizes:

  • 28”: 157ppi
  • 32”: 137ppi

Also worth noting is a 5k 32” screen has the same ppi as a 4k 24” one. Sadly, they don’t seem to exist!


2016 saw a big Macbook Pro design refresh. Although the touch bar took much of the headlines, another big change was the introduction of USB-C ports for all external connectivity. For many, this means dongle life / hell but a nicer outcome is the option to connect the laptop to displays, input devices and power via one cable.

Since I was looking to connect two external displays via DisplayPort (to achieve 60Hz refresh rate across the board), options were limited. After a false start with a Caldigit dock (which didn’t seem to recognise displays when the laptop woke from sleep), I settled on a Startech Thunderbolt 3 dock which has been pretty much flawless. It’s really nice to be able to dock and undock the laptop so easily, something that was a bit of a pain with the older MBP design.

You will notice from the picture above that I like to use the laptop display as a third screen, this ruled out the (otherwise excellent) Henge Dock.


The essential companion to a coder’s day. Even though I work from home, years of office work have conditioned me to wearing headphones while I work - nowadays they are useful at drowning out the household noise, rather than open-plan office chatter.

After faffing around with cheaper headphones, I invested in the Bose QuietComfort 35ii cans. The old adage, you get what you pay for really applies here. The only complaint is I find them a little uncomfortable to use all day, compared to the Jabra Move headphones I used previously. The sound quality more than makes up for it, though!


Everything (except me) sits on an IKEA BEKANT sit/stand desk. Purchased in 2015, this is the third incarnation after the motors failed on the previous two. Luckily the desk has a 10 year warranty, but it’s a real pain to swap out your desk, and so on reliability alone I couldn’t recommend it.

One of the best parts of the desk is a customised version of the controller, dubbed Megadesk. This enhances the desk with memory positions - pressing the up button a specific number of times will automatically move the desk to the pre-programmed height. It’s a small thing that makes a huge difference, and well worth the $45. As a nice bonus, the motors haven’t failed since I installed the new controller!


My chair is the bargain of the whole setup. It’s a Steelcase Leap v1 which someone was selling for £50. These retail at £700+ so it’s fair to say I was very happy at picking it up.

The Leap replaced my old IKEA MARKUS chair. Similar to the Bose headphones, you get what you pay for - I can sit for hours in the Steelcase without any back pain or numbness, unlike the MARKUS. I’m a firm believer of investing in anything that will improve long term health and for me, the chair is THE most important thing. If this one breaks, I wouldn’t hesitate to pay full price for a replacement, it’s that good.

You might notice the cape adorning the back of the chair - this was a leaving gift from my old colleagues at Mubaloo 🙂


A few years ago my house was rewired, and we took the opportunity to lay cat6 cable throughout the house. As a result, the office (and most other rooms in the house) have a wired Ethernet connection to the main router, a TP Link Archer VR600. For the wireless devices, three Ubiquiti UAP-AC-LR access points are dotted around the house, connected via PoE back to the network cabinet. Broadband is currently supplied by Virgin Media, but I hope to take advantage of 1Gbps speeds once ‘fibre first’ is fully available in my area.

Other bits and pieces

  • Sitting on top of the left hand display is a Logitech C920 USB camera, which is much better than the built-in camera on the MacBook Pro. Surely Apple must address this in a future update, especially with the rise of video calling?
  • I click with a Magic Mouse 2 and type with a (now discontinued) USB wired Apple keyboard. I couldn’t justify the cost of a Magic keyboard, when I have a couple of the older USB ones lying around at home.
  • The lamp is an IKEA SKURUP desk lamp which clamps onto the side of the desk.
  • The black thing at the back right is a Masterplug surge protected extension tower.
  • The desktop wallpaper images are from Bing. A script runs in the background to automatically download the ‘image of the day’ from Bing. These are randomly presented by using the Mac Desktop & Screensaver settings.
  • The pencil pot is an old tin with the words ‘Clotted Cream fudge and toffee’. When I was 8, my parents bought me my first computer, an A500+. I soon found out it could speak any words that you typed in, and these were its first words.

Lastly, the picture in the wall is of Kaikoura, on the South Island in New Zealand. It’s one of the best places in the world to swim with dolphins, as I found out myself!

Me in the sea with a snorkel and wetsuit, swimming next to a dolphin


I’m a web developer, primarily working with JavaScript and TypeScript. Here are some of the tools I use every day.

  • Visual Studio Code - simply the nicest authoring experience I’ve had when working with TypeScript, although I find it chugs a little on larger projects. Sublime Text 3 is much faster, but lacks the bells and whistles.
  • Docker - these days I try to isolate all of my development environments into Docker containers. This ensures that updates and changes to the main system don’t affect individual projects. VS Code has first class support for launching and attaching to these containers.
  • iTerm 2 - I use the terminal for all git commands, backing off to VS Code for merge/rebase conflicts.
  • Firefox - for years, there was an issue with Firefox on Mac when rendering to so-called ‘HiDPI’ displays, which caused excessive CPU and battery usage. This seems to have been resolved, and now FF has become my go-to browser. I prefer Mozilla’s privacy-first approach to that of Chrome, and Safari still lags behind in many features (although it is getting better - maybe I should give it another try).
  • Chrome - I have relegated Chrome to be used for testing sites during development. Keeping your main browser separate from your development/testing browser has a number of benefits, and this approach has served me well.
  • Tiny Player - a lightweight music player, without all the cruft and bulk (looking at you, iTunes).
  • Mailplane - a nice wrapper for the GMail web interface. Keeps all my mail in one window.
  • Slack - essential for real-time communication.
  • Twist - better asynchronous communication. Threaded messages provoke thoughtful writing and measured replies, rather than the whack-a-mole Slack approach.
  • Pixelmator Pro - a fully featured graphics editor without the eye-watering Adobe price.


Getting the right setup in your home office can drastically improve your productivity and general well-being. A little investment will set you in good stead for years of remote-working happiness.

What is your home setup? Is there anything that you can’t live without? Or anything you need to improve? Let me know in the comments below!