Skip to main content

My first experience with RoR

As I was thinking of implementing customized filterable datalists in Alfresco, my focus shifted to RoR. I had heard about RoR being simple scripting language that would help me in converting my thoughts to machine-actionable instructions! With the hope of creating the list in an hours time, I quickly committed myself to RoR inclusion.

RoR comes with its own set of problems. First the RoR examples that work with older version dont work anymore with 2.3.4. The latest version 3.0 was not available for download. Anyways, I downloaded, Aptana's RadRails 2.05 and started my experiments. RoR promotes convention over configuration. This looked very interesting and promising.

I had to struggle to get proper libmySQL.dll to get connected to my MySQL server. It seemed that Ruby 2.3.4 does not work with latest dll of MySQL (learnt from posts across the net). Finally, I was good to go. Indeed, I could get my first application (CRUD) in just 2 hours. Here are my initial opinions on RoR.

I consider RoR as another web framework, intends to ease the developer's effort. Its important to know Ruby programming constructs if you want to advance to next round of programming. Next, its important to unlearn old thinking and learn RoR related constructs, Form helpers, syntax, conventions. Thats too much for me who was looking to develop an app in a quick time. If I have to quickly get my application up, I better know RoR in detail. That simply states, I need more time to learn Ruby on Rails. Probably, developing an RoR application is easier, once I know RoR in depth! I have not lost hope.

I am now thinking of implementing the solution, with what I know already :) I will use YUI data table with JSON and use simple servlet in my Tomcat container. 'Known devil is better than unknown angel!!?'

Comments

Popular posts from this blog

Key to adopt open source product

Friends, I am working on business solution implementation on open source product called Kaltura. Kaltura is a media management solution and has loads of features that compel any business to take a peek into it. More-over this is the only complete end-to-end open source software available to handle digital assets. But it comes with its own head ache. Considering its open source, its understandable. I feel, handling these would ensure you the success in your open source product implementation. 1. In my opinion, before adopting any open source software, build the capability to deal with the inconsistency bundled in the open source software. 2. I would avoid involving external consultants for 2 reasons.      a. I am not sure, they would bring necessary expertise on to table      b. I fear that there would be little ownership, they will not see big picture of my business (neither I am interested to share it all) 3. Alternative to that is to build the tea...

Secure your application on cloud

Handling sensitive data Define sensitive data for your application. Classify as sensitive data and confidential data. Sensitive data is something like password, credit card account number, something that you should not compromise at all. Confidential data could be your customer’s health record, something that requires your permission before its usage. So, you need to define sensitive data in the context of your application. There are many ways to protect the sensitive data in transit; the easiest way is to use SSL. This is nothing different than handling sensitive data in any traditional application.   However, make sure you apply this rule while designing your application for cloud deployment. Alternatively, you can encrypt the sensitive data and transport. Be noted that any kind of protection you design, will have implications on performance. However this is ignorable considering the nature of sensitive data. If you just want to protect your data from being tampered du...

Object orientation and Service orientation

Object orientation is all about modeling the real world information mainly through encapsulation, abstraction, polymorphism, containment, inheritance and so on. In simple words, an object contains the data structures and methods to change the content state. A typical OO run-time manages the life cycle of objects. You can create as many objects as required as long as the run-time does not over run its memory. Service orientation requires you to encapsulate a process. The operations of a services are interaction points with the particular process. Data structures are the arguments for these operations. Service run-time shall validate the correctness of the process. Service can have multiple invocation instances, not multiple instances of service itself. Example: TrainTicketBookingService involves a process. - Check the train timings //  interaction point - Check the seat availability // interaction point - Issue ticket // interaction point There could be many ticket...