I have a web application that I’d quite like to turn from imaginary into reality. I’ve done a fair amount of design work and have just started to think about the nuts and bolts like where the application will be hosted and what tools I’ll use to create it. Historically I am a fan of the Microsoft ecosystem because I am comfortable with C# and the Visual Studio based development tools. Unfortunately because budget for this project is almost non-existent. I really can’t afford ASP.NET hosting and have thus chosen to host the application in a Linux environment.
As a consequence of this decision I’ve had to consider non-Microsoft technologies I could use to build my application. After some discussion I decided to use the Ruby language and the Ruby on Rails framework. I came to this decision because Rails and PHP hosting seem to be the most abundantly available technologies that suited my budget. Rails was the logical choice due to highly unpleasant experiences with PHP a number of years ago.
And so I have begun learning the Ruby language with a view to building my web application using Ruby on Rails. While searching for learning resources I found an excellent interactive tutorial at TryRuby.org.
What impresses me about this tutorial is that it covers both the language syntax as well as explaining some of the typical mannerisms of Ruby code at a reasonable pace, in an approachable manner which makes few assumptions about the person following the tutorial or how much previous experience that person might have.
Most of the languages I have embraced have been statically typed and featured curly braces heavily. Ruby is a lot more fluid and open than these languages, which usually makes me uncomfortable, but Ruby syntax is just free enough to allow the language to flow, without making me fear that the weaker typing has done despicable things to my data.
All told, I am quite excited about learning the Ruby language 🙂
Bonus Chatter: I’d be remiss not to mention that the do…end syntax did remind me a little of JADE programming language.