Learning JavaScript

html-css-js-logosMy name is Neil and I’ve recently decided to learn JavaScript.

While I have had some exposure to Web Design in the past, JavaScript was something I never really got into. I put all my effort into taking the C# route and eventually became employed as a full-time C# developer. Fast forward a couple of years and here I am, eager to learn as much about programming for the web as possible, both for professional and personal reasons.

It appears that quite a few technologies have passed me by in the time I was ‘immersed’ in Visual Studio. One of these being Node.js.

Node.js is a platform built on Chrome’s JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.

Before the introduction of Node.js, one had to choose between Ruby on Rails or PHP as well as the all important client-side HTML, CSS and JavaScript. Although I do have a soft-spot for Ruby, Ruby on Rails feels quite overwhelming, while JavaScript seems much more accessible. Thanks to Node.js eliminating the need for one of those ‘extra’ languages, I feel that now is as good a time as any to get my hands dirty.

A post over on the (interestingly titled) JavaScript is Sexy blog describes a roadmap to “Learn JavaScript properly” within six to eight weeks, using one of two recommended books (JavaScript: The Definitive Guide and Professional JavaScript for Web Developers) and a free Codeacademy account. I’ve armed myself with both of these books (and the aforementioned Codeacademy account) and I’m ready to jump in headfirst.

I feel a measure of comfort in knowing that I’m not alone. A self help group on Reddit has been opened up as a kind of ‘support mechanism’ to provide help and assurance throughout the course. The group also has an unofficial IRC channel on Freenode (#learnjavascript) for those of us who would like a more immediate response. I’m hoping to get through the course in less than the suggested time-span of 6-8 weeks, but I plan not to rush anything either.

Typing Out Loud! will serve as a weekly journal of my progress and I’ll also put up my code snippets on my GitHub account (GitHub is a subject for another time!)

Anyone who’s reading this is free to follow along (and tell me off if I start slacking!)

Can I learn JavaScript in less than 2 months? Let’s find out…