vattam's blog

MNIT Jaipur workshop

When we first opened the registrations to the students, we didn't expect such an overwhelming response. We had close to 90 registrations in 2 days. By the time we reached Jaipur the number had increased to a whopping 143! It seemed like students had registered over night too. We were a bit concerned about the number since the lab could accommodate a little over 70 people. Thankfully the number of people who actually turned up were close to 75. We had a handful of post graduate cum faculty participants as well coming in for the sessions.

We saw a consistent drop in the number of participants as the sessions progressed. For the post break session the number had come down to 66. Post lunch sessions saw the numbers further come down to 57. But those who remained showed good interest in whatever was being taught. The second day turn up was 42 and almost all of them remained till the end. The response on the second day was better than the first since all of them present were genuinely interested.

The lab structure there was the best we have seen so far. It was ideal in the sense that it had 60 systems all in good condition, all facing on the same side. The lab was spacious and well ventilated, although it required more cooling(thanks to the Jaipur summer). We felt the need for a mic since our voices weren't reaching the last few rows.

One interesting that we observed here was that the participants were quite comfortable with typing and making fewer mistakes. As a result we saw that few people had written close to 300 lines of code in a day without having closed the IPython shell even once.

The quiz performance here was the best among all the workshops we have conducted till date. There were a few of them who were quick enough to try out some of the quiz questions on the IPython shell immediately as well :-P.For the first time we saw people scoring full marks on the quizzes. One guy, Rishi Mehta, requires a special mention since he scored full on all the three quizzes we conducted.

We did skip a few sessions due to lack of time and little interest since they had little relevance to Computer Science students. But in the end the workshop turned out to be a very satisfactory experience. The feedback seems to be very positive. We hope the students continue to show interest in Python and contact us and stay in touch by telling us how they have been working on Python.

Pics from the workshop:

Why drupal?

You might be wondering why we are using drupal when we speak so much about Python. I shall enunciate the reasons for the same in this post.

When we started off with the website we had the option of choosing among the various available CMSs namely, Plone, Drupal, Joomla and so on. There was also the option of going with Django, which we discarded because most of our site would be static and we thought it would be too much work to do for a static site. We chose Plone, the reasons being, its written in Python and we had seen quite a few websites that ran plone like plone.org and Connexions. It took us a couple of days to figure out stuff and get the basic site up and running using Plone. Thats when the problems started. Maintaining a plone site a great pain. Firstly, Plone is a beast! Its a package of 34MiB which comes with its own Python2.4 and Zope server. Installing Plone is not a difficult task I must say. But the problem starts only after the installation. Every time a new module has to be installed, the module tarball has to be downloaded and extracted to the Plone src folder, then the buildout.cfg has to be edited, which in itself is a great pain and then the buildout script has to be run. Then the zope server has to be restarted. All this just to make the module appear on the Plone administration set up page. The installation is complete only after the module is selected for installation on the set up page. The plone docs say that the module should get installed by just specifying the url to the module tarball if they are under pypy or plone itself. But this procedure doesn't work most of the times. The documentation for most of the modules is sometimes misleading and completely non-existent most of the times. Also most modules that might come close to being useful are usually in the alpha or the beta releases and hence are buggy and lack support. If some of you have visited this site before, then you would've experienced the messy and the cluttered interface. Also adding content on to the site was non-intuitive to say the least and a huge pain in the backside to say the most. Hence we decided to do something about it.

We decided to work on improving the plone site and if it was completely impossible to do it then ditch plone and take up alternatives. So Shantanu, PR and me started looking for alternatives. In the meanwhile I did try to tweak the plone site a little but I was more inclined on trying something better. We looked at Pinax and Django-cms. Pinax is too social-networking-site-ish and we felt that the django-cms installation procedure was too cumbersome. So we reviewed our options and considered drupal as well as wordpress this time. Since
I had some experience with drupal, I suggested that we go with drupal, since I had some experience with its working. I worked for a couple of hours to set up a basic site on my local machine, just as a demo and PR was quite impressed with it. Shantanu and Puneeth provided valuable input on the necessities of the website and its basic design. Once this was set we started out with the actual website. PR and Asokan gave their reviews with inputs about what they want from the site. Thus we went on to develop the website

Working with drupal is very simple and instinctive. Drupal provides an interface that is uncluttered and quite uncomplicated to navigate through. Also drupal has a whole suite of modules that provide scale the functionality of a website to great levels. Also it has an amazing set of beautiful, eye-catchy themes. And the best part is that configuring all these modules and themes is straight forward and doesn't involve complex stuff like editing configuration files remotely or running complex scripts. Its all done on the browser. Also drupal has amazing support in the form of simple, easy-to-understand documentation as well as an amazing community with people always ready to help on #drupal-support. All these factors led us to choose drupal.

Enable Clean URLs

In order to enable Clean URLs module on Drupal, an Apache server module named mod_rewrite has to be enabled. The following is the procedure to do it on Ubuntu which has LAMP installed using tasksel.

The mod_rewrite on Ubuntu LAMP is not enabled by default. It can be enabled by running the following command on the terminal.

sudo a2enmod rewrite

This will enable the mod_rewrite module on Apache. Now restart Apache server by running.

sudo /etc/init.d/apache2 restart

Now navigate to the /etc/apache2/mods-enabled directory and list the files. This directory will contain a file named rewrite.load. This means that the module has been installed properly.

Now open the file /etc/apache2/sites-enabled/000-default using your favorite editor.

To the file add the following lines:



Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all

Now restart apache as stated earlier. This should enable the Clean URLs on Drupal. You can check by going to the Administration-> Site configuration-> Clean URLs page.

Syndicate content