Heard of Mr. Frank Abagnale Jr?

Bruce Schneier said, “In order to become a cryptographer, you need to be a cryptanalyst.[1]

Now is there a person better than Frank Abagnale to prove this? I watched the movie, Catch me if you can and was quite impressed by this person. It was hard to believe that this is a true story. A web search convinced me.

While browsing through the Wikipedia external links, I hit upon this article in BBC about Frank and this reminded me of the blog entry that I had made related to identity management and privacy issues.


Super splendor – the latest 'new' thing in my life

Hero Honda Super Splendor
Originally uploaded by Buzypi.

I was on the look-out for a 125 cc bike.

The bikes that I tried are:
* Hero Honda Super Splendor
* Honda Shine
* TVS Victor GLX
* Bajaj Discover

Honda Shine has the smoothest engine and good power. Next is the Super Splendor. I did not quite like Victor or Discover.

So I had to choose among 2 bikes. It was a tough choice!

Shine, being a new bike, I did not want to bet on it, especially with people commenting that although Shine has a whole lot of cool features, the looks are not good and Honda might come up with a new version of it soon. Plus there have been comments about Honda having starting problems and costly spares.

So Super Splendor was the obvious choice. It has decent power, is light and easy to maneuver and has good mileage. Plus Splendor has done well already and so this is a safe bet.

Next to decide was the color. This bike is available in 5 colors. I liked the Frost Blue colored bike. Black is good, but then it is pretty common.

So here it is. The latest in my 'belongings' list.

How server side validation using AJAX may be better than client side validation

Let's say you are filling up a form and suddenly you get a popup which says that certain characters are not allowed in a field. Or an alert, which says that the number of characters entered is more than some defined limit.

Now using some fundoo plugin, you just edit that Javascript and ensure that the invalid characters are accepted silently. What will happen in this case?

The fact is, this might create problems in the system and may be a playground for hackers.

There are several solutions to this. Code obfuscation is one of them. However, to be on the safer side, it is advisable to perform server side validation before the data is processed further.

If the server side validation is not done, hell may break loose. If the server side code takes care of validation, then there are no problems. But this would mean that we are replicating the validation function in two different places. So how about combining the two and just providing server side validation using AJAX? The client will see the validation happen prior to submit (may-be a bit slow), and at the same time no code is written in Javascript to perform the validation.

Although people criticize AJAX about attacks, I feel it is an elegant solution if used appropriately.

Public bookmarks, Private tags

Has anyone come across a bookmarking site that allows us to make bookmarks public, but attach private tags to them?

Here's the use-case:
Tags in my opinion are small bits of information that we attach to the entity under consideration. Now the entity itself may be public, but not the information that I attach to it.

To be more specific, let me tell you where I felt the need for this. When chatting with , I came across several books in Amazon. I started bookmarking these in delicious and attaching the tag bibliophile to them.

Then came a thought. How about storing information like whether I have read this book or not, what the number of this book is (I number all my books) and other information which might not be worthwhile to make public or for some reason does not seem appropriate.

In terms of implementation, I guess it is quite simple. You need to now track each tag and see if it is private or not (an extra field in the database) and then display them accordingly in the UI.

Guest lecture in Christ College

I had been to Christ College today as a guest lecturer. The students were fine arts students, mostly in their final or pre-final year.

This was the first time I was giving a talk to such an audience. The students were receptive and expectant. There were questions; and they answered my questions satisfactorily.

My talk was on Web 2.0. So I had to tell them about blogging, wikis and a whole bunch of other jargons. There were students who knew about blogging and a majority knew about Orkut. 🙂 That made things easy for me.

This was my first visit to Christ College. The campus is huge and the infrastructure seemed quite good.

Overall, it was a good experience.

Java and pattern matching

I had a very simple requirement. I had to escape certain characters in a string using a backslash.

Backslash is a very tricky character. Escaping involves preceding the character to be escaped with a backslash. Now, suppose you have a string which contains a backslash, and if you need to escape it, you need to enter 2 backslashes.

The complexity just begins. Backslashes have special meaning in regular expressions. Strings in Java also use backslash with a special meaning.

Combine all this and you reach hell.

I wanted to replace all occurrences of ” and \ with \” and \\ respectively. Guess how I use Java for this?

	returnString = returnString.replaceAll("\\\\", "\\\\\\\\");

	returnString = returnString.replaceAll("\"","\\\\\"");

Yeah, that's how you do it!

About my work

Well, I hardly blog about my work. But here's something that gives moments of pride.