Back from the Christmas/New Year festivities, I have been playing around (at a very basic level) with a few programming languages, with the goal of learning something new. All of the languages I have been playing with I have looked at in the past very briefly, but never ventured any deeper. This time I intend to pick one and hopefully learn it to a level where is might be useful.
Of the languages I am looking at, none are particularly unusual or oscure, they are all fairly common scripting languages used for web development.
My list so far consists of (in no particular order):
I have chosen these languages because as I said, they are common scripting languages, often used in web development. And I am looking to expand my repetoire. Learning a new language not only teaches the symantics of the language, but programming methods, structures and paradigms that can be implemented in any language.
With that in mind, I have decided to look at Ruby (at least for now).
Deciding to do web development with Ruby invariably leads to Ruby on Rails. Not wanting to get (too) caught up in the hype, I decided to have a look at the raw language first. So, I had a read through the quite unusual (have a look and see) Why’s (Poignant) Guide to Ruby. After sifting through this odd compilation to find the actual useful content (The humour — cartoons, stories and the like — throughout the book make it an interesting read, but maybe not the best reference manual) I had an overview of Ruby and liked what I saw.
After some initial playing around, reading up on the “raw” way of developing web sites in Ruby (raw text and with cgi extensions) I did end up installing rails.
I have experimented briefly with rails in the past, previously though, I had not bothered to learn anything at all about Ruby as a language. So, while the basic functionality of rails, the model/view/controller scaffolding was really impressive (it still is), if I wanted to do anything more adventurous, or if something broke, I was lost.
I am hoping that with a slightly better understanding of Ruby (and a willingness to learn the language this time) I will have more success with rails. If it doesn’t work for me… I’ll try somethign else.