My Journey With Javascript So Far

March 22, 2016    Learning Javascipt Programming

I started learning javascript as a part of my 2016 new year’s resolution and that was one of the best decision I made in 2016. Since then I cannot stop thinking about Javascript. I am doing JS in office and home. I am overwhelmed by how a language built in 2 weeks took such an important place in the programming world.

Before embarking on learning something new(framework or language), I always like to read history about it, and know what was the reason it came into existence, what problem did it solved and read about people who built them. While exploring history and background of javascript I came across this video of Douglas Crockford, in this video he talks about good and bad part of javascript. Something about his passion towards Javascript intrigued me and motivated me to learn about this language.

Since Javascript has a syntax similar to C++/Java, got comfortable with it easily. It is full of gotchas someone learning it will have a hard time with them, but eventually, you get used to them. I usually referred MDN reference and W3C School for basic syntax and concepts in JS.

Finally, after getting good enough understanding of the core language I thought of making a cool app. The process of making a complete project with the language you are new to is a completely different experience. You learn new things like paradigms, new libraries folks are using and various better ways to do a task.

Since Web Developers love JS they have built several frameworks using JS and tried to make Atwood’s Law true. At that time I was working as a Mobile Developer and was looking for a way to create Hybrid Apps.

React Native

Facebook’s React-Native which lets you create a Mobile application using Javascript completely blew my mind. This framework requires you to write JS and JSX code and then it draws native components on the screen using the bridge in between. You can create your own modules, use the one that comes with the framework or you can use the module created by the Awesome Opensource community. If you are interested in learning in React-Native or are already learning it do checkout this list of awesome libraries and resources for it. I also got my hands dirty with React-Native and built few apps using it -

  1. Weather Apps
  2. LocalStorage App
  3. Money Management App(which I am really proud of :))

Ionic and Angular

If you are learning or working with JS, chances are that you must have come across the term MEAN stack which expands to (MongoDb, ExpressJS, AngularJS, NodeJS) which is a full stack implemented in Javascript Express and Node for backend and Angular for front-end. I wanted to get into web-development and AngularJs felt the right choice to start with. Since it is backed by google, it is very easy to use. AngularJS has some learning curve but it is totally worth it, once you connect all the dots everything just fits in the place and things come naturally to you thereafter. Still, my heart was in Mobile Development(damn those tiny devices!) and my eyes laid on Ionic. Ionic is another good framework that lets you create Hybrid Applications using AngularJs.

My learning is incomplete unless I implement an Idea with that learning, Angular and Ionic were no exceptions. I created a Social Networking app backed by Google’s Awesome Firebase database. You can read about that app here.

What Next

My knowledge and experience in JS feels like tip of the Iceberg when I look in the community what great things people are doing with JS. I want to invest myself for at least another year. My plans for this year are following -

  1. Learn And Create Progressive Web Apps(involves Service Worker)
  2. Contribute to the Opensource community
  3. AngularJS 2

Parting Words

Javascript, I think still has a great future ahead, I still don’t think there is any versatile language as Javascript to replace it, so it is here to stay for at least 2–3 years.

Please feel free to ping me if you have any OpenSource project where I can be of any help.

Also, Checkout JS if you haven’t done yet.

comments powered by Disqus