This article is written for beginners, but even intermediate web developers will find valuable information for enhancing their skills. Web Development is a process of constant learning and pushing your own limits to become better than you were before. Let’s start with the essential tools that you will need to get started on this journey and continue improving.

For a more detailed introduction, watch the video below:

The Tools of a Professional Web Developer

Some people you may come across—maybe even some of your friends—will call themselves web developers after creating a website from a template-based website generator like Wordpress or Wix. Although they may have dipped their toes into web development, these are not professionals. Neither are their tools. When you look at truly outstanding web developers who command high salaries and are in notoriously short supply, you will notice their most essential tool is the text editor. To a professional web developer, a text editor is like Microsoft Word imbued with every single feature imaginable. Literally. Your imagination is the only limit with a text editor. The code for this blog was written in a text editor. So was its design and colors. Even this post was written in a text editor.

The most popular, free, and usable text editor currently available is Visual Studio Code which you can download here. It is available on all desktop Operating Systems on any type of computer and will be used as the default text editor in all future examples. After you install VS Code, you can open a folder by going to “File -> Open Folder” in the menu and selecting a folder you create for storing all of your code files (whether they be .html, .css, .js, .py or any other extension). It will look similar to the image below.

Visual studio code getting started page

Why the Text Editor is the Most Important Tool

A developer shapes his or her text editor over time to become a very personalized tool. Even the choice of a text editor is often a way for developers to get first impressions of each other in the workplace. It’s Batman’s utility belt with infinite inventory space for utilities. These utilities come in the form of plugins that all major text editors allow. These plugins help enhance the development experience by adding different color themes, code snippets, and many kinds of decorative enhancements to make writing code a more enjoyable and customized experience.

A well configured text editor also becomes a centralized hub for accessing several different tools like the Terminal, file explorer, and even a web browser. Not having to switch windows or applications while writing code is a huge time saver for developers, especially in the fast-paced environment that technology moves in today.

All of the above functionality is in addition to writing code with customizable fonts, colors, and theme combinations numbering in the thousands. After using a text editor for long enough, many developers start to prefer it to a word processor like Microsoft Word. To get started learning about the functionality you have with a text editor, read an introductory article about VS Code here.

So far you probably understand that code is written in text files. A larger project like a mobile application has dozens or even hundreds of files full of code and other assets like images. How do you go about running or executing the code in these files? All of this is done through another valuable tool, the Unix Terminal.

The Unix Terminal - Accessing the brain of your Computer

Imagine all of the things you can do with any electronic device today—whether it’s a smartphone, a computer, a watch, or even a voice assistant. All of its functionality is programmed through a computer. Through code. All applications that are on your smartphone are written and test on a computer first. Then, only after they are finished are they published for other devices.

Even every application that is on your computer is first written in code and then translated into zeros and ones that only a machine can understand. This process of translating code into machine code happens through the Terminal. The Terminal is the brain of your computer. With it, you can do several things that would be otherwise impossible, like:

  • Access all of the files and folders on your computer, even the hidden ones
  • Install and run programs that convert code from one programming language into another
  • Launch any application on your computer
  • Learn and change almost any information on your computer. But be careful: with great power comes great responsibility.

While Mac computers and Linux machines come with the Unix Terminal pre-installed, for Windows machines you will need to download the git shell. This will add a second type of Terminal to your VS Code integrated terminal called bash. This is the same shell as the Unix Terminal. Use it. Don’t use PowerShell. You will thank me after you “git gud”. After opening or installing the Unix Terminal, you may be wondering what it is useful for because you may just see an empty black or white screen with a cursor and nothing else.

Most often, a programmer uses the Terminal for running code in different languages. This helps create a feedback loop between the Text Editor and the Terminal where the developer will write the code in the Text Editor, then run it in the Terminal, find out what works as expected (and what doesn’t), and then fix the code in the Text Editor. This process leads to software programs and applications that evolve over time and change. Sometimes the changes are unexpected or incomplete while being worked on, especially in larger teams. So, professional developers also use a version control system for tracking these changes. The most popular of these is GitHub, an online repository for open software owned by Microsoft. GitHub is not just a version control system but also a powerful collaboration tool.

Version Control Systems and Open Source Software

When updating apps on your phone or computer, you may see references to a “Version History” or notice a version number in the format of X.Y.Z. somewhere on the description or download page. When developing professional grade software, it’s important to keep track of this kind of versioning and the changes that are included in each version. Due to the dynamic nature of releasing software applications to thousands or even millions of people at once, sometimes it’s necessary to revert to an older version after releasing a newer one because of a variety of reasons, usually around the security of the application.

Although there used to be several popular version control systems, the best one now is called git and it is deeply integrated with the largest repository of software code called GitHub. With GitHub, you can manage different software versions you plan to publish at a very large scale. In addition, you can create engaged communities of developers around your software to help you catch bugs, security vulnerabilities, and even help with software updates. This rich set of features makes GitHub the uncontested most valuable collaboration platform for software. To get started with an integrated tool for collaborating through GitHub, it is recommended you install GitHub Desktop. It is an integrated tool that fills in gaps for managing version control in your software that would be difficult to do through the command line or through the GitHub website.

What is amazing is that software published on GitHub is often open-source, meaning any developer can look at its source code, modify it, install it for free and even create your own projects on top of it. Several large technology companies like Microsoft, IBM, and Google have invested heavily in open source software because it brings several advantages including agility, stability, and community building around the company’s products. Although making software open source does not directly bring revenue, it allows developers to create and publish apps more quickly. The app publishing process is where most of these companies charge money for developers to access their ecosystem of users.

“Software is Eating the World” - Marc Andreessen

Marc Andreessen is a famous investor in Facebook and several other technology companies. He has met almost all of the top entrepreneurs and executives in tech and has seen patterns that are becoming universal. In 2011, he wrote a famous essay about why software is eating the world in the Wall Street Journal. Since then, his prediction has become more and more the norm in the world. I want to go further; Open Source is eating software. JavaScript and Python are eating Open Source. Using the tools described above, you too can become involved in the open source software ecosystem and leave an example for all web application developers to follow.

About the author

Nowispow Inc. is a socially driven company for democratizing professional education and reskilling for the modern workforce.