Web Dev. Framework for RAD Web App Dev. in Shortest Time ( Yii vs. Django )
Question: I googled it and found nothing of much interest , right now me & my Team
know/partially know ( Codeigniter, Yii) and also Django (Python Framework) ,
now after working with codeigniter for past 1 year we have noticed that we are
not that efficient and we still have to code most of the stuff( comment
system, image upload, rating, voting etc. ) repeatedly ( you can call it
progressive enhancement ) .

Now , we have started development in Yii and it's superb we are experiencing
it but what I find is that I love Python more than PHP , but due to deadlines
and time shortage , I cant ask my team to switch to it now . SO, what I'm
trying to do is convince myself that which framework among these 3 (
Codeigniter, Yii, Django ) would give us fastest delivery times ?

My personal opinion is that Yii & Django are somewhat equal but due to
avilability of large no. of Packages [Django
Packages](http://djangopackages.com/) , we will be able to develop quicker and
faster , although Yii has it's extensions too [Yii
Extensions](http://www.yiiframework.com/extensions/) but at this time there
are not many and only few of them are highly stable , while others have bugs
still (Maybe all this is due to my higher knowledge of PHP & PHP frameworks
than Python frameworks & Django ) so, I would be glad if someone who has some
practical experience transitioning from PHP to Python based frameworks could
shed some light on this !

Edit: I'm looking for a practical response from a programmer who has developed
in both frameworks Django vs. Yii ( or has atleast played with them ) and
he/she can verify that development time for a typical CMS/Portal/Review
Website/Digg clone ... type Web App takes less time in one than other , as
Time is what I worry about learning the language / features/ benefits are not
that important , scalability too ius a matter of proper DB optimization and
other architectural changes , also i would like to highlight that I'm not
considering Ruby on Rails as I dont want to learn ruby just for a framework ,
rather I'm interested in Django vs. Yii in terms of shortest time to market
given all other factors ( manpower/skill set/DB design) equal , Kindly help ,
I have been thinking about this for a week now !


Answer: Vivek, this is one of those questions to which it's hard to give an answer
better than "it depends". Personally, I think that the language and its
ecosystem is a very important factor in the choice, perhaps more so than the
specific framework.

Why so? As you mentioned, you found out that you had to write a lot of code
from scratch even though you thought a framework would provide it. _This is a
basic fact of our programming life_ \- no matter the framework / library,
eventually we're going to write some functionality of our own because:

  * Either it's missing
  * Or it's not good enough for our needs, for 1000s of possible reasons

So in the end, as an application becomes more and more complex, we'll find
ourselves implementing more and more functionality because the existing
libraries just aren't flexible enough. I think that the recent success of web
micro-frameworks in Python has its roots in the same cause.

This is why the basis is important, and the basis in your case is PHP and its
ecosystem vs. Python and its ecosystem. Both languages have huge amounts of
library code available, but which do you find more pleasant to work with _as a
language_? Which is the one you and your co-devs know best? Which is the
language for which you'll find it easier to hire new devs (if applicable)?

* * *

P.S. I don't know much about PHP, but for Python/Django, apart from Django
Packages, there's also [Pinax](http://pinaxproject.com/).

