Friday, July 6, 2012

Ruby On Rails ROR Development

Ruby On Rails (ROR) Development - Advantages
Ruby On Rails is a full-stack (all parts needed for a Web application are present), open-source web framework. It lets you write beautiful code by favouring convention over configuration. It was created in 2003 by David Heinemeier Hansson and since extended by Rails Core Team. It runs on all major operating systems like LINUX, OS X and Windows. It supports most common open source Databases like MySQL and Postgre SQL, SQL Server, Oracle and others. It uses any Web Server that supports CGI, the most popular being Apache and Lighttpd.
The entire framework is written in Ruby, a language whose popularity has shot up ever since Rails hit the scene.

Why ROR?

Thanks to ROR, programming now appears like a simple task. Powerful web applications that have formerly taken weeks or months to develop can be produced in a matter of days.

There is no doubt that web frameworks have exploded in popularity over the past few years, and while it is likely that a large part of that growth can be attributed to ROR, the outpouring of Mobile View Controller (MVC) frameworks in other languages is no less impressive.

Before we decide on a framework for our project we should list out its purpose and also know about the development team behind the scenes. 3 considerations for the projects would be-

1. Primary focus of the application- Is it an eCommerce business, a social community, a messaging platform or a directory? If we’re building an eCommerce site, for instance, we may want to choose a framework with some baked-in libraries with proven extensions for dealing with credit card processing. On the other hand, a light-weight messaging platform may need to scale very rapidly or use multiple servers and databases for load balancing and faster connectivity.

2. Hosting Environment- Some frameworks require additional PHP modules or software installation on the server, which may not be an option in the shared environments.

Furthermore, a lightweight framework on which everything is self-contained and highly portable may not provide the best functionality for serious data manipulation or large information processing. For instance, some frameworks work best with MySQL while others include libraries for working with key-value and document store databases.

3. Strengths and weaknesses of developers- It is important to get a sense of the skills and shortcomings of the developer who will actually build and maintain the application.

Some frameworks are more user-friendly and better for beginners. Just as it is difficult to start speaking a new language, resistance to switch to a new framework is an acknowledged fact. But strengths and weaknesses of each framework has to be laid bare to enable the developer decide what is best suited to him.

Advantages of ROR over PHP
·                         ROR is framework and PHP is language. Recently many new standards in ROR are introduced which PHP frameworks are copying such as CakePHP.
·                         ROR includes a web server for development whereas a web server has to be installed for PHP
·                         ROR implements MVC architecture whereas MVC framework has to be installed  on PHP
·                         ROR framework provides the Create-Read-Update-Delete (CRUD) functionality by using Ruby, whereas PHP is language which doesn’t support this.
·                         ROR is bit slower than PHP frameworks.


ROR uses a concept called Convention over Configuration which makes us follow conventions while coding, leaving us with little configuration to do. For instance, while creating a model class called “Post” the corresponding databases will be called “Posts” and the controller class will be called “PostsController. Further Rails has a nice feature called Scaffolding. Scaffolding allows us to create useful prototypes for clients in superfast times. But we should be aware that it is deemed bad practice to use scaffolding code for actually building the final draft of a web application.

When working in a group, it can become hard to keep track of changes to database. While someone makes a change to the database we could continue to write a code that expects the field to exist whereas it doesn’t. ROR solves this problem with Migrations that automatically migrates databases as and when modifications are made.

The growing demand for Ruby On Rails has been driven by successful companies who have benefited from the speed and agility of building applications in Rails resulting in increased productivity and company growth. Around 200,000 websites are using ROR a measure of the success and utility of this framework.

Anil Bhat
Cell :  +91 – 9911 720 780

PHP Application Development

PHP Application Development using Frameworks
PHP (Hypertext Preprocessor) is the world’s most popular scripting language because it is both flexible and easy-to-use. The coding in PHP, or for that matter, in any other language, is rather monotonous and repetitive. PHP Frameworks help promote rapid application development which saves time, builds more stable applications and reduces the repetitive coding of developers.

PHP Frameworks provide a basic structure to build web applications and streamline their development. They also help beginners build more stable applications by ensuring proper database interaction and coding on the presentation layer. This allows more time towards
creation of actual web application, and avoids repetitive coding.

PHP Frameworks work on architectural pattern in programming called Model View Controller (MVC). MVC isolates business logic from UI allowing one to be separately modified from the other (also known as separation of concerns). While Model refers to Data, View represents the presentation layer and Controller to the application of business logic. Essentially coding is effected faster and rendered less complicated.

Why use PHP Frameworks?
Developers use them for various purposes. A framework offers pre-built modules to perform coding tasks.

PHP Frameworks speed up the process of development. Stability is another plank where it scores. Simplicity is one of its greatest assets but can also be a pitfall. Beginners tend to use bad code unintentionally because of its ease. This is a security risk because it opens up avenues for attack. Finally it is quite extensive and there are a large number of frameworks to choose from. While many prefer to use popular frameworks it is necessary to match our requirement with parameters available therein to evolve the right application.

Comparison of Top 10 MVC Frameworks and what are the advantages and disadvantages
Top 10 ranking PHP frameworks are listed below and their advantages and disadvantages are shown against each-

1. Yii provides nearly every feature needed by today’s Web 2.0 application development. It is a high -performance framework for developing large-scale web applications.

2. CodeIgniter is well-known for its ease-of-use, performance and speed. It is ideal for shared hosting accounts. It offers simple solutions, has an extensive library of video tutorials, forums, a user guide and wiki available for support.

3. CakePHP is based on principles that Ruby on Rails is designed around. Simplicity and Scalability are its hallmark traits. It is good for rapid application development. More user-friendly and easy-to-use but has less of a support system because it is relatively new.

4. Zend is focussed on web 2.0 style applications and is powerful, fast and scalable.

5. Symfony is aimed at advanced developers who’s main objective is to create enterprise-level applications- most notably Askeet and Yahoo!  Bookmarks. It is a can-do-it-all framework full of features. But it is a bit slower than others.

6. PHPDevShell is for small teams, small users, is fast and secure but not advised for web-site creation or conent management system.

7. Prado is easy-to-use, reusable, enables separation of contents and presentation.

8. Akelos based applications can run on most shared hosting service providers. It is ideal for distributing standalone web applications.

9. QPHP stands for Quick PHP. Easy database access, fast and stable, simple input validation are the advantages.

10. ZooP is stable, scalable and portable. It is designed to be fast, efficient, modular and extensive. It encourages separation of display, logic and data layers. Bugs can easily be quashed.

PHP Frameworks are a great way for developers of all skill levels to reduce the need for repetitive coding, speed up development process, and to ensure proper coding when creating web applications. This not only speeds up the development of rich applications, but also tightens.

PHP security by plugging breaches in them. There are many PHP frameworks available today, and developers are sure to find a framework that fits their needs in terms of features, support, speed and scalability.

Anil Bhat
Cell :  +91 – 9911 720 780


Web Development Process

Web Development Process
Internet has gained tremendous importance in every field. Every company owns its own website through which they describe their company’s profile, their product range and also allows the viewer to buy the products online. These websites are also called as networking sites. There is also a concept called a database websites which is in great demand these days due to its importance especially for companies. 
Making a website is very easy these days and due to the presence of Drupal it has become even easier. There are certain processes which have to be followed for making a good website.   
Analyzing the business : 
The basic thing that anyone needs to do before developing networking sites is analyzing the business for which the website is to be prepared. Only important data is to be posted on the websites so it is important to analyze before coming to a conclusion. 
Building requirements based on analysis :
Once the analysis of information is over then comes the need to judge the requirements of the websites. Requirements here refer to the type of design to be made, pages to be used, design and so on. It is advised for large companies to opt for database websites in order to make maximum usage of the website for promoting their business.  
Designing and development :
In this process the actual website is designed and all the necessary data is posted on to it. One can also use Wordpress in order to make a attractive website in no time. PHP language is used in developing the website. 
Content writing :
This also is one of the important aspects which can never be neglected while making a website. It is the content in the website that attracts the viewer so one should always see to it that the content that is to be posted in such site is unique and one which can easily attract the reader. PHP language is used here also in order to post the content on such website. 
Coding and testing :
This department is in the hand of programmers and getting positive results here is very important to make a successful website. It is very important to test the website before it is started using as there are a number of components that can become faulty. Thus it’s better to check them before using it.  
Maintenance and updating : 
After completing the website it is also very important to do a regular maintenance of such website and also updating it with the latest news. Drupal is one such software which can help you in the same and one can easily maintain and update the website from time to time. One can also take help of CMS for the said purpose. Content Management system is a common way of updating the website. Joomla is one such CMS software which is used frequently.  
One can also opt for Internet portal especially large sized firms should definitely go for it. Internet portal can help such firms and companies in increasing their customer base within no time. Now one has all the necessary steps to develop, a website can start right ways with developing the one themselves.

Anil Bhat
Cell : +91 – 9911 720 780
Email :  sanganaktechnologies@gmail.com      
Url :   http://www.sanganaktechnologies.com