Back To Square One | JavaScript

Mirza Leka
4 min readMar 10, 2019

Do you know that feeling when you know something not quite well and you’re not very confident about it? Well, I had that same fear with JavaScript language and then set off on a journey that brought me to a whole new level.

Not so long ago I struggled with the basic concepts of JavaScript language and used Jquery as an alternative. I hated working with vanilla JavaScript, whether is event listeners, XML HTTP, not to mention Promises and I used for loop in places where map and filter are a better approach.

As someone who is curious by nature and always wants to improve, I wanted to switch to more popular technologies like React or Angular, but my lack of understanding of JavaScript was always going against me.

I soon realized it is more important for me to fill my gaps than to move forward. So I wrote a list of 30 lessons, things I already know, but have trouble with and the things I don’t know at all. I knew I had to go back to beginning and I wasn’t afraid.
One thing I did not know at the time is that there is long list of things I never heard of. I set myself a challenge to conquer those fields as well.

The journey began

JavaScript DOM, Object-Oriented programming, Higher order functions, Context, Hoisting, Closures, Prototypes, ES2015, Callbacks, Promises, Async Await… I started watching videos of famous JavaScript developers such as Wes Bos, The Net Ninja, The Coding Train, Traversy Media, FreeCodeCamp and reading articles on MDN and Medium.

I kept working to the point when I see someone teach JavaScript and use Jquery, I’d compete with him using vanilla JavaScript. At the same time I was testing my skills on SoloLearn, where you can challenge anyone who uses the app and then two of you compete through series of questions.
I even started teaching my friends JavaScript and they understood it.

I applied the same idea to other fields. Soon I started rehearsing Node.js, Express and MongoDB. As a big fan of npm, I learned how to setup Webpack so I can install and use npm modules on the client side. And of course, I started learning React.

With each step I took I wrote down what I learned and saved what was useful to my Github repository. As I continued with my journey I realized that lessons I went through can be more than a series of personal practice examples, but also a small library where everyone can learn something.

Today I chose to write this article not only to tell my story and encourage you to keep learning and improving, but also to share my work with the rest of the world.
Introducing JSLand, frontend to backend Javascript lessons explained in plain English.

https://github.com/MirzaLeka/JSLand

JSLand project currently covers core features of JavaScript, major features of ES2015, ES2016, all the way to ES2019, Asynchronous JavaScript, Collections, but also Node, Express, MongoDB, Mocha, Lodash, Webpack, RegExp and React.
There is also a section for various interesting modules like Moment, Bcrypt, Validator and many other, as well as few interesting challenges and JavaScript interview questions.

For every example I wrote you’ll find a video or an article where it came from.

I’m expanding JSLand project whenever possible, but I’m also inviting you to join this journey, to contribute, to share your knowledge and build something great that everyone can benefit from.
There are so many great JavaScript minds out there that helped me learn the things I struggled with and if you are in that group please don’t be shy to share your experience with others, not only through JSLand, but also Stack Overflow, Medium, Youtube and any other way.

Mastering JavaScript remains a daily challenge for me, but it’s also a challenge I take on with a smile on my face. JavaScript is a beautiful language and with so many libraries and frameworks to play with, I can’t wait to see what comes next.

--

--

Mirza Leka

Web Developer. DevOps Enthusiast. I share my experience with the rest of the world. Follow me on https://twitter.com/mirzaleka for news & updates #FreePalestine