In the last couple of years, JavaScript has really become hot for the next breed of web and mobile applications.
JavaScript runs on a majority of mobile and desktop browsers.
… it runs on the server.
… it is used for developing desktop widgets and browser extensions.
… it is being used inside desktop applications. eg scripting for Kod editor
… it naturally works well with the web – easily handling JSON, HTTP and REST.
… works well for new real-time communication techniques (eg websockets).
… as a language it works well for asynchronous-style services.
There’s also a lot of innovation happening in the JavaScript space because it attracts both front-end and back-end developers.
Over the past year I’ve been working in the mobile application space primarily with native iOS and mobile-optimized websites.
This year I plan to expand my mobile and JavaScript skills in the following areas:
Create applications (and web services) using server-side JavaScript with node.js and learn the ecosystem that has grown up around it.
Practice new ”mobile first” and ”responsive web design” web-development techniques where new websites are designed for mobile first, and then progressive enhanced so that the same site works well for larger screens and desktop browsers too. Mobile can no longer be thought of as a bolt-on feature, but needs to become central to web design and development efforts.
Attend JSConf 2011 and NodeConf 2011 which are both in early May in Portland, OR.
Play with more data stores. CouchDB (for example) is a native JSON store that speaks HTTP. Mixed with client-side or server-side JavaScript (that easily works with JSON and naturally speaks HTTP) makes an interesting combination. A recent talk on node.js + CouchDB
Continue to work with the various approaches to building mobile applications to find the right tools for the job, whether native, web-based, or a mix.
Continue to practice test-driven development in JavaScript.