Book Image

Ruby on Rails Web Mashup Projects

Book Image

Ruby on Rails Web Mashup Projects

Overview of this book

Table of Contents (14 chapters)
Ruby on Rails Web Mashup Projects
Credits
About the Author
Acknowledgements
About the Reviewer
Preface

How this book works


The approach I use in this book is pragmatic and direct and tends to be hands-on. If you're not a practicing programmer, you might want to dust off your programming books and read them again!

There are seven mashup projects in this book, with one chapter per project. Each chapter has the following sections:

  • What does it do?

  • Domain background

  • Requirements overview

  • Design

  • Mashup APIs on the menu

  • What we will be doing

  • Summary

Each chapter explains the technical (and some domain) aspects of what the project does in increasing levels of difficulty and complexity. The first few chapters will be on simpler mashups and we gradually move on to more complex ones. Also, as you progress with the chapters there are more assumptions made on your abilities to understand how mashups work. For example, the first few chapters describe how you can get accounts in the various mashup APIs but subsequent ones dispense with this altogether, assuming that you can navigate your way to registering for your own account.

The chapters tend to have less theory and more discussion on background technology while focusing more on a step-by-step guide in building the project in the chapter. The chapters also tend to be standalone though there are occasionally some references back to earlier chapters for some background technology; so feel free to explore them in any sequence you like.

The following explains each subsequent chapter's structure, section by section.

What does it do?

This section gives a brief summary of the mashup's functions and objectives. This is normally just a paragraph or two.

Domain background

What follows after the summary of objectives is a description of the domain background of the mashup's functions. For example, in Chapter 5 we will be discussing how we can create a job board mashup. The domain background section of the chapter gives a simple introduction to job boards, what they are and what they do.

Requirements overview

This section provides an overview of the requirements of the mashup we will be creating in the chapter. It lists the requirements and objectives to meet in building the project in the chapter.

Design

This section describes how we will be building the project, the rationale behind the design, and how we approach the creation of the mashup.

Mashup APIs on the menu

This is a major section in the chapter, and it describes the list of mashup APIs that we will be using to create the mashup. In the first few chapters we will also describe how we register for the mashup APIs at the external sources. Later chapters will dispense with this. All of the APIs are either freely available or have trial accounts where you have limited access to the APIs.

This section also describes the various libraries we will be using to build the mashups. This includes open-source libraries as well as libraries included in the standard Ruby distribution. Whenever necessary there will be some discussion on the theory behind the libraries and how they work.

What we will be doing

This section is the bulk of the chapter and goes through the step-by-step creation of the project. All necessary code is shown and major steps are described in detail. Each major step is explained in its own sub-section. In some cases additional information is given to explain why certain aspects of the code are written that way.

This section starts with the creation of a Ruby on Rails project and ends with a final completion of the whole project. Most projects are coded in a straightforward manner without much optimization. In some cases I will even go some way out to code the project in a way that a more advanced Rubyist might find not following the 'Ruby Way'. This is intentional as the purpose of the book is to focus on web mashups and not on Ruby or Ruby on Rails, and the code should normally be very readable by any programmer, even those less familiar with Ruby.