Personal Blog

Personal Blog

My short journey to web development with Javascript and its frameworks - Javascript beginner.

My short journey to web development with Javascript and its frameworks - Javascript beginner.

Javascript, fancy frameworks, and web development

Subscribe to my newsletter and never miss my upcoming articles

Disclaimer: Opinionated post alert. I'm not a Javascript expert by any means. I'm not a fan of any JS frameworks. I have about a month of development experience in total with Javascript's fancy frameworks, building the "Device tracking" application from the ground up. I have learned those frameworks as I had to teach them to one of my "brothers". I found some materials very useful in this journey. I wanted to share with the audience. I noticed that it's possible to build the chain of courses and tutorials which I have used so that one can learn step by step to become a decent developer independently.

In short, these days many developers are interested in web development, especially with Javascript programming language and its fancy web frameworks. Not so long ago, I was also so gung ho about learning and teaching Javascript application development with its frameworks to my "brother", and I gave it a shot even though I do not use them at all in my current software engineering role. I was able to master them within a month or so to develop a full-fledged "Device tracking" app with my "brother". I have found some materials pretty useful in this learning experience and decided to share them with you.

If you are a total stranger to the world of computers and electronics like my "brother" who only knows how to use a calculator, I would fully recommend mastering the basic skills to understand what computers are and how dumb machines can be, by watching CS50, 2020 provided by Harvard.

Once you master these very fundamentals of computers and became close friends with basic terminologies and theories, you may go ahead with a little more advanced topic.

Fundamentals of Programming with Javascript.

So, master the core of Javascript programming language before jumping to any fancy topics such as Node.js, Express.js and etc.

b2pa93h5vqg21.png

So, if you are a bookworm and like learning by reading books, I would recommend Eloquent Javascript by Marijn Haverbeke. The book has a really good introduction to modern programming in general and to Javascript specifically. If you are able to understand all the content of the book logically, I believe you have mastered the core of most Javascript. Try to solve the programming exercises and the project in the book by yourself.

If you like learning by watching videos which I personally prefer sometimes when I want to learn things by visualizing them, freeCodeCamp.org distributes very high-quality engineering content on YouTube for free. When I said high quality, I really meant it.

Once you master one of the courses above, I would also recommend going to Javascript complementary courses including asynchronous, non-blocking, and modular programming.

If you have mastered all the content up until now, you should have a solid knowledge of the fundamental core of Javascript, I believe you are ready to jump into your fancy frameworks now. As an optional, I have listed several other interesting courses related to Javascript.

Interesting topics to watch (Optionals)

At this point, now you have mastered the core fundamentals of most Javascript, it's a good time to put this knowledge into practice by learning and specializing in frontend development or backend development.

Frontend Development

Master HMTL and CSS as perfectly as possible. At the end of the day, the web frontend is all about building the web backbone with HTML and styling this backbone with CSS fundamentally, no matter how good a Javascript guru you are. All the fancy JS frameworks depend on HTML and CSS like a human depends on water and air to survive. Most importantly, to start a career or to do a great job as a frontend developer, you don't need to learn all fancy frameworks. Just master one of them the best and have a reasonably solid experience on it.

1_vNrvI4ERZRQYj0b4p5kpoQ.png

React

With all the knowledge up until now, you are good to build awesome frontend web pages. If you are still interested in learning more and building more, you can watch other cool application development video tutorials in freeCodeCamp. I particularly find the following ones very interesting in this list:

At this point, what you have learned in React JS will be more than enough to start your career, at least an entry-level job as a front-end developer.

1_iMQfVO78qtwhRbVq9FMYGw.jpeg

Angular

I think these three video tutorials would be enough to understand the fundamentals of Angular JS, but I did not spend a lot of time researching Angular JS as I found it unnecessary when I was teaching my "brother". He also confirms it's unnecessary to learn all frontend frameworks. He is just content with ReactJS.

There are hundreds, if not thousands, of Javascript frameworks. Every day, it looks like someone is publishing a new Javascript framework. However, ReactJS maintained by Facebook and Angular JS maintained by Google are the mainstream. I have personally developed a component-based front-end framework. Noone used it except for myself and my brother :). He was a great fan of my tiny but functional frameworks and libraries.

Backend Development

Regardless of the frameworks, programming languages, or technologies, backend development is totally a different development experience covering topics as basic as "networking" to scalable systems & solid API development. However, as we are having a discussion in the realm of Javascript, let's get back to its backend frameworks. Javascript has lots of backend frameworks. Among those, the most famous ones are Node JS and Express JS at the moment of writing this post.

I think that those three video tutorials will cover the basics of Javascript backend frameworks NodeJS and ExpressJS. In most cases, in my experience, I was content with those learnings to be able to develop my backend APIs using these frameworks.

Optional

In most of the case, backend development is not about just using fancy Javascript frameworks to build the APIs or web services. It's a lot more than that. In addition to knowing solid Javascript and its frameworks, you need to learn and solid experience on the following topics including but not limited to :

In addition to these all above, I would also recommend reading the books

My Advice

  • A lot of perfectionist beginner engineers & developers spend a lot of their time learning frameworks, their APIs, and new languages. Especially in the community of Javascript where frameworks change extremely frequently. Rather than learning how to use several frameworks, just learn how to build the framework yourself from the scratch. Rather than learning lots of programming languages, learn how to create one from nothing. To do that, you need to have solid computer science knowledge such as mathematics, data structures, algorithms, operating system fundamentals, networking, design patterns, software design, compilers, regex parsers and etc. All I'm trying to say is that you had better spend your time learning fundamentals rather than learning fancy frameworks. Everything you learn at a high level including your fancy frameworks, programming languages, and compilers is and will be built on top of these basic fundamentals. The lifespan of most fancy frameworks is short, but the lifespan of the fundamentals of computer science is almost endless.
  • To work as a Javascript developer, you do not need to learn all front-end or backend frameworks and technologies. Or even if you are specialized in only front-end or backend, you do not need to learn all the frameworks in that specialization. Just be an expert on one of the frameworks with strong fundamentals in that one specialization (backend or front-end) before starting your first job.

0_ZtK2M41W6a3Avzbk.png

Thanks,

 
Share this