Web Framework Statistics

This week could be the Web Framework week here. I have just found a good statistics regarding web framework. The first one is about Python Web Framework comparing to others. Arggg. There are so many frameworks for Python. Zope is the most popular one. The second is Python Template Engine Statistics. Zope is the first one again. And the last one, Programming Language Statistics, Java is the first and Python is the 7th.

Web Framework for Guido van Rossum

As you might know, Guido is spending 50% of his time on Python at Google in Silicon Valley. However, Python is not the main language there. Fortunately, it is the 3rd after C++ and Java. Not too bad. Well, his starter project at Google was to develop an web-based internal tools for Google developers. Google has a ton of reusable web server code for large scale servers, anyway, they are overkill in that project and it’s all C++. He was looking for a good web framework. Actually, he was looking for what it should be. During the research, he found and tried Django, Ruby on Rails, Quixote, Nevow, and more. He concluded as the word No XML.

Pythonic Issue Tracker

Are you a Pythonian? Well, no matter what you are, you might be looking for a good issue tracker. It is one of the must-have component for community development. Now I have 2 solutions in my mind.

  1. Trac
  2. Roundup

Trac is very attractive and complete; however, it might be too much with wiki if you already have one. Roundup is another one I found yesterday. Guido recommended python.org to use Roundup someday, sooner or later. So, Roundup is very interesting by now.

! Yes, it’s here just for alpha testers. Thanks to Michael Amington @  and lew @ Blognone to point me to these impressive screenshots. As you might see in the first screenshot.

How to enable NAT in iptables

In my previous post regarding OpenVPN, I assumed that the machine is already running iptables as a gateway. If the machine is just a standalone server, you have to enable NAT gateway in iptables. In order to do that, modify /etc/sysconfig/iptables to follow below sample.

*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i tun+ -j ACCEPT
-A INPUT -i tap+ -j ACCEPT  

How to install OpenVPN on Fedora Core 2

Once you have a server and want to work like you sit in front of the console, you are looking for VPN. I have set many VPN on Linux servers. There are so many solutions and standards. Anyway, most of them rely on the standard and UDP protocol. UDP is good for tunneling but might not work correctly behide NAT and firewall. Usually, all networks allow to access web through web proxy. The web protocol, HTTP, relies on TCP protocol. OpenVPN is a VPN solution which supports both UDP and TCP at the same time. Cool! You can even establish VPN connection through HTTP proxy.