As a developer and engineering manager I use a lot of tools for my day to day work. From 2012 until 2021 I compiled these tools in annual posts which can be found here. While annual posts were fun, often things change too fast for them to be useful. As a result, this page is a living list of the tools I use on a daily basis.
Why document my tools?
There are three reasons why I think it’s a good idea to document my tools:
First, as a blogger and teacher it helps folks getting involved to find tools to solve their problems. For example, I used PhpStorm for years and have been a major evangelist of it for much of my career. I can’t tell you how many WordPress devs I’ve suggested it to that are still using it to this day. Those are the moments when these lists really pay off.
Second, it helps me avoid the distraction of new software. I can’t tell you how many times I’ve switched tools to something new and, later, how many times I considered a new tool only to be reminded I’ve tried it before. I’m a firm believer that simple is best when it comes to our tools and an archive of what I use and have used is a great way remember that.
Finally, a “uses” list or page helps me keep track of the changes I’ve made in my work and, in many cases, in my life in general. From health tracking to development and travel the tools we use can often speak to how we conduct a lot of our lives in the modern world and, honestly, I love to see the evolution of it.
My Use Case
So what do I use this all for? I tend to think our use cases are just as important as the tools themselves. For instance, I wouldn’t recommend some of my own tools to someone just starting out in code or who is only writing code for themselves. How we use are tools defines, or at least probably should define, the tools we use so here are my own use cases.
- Software Developer – Though I don’t write code for my day job I am still a software engineer at heart. These days that means side projects, both personal and occasional as a volunteer for various organizations, working in a host of technologies including PHP, GoLang, Docker, Bash and a lot more.
- Blogger – I love writing on this site and spend a lot of time both on content as well as the site itself. This role encompasses creating content and writing code to share solutions to problems I’ve encountered in hopes that they’ll be just as helpful to others as they were to me.
- Teacher/Speaker – Though I’ve done less of this since 2020, I still very much enjoy talking to and teaching groups of people. Historically this was mostly in person but since COVID I’ve invested a lot of time and energy to be better able to do this through video and audio to make certain my content is available to everyone.
- Human – While the last one might seem obvious it is clear that most tech doesn’t agree. As a human I want tech that respects my rights and allows me to connect with the community around me. This includes eliminating surveillance, ensuring availability and maintaining features at prices that are acceptable not just to myself but to all humans in all the communities I am a part of.
My Desk and Chair
- Uplift Commercial V2 30″x60″ – 1″ bamboo top
I love this desk. I had come from IKEA desks which would warp and sag after just a couple of years. This desk is solid and gets me standing far more often throughout the day.
- Uplift Pursuit Ergonomic Chair
I’ve tried the popular, more expensive brands and found they just weren’t that comfortable to me. This chair is solid and comfortable. In fact, I loved my desk and chair so much that we bought copies for Joy as well.
- 2021 16″ MacBook Pro (Silver) – M1 Max, 64GB RAM, 1TB SSD
This is my personal laptop and I use it for just about everything that isn’t part of my day job.
- framework laptop – DIY 12th ed i7-1260P, 32GB RAM, 500GB – WD_BLACK™ SN850 NVMe
This is my secondary laptop that I’m using to work myself out of the Apple ecosystem as well as to ensure projects such as Kana are fully compatible with Linux.
- 2021 12.9″ iPad Pro (Silver) – M1, 1TB SSD
I bought his when it first came out hoping it could replace my personal laptop but the OS is just too limited. I use it as my travel machine when I’m not planning on writing code and for just about all personal computing outside of my home office. I have an Apple Pencil (2nd generation) and a Magic Keyboard for it which, together, almost make it as powerful as a traditional laptop. I also have the Brydge Max+ keyboard which allows me to write with the iPad in my lap.
- 2019 13″ MacBook Pro (Space Grey) – 1.4 GHz i5, 16 GB RAM, 128GB SSD
This is my work machine and I use it for pretty much everything at the day job. It’s small enough and does what I need to do so I can’t complain. Ironically, perhaps, I actually had to fight for this machine over a 15″ as, when it was issued, standard practice was that engineers get larger machines. I wanted the smaller, cheaper machine for travel and I’m glad I went that way.
- iPhone 12 Pro Max (Silver) – 256GB
I bought this phone when I started back into the Apple ecosystem and it works just fine. I bought with the “Max” model solely because I prefer the larger screen size and, at least at that, this one doesn’t disappoint. It has a brown Apple leather case on it which was what the store had in stock when I got the phone.
- Apple Watch Series 6 (Silver) – Aluminum, GPS
I bought this watch to replace various Fitbit devices I had used for a decade. I use it mostly as a fitness tracker and it has been wonderful at that role. I also appreciate the notifications and synced focus modes as well as a few other features during the day.
- Panasonic LUMIX G7 4K Camera – LUMIX G VARIO 14-42mm Mega O.I.S. Lens
This is my primary camera. It isn’t the most expensive on the market but it seems to suit me well as it can record all day without overheating and takes great shots.
- Elgato Cam Link 4K
Using a mirrorless camera as a webcam requires an interface to actually capture the video it produces for my computer. That’s where the Cam Link comes in. The camera plugs into this and this plugs into my computer which then uses the whole kit just as it would a regular webcam.
- Gonine DMW-DCC8 AC10 Power Supply BLC12 Dummy Battery
It wouldn’t make a lot of sense to just use the standard battery on the LUMIX. This allows me to plug it into the wall without worry.
- Elgato Solid Arm
This is how I mount the camera. It connects to my key light’s stand and seems incredibly sturdy for the role.
- Elgato Key Light – (x2)
The primary lighting for my office. Prior to using these lights I had actually been asked by people if I was sick as the bad lighting did not do wonders for my complexion. Since adding these I haven’t been asked those types of questions which seems like a solid endorsement to me.
- Logitech BRIO Ultra HD Webcam
The Lumix is great but it’s also more than I need for some things, particularly as it takes more to use it than a standard webcam. The BRIO is my day-to-day camera for Zoom meetings and other things where video quality isn’t as important.
- Shure SM7B Microphone
My primary Microphone that sounds great for just about anything I could throw at it.
- Cloudlifter CL-1
This amp boosts the output of the microphone so it can pick up my voice without any background noise.
- Focusrite Scarlett 2i2 (3rd Generation)
This is a two-input (maybe I’ll use the 2nd one day) interface that connects a mic like the Shure to a computer. The mic itself plugs into the Cloudlifter to boost it, then the Cloudlifter connects to this interface which finally connects to the laptop via USB.
- Samson MBA48 microphone boom arm
Finding a boom arm that is actually long enough for my desk and still strong enough for a heavy mic has been a long-time challenge. The Samson can do both and for a very reasonable price. It doesn’t look as nice as my old Blue Yeti mic boom, but it does what I need it to and does it well.
Other Hardware and Accessories
- Yubikey 5C NFC
If a service I use supports it, I use this for MFA. It’s also my first choice for storing my SSH and other personal private keys as it makes everything from SSH to GIT so much easier. I own two of these and keep one locked away as a backup just in case I should ever need it.
- Dygma Raise Keyboard – Black, Cherry MX Brown switches with tenting kit
This is a split, mechanical keyboard that is really pretty damn comfortable to type on. Ergonomic keyboards make such a difference for me and, after using this one, it would be hard for me to want to switch to anything else.
- Apple Magic Trackpad
I used Apple trackpads for years before moving to Linux. Once I found ergonomic mice, however, I was in love. I came back to the Apple trackpad when my Logitech MX Vertical died as it was what the store had in stock. It does the job but I’ll eventually go back to an ergonomic mouse.
- Dell U3415W monitor
I’ve actually never been a huge fan of external monitors but this curved, ultra-wide monitor has changed that. It really makes working on code or anything else with multiple windows a pleasant experience.
- AVLT Dual monitor arm (white)
I wanted more desk space so I mounted both my monitor and my laptop (using this laptop stand) on this heavy-duty arm to get it. I tried a monitor arm once before but had to get rid of it as it wasn’t strong enough for my large ultra-wide monitor. This can hold it and then some
- Elgato Stream Deck XL
Think of the Stream Deck as a programmable keyboard that can run your lights, open apps or do just about anything you want to program into a given button. I use this a lot in my day-to-day for quick access to apps and other utilities.
- HP OfficeJet 5255 printer
Working from home means we have the occasional need to print or scan something for one reason or another. I’m not a fan of HP’s “Instant Ink” program but this printer itself has been incredibly reliable and works with every device I’ve tried to throw at it.
- Synology DS918+ – 4 4TB WD Red drives, full RAM and a 256GB M2 drive
I had a lot of ideas for what this would be when I got it (thankfully on a good deal). Unfortunately a lot of them didn’t pan out as my home internet was limited to 10mb upload speeds which just didn’t make it all that usable for storing anything I would need to access even if I wasn’t home. Today it’s mostly an overgrown Time Machine drive that I’m considering getting rid of.
- Meross LED Desk Lamp
I’m a sucker for Phillips Hue bulbs so, when I needed a new lamp to fit on my desk I wanted to get something that would also work with Apple HomeKit. This light does a pretty good job at that.
- Linksys Velop AX4200 Wifi 6 Routers
Ever since our actual Apple TimeCapsule router died 6 years ago we’ve gone through a number of different home routers looking for something stable that could reach our whole house. While the house is rather small the walls are hell for most WiFi. This mesh system does well with 3 nodes and has been running without issue for over a year.
- Belkin Powerhouse dock for iPhone and Apple Watch
A well-built charger to keep my watch and phone up to date.
- Kindle Paperwhite – 8GB, 11th edition
If it wasn’t for the Kindle I probably wouldn’t still have an Amazon account. I love the device and use it more than just about any other. I would move to a Kobo but with a library of nearly 1,000 books on Kindle I’m just trapped at this point.
- Beats Fit Pro wireless earbuds
These replaced PowerBeats Pro that simply died after about 3 years. I have a hard time with earbuds as most don’t fit in my ears. I’ve tried and returned AirPods Pro and other brands. The “wing” on these work great and they sound great with pretty much all the features of AirPods Pro.
- AirPods Max (silver)
I added these only after getting a good deal on them. I had missed over-the-ear headphones, particularly on days with a lot of meetings where anything in my ear could get uncomfortable. They sound great, seem well built and work well with my Apple devices.
- Sonos (various models)
I have a Five in my office and an assortment of other models throughout the house. These speakers have been great. Overall we use them about 10 or more hours a day for music, podcasts or just broadcast radio.
Historically my software toolbox has been as minimal as possible. Lately that’s changed a bit but I still try my best to not replace default or other apps that would otherwise perfectly handle my workflow.
- Safari Browser
It’s fast, clean and works so well across Apple devices. If I had to go to something else I would use Firefox but that really doesn’t make much sense to me on iPad or iPhone as everything is really just a wrapper around Safari anyway.
- Firefox Browser
Firefox is my primary browser on Linux. It’s fast, powerful and does what I need it to do. Frankly I don’t find it as user friendly as Safari but it’s a close second.
- VS Code
I’ve gone through a lot of editors over the years but, since moving past WordPress code, I’ve settled on VS Code for its ability to seamlessly transition between technologies without slowing down my whole system.
- Apple iCloud (Apple One Premiere plan)
Up until last year I was self-hosting a lot of this tech but that simply didn’t work for my family. Today we use their hosted domains for email, I keep most of my data in iCloud Drive, Ted Lasso (Apple TV+) is, easily, my favorite TV show of all time, my wife loves Fitness+ and I live on Apple Music listening to it for hours each day. It isn’t perfect, no solution is, but when considering my whole family (I also support my parents’ tech) iCloud is the best choice for us and sometimes that is all that matters.
This site still runs on WordPress for no other reason that nothing else can so easily manage the content. Sure, Hugo and other static site generators are faster but they’re not content management systems. I might not have a lot of content on this site but I have more than enough to have felt the difference when I tried something else.
- Apple Keynote
I’ve played with other solutions for creating slide decks but Apple just keeps pulling me back. As long as I’m still in the Apple ecosystem I can’t see using anything else.
- Apple Pages
I don’t need a word processor often but, when I do, Pages is just fine for my needs.
- Apple Numbers
I do a surprising amount of work with spreadsheets, even for personal use. Numbers can handle all I need it to and, like Pages, that makes it perfect for me.
- Pixelmator Pro
I use this on my Mac for minor image edits. I don’t need a lot of power for what I do so this has been more than adequate.
Ivory is the Mastodon app I had been waiting for. It loads the whole timeline without any “load more” buttons, it looks good and it’s fast. I had stayed on Twitter for years because of Tweetbot by the same company and their Ivory app doesn’t disappoint.
I’ve looked for the perfect WordPress development environment tool for years. Today I’ve given up and written my own. Kana is a simple CLI tool, written in Go, that makes spinning up WordPress websites super simple.
Containerized apps really have revolutionized the development world. With Docker I don’t have to play guessing games when working in a team as I can guarantee everyone is on the same page. I’ve used it for self-hosting apps, development work, testing and more. There’s a huge learning curve but, once you get past it, Docker really is a game-changing tool for any developer.
- Mac Terminal App/Gnome Terminal
I do an awful lot, even beyond code, from the terminal. While I’ve tried nearly every emulator on both Mac and Linux, the defaults just do what I need them to, particularly with tmux. It isn’t perfect, but it makes my life easier. I customize it for my with Oh My ZSH which gives me all the power of any of the alternatives without dealing with all the annoyances that come with them.
- Apple Reminders
I’ve also tried just about every to do app on the market and Reminders just works. If you’re all Apple, and you don’t have crazy needs, it is great as it syncs flawlessly and can remind you even if you forget to open the app (something all other apps fall short on).
- Apple Notes
Like reminders I’ve tried pretty much everything. Apple Notes isn’t perfect but it syncs well and is easy to access.
- Apple Calendar
Like reminders, Apple Calendar is the only option I’ve found that will remind you of a meeting even if you forget to open the app. That is HUGE to me. I don’t have a lot on my personal calendar these days and we use Google Calendar at work. Apple Calendar mikes a nice viewer of the work calendar while ensuring I can actually see across all of my calendars and my wife’s calendar when planning anything.
- Apple Mail
Notice a pattern here? Apple Mail works and is the same on all my devices.
- Mozilla Thunderbird
Apple Mail is, of course, not available on Linux so there I use Thunderbird to get my iCloud mail. It’s one of the oldest email clients on the market but it’s also still one of the best. It’s powerful, fast and well maintained, what else could I want?
I’ve used Moom for years to manage window placement on my Mac. It’s super simple and keeps out of the way allowing me to move things around as if it is a native function of MacOS.
My company moved from Lifesize to Zoom in 2019 and it’s been so much better. I usually spend 20 or more hours a week in this app.
When I’m not in Zoom I’m on Slack. It’s the only work app I keep on my phone.
- Google Workspace
I don’t have a personal Google account anymore and I’d rather not give them any data but I don’t have much of a choice at work. We do a lot in Google Calendar, Drive and Email. From a UX perspective there are worse choices. From a privacy perspective I just make sure I restrict these to my work computer and no where else.
- Fedora Linux
After using Ubuntu or one of its derivatives for years I recently switched to Fedora. It has a clean interface and works so well on my laptop. Linux isn’t my daily driver and no distro is perfect but this one comes pretty close to being perfect for me as I type this.
iMessage might be popular but Signal is more private. It’s like iMessage available on every platform. I’ve used it for about 4 years now and today nearly all my friends and family are on it.
For many years I’ve been paying annually for Quicken even though I’ve owned a copy of Moneydance since 2011. It used to be that Moneydance didn’t have a good mobile app but that is no longer the case.
Thanks to apps that don’t clean up after themselves I’ve gone back to using this handy utility again lately. It keeps the Mac menu bar clean.
This might just be the first app I ever bought for Mac and I’m still using it 14 years later. It makes a huge difference in a world where app developers absolutely refuse to clean up after themselves.
I’ve used this with my family for close to a decade. With each new version it gets a little worse but changing over 5 people just hasn’t been feasible, yet. That said, it is reliable and cross-platform and does allow me to be able to help my parents with so many computer and app issues.
I honestly don’t know how anyone can use the web these days without a good ad blocker. This works on all my Apple devices and does a great job at it. I even use its firewall feature on my phone and iPad to block connections in the background.
In the age of COVID I don’t use this as much as I used to but we still keep an account for whenever we connect to the web away from home. So far it has been fast and reliable and, at least to date, seems trustworthy when compared to other VPN apps.
I’ve lived in Florida for 7 years and this is our 6th wireless carrier. It’s also the first time we’ve had unlimited data that actually works (we had Sprint for years but that was basically not like having data at all). It’s become a great tool for me to write or work away from the house.
- Reeder 5
Other than Twitter and Mastodon nearly everything I consume on the web is done via RSS. Reeder makes that so easy. It’s clean, fast and works on all my devices. I use Inoreader behind it to store the feeds and other data.
Managing apps on any computer is a pain. Homebrew fixes nearly all of that on Mac. I’ve used it for years to manage all the software on my machines. I even use it on Linux for managing developer tools like Go, NVM and PHP as it easily keeps everything in sync and at the same versions and configurations as the same tools on my Mac.
I use Maccy on my Mac to manage my clipboard history. It’s fast, lightweight and incredibly reliable.
- Al Dente Pro
I don’t use my laptop on the road much anymore so this helps me make sure I’m not abusing the battery while the machine is always plugged in.
- GPG Suite
Occasionally someone will still encrypt an email to me and this makes sure I can handle it. It also handles auth for SSH, Git and anything else where I use my private keys with my Yubikey.
For a list of tools I’ve used in the past as well as my older annual “uses” posts, please take a look at my decommissioned tech page.
This page was last updated on 9 March, 2023