ruby-on-railsmodel-view-controlleroauth-2.0igoogle

Web based desktop with ruby on rails


I'm new to RoR and I'm trying to create a web application that acts like a web desktop. The 'desktop' will be something similar like iGoogle, where you can drag and drop the blocks.

In this project, I will definitely have to connect with other service providers such as Facebook, Twitter with OAuth. The goal is to let users access their 'desktop' from multiple devices (mobiles, tablets, laptops) using web browsers, and users can use their desire services(Facebook, Twitter) on the 'desktop' after the authentication process.

So my question is: Is MVC applicable in this project? Because generally the database only for storing user's information and the iGoogle-like blocks. If yes, would RoR be a good solution for this? Thanks for your advises.


Solution

  • MVC give you the advantage of dealing with the database and complex data and table relationships in an (relatively) easy way. This comes with the cost of having a big framework that has not the lightest memory footprint.

    If all you want to do is store a handful of key/value information in the database and have some basic user information stored, there are no complex relationships required. I'd recommend trying your idea with a micro framework like Sinatra (which is Rack-based like Rails) and see if it is enough for your needs. However, if you already have extension plans for more complexity, RoR is maybe a better choice.

    I'd say MVC applicable because you want to store and access data in a controlled and maintainable way. RoR might be too much overhead for your purposes. If –say– memory footprint isn't that important to you for a small app like this, Rails will do the job but you will definitely just need to use a tiny subset of it.