WSWhat Scene?

Learn · Developer tools

Git, CI/CD, package managers, editors, and testing, and how to pick a sensible stack.

  1. Git is the standard tool for tracking changes to code. It records every edit as a snapshot, so a team can work on the same project at once, see who changed what, and roll back to any earlier version. Almost every software project uses it. Working without it is like writing without an undo button.

    Read the full answer →
  2. Git is the tool that tracks code changes on your computer. GitHub is an online service that hosts Git projects so teams can store, share, and collaborate on them in the cloud. Git is the technology, GitHub is a popular place to keep and work on Git projects. GitLab and Bitbucket are alternatives.

    Read the full answer →
  3. Version control is the practice of recording every change to a project over time, so you can see its history, work in parallel, and undo mistakes. Git is the dominant version-control system. It matters because it turns code from a fragile single copy into a safe, traceable, collaborative thing.

    Read the full answer →
  4. CI/CD (continuous integration and continuous delivery) is an automated pipeline that checks and ships code. When a developer pushes a change, CI automatically runs tests and checks to catch problems, and CD automatically deploys the change if it passes. It makes releasing software faster, safer, and routine.

    Read the full answer →
  5. A package manager installs and manages the outside code libraries a project depends on. npm handles JavaScript packages, pip handles Python, and most languages have one. Instead of manually downloading and updating libraries, you list what you need and the package manager fetches the right versions.

    Read the full answer →
  6. A code editor is the program developers write code in. A basic editor is a smart text editor for code. An IDE (integrated development environment) adds more: debugging, testing, and project tools in one place. Visual Studio Code is the most popular editor in 2026, and AI-assisted editors have become common.

    Read the full answer →
  7. A linter automatically checks code for likely mistakes, risky patterns, and style issues as you write. A formatter automatically arranges code consistently (spacing, indentation, quotes). Together they catch small errors early and keep a codebase uniform, so it reads as if one person wrote it.

    Read the full answer →
  8. Automated testing is code that checks your other code works correctly, run automatically instead of by hand. Tests confirm that features do what they should and keep doing so after changes. They catch bugs before users do and make it safe to change code without breaking things you forgot about.

    Read the full answer →
  9. A tech stack is the set of technologies a product is built with: the language, framework, database, and hosting. Choose based on what you're building, your team's skills, the ecosystem's maturity, and the ability to hire people who know it, not on what's newest or most talked about.

    Read the full answer →
  10. Dependencies are outside libraries your project relies on to work. Using them saves you from reinventing common functionality, but each one is code you didn't write and must keep updated. Outdated dependencies are a leading source of security vulnerabilities, so managing them is a real ongoing task.

    Read the full answer →
  11. Open source means the software's code is public, free to use, and maintained by a community. Most of the web runs on open-source tools (languages, frameworks, databases), which is why so much powerful technology is free. It also means you can inspect it, adapt it, and aren't locked to one vendor.

    Read the full answer →
  12. Docker packages an application together with everything it needs to run (code, libraries, settings) into a container, so it behaves the same on any machine. It solves the classic problem of software that works on one computer but breaks on another, because the environment travels with the app.

    Read the full answer →
  13. Fewer than most teams think. The essentials are version control (Git and a host like GitHub), a code editor, a way to manage dependencies, automated testing, and a CI/CD pipeline. Beyond those, add tools only when a real problem justifies them, not because they're popular.

    Read the full answer →

Back to the Learning Center

Explore more topics.