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 was a super early adopter of Atom and was heavily invested in the community and ecosystem, having written a few themes and plugins and contributing to a few core packages. I endured performance issues for years because I loved the customizability. When VS Code started becoming popular, I was very hesitant to switch. A new project started up in the Atom organization to re-write the editor component. It was incredibly promising. Being written in Rust and doing all the heavy lifting on the server, it had incredible performance even on large files. Combined with the new tree-sitter parsing system for syntax higlighting, it had so much potential. But the project (called x-ray), got shut down. I was done holding out hope at that point. I had tried VS Code a few different times in the past and it never stuck. I finally gave in and made the switch and have been pretty happy with it. The intellisense is very impressive, and while I still don't think it's quite as polished as Atom, the performance is generally much better and it's got a wonderful ecosystem. If x-ray ever becomes a reality, I'll jump back to Atom in a heartbeat but for now I'm sticking with 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.
Fira Mono is my font in both the editor and terminal. It's free on Google Fonts. There's also Fira Code which is the same font but with coding ligatures if you're into that sort of thing.
It's super easy to customize and more performant than iTerm in a number of benchmark tests.
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.
This 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.
I used Wunderlist for years and loved it, then realized that Reminders could do everything I needed in a todo list app, plus being able to add items to my lists via Siri is a huge benefit. I can even share lists with my wife, like a grocery list, and we can both add/remove items.
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.
basically the go-to app for team collaboration. I like it pretty well. Slackbots are fun to build when you have some free time.
brew cask install slack
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. Spectacle gives you keyboard shortcuts for rearranging and resizing your windows. I will never be able to use a Mac without this app. [website]
brew cask install spectacle
A REST client, used for testing API calls. I used to use 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.
I was using Newton Mail for a few months but it's pretty pricy ($49 per year) and there were still a few bugs that would drive me nuts. Apple Mail is super stable and compatible with basically every type of email service. If Newton gets a little more polished I could see myself switching back.
- I have two 23" HP monitors mounted on monitor arms mounted to a really nice 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. If I need to get on a call or be quieter, I have a pair of Apple headphones I plug in.
- The desk itself is an IKEA table top (61" beech wood, don't remember the name) mounted on a frame I built out of black steel pipes from Lowe's.
- I have two glass dry erase boards on the wall next to my desk. They were also from IKEA, and look a lot nicer than they really are. So far I'm not super impressed. We have some glass dry erase boards at work that are way better to write on (but also probably 10x more expensive).