curriculum/challenges/english/blocks/lecture-understanding-computer-internet-and-tooling-basics/672ab8573f32480f192aaae1.md
Professional developers rely on a variety of tools to increase productivity and code quality. Let's learn about those tools, including the ones that seem very obvious.
The first among the tools is computers. A computer is the primary development environment. It could be a heavy desktop or a portable laptop with either Windows, macOS, or Linux as the operating system.
Professional developers often go for computers with fast processing power and plenty of RAM to handle resource-intensive tasks.
After the computer is a program for writing and editing code right on that computer. That's a code editor or integrated development environment (IDE).
IDEs like Visual Studio, IntelliJ IDEA, JetBrains, and PyCharm provide powerful features like code completion, debugging, and integrated terminal support.
Visual Studio Code (VS Code) is essentially a code editor, but it also provides these functionalities with its rich extension library.
Other code editors are Sublime Text, Atom, Notepad++, and Brackets.
When you write code with code editors and IDEs, you need to track the changes you make to them. The tool that lets you track those changes is a version control system.
Git is the most widely used version control system in the development community.
Platforms like GitHub, GitLab, and Bitbucket provide cloud-based hosting services for your Git repositories. These platforms enable collaboration with other developers, allow you to work on multiple branches, and facilitate the merging of code changes.
Package managers are another critical tool. They help developers simplify the process of adding, updating, and removing libraries and project dependencies.
Examples of popular package managers are:
After writing code with different tools, developers test that code to make sure it's working as expected.
For this, developers use testing frameworks like Cypress, Playwright, Selenium, and others. There are also language-specific testing frameworks. Examples are:
You don't only need to test the code to make sure it's working as expected. You also need to test what the code looks like visually to the end users. Developers use web browsers for this.
Modern browsers like Chrome, Firefox, Edge, and Safari offer developer tools for inspecting HTML, CSS, and JavaScript code. There are also tools for debugging and performance profiling.
These tools help developers test and optimize their web applications across different browsers for the end users.
Why do developers go for computers with fast processing power?
To watch the computer do all the work for them.
Think about what enhances performance for demanding development tasks.
To handle resource-intensive tasks.
To play high-end games.
Think about what enhances performance for demanding development tasks.
To watch movies without a glitch.
Think about what enhances performance for demanding development tasks.
2
What provides code completion, debugging, and integrated terminal for developers?
Code editors and IDEs.
Testing frameworks.
Look out for the tools that offer a comprehensive development environment.
Package managers.
Look out for the tools that offer a comprehensive development environment.
Git.
Look out for the tools that offer a comprehensive development environment.
1
Which tools help developers test their code to ensure it works as intended?
Code editors and IDEs.
Think about tools that run automated checks on the code.
Operating systems.
Think about tools that run automated checks on the code.
Version control systems
Think about tools that run automated checks on the code.
Testing frameworks.
4