Learn Front-end Development as an Absolute Beginner

Ayumi Tanaka
8 min readJan 16, 2021
Photo by Denis Pavlovic on Unsplash

Introduction

Hello, world! I’m Ayumi. I’ve been learning front-end development since 2020. It is almost a year, so I’d like to review what I learned in the last year as an absolute beginner.

When did I start?

I came to Canada to study at the vocational school that specialized in web development in March 2020. A week before I was supposed to enter the school, I got news about the closing school because of bankruptcy! I was so shocked but the only thing I could do was learning by myself. So I started self-learning anyway.

How did I learn?

I don’t have a computer science degree, neither work experience as a developer. I didn’t know how should I start, but Frontend Developer Roadmap 2020 helped me a lot. I decided to follow this road map.

What did I do?

I’ve learned a lot of things in 2020! Here are what I’ve done.

Contents

  1. Terminal, Git, and Internet
  2. HTML and CSS
  3. JavaScript
  4. React
  5. Again! HTML, CSS, and JavaScript

1. Terminal, Git, and Internet

I highly recommend learning terminal(command line) first, before watching this video for absolute beginners.

I learned about the terminal (command line) and git. Firstly, I didn’t think I would use this black window. I’ve seen this only in the tv show called “Mr. Robot” which is about hackers. To me, it was much easier to create files from Finder, but now I feel using the terminal is also convenient.

Understanding Git and GitHub took me a long time. Sometimes, I still struggle with using them, so it would be very helpful to learn them for absolute beginners in the beginning. It looks complicated, but the sooner the better! At the time, I wasn’t sure the difference between local and remote but now use them almost every day.

Also, I learned basic knowledge about the internet — such as DNS, and HTTP. To be honest, it was not fun for me, but I would say I understood slightly how the internet works.

2. HTML and CSS

It is an hour video for absolute beginners and easy to understand. You can make a simple web page after watching it. I recommend writing code while watching it.

I learned my most favorite part of front-end development, HTML, and CSS! In the beginning, I watched some videos on YouTube to learn the basic syntax of HTML and CSS. Brad Traversy especially helped me a lot. Since I was working as a graphic designer, learning CSS was a lot of fun for me.

This one is the basic CSS video for absolute beginners. It enables us to create a plausible website. I tried to code with this video. It was harder doing it than seeing it. But, I believe it’s worth a try.

The most challenging part was the responsive design and flexbox. I was struggling with creating responsive design with flexbox at the time but gradually got to know it.

It is a bit long video, but I learned a lot. The grid systems of Bootstrap is very useful.

After I learned the basics of HTML and CSS, I tried to create a website as my portfolio site. Firstly, I used vanilla CSS, but it was too difficult to create a responsive design so I use the CSS framework, Bootstrap. It definitely made my life easier. I wouldn't use vanilla CSS anymore.

I found the tutorial on the official Tailwind website. It was very helpful!

Speaking of the CSS framework, I also like Tailwind. I found I could create websites more detailed with it than Bootstrap.

You can learn not only hosting, but also authentication and database! I recommend watching the latest videos of Firebase.

I wanted to upload my website, so I bought my domain on Google domain and used Firebase as a hosting. Deploying was kind of easier than I thought. Except for the domain, it was totally free! (Firebase has limitations, though.)

This is my portfolio website with HTML and Bootstrap CSS, deployed with Firebase.

3. JavaScript

I didn’t even know what the role of JavaScript is, the only thing I knew was it makes animation for websites, so I started to learn it for my portfolio site. Firstly, I learned about syntax, but it was so difficult to understand for me. JavaScript is completely different from HTML and CSS. It took a ton of time.

Actually, I haven’t finished watching this series, because this course has four parts. I just watched part one which is a good material to understand the concept of DOM.

Learning DOM( Document Object Model) is also essential, firstly it looks complicated but I’ve gotten used to it. Understanding the relationship between HTML and JavaScript is necessary for front end developers.

To understand syntax, I learned with “The Complete JavaScript Course 2021: From Zero to Expert!” on Udemy. It was almost 67 hours of lecture! It made me tired and realized how important learning JavaScript. It covers the basics part pretty well, but I would say some parts are a bit old. This course has a lecture on Node.js, too.

Solving algorithm questions was also helpful to know JavaScript methods. There are gazillions of answers on the internet, but I think that the documentation such as MDN will be an absolute beginner’s best friend. I found that some answers might be wrong on the internet. I’d recommend that trying to solve quizzes by myself with the documentation, after that searching for other solutions.

To challenge algorithm quizzes, this website is helpful. You can train in any language.

4. React

There are tons of posts that recommend learning React for front end developers. So does the road map, so I started to learn React. However, it was a mistake. I should have learned it later such as after I learned JavaScript more. That was too early for me. I don’t know how is that possible, but I finished this course “The Complete React Developer Course (w/ Hooks and Redux)” anyway. I don’t have any confidence in my understanding of React, but it was a good opportunity to create a web application and deploy it. I learned Firebase authentication in the course. I believe it is also helpful for people who want to create web applications.

This is the budged web application that I created in the tutorial. It has the Firebase login authentication.

5. Again! HTML, CSS, and JavaScript

Since I realized that learning React was too early for me, I decided to review what I’ve learned so far. I tried creating mini projects with some lectures on YouTube.

Here’s the article that introduces good projects with vanilla Javascript.

It is a very good tutorial for JavaScript beginners. It requires only 20 lines of code and a simple function.

I’ve almost forgotten what I learned before, so it was a good time to learn them again. I realized that using methods is very practical not only for solving algorithm quizzes but also for creating functions for websites. For example, the typewriting effect requires count functions with the slice method.

JavaScript animation is so interesting to me. I tried the JavaScript animation library called “GSAP” on my portfolio site. This one is pretty useful.

Conclusion

Photo by Dino Reichmuth on Unsplash

I’ve been learning a lot of things by myself since my previous school closed. After this period, I started to go to the new school. Luckily, I had many opportunities to learn something new. Except for what I wrote above, I’ve learned Java, SCSS, and some other new stuff.

I found these ways to improve myself as an absolute beginner after I started to learn front end development.

  1. One of the most important things is to review basic things again and again. If I don’t understand basic syntax or methods, I wouldn't be able to learn advanced stuff.
  2. When I stack in errors, reading errors and documentation is the most helpful way to improve me. Getting errors always turn me off, but errors show me where I make mistake. Also, the documentation says always right. It never wastes your time. (Sometimes Stack Overflow does.)
  3. You will be satisfied when you finish tutorials, but it is not enough for your improvement. Unfortunately, I was satisfied when I finished tutorials and never have created applications by myself. Then I forgot everything I learned in tutorials. Creating something by myself is essential for absolute beginners.

My road to being a front-end developer is still far away from where I am, so I’ll keep learning!

Resources I used

Git and GitHub

Internet, DNS, and HTTP

HTML

CSS

JavaScript

React

--

--