The people who use our boards.

301 interviews since 2018

Mike Bowen

Software Developer

Who are you, and what do you do? What do you like to do outside of work?

Hi! My name is Mike Bowen.

I’m a UK-based software developer for Curiosity, a software company which produces applications that transform business information from a variety of disparate systems and sources into a unified, relatable, and fully searchable catalogue built on our partly open source stack, encompassing an AI-enabled graph, search, machine learning and front end library. Our latest project is an entry to the COVID-19 Open Research Dataset Challenge (CORD-19) Kaggle challenge.

I also love writing PowerShell and AutoHotKey scripts to automate as much as my day away as possible, as well as continuing to heavily customise Vim so one day it may make my coffee.

Mike Bowen's hardware setup
Keyboards and screen space aplenty

What hardware do you use?

I have worked remotely for the past three or so years, and my setup has changed quite a bit since then!

My daily driver is a Lenovo ThinkPad E495, which is piped into a TESmart 2X1 KVM switch for switching my monitor, keyboards, and mouse between the ThinkPad and a customer-specific HP laptop. I’ve always tended to use laptops rather than desktops, which I attribute to years of using portable devices and game consoles.

I use a Samsung 34-inch SJ55W Ultra WQHD monitor, positioned on a Duronic Monitor Stand Riser to avert neck strain. It has a huge amount of screen space—which I must admit I often struggle to fill—but it is nevertheless lovely to stare at for hours at a time. I’m quite used to drastically smaller screens with my personal laptop being an 11-inch Apple MacBook Air, which has served me well for many years despite its small stature and relative low power.

My mouse is a Logitech MX Ergo wireless trackball. It truly is a revelation in comfort, speed, and precision. I could not ever imagine going back to a standard mouse or trackpad. The two spare mouse hotkeys are used to trigger desktop applications, typically Ditto clipboard manager or a PowerShell terminal window via an AutoHotKey script.

Closer view of Mike Bowen's setup, including mouse and KVM switch
A KVM switch lets Mike switch between his own setup and a customer's laptop

The headset I use for all online meetings is a Logitech G533 gaming headset. It is quite heavy and irritating for long usage periods, so I switch to a pair of Sennheiser HD449 headphones for listening to music.

The various stands for my laptop, headset, and mobile phone are all from SAMDI and made out of birch.

I have an AUKEY table lamp positioned behind the monitor to avoid direct eye contact, which I tend to have on full white light during most mornings and evenings unless it is particularly sunny, which in England can be quite rare!

My desk and chair are pretty standard office equipment that I received from my first remote job. I’m not even too sure where they are from, they could do with replacing! The keyboard tray affixed to the table is a FLEXISPOT KT1B, and I use an EPMIC orthopedic back cushion and a pair of generic cushioned armrests on the chair. These help with the back and arm pain I’ve picked up throughout the years as a software developer and a few manual jobs I had before.

Taking pride of place at the front centre of the monitor stand is my ErgoDox EZ Satellite with Kailh Thick Gold Keys.

Another view of Mike Bowen's keyboard and mouse setup
An ergonomic mouse sits beside one of several keyboards

Outside of work-related gear I have a sadly neglected Thrustmaster T.Flight Hotas One joystick under my desk from my days of playing Elite Dangerous. Nowadays if I get time for any gaming I tend to stick to my Nintendo Switch.

For listening to music whilst programming I have a modest setup including a Sony PS-LX300USB turntable, Cambridge Audio A1MK3SE amp, and Mordaunt-Short speakers, which was a gift from my dad for my twenty-first birthday and are amongst my most cherished possessions. Above the record player is a framed picture of Miles Davis, one of my favourite musicians.

Mike Bowen's book collection makes for pleasant ambiance
Books do furnish a room

Because I work from home, I have the luxury and privilege of being surrounded by my favourite things all day: graphic novels, technical books, music, and various mementos. I would find it incredibly hard to go back to working in an office. My home office needs decorating, but it is spacious, bright, and airy with a lovely view of the train line which runs parallel to my house.

And what software?

I’m a .NET developer by day, so I tend to use Windows and all the things that implies.

I’ve recently started using JetBrains Rider full time, with the excellent IdeaVim plugin that I use with a heavily customised startup script/.vimrc, which maps my most used commands and IDE functions (navigating, refactoring etc.) to a leader key - mnemonic - action format, inspired by Spacemacs.

As older age sets in and my eyes are not quite what they used to be, I tend to use dark themes and large font sizes exclusively. Hasklig is a must for its intelligibility and font ligatures.

Despite being primarily a Windows person, my time using macOS has heavily influenced me in my workflow. I couldn’t live without Keypirinha, which is analogous to Alfred, or Chocolatey and Scoop, similar to Homebrew or any other *nix package manager.

I also use:

For PowerShell scripting, I just use the standard Windows PowerShell terminal with minimal configuration, though I may apply a custom colour scheme depending on my feeling. I’ve had very odd memory issues using ConEmu or Console in the past running certain applications and I’ve yet to invest time into Windows Terminal.

I used to rock a very elaborate PowerShell profile, mainly based on the excellent Windows PowerShell Cookbook, though I’m back to using a vanilla setup at the moment.

As someone who can’t remember even the most basic of git commands to save his life, the GitHub Desktop client has become indispensable to me.

For plain text and any code other than C#, I mostly use some variant of Vim, gVim or the GUI version of Neovim. It’s rather painful to replicate my heavily customised setup from macOS on Windows, but it’s worth it as I’m so invested in it, and well, I couldn’t imagine editing text any other way.

When navigating Windows and its array of disconnected directories where things may be furtively located, I use Everything and The Silver Searcher.

For standard QWERTY keyboards, I am in the habit of remapping the Caps Lock key forcefully to Control using a Registry script. I typically use that in conjunction with an AutoHotKey script and map the home row H, J, K and L keys to arrow directions so I can emulate Vim-style navigation everywhere.

Finally, I regularly check Awesome Windows to see if there are any other bits and pieces worth trying out. I’m constantly trying to improve any inefficiencies or boring parts during my day.

Mike Bowen's keyboard setup
One keyboard nestled within another

What’s your keyboard setup like? Do you use a custom layout or custom keycaps?

I’ve steadily become a bit of a mechanical keyboard hobbyist in the last year or so, my first one being a Cooler Master MasterKeys Pro S RGB with Cherry MX Brown Switches, which are incredibly loud—even more so than the Cherry MX Blue switches on my ErgoDox EZ! I believe it may be something to do with the depth of the keys. I also own a Keychron K1 with Gateron Low Profile Blue switches; which, if you like a flat profile (similar to a Mac keyboard) and mechanical keys, is a lovely keyboard.

This year, however, I became the proud owner of both an ErgoDox EZ (Shine, black with blank, sculpted keys) with Cherry MX Blue switches and a Planck (white) with Altitude keycaps and Kailh Thick Gold switches, inspired by the Clicky ErgoDox EZ Satellite.

I am very much a tinkerer. I have spent hours customising the layout for my ErgoDox EZ. A single bent paper clip is a constant presence on my desk for trying out new adjustments to my layouts.

As I’ve never been a true touch typist and wanted to set myself a challenge, I committed to using a new keyboard layout when learning the ErgoDox.

I went through many iterations, using Dvorak, Programmer Dvorak, BEAKL15, and Colemak before finally settling on Colemak Mod-DH. It is joyful to type on. Whilst there may not be hard scientific evidence it is more efficient than QWERTY, the number of words that literally roll off the fingers is magical.

I ended up choosing a variant of Colemak because I prefer the higher use of the home and lower key rows, as opposed to the home and higher key rows on Dvorak and well, that L key placement is a brutal stretch for my pinky! BEAKL15 is a fantastic layout that makes full use of home columns rather than just the home row, but it was a bit too alien for me, especially considering my penchant for Vim.

Both my ErgoDox EZ and Planck use a similar layer setup:

  • Colemak Mod-DH plus keys to switch layers and any other helpful functions
  • Numbers and a few additional keys for commands in Vim that work with counts
  • Symbols
  • General navigation: arrow keys, window navigation, clipboard and standard application shortcuts, hotkeys for Keypirinha and Ditto clipboard manager
  • Mouse keys
  • Function keys
  • Lighting and any other functions such as Autoshift toggle, Music toggle, and Oryx
  • Two layers purely for navigating and editing text in normal mode using Vim, which use the new wonderful macro feature of the Oryx configurator quite heavily.

As well as this, I configure Autoshift mode to be on by default and I increase the input sensitivity of it and Mouse mode as well, the value depending on the type of switch I’m using. It’s a relatively little feature of the QMK Firmware, but I am in love with Autoshift. It is a fantastic match with Vim.

I am very spoiled with the choice of what keyboard to use on a day-to-day, even hour-to-hour basis. Generally, I still use the Cooler Master for a good portion of the day, as I’m still undoubtedly speedier using it than the either the ErgoDox EZ or Planck. Unfortunately, since experiencing the ErgoDox EZ and Planck, I loathe using it and spend a fair amount of time training using Keybr.com typing practice so I can finally let it retire!

I feel like I have missed matrix, ortholinear keyboards all my life; both the ErgoDox EZ and Planck have made me realise just how damn uncomfortable and inaccurate typing on a standard, staggered keyboard is.

Typically, which of the ErgoDox EZ and Planck I use depends on how I feel.

I love the open, relaxed feeling of the ErgoDox EZ, the gentle incline and tenting provided by the tilt kit, the cacophonous clatter of the Cherry MX Blue switches. It just feels good. The only other keyboard that has ever come close to that feeling is a Microsoft Sculpt Ergonomic keyboard, which pales in comparison in build quality and function.

Mike Bowen's smallest keyboard and padded wrist rest
A padded wrist rest gives typing hands a soft landing

I also love the small size and minimalism of the Planck. Paired with a Glorious PC Gaming Race Compact wrist rest, it is a mini-marvel of comfort and productivity. I have quite small, stubby fingers, which fit the layout like a glove.

My favorite switches I’ve used so far are definitely the Kailh Thick Gold. They can be a tad overly sensitive, but that sound and feeling is exactly as described: like popcorn.

I do suffer from RSI, so I sometimes wear Vive Arthritis Gloves whilst stuck in a marathon typing session.

Mike Bowen's hardware setup with gloves
Gloves can help with typing slogs

Though I am a failed, if enthusiastic, guitarist, the following quote from J Mascis resonates with me: “I buy guitars for an album hoping they’ll have songs in them.”

I feel the same way about keyboards. Each one has different projects or scripts or prose within them. I’ve just recently supported the Keyboardio Atreus on Kickstarter. I do wonder what I’ll make with that, but it’ll have to be really something special to match either the ErgoDox EZ or Planck!

What would be your dream setup?

Hardware-wise, I guess the dream would be a fully spec’d out Apple iMac Pro. I have very little need for such power, however, so I’d happily settle for a lower specification! My 11-inch MacBook Air used to be my primary development machine, so I’m quite acquainted with Parallels Desktop, which is genuinely a fabulous application and makes interpolation between macOS and Windows as seamless as possible.

Hopefully in the near future I’ll be digging more into the QMK Framework independent of Oryx. There are many possibilities that I want to investigate—particularly stenography, which I imagine if I got to grips with it would be an incredible productivity boost!

I’d also like to simply customise my existing keyboards. I’ll be buying a set of Kailh Thick Gold switches to replace the Cherry MX Blue switches in my ErgoDox EZ, though I may try another pair, such as Kailh Pink. After that there’s custom keycaps, cables, and even mixing switches on the same board. More than enough to keep me and my wallet busy!

After that, the next stage for me in my mechanical keyboard journey is possibly creating my own from the circuit board and casing up. I am very much interested in the idea of a split Planck!

Before anything else however, I’ll be replacing my old desk and chair. I am not too fussed with what desk I end up getting, but something long and lowered-arm height that doesn’t require a keyboard tray for best posture would be ideal, as my existing corner desk is becoming quite cramped!

As for chairs, it’s something I believe is best tried in-person. I’ve attempted using a standing desk before, but I’m quite a fiddly person so I could never get comfortable. As bizarre as they look, I would quite like to try a kneeling chair, just not before getting a nice, decked-out chair from Secretlab just in case it’s a bit too novel!

Finally, before the year is up, I’d quite like to cap it off with another ErgoDox EZ. Glow, white, with printed keys and Kailh Silver switches to be the mirror to my existing ErgoDox EZ!

© 2024 ZSA Technology Labs, Inc.