Friday, 16 July 2010

ScribeFire test!

This is a test post using the ScribeFire extension in Google Chrome :)

Looks interesting and easy way to post blogs - thanks Google!

Edit 1: Fixed the font size.


Thursday, 15 July 2010

ANTLR tutorial

My latest muse is ANTLR - I have been trying to get some knowledge on compilers and how they are built, learn lexing etc etc for a while. I even bought the dragon book - but never made a headway.

Well, a month to kill before the next job does give you a good chance, so today after killing 3 weeks of this month on packing and Thrift, I have picked ANTLR.

This tutorial is awesome - nice and easy way to learn - do have look if you want to learn.


Thursday, 8 July 2010

Working on the go

When I was in London few years ago, a common sight was to see someone on the tube working on his laptop busy doing some work. People typing away on blackberry's and reading notes etc was more common. With the advent of the small netbook's it became more common to see people working on the tube.

The trend seems to be catching up in India as well, especially Bangalore. Bangalore transport, BMTC, has been running comfortable Volvo 8400 AC coaches for a few years now. Today there are a good number of these buses running on most of the major that pass through or end at the IT hubs of Electronics City and ITPL.So it is common to see techies on these buses. Also, the internet on the go USB devices are more common and less costly than before. So it is not surprising that I see folks on the bus with a laptop and working away to send personal mails etc on the commute to office. I did see one rare case where a guy was writing an email in Gmail offline mode - that's one neat way to use it. Even students and the young crowd use the laptops in buses. Food courts in big malls are another place, much like connecting from a McDonald's if it was in UK or US.

However, this throws up some issues. If a young guy or gal is using the laptop in the bus or a food court browsing photos or writing a mail to a loved one, even if someone did eavesdrop, it would be a small embarrassment - nothing really BIG. But what if someone happened to eavesdrop on official stuff? I mean if you are on the company transport bus, the fine. But on a public bus? The chief of Scotland Yard once had to quit because some over zealous photographer of an London evening paper happened to take a photo of him with some papers out in the open, instead of inside a file. This happened outside the gate of 10 downing street mind you, the prime ministers house and not some public bus.

At work we sign all kinds of NDA and secrecy agreements, so we need to be careful. I have friends in competing companies in sales positions. I speak with them about all the troubles at work and they talk as well. But we are always careful not to talk to each other about specifics. It helps because I am into technical things and not sales and there is little that I can offer or use from them.

To quote from Spiderman movies -'With great power comes great responsibility'. I guess that applies to technology as well and we need to learn to be careful.

Wednesday, 7 July 2010

Etcetera

Like I mentioned in my previous post, I finally managed to configure my Linode and lock down the server and configure my SSH keys etc. I managed to write a few bash scripts and a groovy swing builder based script to checkout and build the code for Hajo. They work perfect! and its a good ego boost before I get to more serious work on my next job in a few weeks.

Next plans include setting up some form of CMS or maybe Mediawiki to host a website for all my pet projects. I have decided to group them under a name Supercoderz. This will be the umbrella for all my projects so far and the ones to come. And maybe 5 years down the line, become something big. Supercoderz is still in the alpha stage and nothing concrete to show yet.

Wednesday, 23 June 2010

Qutting jobs, getting a Linode 512 and looking forward to new things ... last 24 hours were a rush

24 hours ago I quit my current job here in Bangalore, India. I am looking forward to moving to Tokyo, Japan for my next job. The process is in full swing and should be done soon and by this time next month, I should be there.

In another impulsive decision, which is becoming quite a habit these days, I signed up for a Linode 512 VPS on Linode. Last night I tried to follow all the guides and how-to's at once and had to rebuild my VPS 4 times. I always ended up locking myself out of the server from my machine, but could login using the AJAX shell. At about 1 AM IST, I gave up and got up at 6 AM IST to figure out why. Some time in my sleep I figured out what I might be doing wrong - I was installing Fail2Ban and DenyHosts and probably screwing the configuration. So, I got up and tried with a new build, and this time everything worked. I was able to do the usual user add stuff and sudo permission stuff, lock down root user ID and enforce key based authentication. I had a bit if trouble creating the keys but it went down well. I did not do anything out of the getting started notes at Linode, but only made sure that I did it correctly - not in a sleep :).

What next? I have about 30 days to enjoy or use to do something fruitful before my next job - so am planning to use these days to get some work done - work that I have been cribbing not having the time to do.

My latest shot at writing a killer tool has got 7 downloads - in 2 days - thanks to those who downloaded, would be better if you could let me know your feedback. So am planning to make this better and more functional.

CassandraAdapter needs some fixes to correct my goof up's in understanding if you can call it that. So that's next.

Once these two are done, I will revisit OpenJMSAdapter and add some more stuff there - although it looks like a dead end in terms of ideas that I am getting.

Lets see what I can achieve.

Monday, 21 June 2010

Ravan - my take

OK, so I went to see Mani Sir's latest flick Ravan not heeding to repeated warnings from critics and friends and wife - I loved it.

Of late, there has been a dearth of movies that have a credible and good storyline. So I have been able to train myself to look at the presentation and technique. You anyways know the climax of the wafer thin plot. Recently I went to see Vedam, another telugu movie, and in the first half an hour found myself drawing parallels to flicks like Crash, Love Actually and others that deal in parallel interconnecting story lines. By interval I could predict the climax.

I remember seeing Dalapathi - my first Mani Sir movie. It was a fantastic movie and a take on Mahabharata. There were so many characters and so many twists in the tale. Each and every scene was full of emotion. The scene where Shobhana realizes that Rajnikant has married another lady, I think Bhanupriya - its a small scene where all the emotions experienced by Shobhana are portrayed in such a short scene.

Raavan - Abhishek and Aishwarya develop feelings for each others in a set of elaborate long scenes. The scene where he could have touched her, but holds his hands just inches away from her and slowly moves away - in the past this could have been handled in less than half that time. I remember quite a few movies where the hero would suddenly take back his hands in a jerk realizing where they were heading, the heroine would grab something to cover herself, a moment of awkwardness and that's it. Here its a choreographed sequence, well shot by Santosh Sivan.

So, why I liked this movie is because of the way it was presented. Simple story, you know what will happen, but each character is well cast, simple lines, no jingoism or over the top shouting. And the frames are brilliant. I remember a shot where a dragonfly was shown in full brilliant colours and a macro close up shot, there were water droplets and mist clearly seen as the hero enters the hut where Aishwarya was ties up, the sun around Aishwarya's face in the Behne De song.

Plus there are are many moments where you can see the action on the screen and feel the emotions going in the characters head - not a one shot awkward moment scene where you get the gist of the feel.

Like some review pointed out, its for the folks who appreciate presentation. Its more in line with international flicks like Offside by Jafar Panahi where the core is pretty simple, its just how it is presented. If you like that kind of cinema then Ravan is for you - otherwise - stay away.

Hajo - A simple RPC interface to Bekeley DB JE

Last week I decided to learn Apache Thrift. Thrift is a simple cross language RPC framework that was open sourced by Facebook. It seemed interesting and as with any new product that excites me, I thought, its such a simple and brilliant idea - how come it did not strike anyone else before? Of course, I then realized that there are proprietary frameworks from Google, Microsoft and CISCO that they use internally.

Anyway, coming back to my learning, I decided to write a simple application to test out what I can do. Instead of doing the usual "Hello World" stuff, I decided to do something more meatier. I decided to build a RPC interface to Berkeley DB JE.

A few years ago we had to build a Spring+Tomcat based service to let the other applications in our architecture write to a single Berkeley DB JE instance. I took the same thing, and replace the interface with a Thrift service.

It took a few hours to complete and test. The code and functionality are very simple - it just supports three operations - insert, delete and get.

I have decided to call this Hajo - after a place in Assam, India.

The code for this is shared at Sourceforge, and the home page is at http://www.allamraju.com/hajo/. It is GPL licensed.

There is nothing much to look at evaluate in this simple piece of code, but if you ever had the need to build a system where multiple app's want to write to a single Berkeley DB JE instance and High Availability is an overkill, then you can try this.