codingstairs
NotesEDULifeContact
⌕Search⌘K
koen

Navigation

  • Intro
  • Blog
  • Life

Get in touch

Send without signing in. Add your email if you'd like a reply.

  • Leave a message anonymously →
  • ✉ warragon112@gmail.com
  • KakaoTalk Open Chat ↗

© 2026 codingstairs

  • Notes
  • EDU
  • Search
  • Life
  • Contact
  • Legal
  • RSS
  • GitHub
EDU›Getting Started with a Dev Environment›Step 1

Step 1

Step 1 — Getting comfortable with the terminal

0 views

Step 1 — Getting comfortable with the terminal

"A black screen of text" feels odd at first, but a single command replaces ten clicks.

1. Why the terminal?

  • Fast — 20 folders in 3 seconds
  • Automatable — script the same work
  • Only interface on remote servers — SSH lands you in a shell
  • Most tools ship a CLI first — Git, npm, Docker

2. Terminal · shell · command

  • Terminal — the window (Windows Terminal, iTerm2)
  • Shell — the interpreter (bash, zsh, PowerShell)
  • Command — the program (ls, git, node)

Three layers work together.

3. Windows — install Windows Terminal

winget install Microsoft.WindowsTerminal

Supports tabs, panes, themes. Default shell is PowerShell. Developers usually add WSL2 + Ubuntu too:

wsl --install

Reboot, and Ubuntu is ready.

4. macOS — iTerm2 (or built-in Terminal)

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install --cask iterm2

The built-in Terminal.app is fine; iTerm2 adds panes, search, profiles.

5. First 10 commands

pwd                   # current directory
ls                    # list (Windows: dir)
ls -la                # with hidden files
cd folder             # enter
cd ..                 # up
cd ~                  # home
mkdir newdir          # create folder
touch file.txt        # empty file (Windows: New-Item file.txt)
cat file.txt          # read (Windows: Get-Content file.txt)
clear                 # clear screen

These ten cover ~90% of daily work.

6. PowerShell differences

Task bash / zsh PowerShell
List ls -la Get-ChildItem (alias ls)
Read file cat file Get-Content file
Env var $HOME $env:USERPROFILE
Path separator / \ or /

WSL2 + Ubuntu lets you follow Unix tutorials without translation.

7. Completion and history

  • Tab — autocomplete files/commands
  • ↑ / ↓ — previous commands
  • Ctrl + R — reverse history search
  • Ctrl + C — abort current command

Tab alone halves typing.

8. PATH — where commands are found

echo $PATH

The shell searches these directories in order. "Installed Node but command not found" means PATH.

9. Gotchas

  • Spaces in paths — quote them: cd "My Documents"
  • Case sensitivity — Unix cares, Windows doesn't
  • Hidden files — start with ., need ls -la
  • Lost your place — pwd or cd ~ resets

10. First week practice

mkdir ~/study
cd ~/study
mkdir javascript python git
touch README.md
echo "# Study notes" > README.md
ls -la
cat README.md

Five minutes, but folder/file/redirect ideas stick.

Closing

The terminal fear passes in two days. Tab, arrow keys, Ctrl+C — keep these three in your fingers and you'll be faster than mouse clicks from there on.

Next

  • 02-git

References: The Missing Semester (MIT) · Windows Terminal · iTerm2.

Step 2 →

Step 2 — Your first Git commit