I have a basic grasp of Javascript that has kept me employed and useful for the last 5 years. But the front end developer landscape is rapidly changing and I am constantly struggling to find time keep up.
What I want to eventually accomplish is get a grasp of a front end framework (such as Angular, React or Backbone), some experience building backend APIs (using Node, ExpressJS or Meteor), integrate some testing framework (Karma, Jasmine, Mocha) and then use all that knowledge to make something fun.
I started with jQuery and eventually started seeing the benefits of a framework like Angular. I jumped into using KnockoutJS first as it had the easiest learning curve and least opinionated framework that I could shoe-horn into my existing projects little by little. But the time has come to move over to Angular and some real Node work.
For hosting, I started out with a Hostgator reseller account. This allowed me to setup multiple clients and website projects easily. But its performance dropped significantly over time. I am happy on a smaller Canadian hosting company called “Crocweb” that has been working out great. They seem to be a lot faster, perhaps because they use SSD hard drives and a lighttpd instead of apache. For a while I have been eyeing the VPS hosting companies but could not jump into it because of the cost. I think now with the rise of cloud hosting, I think I will start experimenting with Digital Ocean. I have also dabbled with Heroku as well.
For my local build environment I have been using Mamp Pro for the longest time (on my Mac at home) and Wamp on my windows pc. But I have just started using Vagrant and really like it a lot. My only negative is firing up a VM on a laptop is a pretty resource intensive process. I have contemplated trying a Ubuntu dev environment and leveraging Docker but I really prefer a Mac environment overall.
For my IDE I am very happy with Webstorm. I also use SublimeText for everyday text editing although I am not very proficient with all the advanced shortcuts yet.
(Note to self.. add more info about Git, Gulp, Grunt, NPM)