A Simple Beginner’s Guide to Web Development
Tags: beginners, webdev, html, codenewbie
Published: 2020-12-12 17:36:36

The Internet has made a profound effect and influenced a lot if not all activities we engage in. It is a broad concept that has lots of fields under it, with web development being amongst the popular ones.

Here, we&#39;d look at a very brief overview of what web development is about, breaking it down by answering FAQs (Frequently Asked Questions).

### What Is Web Development?

Web development is a term which involves either building or maintaining websites. It consists of developing simple websites, internet applications (commonly referred to as web apps), and social network services.

Some web development activities include:

- Web design
- Web engineering
- Client-side/server-side scripting
- eCommerce development, and
- Network security

### How Are Websites Developed?

There are several ways websites are created. Some professionals build webpages with tools like code editors, while others use Content Management Systems ([CMS](https://savofns.net/technology/an-introduction-to-content-management-systems/)) like WordPress, Contentful, or Joomla.

The choice of tools depends on the requirements needed to fulfil a website&#39;s functionality. For example, WordPress is very suitable for building stable and extensible eCommerce platforms but with less customisable capabilities, while the Contentful CMS is great option for building something more flexible and customisable.

### What Paths are Involved in Web Development?

In web development, there are three popular paths enthusiasts take. They include:

#### a. Front End Development

This path involves building the components of a website that users or visitors will directly interact with. Depending on the website, such components may include layouts, navigation menus, dropdowns, fonts &amp; colours.

Professionals involved in this path are called **frontend developers**. Depending on the complexity of the website/web app to be built, they work alongside User Interface (UI) and User Experience (UX) Designers to bring prototypes/wireframes, from conception to production.

Core languages/tools front end developers use to achieve this include:

##### 1. HTML

HTML is an acronym for **HyperText Markup Language**. It is made up of elements that help describe the structure of a webpage to a web browser, which would render it. The current stable version of HTML is **HTML5**.

##### 2. CSS

An acronym for **Cascading Style Sheets** , CSS is used to add style to HTML elements. It is designed to separate the presentation of a web page from its structure (which HTML handles). This improves [accessibility](https://developer.mozilla.org/en-US/docs/Learn/Accessibility/What_is_accessibility) and visual control of elements.

##### 3. JavaScript

Popularly shortened to JS, JavaScript is a programming language used to add interactivity to webpages. It is wrongly associated with Java due to the similarity in their spelling. Note that they are two distinct languages. For a detailed description of their differences, do read this [article](https://www.thesoftwareguild.com/faq/difference-between-java-and-javascript/#:~:text=JavaScript%20code%20is%20run%20on,specifically%20an%20OOP%20scripting%20language.).

HTML, CSS, and JavaScript are basic requirements to build websites. To improve, or add extra functionalities to websites/apps, other tools/technologies are utilised. Popular ones include:

###### Bootstrap

Developed by Mark Otto and Jacob Thornton at Twitter, [Bootstrap](https://getbootstrap.com/) is a free CSS framework used by frontend developers to easily build responsive web layouts. This framework contains customisable design components including buttons, forms, and cards.

###### ReactJS

Now, this might be the most popular tool in the web development industry. Developed and maintained by engineers at Facebook, and also supported by a large community of individual developers, [ReactJS](https://reactjs.org/) is a JavaScript library for building **component-based UI components**.

###### VueJS

[VueJS](https://vuejs.org/) is also a very popular JavaScript framework. Created by [Evan You](https://twitter.com/youyuxi), it is also used in building User Interfaces. It is considered to be easier to learn than ReactJS. In real-life situations, these frameworks are selected based on the requirements and complexity of a web app.

#### b. Back End Development

The backend development path involves building and maintaining the non-visual aspects of a web app. These non-visual aspects consist of servers, applications, and databases. Professionals in this path are known as **backend developers**. They are specialised in languages used to communicate between the servers, applications, and databases. Popular languages used to achieve these include:

##### 1. Python

It is one of the most popular programming languages on earth. Created in 1991 by a Dutch programmer known as [**Guido Van Rossum**](https://twitter.com/gvanrossum), it emphasises on code readability and helps programmers to write clear logical code for small and large-scale projects.

##### 2. SQL

It is an acronym for **Structured Query Language**. It is used to access and manipulate data held in databases.

##### 3. Ruby

Ruby is a programming language focused on simplicity and productivity. It boasts of an elegant syntax that&#39;s clear and easy to write.

##### 4. PHP

PHP is an acronym for **HyperText Preprocessor**. It is a general-purpose scripting language and is fast and flexible. It powers WordPress, the most popular CMS in the world.

Just like HTML, CSS, and JavaScript, the above languages are merely basic requirements to power the logic and functionalities that power a website/web app. Some popular backend frameworks include:

###### Django

[Django](https://www.djangoproject.com/) is a Python-based framework created to ease the creation of complex database-driven web apps. It centres around less code and reusability of components. Some popular sites that use Django are Instagram, The Washington Times, and Mozilla.

###### Ruby on Rails

[Ruby on Rails](https://rubyonrails.org/), commonly shortened to **Rails** , is a Ruby-based server-side web application framework. It facilitates the use of JSON and XML for the transfer of data. It helps backend developers to accomplish a lot of tasks/functionalities with less code.

###### Laravel

[Laravel](https://laravel.com/) is a free back end framework based on PHP. It boasts of an expressive and elegant syntax. Its popular features include a **modular packaging system** and multiple ways for accessing multiple relational databases.

#### c. Full Stack Development

Full-stack development can be referred to as the combination of frontend and back end development tasks. Professionals who can perform both tasks are called **full-stack developers**. Most of them are assumed to have spent a lot of years working on both paths and find them appealing. Most of them serve as consultants in the industry.

For a well-detailed article on the three paths, here&#39;s [one](https://blog.udacity.com/2014/12/front-end-vs-back-end-vs-full-stack-web-developers.html) written by the Udacity team.

### What Field Should I Start With?

This question is frequently asked amongst people who intend starting. Unfortunately, not getting adequate advice on it has discouraged a lot. A simple rule of thumb to follow is this;

- If you find the concept of building beautiful interfaces, you should consider looking into the frontend development path.
- If you love writing code, or logic, and find it more appealing than design, you might consider taking the backend development path.
- If you like both and find yourself to be a **jack of all trades** , pursuing a full-stack path wouldn&#39;t hurt.

If you&#39;re still not sure, don&#39;t panic and just start with anyone. And remember, if you take one and don&#39;t find it satisfying, you can easily switch to another.