There's something magical about tools. Whether we're talking equipment for a sport you practice or devices for your profession, researching and learning about new potential additions to our toolboxes is an important part of our development.
"Man is a tool-using animal. Without tools he is nothing, with tools he is all."
– Thomas Carlyle
I love learning about what tools others use, so that I may cherry-pick for my own ever-expanding toolbox. That's why I wanted to extend you the same courtesy by sharing my own assortment of gadgets and gizmos.
Remember that tools need to be learned and integrated before their real value can be realized. You must continuously sharpen your instruments.
I'm a software engineer and while I'm intrigued by robotics, mechanics, and electronics, hardware really isn't my area of expertise. I tend to research profusely before buying something new but then subsequently forget every detail.
So take this part of my toolbox not as my recommendation for what to get but simply as a ledger of what I believed fit my needs at some point in time.
- MacBook Pro 13" M1. I've been a die-hard Linux user since 2004 when I switched to Ubuntu full-time (following some failed attempts with Slackware back in 1998). In 2015, after tripping over my charger cable and sending my PC to its early demise, I decided to switch to Apple and its magnetic chargers. There are still things I miss from Linux (still no official, built-in package manager?!) but evidently not enough to outweigh the usability of the MacBook.
- Curved 34" ultrawide AOC monitor. This beauty has so much screen real estate it feels like I've got two monitors in one. Which is great, because I'm not a fan of dual monitors.
- Magic Keyboard. Not having succumbed to the mechanical keyboard cult (yet) I go with the sleek Apple keyboard to accompany my Apple laptop. An important detail is the British keyboard layout – I looked over a lot of different layouts before settling on this one, which I find superior for programming.
- Magic Trackpad. The touchpad of the MacBook is the best I've ever used; there's no comparison. So with my laptop in clamshell mode, this trackpad was given.
- Marshall Major III. These headphones have a perfectly adequate sound for a decent price. Their long battery time is great for using them wirelessly throughout the day.
- Logitech C930c HD Smart 1080P. My laptop spends most of its time in clamshell mode, disabling the use of its webcam. That's why I got this competent camera, which sits on top of my monitor and records high-quality video for my many meetings and the occasional live stream.
- Røde PodMic (with Svive Hydra for boom arm and Scarlett Solo for audio interface). Between the built-in mics for the webcam and the headphone, I've had decent audio for a while. A recent guest appearance at a podcast, however, made me realize that decent doesn't quite cut it and so I decided to upgrade to what I gathered is a common mid-tier stack for creators.
- Godox TL30 Tube Light. Another xcasting upgrade, this one to make video look a little bit better with proper lighting. I've got two of these mounted on my walls, as key and fill lights, and am now considering a third for backlight.
- Belkin Connect 11-in-1 Multiport Dock. The central nervous system for my whole setup. Everything is plugged into this dock and it connects to my laptop with a single USB-C plug, making it incredibly easy to switch between working at the work office and my home office.
- Kindle Paperwhite. It lets me carry around hundred of books everywhere I go, read at night without disturbing my wife, look up the definition of words by clicking them, and highlight and take notes of what I read.
One of the things I love about working from home is that I get to decide exactly how I want my office set up. Over the years I've slowly added, replaced, and upgraded a variety of equipment to create my own little battle station.
- IKEA Idåsen. How could I call myself a true Swede without an IKEA desk as the foundation of my home office? ;) Beautifully walnut-colored and perfectly sized, my only regret with this is that I didn't splurge on the raisable variant.
- Secretlab TITAN 2020 SoftWeave. After seeing people rave about this spaceship of a chair, I decided to try and see if it could alleviate a hurting shoulder. It did and now I'm part of the choir, singing Secretlab's praise!
- IKEA Dagotto. This footrest looks cheap but it adds a tiny splash of extra comfort when working long hours in front of the computer.
- IKEA Nordmärke. What's worse than discovering you're out of batteries, just as you're getting on the train to commute to or from work? Discovering this wireless charger keeps my podcasts rolling and commutes blissful.
- Pen and paper. Something cheap to jot down thoughts during meetings, sketch out architectural ideas, or wireframing presentations.
Ugmonk Analog. I loved the idea of this tool and put it to good use during the pandemic but working at two offices highlighted its non-digital shortcomings.
I spend as much of my computer time as possible inside a terminal. I believe it's the superior way to interface with the digital world and I only reach for the mouse with much regret.
As such, I've split some of my software recommendations into a separate terminal category, befitting its elevated status in my bits and bytes.
- iTerm2. The foundation of my CLI life. For something so essential to something so important, I have surprisingly little to say about this application. It does its job and stays out of the way, enabling me to configure what I want to customize and nothing else. (I do have my eyes on Warp, though.)
- Tmux. My multiplexer of choice. This enables me to jump between workspaces and different aspects within projects, lightning fast, using only my keyboard.
- Fish. This is the third shell I'm using and it amazes me how this category of tools is still developing and improving as much as it is. I still have lots to explore, learn, and subsequently configure here but I'm hooked (get it?).
- Vim with jellybeans and plenty of plugins. I've used some ten different editors throughout the years but once I gave Vim an honest chance I realized there's no going back to those dark times. Using it truly is "text at the speed of thought".
- ngrok, httpie, jq, nmap, tcpflow, telnet. A host of networking tools that I regularly use when developing software.
- mycli, pgcli. Yes, even for databases I prefer to use the terminal. These two clients make that experience so much better and faster!
- difftastic, ctags. These two help me navigate my code much more efficiently, either by showing me changes or extracting and showing metadata.
- Dotfiles. I have all my setups encoded in various configuration files under my public dotfiles repository. It helps me synchronize between environments and serves as a nice knowledge share.
- Homebrew. It still boggles my mind that OSX doesn't come bundled with a package manager. Brew more than gets the job done but it's still third-party.
Screen. What I used to use for multiplexing before Tmux made an appearance.
I use a lot of assorted software to level up my cybernated life. Some are installed on my computer, some on my phone, and a few others are hosted SaaS solutions.
Apps for engineering
- GitHub. Being an open-source developer at heart, a lot of the code I write or use lives in this coding community.
- Postman. When integrating with a new API my first step is usually to do some exploratory testing and Postman is my go-to for this. It's also an excellent way to build documentation for a team's applications.
- Google Authenticator. Cyber security is important in my work and two-factor authentication is a hygiene factor these days. This app makes it easy to achieve at least a minimum level of protection.
- LastPass. Long and complicated passwords are harder to crack and using different passwords for each new service is security hygiene. LastPass lets me actually do this, while also simplifying the authentication.
- NordVPN. Privacy is important and few mechanisms in modern life help protect our private lives as well as a good VPN. As a bonus, the better ones enable you to easily pick your virtual location, to access content that would otherwise be unavailable.
Apps for learning
- Bear. I've used a lot of note-taking apps over the last couple of years but I keep coming back to this gem. It's got everything you need – formatting, synchronization, organization – and nothing you don't. I take meeting notes with it, jot down sporadic ideas, use it as my copy/paste buffer, etc.
- Notion. This is where most of my thinking ends up, together with reference material. I keep all my atomic notes here (Zettlekasten style) along with summaries of books, scientific articles, YouTube videos, podcasts, etc.
- Goodreads. I read A LOT of books and this app helps me keep track of what I've read and what I want to read. It's actually quite shitty in its implementation but it gets the job done, covers all the must-haves, and it's stable. I might switch to something like Hardcover in the future.
- Feedly. I've never liked the idea of letting algorithms fully control my input, which is why I prefer following blogs and publications through their RSS feeds instead of using social media. Feedly lets me carefully curate what I consume.
- Pocket. When I find interesting articles I don't always have the time to read them right away. So I put them in my Pocket and then batch-read them during commutes or weekend downtime.
- Overcast. The best podcast app I've ever tried, and I've tried quite a few.
- Readwise. After reading and processing a book, I end up with a varying number of useful highlights. Readwise prevents that from being the end of the story by proactively drip-feeding me these golden nuggets over time.
Audible. I've realized that listening to audiobooks doesn't work for me.
Apps for productivity
- Todoist. I don't understand how others function without a to-do list (although I strongly suspect they only believe they do). Todoist helps me keep track of all the little things I need and want to do.
Trello. While my to-do list manages tasks and actions, Trello lets me take a step back to look at the big picture. This is how I keep up with all the projects I'm involved with and how I make sure I do both urgent and important things.
Apps for creating
- Grammarly. Text is my primary means of communication in a lot of cases, so using this tool to help me write better is really a no-brainer.
- Figma. I have zero talent when it comes to design but this tool hides that fact, enabling me to create graphics for explaining my ideas. I mainly use Figma Jam for visualizing software architecture, dependency graphs, and that kind of thing.
- Canva. Another tool to pretend I can do anything design-related. I use this one primarily for social media graphics.
- Observable. A brilliant tool for data analysis! I use this for digging into and trying to understand all kinds of data – engineering metrics, physical fitness, personal finance, etc.
- Ghost. What I use to host this very website and so far I'm very impressed.
- Contentful. I run a handful of different blogs and similar websites and this headless CMS is where I prefer to keep all my content.
Apps for communicating
- Spark. The email client and calendar I use for all my accounts. Its more powerful features include email templates, swiping, scheduling, snoozing, and reminders – all of which let me take full control of my inbox.
- Slack. My favorite platform for chat, doubling as an excellent center for notifications of various kinds. I also use Discord (not bad) to engage with some niche communities and Microsoft Teams (awful) for work.
- Loom. While many meetings could have been an email, many more could easily have been a Loom. Recording a few minutes of myself talking saves me and my team a lot of time while letting everyone get into it when works for them.
- MailerLite. For the websites mentioned above, I keep various mailing lists to stay in touch with readers. MailerLite is by far, hands down, the best email marketing service out there (I've tried many).
- Buffer. There's immense power in using social media but also great danger in being used by the platforms instead. This tool helps me separate the two.
- Dex. I've met so many amazing people throughout my years, whom I'd love to keep in touch with. Keeping in touch with them all is very important to me but it doesn't always come naturally to me. This tool makes it happen. Relatable also looks great but it's too expensive for my use.
Contactually. The first "personal CRM" I used, now superseded by Dex.
Apps for fitness
Being in good physical shape is important to me; so much so that I have a fitness side business, where I help others get into shape. Our bodies are our one interface with the world around us and they deserve optimization. These applications help with that.
- StrengthLog. In terms of fitness, strength is the primary attribute, and this app helps me make sure I'm progressing.
- Apple Health. The master database for my biological self-quantification. I use it to track anything from body weight to daily activity to resting heart rate.
- InBody. Body weight alone is a crude measurement, which I couple with periodic check-ins using InBody. Results from different machines are stored centrally and can be analyzed with the mobile app.
- Strava. Cardio is my kryptonite, but it's important. Without an inherent internal motivation, I create one by quantifying my progress and training. Data is gathered by a Polar H10 band, paired with a Polar M400 watch, and relayed to Strava by Polar Flow.
- Elite HRV. One interesting aspect of heart rate is its variability — the more evenly your heart beats, the more exhausted your body is. Elite HRV lets me catch dips in my heart rate variability so I can add more and better recovery.
- Headspace. Every time I get back into meditation, I scold myself for letting myself slip from the practice. Using Headspace makes it a lot easier and I've learned so much from their guided sessions. Another interesting one I want to try out is Waking Up.
- Fly. This is my current favorite PaaS, which I use to host most of my apps. So easy to use, yet very powerful, I'd recommend any developer to check out Fly.
- GitHub. I host all of my code here, including a few public, open-source projects. Additionally, I use GitHub Actions to automate a lot of things in my life and GitHub Pages to host some small side-project websites.
- Google Cloud Platform. We use GCP extensively at work and I absolutely love their many quality services. For personal projects, however, I rarely have needs that extend beyond what I can cobble together with Fly and GitHub.
- Cloudflare. I have moved all of my domains to Cloudflare both as a DNS provider and a registrar. They offer a wealth of tools for everything network or domain related. (Except .se domains, unfortunately…)
- Docker. I put pretty much everything I create in a container. While I'm curious about all the other tools, Docker makes this so easy I've yet to find a reason to stray.
- Terraform. I'll cut off both my hands before I go back to the dark ages of manual server configuration. Having progressed through codifying and automating the provisioning with Ansible, Salt, Chef, and Puppet, I'm not all in on Terraform. (Although I suspect Pulumi could be the next step here.)
- UptimeRobot. A super simple tool that lets you know when there's a problem with your website. For professional use, I prefer DataDog but, again, I like to keep personal projects as simple as possible.
Whew, that's a lot! If you're still interested in more of this, check out the uses.tech website for others' pages with their tools and equipment.