Bruce Tate 写道
As I readied for change, I needed only the right customer. When a company
south of Austin invited me to build a Ruby on Rails application
with them, I couldn’t refuse. The application was a perfect fit for Ruby
on Rails, a new database-backed web-enabled application with an existing
implementation on Microsoft’s .NET Framework. They had pressing
cost concerns and scheduling constraints that I did not believe we could
meet with existing Java or .NET technologies. I had a project, a motivated
client, and all the right conditions for success. I told the customer
that Ruby was a match, and we continued.
When I said that I’d be doing demos every week starting the first week
after development, the company was plainly skeptical. They doubted
that we’d be able to do enough work to justify a room full of clients for
a demo, but as we presented the first week’s demo, the skepticism was
replaced with excitement. The Rails language let us quickly generate
some basic business objects, carve out our security model, and get
the first dozen or so screens up to show our users. With some of the
application in hand, we had a common basis for real communication.
Everyone in the room was aware that this project would be different.
After only two days of training, my development team, consisting of
two Ruby novices, started writing code the first day, and they continued
to improve through the first month. By the second month, they
were fully productive members of a well-oiled machine. The first four
demos included work that the customer estimated would take them
four months on the Java platform. For the customer, genuine excitement
replaced skepticism, and my biggest challenge was controlling
the scope creep born of months of accumulated requirements that they
had been unable to work into their existing system.