Project : Create two tables , one is passenger_orgin and passenger_destination
a. Table of Passenger_destination

b. Table of Passenger_orgin
To Do:
1. From the “Learning Rails” podcasts, I just chose the topics which were aroused my interests only :-)
2. Ruby on Rails is installed in my notebook
3. Yes, Instant Rails is using, therefore, save the time on configuration.
Challenge Problem
1. I did not do much programming over my career path even, when I was in school. Therefore, the programming languages i know just only a few:
a. javascript
b. java
c. html
A web application framework is a software framework that is made to support the development of dynamic websites, web application and web services ( Wikipedia, 2009). Ruby on Rails provides beautiful code by convention over configuration and it has taken the programming world by storm by its MVC approach to application developement. Also, it provides a micro-framework weighing 4kb, therefore, it keeps things simple and minimal dependencies ( Mindtree, 2008)2. Interpreted language is a programming language in the forms of an interpreter. Any language may be compiled or interpreted, therefore, this designation is purely implemented and not underlying in the property of a language (Wikipedia, 2009)."Ruby is the interpreted scripting language for quick and easy object-oriented programming because it has many features to process text files and to do system management tasks (as in Perl). It is simple, straight-forward, extensible, and portable".(Nixbit, 2006)
3. Rails is the killer application that leverages various characteristics of Ruby language-meta-programming, closure, etc. (Shin, 2009)
4. Rails has sensible defaults for every aspect of a web application. Following the conventions, you can write a Rails application, using less code than most other web application frameworks. If you need to override the conventions, it's also easy with Rails. Taking advantage of the built-in defaults of the Rails framework has a wide range of advantages over making up your own. One of the biggest is that it makes it easier for other programmers to understand your code. (Wiki, 2009)
An example of convention over configuration:def generate_pi(decimals = 10)
# compute pi
end
compute_pi() => 3.14...
compute_pi(2) => 3.1
The convention is that you compute pi upto 10 decimals. This will be enough for most uses, but you can override it if you want.Such small-scale convention over configuration is also valuable in existing projects. (Jacobs, 2006)
5.MVC was invented at Xerox Parc in the 70's, apparently by TrygveReenskaug. The first public appearance was in Smalltalk-80. For a long time there was virtually no public information about MVC, even in Smalltalk-80 documentation. The first significant paper published on MVC was "A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk -80", by Glenn Krasner and Stephen Pope, published in the August/September 1988 issue of the JournalOfObjectOrientedProgramming (JOOP). MVC is the seminal insight of the whole field of graphical user interfaces. MVC work was the first to describe and implement software constructs in terms of their responsibilities.MVC was the first significant use of protocols to define components instead of using concrete implementations -- each controller class had a certain set of messages it had to respond to, as did each view class, but otherwise there were no constraints on what they did and how they did it. (Stafford, 2004)
6. MVC Approach (Stanchfield, 2009)
- Updating the GUI requires only changing GUI code. The stable business logic is not touched.
- Updating network architectures, perhaps changing from a two-tier to a three-tier database architecture requires modifying only part of the model. The stable GUI is not touched.
- Creating a limited feature demo might merely be a matter of subclassing the model to block access to some features. Again, no change to the GUI.
- Adding a new way to examine data is simply a matter of adding a new view. Often no change to the model is necessary, nor is it necessary to change other views!
References:
1. Wikipedia, 2009. ' Web Application Framework'
2. Mindtree, 2008,'Most Popular Web Application Framework'
3. Wikipedia, 2009, ' Interpreted Language'
4. Nixbit, 2006, ' Ruby 1.8.5-p2'
5. Shin, 2009, ' Empower You'
6. Wiki, 2009, ' Rails Wiki'
7. Stafford, 2004, ' Model View Controller History'
8. Stanchfield, 2009 'Why MVC is So Important'