Most developers do not lose time because their laptop is slow. They lose time because the environment around their work is inconsistent. Shell aliases live in three different places, editor defaults drift across machines, and project setup depends on memory instead of a repeatable system.
1. Treat the terminal as infrastructure
Your shell is not decoration. It is the control plane for local development. If your prompt, aliases, and helper scripts are different on every device, your workflow will always feel slightly unstable.
Start by centralizing your shell defaults in one bootstrap file and keeping the project-specific logic out of it:
Code snippet
bash
export EDITOR="code"
export PNPM_HOME="$HOME/.local/share/pnpm"
export PATH="$PNPM_HOME:$PATH"
alias gs="git status --short"
alias devup="docker compose up -d"
alias devdown="docker compose down"
That gives you one place to reason about the habits that shape your day.
2. Standardize project bootstrapping
The fastest teams reduce every new project to the same ritual: install, sync, run, verify. If one repo needs tribal knowledge to start, the environment is already leaking productivity.
Define a single bootstrap command and make it trustworthy:
Code snippet
json
{
"scripts": {
"setup": "pnpm install && pnpm astro sync && pnpm check",
"dev": "astro dev"
}
}
That is not flashy, but it turns onboarding and context switching into a smaller cognitive cost.
3. Keep the editor opinionated, but portable
Editors should encode standards, not personal chaos. Use workspace settings to enforce the rules that matter to the repo and keep the rest out of version control.
Code snippet
json
{
"editor.formatOnSave": true,
"files.trimTrailingWhitespace": true,
"eslint.validate": ["javascript", "typescript", "astro"],
"typescript.tsdk": "node_modules/typescript/lib"
}
The goal is not control for its own sake. The goal is removing tiny decisions that compound over hundreds of edits.
Final baseline
If you want a DevHub-ready workstation, keep it simple:
- centralize shell defaults and aliases
- standardize setup commands across repos
- make editor settings explicit and portable
- optimize for repeatability before novelty
That is how a workstation starts to feel elite: less improvisation, more flow.