In This Chapter
Understanding the need for agile software development
Discovering Ruby's role in agile development
Finding out how Rails fits in
Once upon a time, there were three little programmers. The programmers wrote code for the World Wide Web — code to give users access to a company's database.
The first programmer was in a hurry to write her code. She wrote simple code as quickly as she could. The second programmer wasn't quite in such a hurry. She used the traditional Waterfall methodology — a multistep process involving analysis, design, coding, testing, and deployment. The third programmer was careful and industrious. She used a heavyweight persistence framework such as Enterprise JavaBeans. She built her software to cover every possible contingency and to accommodate any future need.
As you might expect, this story has a big bad wolf. The wolf might have been a manager, a client paying for the software's creation, or a customer attempting to access the company's Web site. The wolf went in reverse order, visiting the careful and industrious programmer's Web site first.
Unfortunately, the wolf couldn't log onto the industrious programmer's site. Instead, he got the message: “This site is under construction.” The careful, industrious programmer had completed only half of her work. The heavyweight persistence framework was difficult to learn and burdensome to use. Needless, to say, the wolf huffed and he puffed, and he blew the Web ...