Inspired by Wes Bos, this page details the things I use to stay productive. Let's dive in.
Time is a huge factor in staying productive. Your editor is the one tool you spend most of yours in and you should invest in optimizing your workflow skills. You'll benefit from them every day.
I am probably one of the last people to make the switch to VS Code. I'll probably do a write-up on why I switched, because it took a lot for me to leave Atom. For now, I'm really enjoying VS Code.
I wrote my own theme. It's a slightly more vibrant version of Atom's One Dark syntax theme that I've customized to my liking. I have spent way more time on this theme than I care to admit.
I have used a number of fonts over the years. MonoLisa is what I currently use in my editor and terminal. It's highly readable and looks excellent. If I have to stare at a font all day, it's worth paying for one I enjoy looking at.
Fish is my shell. Much better than bash in my opinion. I used zsh for years (both oh-my-zsh and prezto) and fish is a much more enjoyable experience. The intelligent autocomplete has changed my life. It's amazing. Also super easy to customize. It used to have a lot of incompatibilities with bash scripts which was annoying because you couldn't copy them and run them, but many of these things have been made compatible so it's much better than it used to be.
The theme is my Electron color scheme from Atom, ported to Hyper.
Here are a few of my favorite aliases I've set up:
afkstarts my screensaver
bitlyfollowed by a URL runs a Python script to get the shortened link and copies it to my clipboard. Mostly useful for Rickrolling people.
weathergets the current weather in your area - try it out! Run
curl wttr.inin your own terminal.
sudo. Stole this idea from Paul Irish, but I can't seem to find it in his dotfiles anymore.
resourcere-sources my shell if I've made changes
trash. I installed trash-cli, so setting
trashmeans instead of losing something forever when I run
rm, it dumps it into my trash so I can still recover it if I need to. I've been burned too many times.
git push -u origin $(git_current_branch). When you start a new branch in git, it's super annoying to have to set the upstream origin the first time you're pushing that branch. This alias makes it easy to publish a new branch.
I use a variety of other desktop applications to get things done. I'll elaborate a little on why I chose some of them, especially in lieu of other popular applications. If you can install the app via Homebrew Cask I will include the install command.
Brave is a browser that puts your privacy first and automatically blocks trackers and ads. I always loved the idea - especially because it made many sites load faster - but there were a few things that kept me away, mostly extensions. In late 2018 they switched from their own browser shell, called Muon, and began using Chromium, and along with that change we got access to every Chrome extension and the Chrome dev tools. I switched immediately and never looked back. At this point, it's essentially Chrome without Google tracking everything you do, plus built-in ad-blocking.
brew cask install brave-browser
I was using Bear for a while and it's really great (LOVE the markdown support), but ultimately I switched back to Apple Notes because I can't have shared notes with my wife in Bear. If they ever add that, I'll probably switch back. Or, you know, Apple could just add Markdown support to Notes.
I love Twitter, and I use it as my primary source of news/information, but I can't stand the ads and their official desktop app wasn't updated for years. Years ago I got Tweetbot for iOS and fell in love. Then they came out with the desktop app, and it's awesome. Ever since I started using the desktop app, I find that I keep up with it much better.
This might be the most underrated app ever. Windows computers have some handy built-in capabilities for managing your application window placement, but macOS doesn't have that. Rectangle gives you keyboard shortcuts for rearranging and resizing your windows, and also gives you "window snapping", where if you drag a window to a certain edge of the screen it will snap to fill part of the screen. I will never be able to use a Mac without this app again. [website]
brew cask install rectangle
A REST client, used for testing API calls. I previously used Postman for a REST client, but I came across Insomnia and it's really great. It also has excellent GraphQL support.
brew cask install insomnia
I use it for interacting with Mongo databases. It's pretty solid.
I use 1Password for password management across all my devices. I pay about $60 a year for a Family Plan because it gives me shared folders so my wife and I can both use it for shared logins and also keep our own logins separate.
HEY is a radically different approach to email, from the makers of Basecamp. It's definitely not for everyone, but I've been loving it.
This isn't really relevant anymore, as we're working remotely due to the coronavirus.
- I have two 23" monitors mounted on monitor arms to a sit/stand desk that I didn't pay for.
- My laptop (15" MBP) sits beneath the two monitors, centered on the desk.
- I use Apple AirPods and can't recommend them enough.
- When I'm not standing, I sit on a buoy stool. My company had a few of them sitting around our building and I snagged one instead of using a normal desk chair. I love it. I have bad posture and this helps a lot.
- I use an Apple Magic Keyboard and Apple Magic Trackpad. I love the gestures on the MacBook touchpad, so I opted for the Magic Trackpad instead of a Magic Mouse, but I do hear excellent things about the mouse.
- I have one 23" Acer monitor
- To the left of the monitor, my laptop (15" MBP) sits on top of an mStand by Rain Design. I love it. It also helps keep the laptop cool so it doesn't overheat.
- I have some Logitech speakers and subwoofer that I plug into my laptop most of the time when I want to listen to music.
- The desk itself is an IKEA table top mounted on a frame I built out of steel pipes that I spray painted black.