FASTEST Way to Learn Web Development and ACTUALLY Get a Job

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
As a naive beginner, I used to think that if I learn HTML, CSS and Javascript, tech companies would fight over who wants to hire me as a Software Engineer. In reality, I could not be more wrong. That’s because in today’s day and age, very few people write web apps with vanilla CSS or Javascript. There are so many different ways to write CSS. And for Javascript, we have 3 frameworks that are widely popular. Knowing which of these technologies to learn is a problem that confuses many beginners. Even if you figure out what technology you want to learn, there’s still one big question that needs to be answered. And that is, how do you learn everything efficiently for free? By the end of this video, you’ll know the answer to all these questions. Not only that, you will also have all the free resources that you need to go from an absolute beginner to an employable Web developer. On top of that, you will also know the 3 big mistakes that you need to avoid. I will share these along the way. Before we dive deep into different technologies, we need to understand how a website works. At its core, a website is nothing but a bunch of files that are stored on a computer that is called a server. You can access these files on your computer using a browser like chrome or firefox. Your browser sends the server a request to access these files using the internet. Along with sending the files back, the server might choose to do other operations like storing any useful information that came along with the request. Server does this with the help of a Database. If you are writing code for what you see in the browser, you are doing front end development. And if you’re writing code for what the server does when it receives a request, you are doing back end development. And if you happen to work on both server and browser code, you are doing full stack development. We’ll discuss both front end and back end development in this video. But, you don’t have to know both to get a job. Even if you master one of these, you are golden. Let’s start with front end development. As you might already know, HTML, CSS and Javascript are the basic building blocks of front end development. To understand the role of each of them, let’s take an example of this “Sign in” button on Netflix. HTML is what tells the browser that there’s going to be a button here. CSS is used to define that button is going to be red and the color of the text is going to be white. Javascript tells the browser what action to perform when this button is clicked. Now that you know what each of them does, let’s see what’s the best way to learn them. And this is where most beginners make their first big mistake. They spend way too much time learning HTML, CSS and Javascript. This is how most people learn Web development. They get their first course on HTML and CSS which takes them anywhere between 6-10 hours. And then they do a Javascript course which is another 10 hours. Even worse, some of them buy these 64 hour Web Developer bootcamps. At the end of spending tens of hours, they still can’t write a basic web app themselves. To understand why this doesn’t work, imagine that you want to learn football and I feed you hours and hours of footage of Ronaldo or Messi playing football. Do you think you can become a professional football player by doing this? Do you think this is how Ronaldo and Messi learnt to play football? The only way to become better at your craft is by doing more and more of it. So, we want to spend the minimum amount of time watching and more and more time doing. To learn HTML, CSS and Javascript, go to W3 schools and do some hands-on learning. W3 schools provides an interactive environment where you can run your code right there in the browser. Feel free to play with the code to learn faster. For HTML, you want to go through all the exercises until HTML graphics. For CSS, you want to cover everything until the CSS grid. And for Javascript, you want to do everything until JS HTML DOM. Once you’re done with the tutorial part, test your knowledge by doing the quiz and exercises they have. When you complete these basics, you’ll realize that CSS is very time consuming. That’s because it’s very hard to debug. With CSS, you’ll not get any error messages that will tell you what’s going wrong. I can’t even calculate how many hours I spent trying to figure out why the header doesn’t look the way I want. Or why different components don’t align the way I intended. Another problem with CSS is that it’s very verbose and the files can become unmanageable very quickly. That’s why you need a CSS framework that will ease your life. There are many options here but I will only talk about 2 popular ones. The first option is Bootstrap that comes with pre-built components. For example you get all these headers out of the box for free. But there are 2 major problems with using Bootstrap. One, your website will look very similar to countless other websites that use Bootstrap. Two, you would not have complete control over what your website looks like. In theory, you can customize the components you get from Bootstrap but at that point, you are again writing your own CSS. A better option that I personally prefer is Tailwind CSS. Tailwind CSS gives you a good amount of control over the look and feel of your website. It’s unbelievably easy to use. To be honest, when I used Tailwind CSS for the first time, I was questioning myself if I needed to learn CSS before learning Tailwind. Another advantage of using Tailwind is that it gets rid of all the unused CSS automatically for you. As a result, your website is lighter and loads faster. The best part about Tailwind however is its incredible documentation. To learn Tailwind CSS, I want you to go to this documentation and get acquainted with everything below Core Concepts. You don’t need to remember anything. Just need a general idea of how it works. To learn by doing, go to the official Youtube channel of Tailwind labs and follow this video where they build Instagram stories UI step by step. This will give you a good feel of how powerful Tailwind is. For every new concept in the video, read the documentation to learn more about the related things. This is all the Tailwind CSS we’ll do for now. Later in the video, we’ll come back to it when we build a big project using Tailwind Now that we have found a better way to write CSS, let’s talk about how to improve our Javascript workflow. If you use Javascript that you have learnt so far to build a project, you’ll see that HTML and Javascript live in separate files. To update a component of your website, you’ll have to update multiple files. This is the first problem with our current workflow. Another problem with using just Javascript is that you’ll have to do a lot of manual lookups of HTML elements if you need to update something on the Webpage. To solve these issues, we will use a Javascript framework. We have many options here but I will discuss 2 popular ones. First option we have is Angular which is a full fledged framework. It has a strong opinion about how a website should be made and is hard to learn for the beginners. React on the other hand is a Javascript library which gives you a lot of flexibility and it is a lot easier to learn. Once you know Javascript, getting started with React is very easy. Official documentation of React gives 2 ways of learning. First one is “learning by doing” and the second one is “learning concepts step by step”. By now, you already know what we prefer on this channel. We’ll choose the first path and dive head first by doing this official “Intro to React” tutorial where we build a popular game called “tic-tac-toe”. Once we complete this, we’ll also look at all the Main concepts of React. Now that we have a good understanding of React, we will build some projects. For that, go over to this video by Brad from Traversy Media. In this video, Brad builds a basic Image Gallery using React and Tailwind. Just FYI, he uses VS code as code editor. So, make sure you have VS code set up before you start on this project. Follow along with Brad to make sure you’re actually learning at every step. After this, head over to this video by Sonny where he builds a Linkedin clone using React. He will also introduce you to some new technologies like Redux and Firebase which will help you level up your front end skills. This channel is by far my favorite channel for web development. If you have time, I recommend that you check out his other videos where he builds Hulu and Facebook clones using NextJS. NextJS is an improved version of React and if you already know React, Sonny would make it very easy to follow along. Now that you know front end development, it’s time to make your portfolio website and you’re done. That's the second big mistake most people make. They don’t build enough projects. Portfolio website is just to showcase your work and you should make it only when you have enough projects to show. Easiest way to do this is to take inspiration from Sonny’s channel and build clones of some popular websites that you use. Another way to do this would be to build websites to ease your daily life. You can make a note taking web app or an app to track your workouts. Choose these projects carefully because we’ll come back to these apps and add a backend to them when we are done learning back end development. In summary, show the hiring managers that you are capable of making working web apps and you’ll automatically get preference over other candidates. If what we have discussed so far is already a lot for you, you can stop here and keep honing your skills until you become a full time front end developer. If you’re still hungry to learn more, we can discuss back end development. As I already mentioned, in backend development, you write code for the server so that it can do operations like storing or deleting data or maybe calling some other server to get some information. For back-end development, you again have multiple choices. You can learn Java with Spring or you can learn Python with Django. These options have their own advantages and there's a reason that they exist. Since we are interested in a fast route in this video, I would recommend learning Node with Javascript. The main reason for this is that since you have already learnt Javascript, learning Node would require the least amount of effort. At the same time, Node is very high in demand and is becoming more and more popular. But what exactly is Node? Before Node, you could run Javascript only in the browser. Node is just a way to run Javascript on the server. The actual logic or code of what to do would still be written in Javascript. Node will just run that code for you on the server. Just like in the front end, there are libraries that make it easier to write code for the back end. One of these popular libraries is called Express. We’ll get into how to learn Express in a moment. With the help of Express, we can decide what will happen when a user connects to a particular particular path on our website. For example, in the case of this website, “shopify.com” is the name of the website and what comes after that is the path. Among many things that you can do at a particular path, one option you have is to store the data provided by the user. That’s exactly what happens when you go and sign up to a website. The website stores the information you provide in a Database. There are many kinds of databases that you can use here. The ones that store data in the form of a table are called SQL databases and the ones that don’t use table format are called NoSQL databases. In our case, we will learn a NoSQL database called MongoDB. As you might have already observed from the discussion we had so far, writing backend code and adding or updating information in your database goes hand in hand. So, we will learn both Express and MongoDB together. For that, go to this video by Traversy media and build an app using Express and MongoDB from scratch. Since we are learning directly by building, some of the concepts might not be clear at the beginning. So, refer to the documentation whenever you’re stuck and look up things online. This is how you’ll do things when you become a Software Engineer. So, learn this process early. Now that we have seen how things work separately in the front end and the back end, let’s bring it all together. To do this, go and build a Whatsapp clone using this video by our friend Sonny. This tutorial is beginner friendly and will take you through the entire process step by step. Once you're done with this, I want you to go back to the apps you built at the end of learning front end development and add a back end to them. By now, you have learnt all the skills you need, you’ve built a portfolio of projects and you’re ready to apply for the jobs. This is where people make their third very big mistake. They don’t prepare for the interviews. For smaller companies, you might be able to get in just through your skills. But in bigger companies, on top of these skills, they ask you specific kinds of questions in the interviews. All the hard work that you put into learning Web Development might become useless if you can’t pass these interviews. For the interviews, you need to know the general preparation process. For that, watch this video at the top. I will see you in the next one.
Info
Channel: Power Couple
Views: 1,039,506
Rating: undefined out of 5
Keywords: html, css, javascript, front end developer, back end, full stack developer, react, tailwind css, express, mongodb react, software engineering, coding, programming, web development, backend web development, front end web development
Id: C-EHoNfkoDM
Channel Id: undefined
Length: 11min 3sec (663 seconds)
Published: Fri Jul 29 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.