Few months ago, I wrote an article about whether MuSMo has chosen the right framework to develop our application. Up till now, I still can’t find any flaws whatsoever on my choice. But a recent article on Python Framework Design has sparked fresh thoughts from many. James Bennett shot straight into the bull’s eye of many people by saying,
There is no perfect framework. There are only different frameworks that suit different kinds of people.
This conforms to Carl Mercier’s entry on Why he moved from Ruby on Rails to Python/Django and back to RoR. It is afterall a framework that Carl understood best and felt most comfortable with. It’s not about the framework, or language, but it is how one systematically think to reach a goal.
Let’s come back to Zope and have a poke with it. Most of the times, I hear things that Zope is so complex it’s utter crap. The sheer complexity of it and its steep learning curve that puts off developers! Maybe there are people who can’t think the right way? Recently, I came across quite an old article by Duncan McGreggor who supports the views that
But, what I did discover with django was that it’s not my platform for web app dev: z3 is. This is because of the kind of developer I am, the kind of code I like to work with, and the kind of tools that allow me to be as productive as possible. This combination of factors is different for different developers. As many others in the community have pointed out, pick the right tools for you and the job.
When Zope 3 was released, the complete revamped of the framework brought a further divide from the Zope 2 communities, but they are regaining their ground when they actually saw the benefit of using a component architecture framework to build applications. A majority of them come from the Plone community. So. what does this say about the state of mind on a particular framework?
I think it’s hard to say when most, if not all, of us are bias to our own views simply because we somehow lack the experience and/or knowledge that enables us to objectively work through a framework’s limitations for a particular project, while another framework is best fit for this other project. But for it to work out right, we somehow still need the right developer who can execute and make magic with the application design. So how do we really choose? Or what is the right approach for choice? I believe that if I’m a capable developer, and wish to build an application for my organisation, I would certainly go for the most suited framework that I can understand best, and work out from there. It’s only logical. But for a person who will be employing developers to work on a project, I would rather pick the most flexible and mature framework that flies innovation and seek out for developers who can do the job. A noteworthy article written by Tim Bray on comparing frameworks enlightens the bigger picture of its importance.
In the end, either approach will get the job done. Question is, which do you, as a developer, feel most comfortable with? ![]()
1 Response to “Python Framework Design Revisited”