Discovering Myghty

Friday, 09 December 2005

A lot has been said and discussed in detail about how PHP and RoR have stolen the thunder from Python. For the record, there is nothing wrong with Python framework. If there is anything missing from Python, 1) "Loud" marketing ;) like RoR and 2)ubiquity of PHP.

Python is still the big brother of dynamic languages in terms of adoption. Ruby has to go a long way to beat Python in sheer number of libraries/applications. My suspicion is : the success of python in other areas could be masking its achievements in web frameworks.

As David Hansson himself pointed out, Ruby's popularity today is mostly because of Rails. Ruby is little known outside RoR and to some extent, Java circles. So, marketing is not the biggest concern for Python, though we could use some heavy guns on our side.

That leaves Python battling on two fronts. 1) Quick and easy web apps(scripts) - PHP. The biggest advantage of PHP is its ability to produce demonstrably working code within hours. 2) Framework driven applicationsor services - Ruby on Rails. Python has quite a few web frameworks which are mature, capable and cool [2]. The need of the hour is educating the users about hte choices and giving an easy way to ramp up their skills.

One of the major pluses for quick adoption of PHP has been the availability of cheap and ubiquitous PHP hosting services. Also, PHP lets you get to the task of coding without much ado. But, its not the same with Python frameworks some how. Unless you have a hosting provider who is actually knowledgeble about python frameworks, you will end up hosting your blog/site in PHP most of the time.

So, I set out to find out about one such framework.

My shopping list: * must work on most cheap php hosting servers * should be easy to start with. My first use of PHP was to do 'templating' - nothing more than couple of require_once statements. Nothing can beat that simplicity to get started on web programming. * a easy to use templating language. I like ZPT a lot. Kid is interesting too. But, I would settle for a templating language that allows me to mix code and HTML freely without me having to jump through hoops. * If i want a dynamic site tomorrow morning, can I use this framework? But, next week I want to add a e-commerce module....

I looked at turbogears. It is a very nice framework no doubt (I'm writing a personal project using TG). But, I wouldnot recommend it to an absolute beginner. Especially to someone from PHP or non-web-programming background.

Myghty could be a better fit that way[1]. I managed to install it on an ordinary php hosting server. I like the way in which the templates(components, as they are called) work. Myghty is inspired by HTML::Mason, which is reputed and proven to be a solid templating framework - Amazon uses it.

I'll post my gains/pains with Myghty and other python frameworks as I progress.

My quest is to find the python framework which allows me a newbie to be productive from word go.

Related Links: