What to study to become a web developer

Web developers are in higher demand then ever today and, because of this, the salaries in this sector are generous. This is not only driven by the web growing at exponential rate, but also by the fact that more and more enterprises are moving from desktop-based applications to centralized intranet or cloud-based solutions, both of which are accessible by a standard web browser.

To become a web developer, you don’t need a sophisticated computer science degree, although having one would be helpful. Software industry is probably one of the least bureaucratic systems.

Business owners care about your abilities rather than your qualifications. As long as you know what you are doing and can demonstrate it during a job interview, you will be successful regardless of your IT qualifications or lack thereof. I am, for example, writing this as a successful software developer who did Biology instead of anything computer-related at university.

If you don’t have a right education, however, the caveat is that you would have to spend your time getting to know the fundamentals in certain key areas. At the time of writing, in order to be a successful web developer, you need to know HTML, CSS, JavaScript, the concept of AJAX, a database language, server-side framework and a multi-purpose language used by the server-side framework of your choice.

HTML

HTML, which stands for hyper-text markup language, is the most fundamental declarative language understood by browser. This forms the backbone of a web page and puts all of its elements in place. Without it, there can be no web page.

The following tutorials will help you to master HTML:

W3 Schools HTML tutorial

Tutorials Point HTML tutorial

CSS

Cascading Style Sheets technology is used to apply styling to HTML elements on the page. CSS is critical for positioning and look of the elements on the page.

The properties available in CSS include font style and size, dimensions of the visible elements, location of elements relative to other elements and many other attributes that control the look of the page. The most recent version of CSS, which is compatible with all modern browsers, even has various animations.

The tutorial below is sufficient to learn all about CSS:

W3 Schools CSS tutorial

JavaScript

If this article would have been written 20 years ago, this section would have been called “client-side scripting languages”. However, since then, JavaScript became de-facto standard, virtually preventing other languages, such as VBScript, from being widely used in browsers.

Despite its name, the language has very little to do with Java. Syntax is somewhat similar, but this is where similarities end.

There are several good tutorials on JavaScript available online, such as the ones below:

W3 Schools JavaScript tutorial

Tutorials Point JavaScript tutorial

Codecademy JavaScript tutorial

One important thing about JavaScript to remember, however, is that knowing the language itself won’t be enough in the modern-day web development workplace. You will need to learn at least two or three popular frameworks, such as React, which completely change how the language is used.

The resources for some of the most popular frameworks can be found here:

The official React tutorial

Vue.js tutorial

Angular tutorial

AJAX

AJAX, which stands for Asynchronous JavaScript and XML, is used to update a part of a page without having to reload the whole page. Any modern web application relies on the technology, as it is the key to great interactive user experience. For example, interactive timeline on social networking websites heavily depends on AJAX.

As the name suggest, the technology allows to make requests to the server asynchronously, i.e. completely independently from the main page load event.

To find out more, follow the links below:

W3 Schools AJAX tutorial

JQuery AJAX documentation

Database languages

Relational databases based on SQL (Structured Query Language) are the most commonly used data storage/manipulation layers in web applications. Although more and more applications rely on NoSQL databases, such as MongoDB, these technologies are largely in their infancy and are relatively rare.

The most popular relational database platforms are Microsoft’s SQL Server, Oracle, MySQL and PostgreSQL. Some of them are commercial, while others are free open-source. Luckily, all of them use standard SQL language with only slight variations. Therefore, one tutorial is sufficient to grasp the fundamentals of all of them:

W3 Schools SQL tutorial

Guru99 MySQL Tutorials

If you want to learn what types of data storage are the most appropriate for any given situation, this article will go into the details of it.

Server-side languages and frameworks

The era of static web pages is truly over. These days, virtually all web applications have the bulk of their code executing on the server with no direct interaction with the browser. And server-side code is absolutely mandatory if the web application relies on a database.

Unfortunately, different server-side frameworks are very different from each other. Therefore, web developers tend to specialize in only one or two of them.

PHP

The most popular open-source language is PHP. This probably is the easiest language to learn; however the downside of it that the developers who specialize in it don’t usually earn much compared to their colleagues who specialize in ASP.NET or Java-based frameworks. Also, it doesn’t tend to be used in enterprise-level applications.

This tutorial will give you all of the fundamentals of PHP:

W3 Schools PHP tutorial

Node.JS

Node.js is a platform that allows you to run JavaScript on the server. It uses V8 engine to do so, which is the same engine that Google Chrome uses to run JavaScrip in the browser.

Node.js is massively popular and, among other server-side frameworks, it has the gentlest learning curve. And the reason for this is because you would have already learned JavaScript for client-side coding, so you will not need to learn another language for your server-side logic.

To learn it, you can visit the official guides via the link below:

Node.js guides

But there is also a website called NodeSchool that will teach you all components of Node.js, starting from the basic JavaScript and then going into even the most complex areas of it.

All the exercises are done in an engaging way. And you will not be able to see any proposed solutions until you manage to write enough code to get the validations to pass. This constraint will force the student to actually work through every problem, which will help to memorize the solution.

NodeSchool

ASP.NET

ASP.NET is a commercial enterprise-level framework from Microsoft. It is much more complex than PHP, but is also more reliable, secure and functional.

There are two main types of ASP.NET, which share the same languages, but have different capabilities. ASP.NET classic based on .NET Framework is the older type of ASP.NET, while ASP.NET Core is fairly young.

If you start studying web development, I would certainly recommend to do ASP.NET Core. Otherwise, you may find that a bulk of what you’ve learned becomes obsolete withing the next couple of years.

And the best place to learn about ASP.NET Core is by reading the official documentation on Microsoft website:

Introduction to ASP.NET Core

An important prerequisite for these tutorials is knowledge of at least one .NET languages. The most popular language is C# (pronounced as C sharp); however some places give preference to Visual Basic.

Java

There is also a collection of Java-based enterprise-level frameworks that are quite widely used. However, unlike ASP.NET, many of them have not been standardized. Therefore it is difficult to get it right in terms of which framework to chose. On the other hand, however, knowing Java language itself will sufficiently prepare you for the most of them.

Oracle, the owners of Java language, have kindly published a very detailed tutorial available below:

Official Java tutorial

Which server-side technology to pick

Since there is a whole range of completely different server-side technologies, you may get confused on which one would be the best one to pick. But there are two simple rules that will help you to make the decision.

  1. If you research the web developer job market in your area, you will see how many vacancies there are for each of the technologies. So, you may just want to pick up the one that has enough vacancies and pays well. The last point is important, because different demand for different programming languages drives the differences in salaries.
  2. If you just want to learn web development skills as quickly as possible and aren’t currently ready to start applying for web development jobs, then definitely pick Node.js. Because it uses JavaScript throughout, you will not have to learn separate programming languages for the client and the server. You will be able to grasp the universal concepts of full stack web development fairly quickly. So, if you would ever want to switch to a different technology, all you’ll have to do then is just learn the syntax of a different language.

Further reading

The links provided in this article are sufficient to get your started, but it will always be beneficial to learn the subjects in-depth. As you become more experienced developer, you will have to build more in-depth knowledge at some point. So, here is a list of books that you may want to check. All of these have a good reputation within the software development community.

Get Programming with Node.js

Sams Teach Yourself Node.js in 24 Hours

Web Design with HTML, CSS, JavaScript and jQuery

JavaScript: The Good Parts

Learning PHP, MySQL & JavaScript 5e

PHP, MySQL, & JavaScript All-in-One For Dummies

SQL All-In-One For Dummies, 3rd Edition

C# 8.0 and .NET Core 3.0 – Modern Cross-Platform Development

Professional Java for Web Applications