Web development ROADMAP in 2021
Tags: javascript, webdev, beginners, programming
Published: 2021-10-18 13:11:46

Today I'm going to introduce the roadmap to be a web developer. This is the first article explaining the basics of this series . In future articles I'll discuss about all the facts one by one.

If you have any questions **ask me** through comments or contact me via E-mail.

![image](https://github.com/kamranahmedse/developer-roadmap/raw/master/img/intro.png)

Let's learn it.

## Who is the Web Developer?
A **web developer** is a programmer who specializes in, or is specifically engaged in, the development of World Wide Web(www........) application.

## What is front end?
![Photo of front end Unsplash](https://source.unsplash.com/NIo8Fd-RngE)

**Front-end web development**  is the development of the  graphical user interface of a website, so that users can view and interact with that website.
You can learn more about front end in future articles.

## What is back end?
![Photo of back end Unsplash](https://source.unsplash.com/yLDabpoCL3s)

The back end refers to parts of a computer application or a program's code that allow it to operate and that cannot be accessed by a user. ... The back end is also called the  **data access layer of software or hardware**  and includes any functionality that needs to be accessed and navigated to by digital means. You can learn more about back end in future articles.

## What is DevOps?
<a title="Kharnagy, CC BY-SA 4.0 &lt;https://creativecommons.org/licenses/by-sa/4.0&gt;, via Wikimedia Commons" href="https://commons.wikimedia.org/wiki/File:Devops-toolchain.svg"><img width="512" alt="Devops-toolchain" src="https://upload.wikimedia.org/wikipedia/commons/thumb/0/05/Devops-toolchain.svg/512px-Devops-toolchain.svg.png"></a>

**DevOps** is the  **combination of cultural philosophies, practices, and tools**  that increases an organization's ability to deliver applications and services at high velocity: evolving and improving products at a faster pace than organizations using traditional software development and infrastructure management processes.

## Required tools

### What is Git?
![Git](https://git-scm.com/images/logo@2x.png)
**Git** is software for tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development. Its goals include speed, data integrity, and support for distributed, non-linear workflows (thousands of parallel branches running on different systems).

> Wait for the the next article to learn more about Git.

### What is Terminal?
Terminal means CLI.
<a title="Microsoft Corporation, Public domain, via Wikimedia Commons" href="https://commons.wikimedia.org/wiki/File:Windows_PowerShell_1.0_PD.png"><img width="512" alt="Windows PowerShell 1.0 PD" src="https://upload.wikimedia.org/wikipedia/commons/thumb/d/d5/Windows_PowerShell_1.0_PD.png/512px-Windows_PowerShell_1.0_PD.png"></a>
A command-line interface (CLI) processes commands to a computer program in the form of lines of text. The program which handles the interface is called a command-line interpreter or command-line processor. Operating systems implement a command-line interface in a shell for interactive access to operating system functions or services. 
You can learn more about terminal in future articles.

### What means Data structures and Algorithms?
![Photo of back end Unsplash](https://source.unsplash.com/cV9-hOgoaok)

Simply a **Data structure** is a place for computer programme to store data.
Algorithm is a method to solve a problem related to programming.

You can learn more about them in future articles.

### What is Github?
![Github and world](https://github.githubassets.com/images/modules/site/home/globe-700.jpg)
Millions of developers and companies build, ship, and maintain their software on GitHub—the largest and most advanced development platform in the world.

You can learn more about Github in future articles.

### What are licenses?
![The law](https://source.unsplash.com/yCdPU73kGSc)

An license protects contributors and users. Businesses and savvy developers won’t touch a project without this protection.
You can learn more about Licenses in future articles.

### What is SemVer?
<h1>Semantic Versioning 2.0.0</h1>
Semantic versioning is  **a formal convention for specifying compatibility using a three-part version number**: major version; minor version; and patch. The patch number is incremented for minor changes and bug fixes which do not change the software's application programming interface (API). 
You can learn more about versioning in future articles.

### What is SSh?
SSH means **S**ecure **Sh**ell.

![A locked phone](https://source.unsplash.com/DoWZMPZ-M9s)

Secure Shell is a cryptographic network protocol for operating network services securely over an unsecured network. Typical applications include remote command-line, login, and remote command execution, but any network service can be secured with SSH.
You can learn more about SSH in future articles.

### What are HTTP/HTTPS and APIs.
- HTTP - Hypertext Transfer Protocol
- HTTPS - Hypertext Transfer Protocol Secure
- API - application programming interface
<a title="IETF HTTP Working Group (HTTPbis), Public domain, via Wikimedia Commons" href="https://commons.wikimedia.org/wiki/File:HTTP_logo.svg"><img width="512" alt="HTTP logo" src="https://upload.wikimedia.org/wikipedia/commons/thumb/5/5b/HTTP_logo.svg/512px-HTTP_logo.svg.png"></a>

The Hypertext Transfer Protocol is an application layer protocol in the Internet protocol suite model for distributed, collaborative, hypermedia information systems.

Hypertext Transfer Protocol Secure is an extension of the Hypertext Transfer Protocol. It is used for secure communication over a computer network, and is widely used on the Internet. In HTTPS, the communication protocol is encrypted using Transport Layer Security or, formerly, Secure Sockets Layer.

An application programming interface is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build or use such a connection or interface is called an API specification.

You can learn more about them in future articles.

### What are design patterns?
![A pattern](https://source.unsplash.com/I7I4cir4dTc)

In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design. It is not a finished design that can be transformed directly into source or machine code. Rather, it is a description or template for how to solve a problem that can be used in many different situations. Design patterns are formalized best practices that the programmer can use to solve common problems when designing an application or system.
You can learn more about them in future articles.

### What are character encodings?
![A pattern](https://source.unsplash.com/KgLtFCgfC28)

In computing, data storage, and data transmission, character encoding is used to represent a repertoire of characters by some kind of encoding system that assigns a number to each character for digital representation.
You can learn more about them in future articles.

## The End.
I think this article is a complete roadmap for you.
If you have any questions **ask me** through comments or contact me via E-mail.

_The next article is about **Git**.
**🏃‍♀️🏃‍♂️ Follow me** for more articles..
Please **⭐ vote to this article** if you love this article.
Thanks 💖💖💖._