What I’m currently excited about: Ruby and Ruby on Rails

I’ve been reading overview articles about Ruby and in particular Ruby on Rails, the web development framework on steroids, so I’ve decided it’s time I need to start taking a look at what is going on. If anything, I am thinking I should be looking at the approach taken by Ruby on Rails so I can simplify development in my own Java development using J2EE technologies where possible, and depending on how things look, start to think about whether I should be considering developing new applications using Ruby on Rails.

The first thing that got my attention was this video on the Ruby on Rails site. This video walks through demonstrating creating a Weblog type application using Ruby and Ruby on Rails, from scratch, in about 15mins. This is truely incredible.

What seems to make a lot of sense is the extensive use of generated template code for typical functionality in a web app – entry forms coupled to database tables, scaffolding code to create and edit data, and pagination code for retrieving and displaying lists.

So I’ve just got a copy of ‘Agile Web Development with Rails’, and I’ve starting to learn Ruby at the same time. I’ve started to put together some language notes for quick reference as well, which you can find here.

Is Google working on Office applications?

A story on The Register’s site suggests that Google are thinking far beyond search engine technology, and may be looking to build web-enabled Office-type software (eg, word processing, spreadsheet functionality etc).

Chris DiBona, Google’s mananger for open source programs, stated that they are looking to hire people to help improving the open source Office alternative, OpenOffice. It is possible that Google employees have already been contributing effort to OpenOffice.

This is an interesting move, because this week, Gates annouced his vision for the direction of Microsoft Office entering the ‘live-era’, refering to the inclusion of live internet data feeds into Microsoft Office products. ‘Windows Live’ and ‘Office Live’ will also reintroduce the concept of web-enabled and web-delivered software by subscription, using the ‘download what you need’ type deployment model.

Will Google and Microsoft go head-to-head in this market space with competing products?

Building a generic toString() method

Zarar Siddiqi’s blog post on java.net talks about building a generic toString() method to dump out the contents of all the attributes of an instance, which of course is invaluable for debugging.

The thing is, one of the number one rules of architecture is to appreciate and understand what is already out there, what has been done before, and what you can reuse.

The Commons Lang library of useful code includes a ReflectionToStringBuilder class which does exactly the same thing.

OnJava.com: Technologies that may challenge Java’s dominance

OnJava.com have an article by Bruce Tate looking into the future at technologies that may either replace or pave the way for upcoming new technologies that may replace the current ‘new Cobol’, which is Java.

Number one on the list and used throughout the article for examples, is, no surprise, Ruby, and the Ruby on Rails framework.

If this framework does not make it big in the next year or so then it will be interesting to look back to see what else changed as a direct result of the impact that RoR is making, because this technology is sure beginning to pick up some momentum.