Rahul Barman is a under grad student at MIT Pune taking a Bachelors degree for Computer Science with specialization in Intelligent Systems.
Web development is more important now more than ever. Yes that's right it's one of the most in demand and important jobs in the software business. That is because every industry, be it the automobile, medical, even the grocery department now requires websites. And who better to provide them than a web developer. Every industry now has a separate department that is solely dedicated for their website. Keeping all their information and updates posted on the website and keeping all the customer engaged in their website.
Why is it booming all of a sudden?
Well that's all because of the rise of the modern era where every information can be gained by just searching on the internet. If a company does not have a website, it automatically loses a competitive edge over others in their respective area. Even the grocery department requires a website because now everyone can get anything delivered to their doorsteps with the help of these websites. These requirements got an even greater boost due the pandemic. Due to all the lockdowns everyone were locked inside their homes and the only way to get something was through delivery. Also now everyone just googles the information they want. Hence if some company cannot provide their information regarding the topic searched by the user then he/she may not look into that company. They may even rate that company lower than others which may hamper the sales.
How to get into this Amazing World then?
Taking the Easier Road
The easier road would definitely be using the websites mentioned above. These websites makes life very easy. They even provide hosting as well as domain names to get started directly. They provide drag and drop feature for adding a block like images, gallery, videos etc. They even optimize the web application to be responsive. The only thing the user has to worry about is the overall styling, the type of application and how to market it.
Let's take it slow now. What's hosting and domain names you ask? Well every website needs a physical machine, or as it is called, a hosting server is required which will run 24x7 without fail and host your website for people to see from anywhere at anytime. These hosting servers are the main part of your website/web application.
Now let's define what is a domain name. Domain names are the url we type on the address bar of any web browser. For eg - 'www.google.com'. These url or domain names are unique and identifies which web application/website someone is looking for. They are like addresses for your web pages. Each page in your application will have a separate url.
For the Grinders
Now if you really want to get your hands dirty and do some hard work then this is the correct path. This will take more time to master and make some beautiful looking sites seen on the internet. But it does have its own advantages as well. To begin with its totally free. Everything will be built by you so its basically free. Also making the web application using this method will give you more flexibility, i.e. all the blocks you want can be customized according to you and every block can be different and very little effort will be required to do the same.
What is Required?
For you to master the art of web development from scratch you would need to learn few languages.
- The first and the main language is HTML. Some might argue that HTML is not really a programming language but it has language in its full form so I will refer it to as a language. HTML is the only language that the internet understands. That is hard to believe but it is true. Every other language used in web development just supports HTML. So learning HTML is the first step
- Second would be learning CSS or SASS (CSS on steroids as they say). This is used for styling the web application. The web application without styling just looks ugly
Well that is the basics needed to get started developing. But that won't be enough to make a production ready application.
Making it production ready
The web application may look good and it works. But it may not be production ready. Almost all of the production ready application have two more components.
- A Backend
- A Web Framework
A Backend - A backend generally refers to a database. A database can be used to store and retrieve data as and when required. There may come a time where data has to be stored. HTML or JS cannot do that. So a backend is required. For example, if we want to store user registration information, information about products, lists, cart items etc., it would require the use of a database.
The main types of database engines that are used are - SQL, MongoDB etc.
A Web Framework - It is the connecting part of the backend to the frontend (HTML,CSS,JS part). It is mainly done by creating API's which the frontend calls to retrieve or store data. The main languages used for the purpose is Python, C#, Java etc.
Taking a step further
Well the above mentioned requirements are enough to build real web applications. But for the real nerds who like taking the extra step and rise above the competition there are few more steps you can take.
Selecting a JS Framework like Angular, React JS, Vue JS to make single page applications. Single page applications refers to those application which does not requires a refresh of the entire page to load the contents. Normally if you click on some links in the page, let's say you want to go to the about page of a website, the page refreshes and then takes you to the page. Using these framework, the refresh part is skipped. This makes the web application more smooth and makes the user experience a pleasant one. To put more emphasis on these framework, Google uses these in every one of its application be it google drive, mail etc.
Also using some extra middleware to make the transfer of data like sensitive data of the user more secure. Also middleware can also check for spams, foul language etc. before actually entering the data in the database.
Well that was a small introduction of why web development is blooming and how you can also board the hype train. Anyway making a website and publishing it to show your friends is still exciting if you don't want to make your own web applications for business purposes. Also as all the skills required or the ones mentioned above can be learned from the internet for free or by buying low cost courses so anyone can get into it.
© 2021 Rahul Barman