SOFTWARE TRAINING for STUDENTS @ UNIVERSITY of WISCONSIN-MADISON
< Back to all Training Materials

VS Code: A Hands-On Introduction to the Developer’s Editor

The STS logo of a cybernetically enhanced brain. Serious sci-fi.

Tools

Text Editors and IDEs

What They Are:

Applications used for writing, editing, and managing code efficiently. VS Code is a lightweight yet powerful code editor with built-in features for development.

Popular Options:

  • VS Code – Lightweight, extensible, with integrated Git, debugging, and vast extension support.
  • Sublime Text – Fast and minimalist editor with great performance.
  • JetBrains WebStorm – A full-fledged IDE designed specifically for JavaScript and front-end development.

Why It’s Helpful:

These tools offer syntax highlighting, code completion, debugging capabilities, and integrations that enhance productivity and improve code quality.

Version Control with Git & GitHub

What It Is:

Built-in Git support in VS Code allows users to manage version control directly from the editor.

Key Features:

  • Source Control Panel (Ctrl + Shift + G) – Stage, commit, and push changes easily.
  • GitLens Extension – Provides deeper Git insights, such as commit history and blame annotations.
  • Command Line Git (git init, git add ., git commit -m "message") – Run Git commands directly from the Integrated Terminal (Ctrl + ~).

Why It’s Helpful:

Tracks changes, facilitates collaboration, and allows rollbacks to previous versions.

Integrated Terminal

What It Is:

A built-in command-line interface within VS Code for running shell commands, Git operations, and package managers.

Key Features:

  • Open the Terminal (Ctrl + ~) to execute commands without leaving VS Code.
  • Supports multiple shells (PowerShell, Bash, Zsh, CMD).
  • Run scripts, package managers (npm, yarn), and Git commands directly.

Why It’s Helpful:

Eliminates the need for switching between external terminals, increasing workflow efficiency.

Debugger

What It Is:

A tool to set breakpoints, inspect variables, and troubleshoot issues in JavaScript, Python, and other languages.

Key Features:

  • Run & Debug Panel (Ctrl + Shift + D) – Manage debugging sessions.
  • Breakpoints – Pause execution at specific lines for inspection.
  • Call Stack View – Track execution flow through function calls.

Why It’s Helpful:

Identifies and resolves errors efficiently without relying solely on console.log().

Techniques

Efficient File Navigation

What It Is:

Quickly accessing and managing files inside VS Code using shortcuts and search tools.

Common Methods:

  • Quick File Search (Ctrl + P) – Instantly open files by name.
  • Explorer Panel (Ctrl + B) – Browse project structure and manage files.
  • Split View (Ctrl + \) – Edit multiple files side by side.

Why It’s Helpful:

Boosts efficiency by reducing the time spent searching for files.

Code Formatting & Linting

What It Is:

Ensuring consistent code style and identifying errors through formatting tools and linters.

Common Methods:

  • Install Prettier for automatic formatting (Ctrl + Shift + I).
  • Enable Format on Save in settings.json.
  • Use ESLint for JavaScript code quality.

Why It’s Helpful:

Improves readability, enforces best practices, and reduces syntax errors.

Working with Extensions

What It Is:

Enhancing VS Code’s capabilities with plugins from the Extensions Marketplace (Ctrl + Shift + X).

Popular Extensions:

  • Prettier – Code formatting.
  • Live Server – Auto-refreshes the browser when saving HTML/CSS/JS files.
  • GitLens – Enhances Git integration.

Why It’s Helpful:

Adds custom functionality to streamline coding tasks.

Concepts

Version Control with Git

What It Is:

A system for tracking code changes and collaboration using Git.

Key Commands:

Why It’s Helpful:

Tracks project history and allows team collaboration without losing work.

Debugging Basics

What It Is:

Using VS Code’s built-in debugger to find and fix errors.

Common Methods:

  • Set Breakpoints – Pause code execution at specific lines.
  • Step Over/Into – Navigate through function calls and execution flow.
  • Inspect Variables – View values inside the Debug Console.

Why It’s Helpful:

Reduces reliance on console.log() debugging, making issue tracking more systematic.

Customization & Workspaces

What It Is:

Optimizing VS Code settings for better efficiency and a personalized experience.

Customization Examples:

  • Change Themes (Ctrl + K, Ctrl + T) – Adjust VS Code’s appearance.
  • Customize Keyboard Shortcuts – Modify hotkeys via keybindings.json.
  • Workspaces – Save and organize settings for different projects.

Why It’s Helpful:

Creates a personalized workflow, reducing distractions and improving productivity.

Best Practices

Organized Code Structure

  • Use folders to separate files (src/, assets/, config/).
  • Write modular, reusable code (.js files instead of inline scripts).

Comment and Document Code

Add meaningful comments and use JSDoc for function documentation.

Example:

Debugging & Troubleshooting

  • Use Console Logs (console.log()) for quick debugging.
  • Set Breakpoints in the Debug Panel for step-by-step inspection.

Continuous Learning

  • Stay updated with new VS Code features and shortcuts.
  • Explore community extensions and custom settings.

Conclusion

VS Code is a powerful tool that can be optimized for maximum efficiency. By mastering shortcuts, debugging, extensions, and Git integration, you can streamline your development workflow.