An overview of my hardware and software setup
I'm a bit of a pedant when it comes to the gear that I use everyday. I like to use good quality things that make my life easier.
I change aspects of my setup fairly often so this page will serve as a living document and a place to point curious developers to when I get asked.
MacBook Pro 💻
I have the 2017 13" model (without the touch bar). It is amazingly lightweight, the battery lasts for ages and is a brilliant machine. Now that I use it as my primary work device, it is put under more strain, but it still handles everything I throw at it with ease.
This is my latest mechanical keyboard, it is very small and pretty cool. I love the fact that it can easily be configured so the keys can be changed exactly to my preferences.
This was my first foray into mechanical keyboards. It is a fairly straightforward tenkeyless keyboard and a real workhorse. I added the Royal Navy keycap set to personalise it a bit more.
This is my current mouse. It was recommended to me by a colleague and I can't recommend it highly enough. It is great for easing the stress on my wrist. It's also £14 so it's a steal. I also use the SensibleSideButtons app to enable the back/forward buttons with this mouse; there are plenty of other apps that can configure buttons to do all kinds of crazy things, but this app has everything that I need.
This was the mouse I used before the Anker mouse. I use it again from time to time. It is great.
Apple Magic trackpad
I use this for when I need better multi-touch support, like when navigating artboards in Sketch, Figma or zooming into pdfs.
I use Alfred in nearly every aspect of my work. I use it for searching the net with its custom web searches (e.g. npm, JIRA, bundlephobia, MDN and many more); looking up obscure programming information with the Dash workflow; searching npm with the npms workflow and loads more. It truly is a massive productivity booster.
VS Code 👨💻
Having been a long time Sublime Text user, I made the switch to VS Code last year and haven't looked back.
I never need to worry about passwords anymore. It integrates with my browser (via their extension) and the Mac app automatically copies one-time passwords to the clipboard so I don't even need to manually do it. It's also great on the iPhone; since iOS 12 was released, the integration with the OS is massively improved.
Firefox Developer Edition is the main browser that I use when developing.
I use Brave for my personal browsing. It has an in-built ad/script-blocker and fingerprint detection so it provides a much safer browsing experience.
Terminal and the command line
I usually use the built in terminal within VS Code but when I need more space or I'm not using it for something code related, I use iTerm2. Also, instead of bash, I use Fish Shell. See my config here.
I use this for most of my git workflow.
I've just moved to Bear after trying out numerous other note-taking apps. It is brilliant, and has great markdown support.
The best Mac/iPhone-based task list/productivity app I know. Find out more from The Sweet Setup.
A super simple menubar app I use to help network connectivity and speed issues.
Window snapping and positioning.
This app automatically switches from light/dark mode at sunrise/sunset. 🌗
The best personal VPN service in my opinion. Great apps for Mac and iPhone.
Hide some of those pesky menubar items.