Meera has posted 70 posts at DZone. You can read more from them at their website. View Full User Profile

RailsSpace: Building a Social Networking Website with Ruby on Rails

  • submit to reddit
Published by: Addison Wesley Professional
ISBN: 0321480791

Reviewer Ratings




Buy it now

One Minute Bottom Line


Chapter 1 Introduction
The authors "took" the floor to preach Ruby on Rails: Productivity wants to be free and Productivity ain't free. They used their powers of persuasion to introduce Ruby on Rails. Like preachers they gave their own accounts on what led to their 'conversion'.

Chapter 2 Getting started
This book, being an introductory book on Rails, starts off by guiding you on how to install Rails, Ruby and RubyGems. You'll also learn how to start a project and set-up the development server. Rails uses the Model-View-Controller (MVC) architecture and in this chapter you will be introduced to the 'VC' part of this architecture. This will lead you to building your first static website with Rails. You'll learn how to use Layouts as well as Embedded Ruby.

Chapter 3 Models
This chapter introduces the Model part of the MVC architecture. Here, you'll create a database and table, and be able to add validation. You'll be using Migrate, and also be able to play with the Ruby script/console.

Chapter 4 Registering users
This chapter further deepens your understanding of MVC architecture by using it to build a user registration. It starts off by building a View, which is followed by the Controller, and finally the Model.

Chapter 5 Getting started with testing
This chapter introduces functional and unit tests. It describes how to write and run functional and unit tests using practical code examples.

Chapter 6 Logging in and out
This chapter starts with a cursory overview of sessions, and how to use it to track user login status. The authors also explain how to use before-filter (protect) and request variables to secure protected pages. Finally, you'll learn how to do refactoring.

Chapter 7 Advanced login
This chapter intends to deepen your knowledge and skills in writing a standard login script. You'll be introduced to cookies and how to use it to remembering a user. This chapter also introduces integration testing.

Chapter 8 Updating user information
This chapter teaches you how to add functionality to your webpage in order to allow your members to edit their information themselves.

Chapter 9 Personal Profiles
From this chapter to end of the book you'll be building a social network website called RailsSpace. It is indeed an interesting exercise, and it would culminate in advancing your understanding of Rails. Building personal profiles entails a lot; however, you'll be using all of the skills you've acquired in the previous chapters to accomplish this task.

Chapter 10 Community
This chapter starts off with an overview on how to load data using Rake which is followed by community index. You'll also be introduced to Pagination.

Chapter 11 Searching and Browsing
You will not be building a Google-like search engine, just kill that thought. Here, we'll be using Ferret, a high-performance, full-feature text search engine to enable a user to search RailsSpace. This chapter is a continuation of the last one.

Chapter 12 Avatars
Avatar is an image or graphical representation of a particular person. This chapter describes the steps you should take to enable a user of your web application to upload and manipulate image (avatar). You will be using ImageMagick a powerful image manipulation package.

Chapter 13 Email
"In this chapter, we'll learn how to send email using Rails, including configuration, email templates, delivery methods, and tests". I've just quoted the authors, nothing else to add, however remember that you would be working with Action Mailer package.

Chapter 14 Friendships
RailsSpace being a social-networking web application should allow its members to 'network', that is, reaching out to others within the RailsSpace family. Here, the authors walk you through the code to add to you application (RailsSpace) in order for your users to be able to invite friends and form a community. This chapter further deepens your knowledge of Rails ActionMailer.

Chapter 15 RESTful blogs
Please don't REST yet! Rails supports the REST (Representational State Transfer) architecture, and here the authors describe the architecture, and use it to build a blog. This chapter also introduces Scaffolding.

Chapter 16 Blog comments with Ajax
The preceding chapter introduced you to RESTful, now you would be applying that knowledge to build a Blog comments area with Ajax. You will be using two powerful libraries Prototype and on your way to adding Blog comments with Ajax to RailsSpace.

Chapter 17 What next?
Now that you've completely developed a rugged social-networking site called RailsSpace, the next thing is for you to show your great work to the world: enter production mode. This chapter provides you with the critical information needed in order to deploy your web application.

Published at DZone with permission of its author, Meera Subbarao.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)