15
Jun 10

When in Rome, do as the Romans do

A few incidents in the last few weeks, made me think of this saying again and again. There is so much truth in it, which is simply glossed over. The biggest culprits are we (non-resident) Indians. Maybe what I say applies to other nationality as well, but I cannot talk on their behalf.

When we visit a new place, we take no time to dismiss their taste in food, clothing and lifestyle. Why do we yearn for a Indian food, abroad? Do people abroad not eat, or they have no taste for good food? Why not try local cuisine? It is not about imitating others or trying to blend in. It is about putting yourself in the other person’s shoes to understand and appreciate their culture and the generations of refinement that has gone into their way of life as well.

Food was an easy one to pick on, but I can go on about several other things. We never seem to stop and think why are things the way they are. Just because they are not the same as we are used to, they are bad or stupid.

On the flip side, when we visit India, we do not blend in there as well. We will criticize the traffic, the life style, the nosy neighbors etc. etc. We will not even drink the same water that others do. Are they so beneath us?

So instead of feeling at home, we are foreigner or might I say aliens, at home and abroad. What a cursed life to live.


13
Jun 10

1 year old!

photo credit: hfb @ flickr

The blog is now one year old, woo hoo!

When I started the blog, I was not sure if I could sustain it. But here I am, 1 yr and 49 posts later. Although I could not post once a week as I promised myself, I was close enough.

If only I could share statistics to prove how popular this blog is, but both of you know it isn’t :)

So, here’s looking forward to another year of blogging, and hope to see you soon with a non-self-congratulatory post.

PS. The break in blogging was a result of a nice long vacation in May.


25
Apr 10

Text processing options

The last two weeks, I have been researching options for processing free text. I think I have explored the entire spectrum of possibilities. Below are some notes that I can revisit in a few months and not spend the same effort again.

Background

I was looking at a way to process auto-generated tweets, like the ones on http://twitter.com/moneyvidya_com. Some sample tweets:

  • #moneyvidya arunthestocksguru (5 Star rated) says Buy Vijay Shanthi Builders – 6m (Monday 29 March 2010 @ 09:55 … http://bit.ly/bd5JgC
  • #moneyvidya arunthestocksguru (5 Star rated) says Buy Bhagwati Banquets & Hotels – 6m (Monday 29 March 2010 @ 09… http://bit.ly/9MzRDG
  • #moneyvidya NSV (5 Star rated) says Buy ACC – 6m (Wednesday 24 March 2010 @ 09:55 AM): http://bit.ly/b5xTrN
  • #moneyvidya justsurjit (5 Star rated) says Sell Sesa Goa – Intraday (Monday 22 March 2010 @ 10:31 AM): http://bit.ly/9lLo8U

As it is clear, the text follows a specific format, but has its own little variations. I intended to process the ‘insights’ and see each expert’s success rate. Although I never got around actually completing the task, I did learn a lot about text processing.

Approach

The apprentice – Regular Expressions

The first approach was the most obvious one – regular expressions. I am sure RegEx would have addressed the particular task at hand. But the parsing expression would become a convoluted mess very soon. So I started looking for better alternatives.

The strict teacher – Lexical Analysis

Lexical analysis starts where regular expression give up. This also needs pretty strict rules on the allowed input text, but the rules could be a lot more flexible and easy to comprehend.

I especially enjoyed using Irony, which makes it trivial to convert BNF formed rules to C# code. There is a good gentle introduction to lexical analysis using Irony on code project.

The guru – Natural Language Processing

Processing test using tools like NLTK, allows you to parse and understand any unstructured text and understand it. Although this gives you maximum freedom, it also needs a lot of work to get right. For this to produce good results, be sure you have lots of data to be able to tweak and test your implementation. I guess this is the reason Google and co., can do so much better at translation, since they have huge data available for improving.

Conclusions

I don’t have one :) . I guess, there are several ways to solve a problem, and half the solution is to identify the best way to solve the given problem. As for me, it was a good learning exercise and may come in handy if I ever write a DSL.


11
Apr 10

Why I still use paper

and pencil for jotting ideas…

Visual Note-taking Conference Call Notes by Austin Kleon.

Try that electronically!

A quick list of advantages of the good old way of taking notes:

  • When ideas flow, only pencil can keep up with their speed.
  • Doodling actually helps with the idea flow.
  • Ideas are random, typing is linear.
  • You can get away with drawing something on paper to depict a long sentence. Doing the same on a computer will mean sidetracking into finding a clipart.
  • No pesky distractions, including those from the spelling or grammar checkers.
  • My best UI design always starts on paper
  • Easy to create mind maps.
  • Paper is truly portable, I can take it anywhere.
  • Only once I have all the thoughts on paper, do i try to organise them and make them electronic

How about you? What do you prefer, electronic or paper based note taking?

PS: I do like freemind when I am in mood for electronic note taking.


05
Apr 10

Programming for kids

logo-easter We spent the long Easter weekend, lazing happily indoors since the weather did not permit going out. I wondered if the time could have been spent better, and started researching if my older daughter is old enough to start programming.

Little background

My daughter will soon be six and she can use the computer very well for the usual tasks and I think she is a bit ahead of the curve, but that might just be a father speaking :)

The big bottleneck, I see, is her poor English skills. English not being our native tongue and she going to a German kindergarten, has limited her knowledge of English to a few words and phrases. Thus reading and writing code is going to be a challenge.

Visual programming

Given the language ‘handicap’, I started looking out for what the best way to visually teach programming, which does not involve much reading and writing. A little research resulted in 3 options, 2 of which are old and I had come across and one that is pretty new. Continue reading →


30
Mar 10

Piece of action or peace of mind?

Every once in a while, I have to stop and think about how much consumption driven we have become. Indian’s were, and still are, one of the highest savers in the world. But things are changing rapidly with the young. Saving is not very high on the list of priorities.

Being Green

Everyone talks about being green, buying green. We participate in new fads like the ‘Earth day’. Personally, I think that not buying at all is even better.  Do you really need to buy a new mobile phone each year? What about the music player, the laptop, the car…?

Whether I look at children or young employed adults, I see a clear trend. Everyone wants the biggest; latest; best, gadgets; phones; bikes… etc. This is one American cultural influence I am not very comfortable with. Americans are known for their massive debt powered consumption. But imagine, with India’s population and her growing appetite what could happen to this planet?

Continue reading →