Developer Tooling

VS Code, Neovim, Git workflows, and CLI mastery

52 articles · 19 tutorials · 2 courses · Updated

Overview

The tools you use every day compound in value. A 10% improvement in your editor speed, terminal workflow, and Git process pays dividends across every project for years. This handbook is about investing in your toolchain with the same rigor you bring to your code.

Covered here: configuring VS Code and Neovim for serious work, building a terminal workflow with tmux and modern CLI tools, mastering Git beyond the basics, and building your own custom automations and scripts.

Learning Roadmap

Beginner

Establish a productive baseline: a configured editor, a capable terminal, and Git basics that will not embarrass you.

  1. Editor Mastery — VS Code

    Go beyond the default configuration. Learn the command palette, multi-cursor editing, workspace settings, and the 10 extensions that matter.

    ~2 weeks

  2. Git Beyond the Basics

    Understand the object model, branching strategies, interactive rebase, and how to write commit messages that make code review a pleasure.

    ~2 weeks

Intermediate

Build a terminal-native workflow and start customizing your tools rather than using defaults.

  1. Terminal Multiplexing with tmux

    Manage multiple sessions, windows, and panes. Configure tmux with a sensible keybinding set and learn to work without leaving the terminal.

    ~2 weeks

  2. Modern CLI Tools

    Replace the standard Unix tools with faster, smarter alternatives: ripgrep (grep), fd (find), bat (cat), eza (ls), zoxide (cd), fzf.

    ~1 week

  3. Neovim — A Serious Setup

    Move beyond VS Code for terminal-based work. Configure Neovim with LSP, treesitter, and a plugin manager. LazyVim is a sane starting point.

    ~3 weeks

  4. Git Workflows at Scale

    Trunk-based development, feature flags, and merge queues. Work effectively on large codebases with many contributors.

    ~2 weeks

Advanced

Build your own tools, debug at the system level, and optimize your workflow for maximum throughput.

  1. Shell Scripting for Automation

    Write robust, portable shell scripts with proper error handling, argument parsing, and documentation. Stop being afraid of bash.

    ~2 weeks

  2. Debugging at the System Level

    strace, dtrace, perf, and profiling tools. Understand what your programs are actually doing at the system call level.

    ~3 weeks

  3. Building Custom Developer Tools

    Write your own CLI applications in Rust, Go, or Python. Publish them, version them, and integrate them into your workflow.

    ~3 weeks

Featured Guides

Frequently Asked Questions

Should I learn Vim/Neovim or stay with VS Code?

Both are legitimate choices. VS Code is more accessible, has better built-in debugging, and a larger extension ecosystem. Neovim is faster, runs in the terminal, and after the initial investment, many engineers find it meaningfully faster. The honest answer: learn Vim motions first (install the VS Code Vim extension). If you love them, invest in Neovim. If you find them friction without return, stay in VS Code — the editor matters less than knowing it deeply.

What is the best Git branching strategy?

Trunk-based development with short-lived feature branches is the modern consensus for teams that deploy frequently. Feature flags replace long-running branches. The old Gitflow model creates merge hell and slow delivery cycles. For solo projects and small teams, keep it simple: main branch, feature branches that live under a week.

Is Docker necessary to learn?

Yes, as a practitioner. Docker has become the de facto packaging and local environment tool across the industry. You should understand images, containers, Dockerfiles, and Docker Compose for multi-service development. Kubernetes is worth understanding conceptually, but you rarely need to operate it yourself — managed services (EKS, GKE, Fly.io) abstract the operational complexity.