← Back to JavaScript
02

JavaScript tools: your real working environment

Learn how to build a solid technical setup with VS Code and DevTools so you can run, inspect and debug JavaScript from the very beginning of the course.

📘 Theory

A simple environment architecture for learning well

Three pieces, three responsibilities: editor, runtime and diagnosis.

To progress in JavaScript, you need to separate where you write code, where it runs and where you inspect the result. Mixing those roles creates confusion very quickly.

Once those layers are clear, debugging becomes a method instead of a guessing game. That is one of the highest-value habits you can build at beginner and intermediate level.

1

Editor

VS Code for writing, navigating and organizing files quickly.

2

Execution

The browser for frontend scripts and Node.js for local scripts.

3

Diagnosis

Console, breakpoints and structured messages to locate failures.

4

Iteration

Small changes, fast checks, observation and continuous adjustment.

VS Code: the minimum setup that actually helps

Start simple and avoid early overconfiguration.

A clean VS Code setup reduces cognitive noise: a readable theme, a clear folder structure and just a couple of tools that improve code quality.

You do not need twenty extensions. For this course, the priority is readability, intentional saving and useful feedback while you type.

  • Create one folder per project instead of scattering files across the desktop.
  • Use save as a mental checkpoint while you work.
  • Install ESLint and Prettier and understand what each one corrects.
  • Name files predictably, for example `app.js`, `main.js` or `utils.js`.

DevTools: use the console with intention

It is not just a panel for random logs. It is an investigation tool.

Open DevTools with F12 and get used to reading complete errors: type, message, file and line. That is the shortest path to the real cause.

Beyond `console.log`, use `console.warn` and `console.error` to classify signals so important information does not disappear once projects grow.

  • `console.log` for normal state and intermediate values.
  • `console.warn` for suspicious but recoverable situations.
  • `console.error` for failures that break the expected flow.
  • Breakpoints for validating one hypothesis at a time.

Browser runtime vs Node.js runtime

Same language, different APIs depending on where the code executes.

1

JavaScript is the language, but the runtime decides which globals and APIs are available. In the browser you get `window` and `document`; in Node you get `process` and filesystem-related modules.

2

Understanding that boundary avoids classic mistakes such as trying to use `document` in a Node script or assuming Node APIs exist inside the browser.

Environment readiness checklist

Verify concrete capabilities before moving forward.

A functional environment is not measured by how many extensions it has, but by whether you can edit, run and debug without friction.

If this check passes, the next lessons on the console and syntax will feel much smoother.

  • VS Code opens the project and saves changes correctly.
  • The browser runs your script without load errors.
  • DevTools shows logs and error traces with source lines.
  • You can pause with a breakpoint and resume execution.

What is this?

I'm Cristian Eslava and I sometimes build websites so both you and I can learn and experiment. culTest

I made this in February 2026 to make learning easier for my students. The idea is to learn web development by practicing and to keep expanding the project with new topics, tests and challenges.

It draws inspiration from MDN, W3Schools, CodePen, Manz and many other web development references. I wanted to combine useful theory, runnable examples, challenges and the testing system I had already built for culTest. culTest

If you liked it, if you didn't, or if you want to get in touch, write to me at cristianeslava@gmail.com