I set out to serve me. Rails is a very selfish project in that respect. It gained a lot of its focus and appeal because I didn’t try to please people who didn’t share my problems. Differentiating between production and development was a very real problem for me, so I solved it the best way I knew how.
It’s hard enough to solve your own problems with eloquence. Trying to solve other people’s problems is damn near impossible — at least to do so to the level of satisfaction that would make me interested in the solution.
That’s why we hold the notion that “frameworks are extractions” so very dear in the Rails community. Frameworks are not designed before the fact. They’re extracted when you’ve proved to yourself that an approach works. Whenever we get ahead of ourselves and try to leap over the extraction process, we come back sorely disappointed.
I believe that’s why Rails just feels right for so many people — because it’s been used by real people for real work before we dished it out for others to reuse.
I may be besotted with infatuation right now, but I believe there’s true wisdom — hard, distilled, endlessly applicable wisdom (well, what is wisdom if not particularly broad and useful patterns?) — up there.
And as a sidenote, I propose a new dictum based on the quote’s last paragraph: Use before you reuse.