Rigidly defined areas of doubt and uncertainty.

Tuesday, July 24, 2007

If you're not using a framework, you're doing it wrong

I'm really enjoying learning Rails at the moment. One of the things that strikes me about it is how easily it meshes with my own ideas. This is what I would have written if I had the skill and the time. Suddenly a huge chunk of infrastructure code doesn't have to be written.

What Rails gives you is flexibility. Many people write their own libraries of code, or CMS systems from scratch, or use one of the major open source projects as a basis for their applications. Within the limited domain of these programs you can have pretty good productivity, but it's hard to adapt them to changing requirements without major rewrites or hacks. In Rails on the other hand, the infrastructure is cleanly separated from the application code. There is a lot less to change so refactoring is far cheaper.

For all but the simplest "Hello world" application I'd recommend using a good framework. It will have already solved your problems before you even knew they existed. Rails is my choice, but there are others.

No comments: