Articles tagged in web

  1. Performance Comparison with 6 Leading Web Frameworks

    Alrond's technoblog: The performance test of 6 leading frameworks. Very interesting read, as Alrond tested Django (Python), TurbGears (Python), Ruby on Rails 1.1.6/1.2.1 (Ruby), Catalyst (Perl), Code Igniter (PHP) and Symfony (PHP), using various load and memory testing utilities. His conclusion?

    • Django is fast, and can be very light on memory as well.
    • RoR 1.1.6 is significantly faster than 1.2.1, which was a bit disappointing.
    • PHP frameworks can be very slow, unless a opcode cache is used.
    • Symfony is way too complex and too slow.

    Alright, I guess after all performance is only half the story, and I am pretty sure the RoR guys are willing to trade performance with speed of development. Lucky for the Python guys that they can have both.

  2. Guido wants your input on Python web frameworks

    One of Guido's earliest assignment at Google is to write a mid-size web applications for internal use, and he is sharing his opinions on his research on Python web frameworks. At the end he hasn't found anything that is satisfactory, even though the requirement is straight forward.

    By browsing through the comments, despite Python's "one way" philosophy, you'll see how diversify Python's web framework is. It is like going to an expo, where everyone jumps on and says this and that is what he used -- and they all different! Some got mentioned multiple times (like Django, TurboGears, web.py, etc), but there are many others that I have never heard of. Do we really need that many choice?

    I've been playing with Django for one project, but as Guido has stated, the amount of magic scales me. Early waiting for the magic removal branch to merge so I can get back to it again. Meanwhile I am actually using web.py for another project (though I've criticised it), which involves minimal session management, minimal templating, and mainly web services using XML and JSON), pulled from static XUL application. I guess it's nature of quickly get up and get going really suits it.

    Meanwhile, I'll keep on sampling frameworks for up coming projects. Pylons and trying out TurboGears again.

  3. Ease of Deployment Matters

    Peter Hunt took a look on "How Python wins on the Web". He argued that framework does not really matter -- not all those efforts mimicking Ruby on Rails anyway, as RoR and .NET has already won the hearts of developers. Instead, Pythonists should focus on killer re-usable applications.

    Here's what I propose: screw Web frameworks for now. We won't win in the Rails generation... For today, let's work on making generic Python products. Let's make a kick-ass community forums system, an incredible blogging system, a news script, a CPanel/Webmin clone that people will use because of their features, not their programming language.

    However, when you look around searching for re-usable open source web applications, what do you see? PHP applications. When you go to open source application directories like OpenSourceCMS, most the apps (if not all) listed in there are written in PHP.

    To me, PHP provides a gentler learning curve -- you can easily add PHP tags to existing static HTML files to create dynamic sites. But so is many other Python-based template engines (like Spyce). The language itself is only so-so -- Perl'ish, and probably has many more warts than Python, even in its current object-oriented incarnation. I do not think it is as attractive to the developers as 5 years ago when LAMP(HP) was the buzzword. However, PHP-developed applications still rule the market of cheap-ass shared hosting. Why?

    Ease of deployment.

    Peter said in his post:

    And, most importantly, let's all get behind what I believe is the most pressing and important concept in the Python web development world today: Paste Deploy. What Python needs more than anything is a brainless, quick-and-easy way of connecting applications to gateways.

    WordPress guys are proud of their famous 5 minute install. Not just WordPress, there is simply "no step 3" in many PHP application installations. You upload files into your web-root, point the browser to install.php, and then just follow the steps to set up database, create configuration, initialise super user, etc. There is no need to compile your own Python executable to install easy install so you can download eggs to power your supa-dupa forum application downloaded from sourceforge...

    But how do you get ease of deployment? I have no experience with Paste before, so I briefly looked at the Deployment documentation. While it looks very promising, its installation goes like this:

    sudo easy_install.py PasteDeploy
    

    Aargh! It seems for those do no think paying for dedicated server or VPS is justifiable, they can only rely on their web hosts to install those libraries for them. Most hosting customers won't have a clue on compiling their own Python, and it is unlikely that hosting companies will have every possible egg installed, unless there's enough demand. There will not be demands unless there are enough compelling Python web applications. However, sometimes even a seasoned Python developer will choose to develop his next re-usable killer app in PHP, if he knows how difficult it will be to deploy...

    At the end a good framework still matters. Ease of deployment is crucial, but is also a vicious cycle that needs some momentum to break out. RoR has that momentum -- look at how many shared hosts are now claiming their support of RoR deployments. We only wish the same can be said about Django and TurboGears.

  4. Microsoft and its Live Software

    Windows Live "beta" -- absolutely the most talked about topic on Internet over the last two days. Heavy "Ajax" that has been all over the web these days which I have started to hate. Doesn't work on Firefox yet, and it constantly crashed my Internet Explorer. Still, sounds like Microsoft has …
  5. Internet Explorer Developer Toolbar

    I always enjoyed using Chris Pederick's Web Developer Extension when working with web pages on Firefox, and I have always hoped for something similar on Internet Explorer, as in this inperfect world, web developers do need to bow down to some of those inferior but more popular browsers out there …
  6. Opera is now free (as in beer)

    Opera turned 10 last month, and gave away free registration code. I guess they must have been overwhelmed by the response, and now they are giving away their browser for free -- forever! They have free Opera for most modern desktop operating systems. Download Opera 8.50 today, otherwise you might …
  7. Slashdot going CSS

    Slashdot, ones of the grand-daddies of the weblog, is finally throwing away the aging HTML 3.2 with massive table-based layouts, and replacing it with more compliant HTML + cascading stylesheet. It is currently beta testing on Slashcode, the Perl-based CMS that powers Slashdot. It almost validates to... Oh wait?! To …