Setup 2024 post

A list of my setup, gear, and software.

Setup post 2024

I enjoy making my digital environment my own (my physical space could use some love). I've always done it. Eventually, this led me to frequent sites such as Uses This and other Uses collections.

Despite my interest, I've never created a post about my setup. This post aims to fill that gap as I share my daily essentials, with some affiliate links included to support the Hive.

I can spend hours looking at dotfiles and configuration videos. What I prioritize is zero friction, customizability, and speed. That's why I leverage keybindings, scripts, and automation where possible. And, eventually, that made me even learn Vim (a decade overdue).

I'm always fascinated by what other people use to do their jobs. This doesn't even pertain to just hackers. Lawyers, devs, you name it. In addition, knowing what the best tool for the job is pays dividends.

My journey took me from Windows to Linux, and now to Mac. They have pros and cons, but I'm digging my current setup. Linux and WSL truly taught me the value of scripting, and pipes (the UNIX way).

Having said all that, maybe this post serves as a glorified answer to the age-old question: "What theme is that?"

Editor + Terminal

Neovim + LazyNvim and Tmux

  • The editor I use is Neovim, plus LazyNvim for sane defaults. There are also some minor customizations of my own.

  • Ever since I was introduced, by ThePrimeagen, to the Gruvbox theme, I've never looked back.

  • Kitty is my current terminal, which I switched to a while back after using iTerm2 for a while.

  • My Kitty theme is a variation of my Neovim one: GruvBox Dark Hard.

  • The font family that is being used is JetBrains Mono. I try to switch now and then, but nothing sticks.

  • My shell is ZSH, with Oh-My-Zsh as its plugin manager, and Starship for the prompt.

  • Tmux is a terminal multiplexer. And, surprise, surprise, my theme there is Gruvbox as well.

  • Here’s a useful bash script, by Thoughtbot called tat, to easily attach or create tmux session named the same as the current directory:

#!/bin/sh
#
# https://github.com/thoughtbot/dotfiles/blob/master/bin/tat
# Attach or create tmux session named the same as current directory.

path_name="$(basename "$PWD" | tr . -)"
session_name=${1-$path_name}

not_in_tmux() {
  [ -z "$TMUX" ]
}

session_exists() {
  tmux has-session -t "=$session_name"
}

create_detached_session() {
  (TMUX='' tmux new-session -Ad -s "$session_name")
}

create_if_needed_and_attach() {
  if not_in_tmux; then
    tmux new-session -As "$session_name"
  else
    if ! session_exists; then
      create_detached_session
    fi
    tmux switch-client -t "$session_name"
  fi
}

create_if_needed_and_attach

Browser & Web apps

  • I'm still using Chrome (I know...), but am looking for an alternative. As a power user, the newer ones always seem to lag or crash for me. As far as Firefox is concerned, I used it for a good while, but I never got used to the Firefox Developer tools.

  • My favorite extension is hands down Vimium. Another one I enjoy using is Twitter Links.

  • TweetDeck (Twitter) is where I spend most of my time. I described how I use filters and lists to my advantage.

  • Community-wise, Discord is and has been the place to be. I frequent several awesome ones, such as the private Unsupervised Learning and of course my own.

  • The way I consume my news is through RSS feeds, loaded into Inoreader. There, I use the built-in (vim-esque) keybindings for curation. Standout articles end up in Pocket.

  • As mentioned, I leverage Pocket, and its API, as my must-read list. It’s also what ends up in my weekly newsletter.

Knowledge & Project management

My daily note in Obsidian, made possible by Dataview and Templater

  • Obsidian is my go-to tool for this work. Before discovering Obsidian, I was enamored with Notion for a while, but the rigidity and slowness proved to be too much for me.

  • That being said, aside from the solid base, extensions are what make it shine. The single, most impactful one for me is DataView. Followed closely by Templater and QuickAdd.

  • As I mentioned, templates and quick adds are how I leverage scripting and automation inside Obsidian.

  • After trying out a bunch of them, my current theme is Minimal, with a yellow highlight color. It's simple, maintained, and I feel in good hands.

Desktop

  • Everyone needs a launcher to supercharge productivity. The one I use is Raycast, and Alfred before that. CMD + space provides quick access to it.

  • Figma is my design app of choice. Ever since I stepped off the Adobe bandwagon, it's served all my needs.

  • My calendar app is Fantastical, but I have no horse in the race. It's bound to CTRL + SPACE.

  • Other tools that I use are Espanso, Cleanshot, Karabiner, Bartender, Little Snitch, ScreenStudio, and Magnet.

  • My current wallpaper is one I made myself:

Custom bee wallpaper made with Figma

Audio

Lighting

Desk Setup

  • My standing desk is an Autonomous SmartDesk Pro. As a tall person (6'5"), I had to ensure it would work for me when standing.

  • The chair I rock is an old Ikea one. I should invest in a better one, but being tall, I have to test them out first, which I always put off.

  • I did swap the wheels out for rollerball wheels, on Wes's recommendation—such a quality-of-life improvement.

  • After being a two-monitor person for a decade or so, I've only been using a single 27" Dell U2715H for the last several years. Well, that and my laptop screen when docked.

  • My daily driver is a MacBook Air M1, 16GB RAM and 512GB storage (linking to m2, couldn't find m1 with the same specs). What. A. Beauty. When they were released, I knew this was a pivotal moment. Similar to going from HDD to SSD. If I had to complain, I wish it was more powerful and had more ports.

  • When docked, it's sitting on a Rain Design 10032 mStand Laptop Stand. A x allows me to connect my peripherals.

  • Once you get a split keyboard, you'll never go back. This is what I found out when I got the Kinesis Freestyle Edge RGB split gaming keyboard. I was going to get their newest 360 one, but at the time, it hadn't been released.

  • Unconventionally, I'm using the Logitech MX ERGO Advanced Wireless Trackball. I love it, though, it takes some getting used to. It reminds me of the old days, as my dad had one when I was growing up.

  • As I'm no longer gaming, I haven't touched my custom-built desktop. Switching between the two is too much friction.

Travel

Holler at me if I left anything out. I'll make sure to update this post when I change it up again.