Showing posts with label Rails Installation. Show all posts
Showing posts with label Rails Installation. Show all posts

Thursday, 29 August 2013

Getting Started with Ruby 2 and Rails 4


If you are new to Rails then you will might want to check out my other post basic installation packages as the following steps will assume a similar setup.

Installing Ruby 2
  • Ruby 2 is the latest stable version to start working with it.
  • rvm install ruby-2.0.0
  • rvm list
  • rvm use ruby-2.0.0-p247
Installing Rails 4

Before installing a new version of Rails, I like to switch to a new RVM gemset. If you're not using RVM, don't worry about this step. 
A Best Rails 4 Book to start with
$ rvm use @rails4 --create
Installing Rails 4 is as easy as it ever way, just use gem install.
            gem install rails -v=4.0.0.rc2
Rails 4 is now the latest stable release so it's much easier to get going with it. 
Once the gem installer has done it's thing you can now check the Rails version withrails -v and start a new project in the usual way.








How to create a Rails 3 project with Rails 4 installed
With Rails 4 now taking priority over Rails 3 in your gem list how do you make a new Rails 3.2 project without going through the hassle of uninstalling Rails 4.
Simple really, check the versions of Rails you have installed already with gem list rails.
*** LOCAL GEMS ***
rails (4.0.0, 3.2.13)
The output shows I have the Rails 4.0.0 and 3.2.13 installed and you can simply append that version number to your rails command like so.
rails _3.2.13_ new myproject
This will create a project in the usual way but this time using the 3.2.13 version of the gem.
Don't forget that you should use bundle exec within your project when callingrails generate and friends so that the correct gem version according to the projects Gemfile is used. For example: bundle exec rails generate model User.

Monday, 22 July 2013

Basic ROR Installation packages

echo "Using apt-get to install OS packages so let's update it first ..."
sudo apt-get update -y

echo "Using apt-get to install git ..."
sudo apt-get install git -y

echo "Installing OS packages. You will be prompted for your password ..."
sudo apt-get install build-essential bison openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev -y

echo "Installing OS packages. For Apache and passenger ..."
sudo apt-get install libcurl4-openssl-dev apache2-mpm-prefork apache2-prefork-dev libapr1-dev libaprutil1-dev

echo "Install Postgres, a great open source relational database ..."
sudo apt-get install libmysqlclient15-dev mysql-server -y

echo "Install Redis, a key-value database ..."
sudo apt-get install redis-server -y

echo "Installing ImageMagick, good for cropping and re-sizing images ..."
sudo apt-get install imagemagick --fix-missing -y

echo "Installing RVM ..."
curl -L get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm

echo "Installing ruby 1.9.3 p194"
rvm install ruby-1.9.3-p194

echo "Updating Rubygems ..."
gem update --system

echo "Installing Bundler Gem ..."
gem install bundler --no-rdoc --no-ri

echo "Installing Passenger Gem ..."
gem install passenger --no-rdoc --no-ri

echo "Installing Passenger apache2-module ..."
passenger-install-apache2-module -y

echo "Installing JAVA..."
sudo add-apt-repository ppa:webupd8team/java -y
sudo apt-get update && sudo apt-get install oracle-jdk7-installer -y

How to Install and use GIT (Some Very important and useful commands)

How to Install Git

Type the following commands in the terminal

  1.     sudo apt-get install git

How To Use Git

Type the following commands in the terminal

  • Adding a repository and initial committing
  1. git remote -v
  2. rm -rf .git
  3. git init
  4. git remote add origin ssh:<origin-path>
  5. git status
  6. git add .
  7. git status
  8. git commit -m “<message>”
  9. git push origin master

  • Pushing in the git after initial commit (Here I have mentioned the basic and most important commands needful while push in the repository)
  1. git status
  2. git add .
  3. git status
  4. git commit -m “<message>”
  5. git fetch
  6. git branch
  7. git rebase origin/master
  8. git push origin master

Few Commands to Install Ruby and Rails on your Ubuntu Machine and get ready to work within 15 minutes

How To Install Ruby

Write the following commands in the terminal one by one and follow the procedure.

  1. sudo apt-get install curl
  2. source /etc/profile
  3. source ~/.rvm/scripts/rvm
  4. type rvm | head -n 1
  5. curl -L get.rvm.io | bash -s stable
  6. source ~/.rvm/scripts/rvm
  7. rvm install 1.9.3
  8. rvm use 1.9.3

After completing step 9 restart the terminal



How To Run Ruby :

Type “irb” in the terminal



How To Install Rails :

Type the following commands in the terminal

  1. sudo -s chmod -R 777 /usr/lib/ruby/gems/1.9.1
  2. sudo -s chmod -R 777 /usr/bin
  3. gem install rails

    And Yes you are ready to field now.

    Don't forget to comment if you found this blog helpful. I will keep updating the basic short-cuts on technology we use in our day to day life.. Keep in touch and stay happy.

The Easiest Process to Install Rails in Windows

The Most and Easiest process to install total package of Ruby on Rails is to install railsinstaller. 
http://railsinstaller.org/

You can download the installation file of your convenient version from the given link and install it just by following some next next Procedure. And yes you are ready to jump to your work.
The Package Includes are


  • Ruby 1.9.3/1.8.7
  • Rails 3.2
  • Bundler
  • Git
  • Sqlite
  • Tiny TDS
  • SQl Server Support
  • Devkit

You can also use the same link to start working with your Mac OSX.
So start working now itself. http://railsinstaller.org/ .
and after that

After installing the kit, check out the Rails Guides for information about developing Ruby on Rails applications.
Another great resource is the Ruby on Rails Tutorial by Michael Hartl. While the tutorial is Mac-focused, it does provide great value and insight for Windows users as well. Additionally, there is about 15 hours of accompanying video to in case you're more visually-oriented.
If you need assistance with RailsInstaller, please see our Google Group where you can view posts from other users as well as ask questions. Any bugs with the installer should be reported on Github in the respective repositories ( railsinstaller-windows or railsinstaller-nix ). There is also a #railsinstaller room on Freenode where you can get help in real-time chat.

What is Scrum? (A Small Introduction)

SCRUM is a ordered formation of players in which the forwards of each team push against up against each other with arms interlocked and heads.
           SCRUM is a loose set of guidelines that govern the development process of a product, from its design stages to its completion. It aims to cure some common failures of the typical development process, such as:
  • Chaos due to changing requirements - the real or perceived requirements of a project usually change drastically from the time the product is designed to when it is released. Under most product development methods, all design is done at the beginning of the project, and then no changes are allowed for or made when the requirements change.
  • Unrealistic estimates of time, cost, and quality of the product - the project management and the developers tend to underestimate how much time and resources a project will take, and how much functionality can be produced within those constraints. In actuality, this usually cannot be accurately predicted at the beginning of the development cycle.
  • Developers are forced to lie about how the project is progressing - When management underestimates the time and cost needed to reach a certain level of quality, the developers must either lie about how much progress has been made on the product, or face the indignation of the management.
SCRUM has been successfully employed by hundreds of different companies in many different fields, with outstanding results.
You will find many similarities between SCRUM and Extreme Programming, but one of the major differences is that SCRUM is a fairly general set of guidelines that govern the development process of a product. For this reason, it is often used as a "wrapper" for other methodologies, such as XP or CMM (Capability Maturity Model) - that is, it is used to guide the overall process of development when using these other methodologies.

SCRUM VALUES

Scrum values generally are derived from the Agile values of Software Development.
  1. Individuals and interactions over processes and tools - processes and tools are helpful, but they will do you no good if the team does not communicate and collaborate in a constructive fashion.
  2. Working software over comprehensive documentation - documentation is important, but what's most important is to have working software.
  3. Customer collaboration over contract negotiation - you are not just looking to get a contract and get money that way - you are solving the customer's problem.
  4. Responding to change over following a plan - if the requirements or perceived requirements changed, so should the plans and design.
HOW DOES SCRUM WORK?

Building complex products for customers is an inherently difficult task. Scrum provides structure to allow teams to deal with that difficulty. However, the fundamental process is incredibly simple, and at its core is governed by 3 primary roles. 
  1. Product Owners determine what needs to be built in the next 30 days or less.
  2. Development Teams build what is needed in 30 days (or less), and then demonstrate what they have built. Based on this demonstration, the Product Owner determines what to build next.
  3. Scrum Masters ensure this process happens as smoothly as possible, and continually help improve the process, the team and the product being created.
While this is an incredibly simplified view of how Scrum works, it captures the essence of this highly productive approach for team collaboration and product development.
THE SCRUM GROUP
The SCRUM team mostly consists of 2 groups - the interested team, which consists of people who are interested, but who will not be doing the work, and the working team - people who are interested, and will be doing the work on the project.
A team typically has 6-9 working members, although SCRUM has been successfully used with more members. If there are more members than manageable, the project should be broken into multiple sub-projects, each focusing on one, self-contained area of work (one for QA, one for documentation, etc.). There should be people to act as bridges - that is, to attend the meetings of more than one SCRUM team, and act as a communication bridge between the teams. Members of teams that are closely related/involved with each other should sit in on the other teams' SCRUM meetings.

The Scrum Master

The team's leader is called the Scrum Master. He should be one of the members of the working team - that is, he should be one of the people who is actually doing the work on the project. The SCRUM Master measures progress, removes impediments, and leads the team meetings.

THE SCRUM TERMS

Daily Scrum
The Daily Scrum is a 15-minute time-boxed event for the Development Team to synchronize activities and create a plan for the next 24 hours. This is done by inspecting the work since the last Daily Scrum and forecasting the work that could be done before the next one.

Defintion of Done
Shared understanding of what it means for work to be complete, to ensure transparency. 
Development Team
The Development Team are the professionals who do the work of delivering a potentially releasable Increment of “Done” product at the end of each Sprint. Development Teams are structured and empowered by the organization to organize and manage their own work.
Increment
The Increment is the sum of all the Product Backlog items completed during a Sprint and all previous Sprints.
Product BacklogThe Product Backlog is an ordered list of everything that might be needed in the product and is the single source of requirements for any changes to be made to the product. The Product Owner is responsible for the Product Backlog, including its content, availability, and ordering.
Product Owner
The Product Owner is the person responsible for maximizing the value of the product, the work of the Development Team, and management of the Product Backlog.

Scrum
Scrum is a framework structured to support complex product development. Scrum consists of Scrum Teams and their associated roles, events, artifacts, and rules. Each component within the framework serves a specific purpose and is essential to Scrum’s success and usage.

Scrum Master
The Scrum Master is a servant-leader for the Scrum Team responsible for ensuring Scrum is understood and enacted. Scrum Masters do this by ensuring that the Scrum Team adheres to Scrum theory, practices, and rules.

Sprint
The heart of Scrum is a Sprint, a time-box of one month or less during which a “Done”, useable, and potentially releasable product Increment is created. Sprints have consistent durations throughout a development effort. A new Sprint starts immediately after the conclusion of the previous Sprint.

Sprint Backlog
The Sprint Backlog is the set of Product Backlog items selected for the Sprint plus a plan for delivering the product Increment and realizing the Sprint Goal. The Sprint Backlog is a forecast by the Development Team about what functionality will be in the next Increment and the work needed to deliver that functionality.
Sprint Goal
The Sprint Goal gives the Development Team some flexibility regarding the functionality implemented within the Sprint.

Sprint Planning Meeting
The work to be performed in the Sprint is planned at the Sprint Planning Meeting. This plan is created by the collaborative work of the entire Scrum Team.

Sprint Retrospective
The Sprint Retrospective is an opportunity for the Scrum Team to inspect itself and create a plan for improvements to be enacted during the next Sprint. The Sprint Retrospective occurs after the Sprint Review and prior to the next Sprint Planning Meeting. This is a three-hour time-boxed meeting for one-month Sprints. Proportionately less time is allocated for shorter Sprints.

Sprint Review
A Sprint Review is held at the end of the Sprint to inspect the Increment and adapt the Product Backlog if needed. During the Sprint Review, the Scrum Team and stakeholders collaborate about what was done in the Sprint. Based on that and any changes to the Product Backlog during the Sprint, attendees collaborate on the next things that could be done. This is an informal meeting, and the presentation of the Increment is intended to elicit feedback and foster collaboration.

The Scrum Guide
Scrum is a framework for developing and sustaining complex products. The Scrum Guide contains the definition of Scrum. This definition consists of Scrum’s roles, events, artifacts, and the rules that bind them together. Ken Schwaber and Jeff Sutherland developed Scrum; the Scrum Guide is written and provided by them. Together, they stand behind the Scrum Guide.
The Scrum Team
The Scrum Team consists of a Product Owner, the Development Team, and a Scrum Master. Scrum Teams are self-organizing and cross-functional. Self-organizing teams choose how best to accomplish their work, rather than being directed by others outside the team.

RESOURCES:

Sites

1.ControlChaos

SCRUM tutorial, XP with SCRUM, case studies, SCRUM certification
http://www.controlchaos.com/ 

2.SCRUM Alliance

Part of the Agile Alliance site family, and has a large article base on SCRUM.
http://www.scrumalliance.org/ 

3.Mountain Goat Software's SCRUM section

A good introduction to SCRUM.
http://www.mountaingoatsoftware.com/scrum/ 

Articles

1.The SCRUM Development Process

A detailed and definitive paper on SCRUM.
http://www.jeffsutherland.com/oopsla/schwapub.pdf 

2.Introducing an Agile Process

Covers the issues involved with introducing an agile methodology to a development team or company.
http://www.mountaingoatsoftware.com/articles/IntroducingAnAgileProcess.pdf 

3.Comparing RUP, XP, and SCRUM: Mixing a Process Cocktail for Your Team

Compares different agile methodologies, and helps you determine what methodology or mix of methodologies is right for your team.
http://www.netobjectives.com/events/download/rup_xp_scrum_pc_030326_ppt.pdf 

Books

1.Agile Software Development With SCRUM

A close look at SCRUM, with numerous case studies. A must-read for managers and developers alike.

2.Agile Software Development Ecosystems

A look at various Agile software development systems, including SCRUM. Numerous case studies, and interviews with some of the leaders in the Agile development arena.

SCRUM In Practice

1.The Upside of Downsizing

A case study on a situation where SCRUM helped to make a development project a success even though the development company was downsizing.
http://www.mountaingoatsoftware.com/articles/UpsideOfDownsizing.pdf 

2.Does Agility Work?

3.Agile Meetings

This is an article on agile meetings, with a large section on how agile meetings helped real-life teams to prevent problems by communicating with each other.
http://www.intp.us/risingl1/articles/STQE.pdf 

Tools

1.XProgramming Unit Testing Downloads Section

Links to downloads of unit testing software for most common languages.
http://www.xprogramming.com/software.htm 

Hi Friends, I Collected this little information from different resources and placed here the important ones. Its helpful for me, hope you will also find this helpful. I will definitely write more about Scrum after digging dipper. And Yes, Don't forget to give comments.