Uses
This page lists the things that I use in my daily life. It is not exhaustive by any means. I only include things that I think are noteworthy. This page also serves as a my personal reference as well, in case I need to redo my setup in the future OR upgrade in the future.
Hardwares
Computers 🖥️
Windows 10 PC
- CPU: Intel i5-12400
- Memory: 64 GB DDR4
- SSD: Samsung EVO 970 Plus
This PC started off as my gaming PC to unwind after work. In mid 2022, I decided to upgrade it and run Ubuntu in WSL2 on it. My development workflow involves running a lot of Docker containers and running them on Mac wasn't a pleasant experience. I now run Docker on this PC with WSL2 backend, while still mostly writing code on my MacBook via SSH. I wrote about how to go about setting it up in
wsl2-as-devbox
.MacBook Pro 2020 - i7 32GB/1TB
This is the MacBook that I've been developing with. It is plenty fast for web development, until you need to run Docker on it. I spent the extra money to get 32GB/1TB for future-proofing. Now that I have Docker running on my PC, I might just get a less powerful laptop next time I replace my laptop.
Displays 📺
I am using a 27-inch Dell as my primary display and a 21-inch Acer as a secondary. I really like the Dell as it can connect to my Mac via USB-C, which makes things easier. It also acts as an USB hub when connected this way.
Software 📋
Terminal
I use iTerm2 on Mac and
Windows Terminal on my Windows PC. Both
are set up with Oh My Zsh just because it
comes with some quality of life improvements out-of-the-box, 2 of my most
favorite one being git
aliases and not having to type cd
everytime 😄.
I don't have a lot of customization in the .zshrc
file, here is the addition I
have to the default .zshrc
:
# Adds docker-compose plugin
# Allows for aliases like: dce, dcup, dcdn, dclf, etc.
plugins=(git docker-compose)
# Aliasing gpuo because I find myself doing this quite often.
alias gpuo="git push -u origin"
# Customizing prompt so I know I am currently in an SSH session in my WSL2 instance
# I only do this on my WSL2 instance
PROMPT="%{$fg[green]%}%n@%{$fg[cyan]%}%m%{$reset_color%} ${PROMPT}"
# Adding paths to the binaries I use
# nvm (should be added automatically by nvm on install)
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
# go
export PATH=$PATH:/usr/local/go/bin
# yarn
export PATH="$PATH:$(yarn global bin)"
Code editor
I use Visual Studio Code. Unfortunately I just never got into using Vim 😅
VSCode has excellent SSH and WSL support which makes everything very seamless even when coding from different computers. One day, I might even set up VSCode server so I can code from my iPad.
Some extensions that I install on VSCode:
- ESLint
- Docker
- Prettier
- GitHub (yes, the deprecated one)
- GitLens
- Remote - SSH
- :emojisense:
- styled-jsx, when I am working on codebase that uses it
- Tailwind CSS IntelliSense, also when I am working on codebase that uses it
Web browsers
I use Chrome as my primary web browser. On Mac, I also use Arc, a browser by The Browser Company for web sites/apps that I tend to keep open for a longer time. I tweeted about how I am using Arc a while back.
Some notable web apps
- Notion, for note-taking and personal journal.
- GitHub, I have a private repo named
growth
on GitHub where I put technical things that I plan to learn/do for self-improvement. - Cal.com, the scheduling infrastructure that I use on /chat.
- omatsuri.app, various handy tools for web development.
Some handy Mac apps
- Pandan, I use Pandan to alert me every 20 minutes, after which I will take a short break to avoid me sitting and staring at the computer for too long.
- Hand Mirror, a handy app to give myself a quick access to the webcam.
- Gifox, my go-to app to record a short GIF.
- Cron, a simply better calendar experience (also available on Windows!)