Thursday, April 15, 2010


Well they say that a picture paints a thousand words ... so here we go

I think I might go this year just to see how it is.

Monday, April 12, 2010

Update on grok web development tryout

After dancing around the pale moonlight with a newly slaughtered chicken in my birthday suit, offering fruits to the grok gods, finally today the gods were kind on me and helped me along to find this solution that works! The closest I got the example in the grok book to work is to install the grokproject and start a new project without errors, but when I try to start up the devel server, all sorts of strange manner of monsters jumped out at me.

Just have a look at this : What needs to be done is to edit the paster template and everything will work fine. I guess either this bug has not been looked into or is still an open bug.

Heh! I spoke too soon, I got to the main page of grok management but as soon as I try to do anything, I get this:

"TypeError: character mapping must return integer, None or unicode"

Hmmm ... google gods say this:

Not really a solution

Not much of a solution it seems, just that Python-2.6 is not supported. I am using grokproject, but how can I see what version of grok is grokproject using. As the mail says, errors like this is really really off putting and does not help with building confidence with the project!

Grok 1.0 Web Development

Monday, April 5, 2010

Review of Grok Web Development 1.0 Part 1

I like Zope/Plone. I repeat I really like Zope and Plone. Though here in this blog I might sometimes balk at the monolithic-ness of the 2.x era of them, fundamentally I like the concepts that they put forth. When things like Django, Turbogears rolled around thanks to Ruby On Rails, the call for Zope to recreate itself was sounded and did they respond! Zope3 was almost a ground up rewrite. At that point I had moved on to Django for one of my projects but I looked back longingly sometimes at the useful components put out by Zope. Then someone told me about Grok. I looked at it and liked it alot (okay maybe I still have reservations about Zodb) and it looked to me very much similar to how Django and others were playing the game, except that Grok came to the party with very advanced clubs and spears inherited from it's day in Zope-2.x! So when I got the chance to review the Grok book from Packt, I jumped at it. I wanted to find out what is the innards of Grok and how to or can I deploy an enterprise project using Grok.

The review of this book got very much delayed due to the fact that grok, like all other Zope stuff needed Python2.5 or Python2.4 to get working correctly. Now in this day and age of every distro racing to be the latest, bestest and most up to date, it was a challenge for me to get a Python2.5 or Python2.4 easily. I ended up going the VMWare route and installing a copy of Centos5.4 which still spots Python2.4.3 by default. This probably would be the biggest stumbling block of any newbie trying out the book the first time. The examples all require you to have a copy of Python2.5 which can be a challenge to find or install right. Once I had the components, I started on my way by using easy_install and then virtualenv which is the Python Virtual Environment. Again, these would require a little fore knowledge of Python stuff so this book might not be totally for the newbie programmer who don't know anything about the Python programming language. A bit of introduction to Grok, as far as I can remember. Grok came about when there was a little discord in the community about the monolithic-ness of Zope-2.x, when light frameworks such as Django, Turbo Gears and others started coming on to the scene. You can say that the Grok project was created to allow programmers or fans of Zope to enjoy a modular development environment offering the best of Zope where programmers can now pick and choose pieces of it can apply it to their work. I must say that the pieces of Zope when good is truly good and most often than not I find myself recreating some of the functionality of Zope in my projects using other frameworks. What could have been done is to release a VMware image of a working environment to work on. Definitely a boon in terms of speed up of trying out the examples!

The book starts out the example by using Virtualenv (Python's virtual environment) and easy_install which is a good move as Grok's packages are not readily available and probably installing it would not be the easiest thing to do in the programming world. Getting a relative newbie caught up in installation of Grok when all they want to do is to bring it for a test drive would be painful to say the least. I tried lots of environment including Ubuntu which resulted in errors preventing the example from working until at last I found Centos 64 bit which worked with the examples. The process of finding this out was maddening! Perhaps grok is still under development but what I suspect is that most of grok's dependencies or libraries is still playing catch up with the example in the book. This might be off putting to a Grok newbie venturing into the land of Grok development. The examples were the most enjoyable part of the book where the beginner could feel that they were starting a project from scratch.

The admin tab in the applications for Grok is touched here and covered in passing highlighting all the main features of all the tabs. In the views section, those who are new to Zope Page Templates and the TAL (Template Attribute Language) will get a nice and concise introduction to some of the functionalities of using ZPT with Grok. Those who are Zope / Plone developers could probably skip this section without too much difficultly unless you are like me who want a refresher's course on ZPT. This deep into the book I really like the examples thrown my way and it's really refreshing for me to see that one of my favorite Python application have reinvented themselves and this bodes well for it.

Catch more of this review in part 2....

Saturday, April 3, 2010

Getting mtp device (Sony Walkman) to automount in mandriva 2010 powerpack

Currently I am running Mandriva 2010 powerpack on my laptop. Everything worked correctly and great and there are a lot of things I like about Mandriva. Today while trying to get my Sony walkman to automount as a usb device it just did not work automagically like how it did in my OpenSuSE. I debugged it a bit and found that it was recognized as a usb device but it just did not mounted automatically (I use KDE). Shot up nautilus and everything worked just great.

Being in a frisky mode today, I was undaunted and continued to search around for the solution. Found the solution in a Mandriva forum here:

MTP Solved Forum

A bit outdated yes but I deciphered what I could from there, and found that the solution is to install mtpfs. Just do a 'urpmi mtpfs' as root and your Sony Walkman should automount automagically from thereon after and everything will be hunky dory on your Mandriva baby.

Btw, I am also quite impressed with the number of packages offered in Mandriva. Nearly all of the Python packages I am used to is in here and the package installer is space age fast!