Web Development Roadmap 2020


web-development-roadmap


In this article you will learn how you can start learning web development, there are many questions comes in beginner's mind before starting learning web development. This article will give you answers to all of them as well as provide you with the best resources to learn web development on your own.

We will firstly go over all the necessary tools and software required to start web devlopment. Below are the tools & software which are necessary to start web development.

Tools And Softwares



Browser (Google Chrome, Firefox etc)

The first one is a browser, it allows web developers to test and debug their code and also help in testing the user interface of a website or web application. Many browsers have built-in tools to help web developers. Many developers use google chrome and they prefer it because it has some awesome built-in features for web developers, also it has Chrome Developer Tools which helps a lot in development. There are lot of browser available you can select any one of them Google Chrome, Firefox, Internet Explorer, Safari and Opera.

Code Editor

Code editor is used to write code, picking the right code editor helps in efficient and productive development. There are various code editors available you can pick any one from these Visual Studio Code, Atom, Vim, Sublime Text, Notepad++ etc .

Many people use IDE which stands for Integrated Development Environment which consist of set of tools like code editor, compiler, debugger etc. Using IDE can speed up your work but it becomes complicated for beginners to understand and work using IDE. Some examples of IDE are Eclipse, Netbeans, Visual Studio.

Github

Github is a git service provider. Git is distributed versioning control system which helps developers to track and manage changes to a code. GitHub lets you and others work together on projects. Github is not necessary at beginning but used later on as version control.

Now let us discussed the learning path for web development -

STAGE 1: Basics Of HTML

HTML stands for hypertext markup language where hypertext is the process of linking objects to each other so that when one object is clicked the linking object can be viewed and HTML uses so-called markup to annotate text images and other content to display in a web browser, in other words, you have access to elements or tags such as head, title, body, header, footer and so on. The hypertext markup language was created by Tim Berners-lee in 1990. A web browser reads these markup tags and translates them into what we visibly recognize as a website. Most web browsers allow you to view the HTML code for any web page for instance in Firefox or Chrome you can hit control+U to bring up the web page source.

HTML is a fairly simple language made up of elements which can be applied to certain text to give them different meaning in a document or a website. With HTML you can define a structure of a web page. For example, you can add a header, you can separate the page into three different columns of content, you can add a navigation menu, and so on. You can also embed content such as images and videos into the page. You should know about HTML it is the fundamental technology used to define the structure of a web page. HTML is used to specify whether your web page content should be recognized as a paragraph, list, heading link, image or any other available elements.

HTML structure: So first you can start by learning HTML structure. This is the basic structure of any web page and at the top we have the doctype then we have the head element and then the body element and then you can learn how we put elements inside one another. There are some tags like head, body, div, and many different tags you can learn them all.


html-structure

HTML Tags: The second thing that we would like you to learn is the HTML tags as we mentioned before there are many different HTML tags some of them are 'head', 'body' then we have the 'div' for different divisions, we also have headings h1, h2, h3, some paragraphs, images, videos, and many different tags.

HTML Attributes : Some of the tags request mandatory attributes for example if you want to display an image you can use an image tag but then you need to provide it an attribute called src or source, inside which you need to put the link of the image so that it properly displays on the webpage. There are many different attributes that correspond to many different tags so you can learn them as well.

STAGE 2: Basics Of CSS

The second stage of your learning is the basics of CSS. CSS stands for cascading style sheets and it is the first technology that you should start learning after HTML, while HTML is used to define the structure and semantics of your content, CSS is used to style it and lay it out. For example, you can use CSS to alter the font color, size and spacing of your content, split it into multiple columns or even add some animations. You should first learn the basics of how it works, what the syntax looks like, and how you can start using it to add styling to HTML. You can learn CSS and practice it simultaneously with HTML. You can do them both at the same time moving back and forth between the topics. For example, you can create a div or you can create a navigation bar and then simply add some styling with the CSS to it and make it look nice.

CSS Box Model: CSS box model is the most important concept of all the CSS. We have padding, margin, and then some width and height of the element so you can learn that or you can just Google CSS box model.


css-box-model

CSS positioning: What are the different ways that you can position elements on the website is known as CSS positioning.

Media Queries: The third most important thing which is a bit more advanced right here but also we would consider it a basic nowadays, media queries are used to make webpages responsive. What does that mean? basically nowadays people use tablets, phones, laptops, 4k monitors or full HD monitors you need to make your website look nice on all different displays and this is where the media queries come in handy.

Stage 3: Javascript

The next stage is also the hardest stage of learning web development. It is JavaScript, most people say that they can even understand up to some point but they simply cannot read-create what they can see on the tutorials and this is where the real problem lies, also there are so many frameworks and libraries availalbe. When it comes to JavaScript and maybe many people just lose track when it comes to learning JavaScript, it is the real programming language of the web. HTML and CSS are just markup languages you write something that simply makes sense to the web but javascript is a real programming language.

So why should you learn JavaScript?

1. The first reason to learn javascript is well more and more of the logic is making its way to the client-side in order to facilitate lightning-fast user experiences.
2. The second reason is that javascript is everywhere it is even moving to the server-side right now with the framework called nodejs. We are going to learn that in a moment.
3. The third reason is that javascript is well fun, with JavaScript you can create some useful tasks that your webpage elements will do. The real power of javascript actually lies when you start adding to it and when you start learning some of the most advanced things.

STAGE 4 : Advanced HTML, CSS AND JS

Now you know the main fundamentals of the web are HTML, CSS and JavaScript now you'll learn the basics but We would say before moving to some of the frameworks that we are going to see right now you want to master the fundamentals, now you know that HTML and CSS and JavaScript are the fundamentals of the web, everything else that you will learn will be based on these three topics. Now is the time to learn by building projects, build different projects based on these technologies that you know HTML, CSS and JavaScript. Projects can be landing pages for some imaginary companies you can even copy the style and look of the pages of the popular companies. Now you can create portfolios, portfolios for yourself, photography portfolio and you can also create hobby projects.

For example, if you are playing soccer or any other sports you can create a score counter or anything like that when you master these fundamentals then we would suggest you to move on to frameworks because then they're going to make much more sense and here we are with advanced topics so what do we want you to learn with the advanced topics like CSS has new features of flexbox and grid which allow you to style and structure your webpage more easily. Now is also the time where version control comes in you're going to building projects, so you need to know how to do version control also. Here's the deployment once you create some projects and also when you create your own portfolio you want to deploy your projects what does deploy means? it means that you're actually going to put your projects on the web. You're going to have an active link and anyone with an internet connection will be able to access your real projects and this is also the time where you need to expand your JavaScript skills. Now we are talking about real programming skills the one that you're going to use in real complex web applications.



Array and Object Method: Array and object methods you need to know how arrays in a JavaScript behave, how we can manipulate them, what are some of the built-in methods that we can call on them, how can we filter some of the values from an array, how can we loop through it, how can we extract values and stuff like that. When it comes to the objects you need to know how to structure the object. For example, take only keys or only values from an object enter into an array and so on, you can also learn about classes because classes in JavaScript are well nothing more than objects.

Asynchronous JS and API data fetching: Asynchronous j/s is closely connected to the API data fetching so what those two things mean, when you start creating projects you can use different API. API stands for application programming interface basically it is a simple database that some other company created you can search for fun API projects to do so you can actually fetch real data coming from a certain API. For Example, Google has its own API you can create your own Google clone application just using their API, and then you can simply display their content also. There are some API for currencies so you can just create a currency exchange calculator using their API. Asynchronous JS in simplest terms means that the JavaScript isn't going to be executed in a linear fashion, it is going to be a sink meaning some code is going to need some time to execute completeley and then we can do something else so that means you need to learn JavaScript promises and Asynchronous await as we mentioned HTML CSS and JavaScript are the main building blocks of the web.

Framework: HTML doesn't need to load Js and CSS. If the HTML and CSS are in Js this may seem mind-blowing at first but this is exactly what a front-end library react does, so now we can move on to frameworks now that you know the fundamentals of the web. You can start with frameworks they allow you to build powerful single-page applications with organized and interactive user interfaces. So why would you use them? they are used to make building and working with programming languages easier. Frameworks typically take all the difficult repetitive tasks in setting up a new web application and they either do the boring stuff for you or they make it very easy for you to do.

Front-End Developer



Front-end developer is someone who works on a website specifically on the side that the user interacts with. Front end or client-side of a website include anything that you're gonna see when you come to that site. They work with back-end developers who are working with databases and the servers and then they also work with designers who give them the mock-ups and wireframes that they then build out so there are three key components to any website HTML CSS and JavaScript. So a front-end developer is a person who implements web designs through languages as we learn them HTML, CSS, JavaScript and then you can pick some framework like react. On our site you can see the work of a front-end developer in the navigation layouts even in the way that the site looks different on your phone and desktop, this is responsive design so which framework to choose there will be many different recommendations by different people. React is currently the best choice that you can make. React is definitely really popular right now and there have been some surveys that show that react is the most loved framework out there now. so if you're interested in becoming a front-end developer those are definitely the three key components that you need before you start applying to any jobs.

Back-End Developer



A back-end developer builds complex systems that have all kinds of logic that happen in the background that make the websites works. So if you don't have an eye for the design this may be the place that you might want to be in, you are still in the web development field but you don't have to worry about the button designs or proper fonts colors etc and it is also a bit closer to traditional programming data needs to be stored and retrieved business logic and rules need to be followed and results need to be calculated you need to work with databases as well so this is where the JavaScript framework nodejs comes in, it allows JavaScript to be run on the backend.

Fullstack Developer



The last thing is the full stack web development. If you're working as a full stack developer you can make use of your knowledge of both frontend and the backend, here you will need to pick a technology stack (tech stack) which is combination of programming languages, tools and frameworks that developers use to create a web applications, in most cases it consist of a client-side and a server-side language plus a database. A popular JavaScript full technology stack is so-called MERN stack where M stands for the database called MongoDB. E in MERN stands for ExpressJS which is basically an addition to the nodejs that allows us to make routes easier. At the end, we have the Nodejs which is a framework that enables us to run JavaScript on the backend if you choose to be a full stack developer, you will be able to build full-stack programming web interfaces.

For example, Facebook is a full-stack web application, have a database to store users it also needs to have a proper back-end to handle all the logic in there and it also needs to have a front-end or a client-side which will allow you to actually see all the profiles of users the messages and the feed of the Facebook. for example, it is a fun fact that react is actually built by the Facebook team.

Conclusion



You now know what you need to do, first go for the HTML practice it a bit then move on to the CSS finally learn JavaScript and practice JavaScript once you know JavaScript really well like closures, classes, imports, exports, ES6, arrow functions then feel free to move on to react which is an awesome front-end framework then if you want to do back-end you can also learn nodejs and finally full-stack development you need to choose a technology stack like MEAN, MEAN or LAMP and then you can make use of react on the front end and nodejs on the backend plus a database to actually be a full stack developer and build complex web applications. Learning web development is not going to be easy you're going to get stuck a lot of times and it is not simple but you have to practice. So all that you need to have is time and effort if you put that in you're definitely going to make it.

Best Web Development Books



1. Web Design with HTML, CSS, JavaScript and jQuery

Author :- Jon Duckett
Edition :- 2014 Edition
Published by :- John Wiley & Sons;

A two-book set for web designers and front-end developers This two-book set combines the titles HTML & CSS: Designing and Building Web Sites and JavaScript & jQuery: Interactive Front-End Development. Together these two books form an ideal platform for anyone who wants to master HTML and CSS before stepping up to JavaScript and jQuery.

2. HTML & CSS: The Complete Reference, Fifth Edition

Author :- Thomas Powell
Edition :- Fifth Edition
Published by :- McGraw-Hill Digital

The Definitive Guide to HTML & CSS--Fully Updated Written by a Web development expert, the fifth edition of this trusted resource has been thoroughly revised and reorganized to address HTML5, the revolutionary new Web standard. The book covers all the elements supported in today's Web browsers--from the standard (X)HTML tags to the archaic and proprietary tags that may be encountered.

Best Web Development Courses & Tutorials


1. HTML, CSS, and Javascript

2. HTML and CSS from scratch

Also Check