Thoughts ....

माणूस मोठा होतो म्हणजे काय होतं ?
माणसाला किडा, मुंगी, डास चावला तर त्यांचा राग येत नाही, मग दुसऱ्या माणसाने दुखवले तर का राग येतो ?
Is it possible to treat other human beings (who hurt you) as "unevolved creatures" ? i.e. Not evolved spiritually, not yet mature enough to treat other human with respect, dignity they deserve ?
Is it really possible for average human to "Forgive them 'cause they don't know what they are doing" ? .... I wish I could.

PyCon India 2010 - Day 2

I reached the venue well in time. (Since it was Sunday morning, probably not much people were traveling) I talked to Praseed and Anil near the registration counter - Apparently some people were registering for day two (May be they missed Day 1 due to other commitments ? But I didn't see the point.) We went to the auditorium for the first session of the day.

The second day also started with David's session just like Day1. He talked about Polyform Puzzler and Pythonic Algorithm X. Based on previous day's experience, I didn't even bother with WiFi, and used BSNL-3G for connectivity. David started by explaining various polyforms, and how he solved the problem initially by brute force. I learnt about Psycho It is JIT that helps improve the execution speed of algorithmic python code up to 300% - One key takeaway from his session was "If external tools like Psycho can help improve the speed of your code - then there may be something wrong with your code - Try analyzing and rewriting"

I wanted to attend Noufal's session The Road to PyCon India 2010 but it was going on at the same time as David's session. This is the downside of having multiple parallel tracks - One has to pick and choose. (I also understand, without parallel sessions, conference would run couple more days - and not all sessions are interesting for everyone)

Next session I attended was Tracking Tech Trends with Python .It was about how python program can be written to gather information about various topics. It wasn't about tracking technical trends in python, as I had thought. I was a bit disappointed because it was not what I was expecting. (I should have done my home work - my bad)

Next session Building Scalable Apps using Google App Engine went well - but he too had a lot of talk about and not enough time. The concepts were generic though. One of the "tips" shared was to use NoSQL for datastore as opposed to relational DB - This helps improves the performance, and makes the app scalable. This tied in well with the next session NoSQL Primer .  Turns out the presenters were students, and didn't have enough expertise to handle such a "hot" topic. To be fair, the audience started asking questions about NoSQL from the get-go, and it was clear that those people asking questions had more information about NoSQL than the presenters. They switched the presenter mid-stream (hoping that new guy would handle queries better) But the new guy was either too new to python (or nervous) that he kept making silly mistakes when typing python code to demo PyMongo to the audience. Audience had to help him with the syntax - kinda embarrassing.

Today, experience at lunch went well. No long queues- may be because everyone including organizers and participants learnt from previous day. They also served ice-cream (May be they ran out dessert the previous day ??) I had plenty of time to finish my lunch and go back to the auditorium to check my emails and charge my laptop.

Today too, first post lunch session was about GUI programming with python - but instead of QT, it was using GTK. Till before lunch I had no idea what the session named Quickly was going to be about - I checked the page, and decided to attend. I was glad I did. To compare with previous day, the presenter was probably a student, and (may be) bit nervous too. But the presentation was laid out well - accompanied by live demos. The fact that the tool "quickly" makes things easier went in favour of this session (as opposed to PyQT) But based on the presentation, I got a feeling that the tool was too tightly coupled with Ubuntu (Later I found out that the defaults can easily be changed to make it generic)

The next session Python object model and introduction to meta programming was very informative. The presenter was knowledgeable and patient and explained the concepts very well using the live examples. He too ran out of time, and didn't cover meta programming. Due to the overlap, I missed Praseed's session on Extending and Embedding Python under Windows ( using C/C++ )

I wasn't interested in other sessions that were available and decided to take early tea break. Got to talk to some other folks during the break. By that time, everyone was looking exhausted, and FWIW, none of the post-tea break sessions seemed interesting - Some sessions also were cancelled. They had planned lightening talks in its place, but I didn't attend that.

After the early tea break, I attended the session I wanted to attend since PyCon was announced. Python on Mobile phones I wanted this session to go well, and it did.While the session was titled .. on mobile phones .. It was focused on Python on Symbian. The reason why this session went well was because Seshandri had live-projected the image from his Symbian phone on to the screen - so anything he would do on the phone was visible to the entire audience. With such a complex setup - various things can go wrong, but I am glad nothing went wrong - and in my opinion, this was the best session of PyCon India 2010.

All in all, this was the first time I attended any technical conference and my experience was great. I am now looking forward to PyCon India 2011

PyCon India 2010 - Day 1

Since I had visited MSRIT the previous day, I had no problem reaching the venue on time. In fact I reached few minutes earlier, David Goodger was still setting things up. I was able to live tweet using the BSNL 3G USB device I had brought with me. The keynote speech went very well. No complex stuff (like his next session on day 2 about polyform puzzler) it was simple and relevant.

After the keynote - the organizers announced the pass phrase for the WiFi - So some time was spent trying to connect - but I couldn't actually get "usable" internet connectivity. The WiFi would connect, but couldn't get proper Gateway and/or DNS assigned - may be some problem with DHCP. (More about this later) I was getting late for the next session, so I gave up trying to connect to WiFi.

PyCon sessions were spread across 3 different halls. Auditorium and Lecture Hall 1 were next to each other, while I had trouble locating Lecture Hall 2 were Dhananjay Nene was going to start his session at 11AM. There were not clear directions, so finally few of us asked the students for the directions to "HiTech Hall". Turns out it was in entirely different building, we had to ask few more people for this hall even after reaching the correct building. Dhananjay's session had already started, and the hall was jam-packed.

I got myself a place to sit, and started another attempt to connect to WiFi - Turns out several other people were also having trouble connecting. People from mahiti.org tried to help, but couldn't. Since this hall was underground - I also didn't get BSNL signal and couldn't use 3G modem to connect either (got signal for AirTel, Vodafone, spice etc - but so CellOne)

... and suddenly the lights went off. Power was back within few minutes, but by that time participants had started leaving - It disturbed the flow of the presentation though. The presentation went well - but I was able to attend only part of it.

Next session was Beyond Django 101 - This session went OK. I noticed that PyScripter was being used during the session - and made a note to self to try it out.

This session too was delayed, and by the time we left for lunch there was a serpentine queue for lunch. There were just too many people around, I was feeling more hungry just looking at the queue. But the food was good. Had to finish the lunch quickly else I would be late for the next session, which I was really looking forward to.

First session post-lunch was GUI programing with PyQT by Ankur Gupta. That went well as well. He designed firefox like UI using QT designer. Turns out he had a lot to talk and show, but not enough time. The presentation had to wind up due to lack of time. There was hardly any time for QA session. I had a feeling that people wanted to ask questions, but that would have delayed the next session, so QA was skipped. Later while taking to Ankur during tea break, he mentioned that he felt that he should have covered signals and slots a bit earlier during his talk

Next session was Introduction to Image Processing in Python by Anil C R - Initially convered some theory Required quite a bit of background in advanced maths (fourier transform etc) But I learnt about Interactive Python during this session (as part of the demo) This session used live demonstrations heavily which made it very interesting.

Next session was Introduction to Semantic Web Programming - I was bored. May be I didn't understand the topic, or was not able to appreciate the topic.

By this time, mahiti.org person was able to get WiFi working in Lecture Hall 2, and I was able to access internet for a while. Turns out - the default DHCP lease was for 8-12 hours, and thus new folks couldn't get IP addresses assigned. When he manually cleared the list, others like myself were able to connect.

My very first assignment in python required a lot of text parsing - that was a while ago, but still the next topic was interesting for me none the less : Text Parsing in Python. The session was divided logically into three parts - Built-in string methods, regular expression and parsers. Good examples were given for each. I think audience liked this session, but again the time allotted wasn't sufficient and at the end she had to rush thru rest of the slides.

During the Tea break I met several folks and got time to talk to them. Till then it was from session to session, and not enough time to interact with folks.  Most part of the day I was in Lecture Hall 2, so I decided to attend the next sessions in auditorium Into 3D with vPython. The presenter was well prepared - and started with some demo of 3D animation. I also liked the style of the slides he used (The ones he used during the session were different that ones that were uploaded on the site) Generally I liked the presentation style, as well as contents. Since WiFi was working OK in the auditorium, I downloaded vPython during the session - something to try later.

This was the last session of the day, exhausted I left for day. Looking forward t other next day.

On a side note - I noticed that several folks - in the audience as well as presenters were using some flavour of linux - mostly *buntu. Then there were few macs and few Windows 7 laptops (Which I assumed came pre-installed along with the laptop, and folks left it as is and/or dual booted with linux) I was one of the few running XP.

PyCon India 2010

This is the first post in the series about my experience of my first ever Technical conference I attended. .. and I must say it was totally awesome !!

Road to PyCon

I left Pune on Thursday - so that I can reach B'lore a day earlier. I had booked the tickets for 5.30PM MSRTC bus from Pune-to-B'lore. This was also the day when Ganesh Visarjan processions end. (In Pune the procession lasts more than a day) I reached Swargate a bit earlier to be safe. First thing I did was check the platform where the bus would come. Imagine my shock when I was told that the bus was cancelled !! First person told me that the bus "did not come from b'lore" I was asked to get a refund. While finishing the paperwork the person in-charge told that the bus is cancelled starting that day. The bus should make about Rs. 70k - per round trip, but was barely making 30-31k. Lucky for me, he also told me that there would be another KSRTC bus for b'lore in few minutes. Luckily, the 5PM bus was delayed (probably for me :)) The bus was barely 50% full. I got a good seat, and in minutes we left Pune.

My PyCon Experience had started on exciting note !!

Day 0

I visited MSRIT a day before, so that I am on time for the keynote on Day 1. I was staying on old airport road, and did not have direct connectivity, so I had to travel till Majestic (or KBS as it is officially called) and take another bus from there. Turns out getting a "Day pass" works out better, since I had to travel 4-legs a day to and from pycon. Based on my few days experience I think that B'lore has a very good public transport system, when will Pune get similar public transport ? AC Volvo buses are a plenty, and other non-AC buses too. In fact PyCon India 2010 also suggested taking bus to the venue.

Details of Day 1 and Day 2 coming sooon ....

बराह वापरून मराठी blogging

आत्ताच मी मराठी blogger's मेळाव्याला जाऊन आलो. तिथे मला बराह ह्या software बद्दल समजले.
आत्ता मी हे बराहपॅड वापरून लिहीत आहे. सुरवातीला थोडे अवघड वाटले खरे, पण थोड्याच वेळात बऱ्या पैकी जमू लागले आहे.

जर तुम्हाला मराठी मधे blogging करायचे असेल तर barah नक्की वापरून पहा.http://www.baraha.com/

How can I avoid turning into a pointy-haired boss?

Announcement of changes in company password po...

Image via Wikipedia

Following is taken from the RAQ - Rarely Asked Questions page of Paul Graham's Website. I could not have put it more accurately myself, but it resonates truly with my sentiments.

The pointy-haired boss is a manager who doesn't program. So the surest way to avoid becoming him is to stay a programmer. What tempts programmers to become managers are companies with old-fashioned corporate structure, where the only way to advance in salary and prestige is to go into management. So if you want to avoid becoming a PHB, avoid such companies, and work for (or start) startups.

I never had to manage anyone in our startup, even though I was the president. The other hackers were my peers, and would have given me the raspberry if I'd tried to "manage" them. We operated by consensus. And the rest of the company reported to our experienced COO, who was also more of a peer.

Why be a manager when you could be a founder or early employee at a startup?


I have been through the phase of being a manager who didn't program, for the reasons Paul mentions above. Hopefully I learned quickly enough that I didn't like being in that role. While I haven't started my own start up yet, it is definitely one of my goals.

see, two dots, slanting line and greater-than-sign

FreeDOS (command line interface) operating sys...

Image via Wikipedia

This person isn't from IT field, and uses computers just to get her work done (Doesn't everyone these days)
You need to understand this background to appreciate how a non-techy person would describe their experience with MS-DOS

The other day, I was talking to her about the days (during my engineering college) when I used to work on DOS. Conversation went something like this.
The text in parenthesis are my thoughts, it isn't part of the actual conversation

me: Do you know what is DOS ?
her : Disk Operating System
(wow, I didn't think she would know)
me: How did you know ?
her : I had to study about it, but all I know is the acronym
(Thought so)
her : Do you mean MS-DOS ? Ohh, I remember now, it was so boring
(why boring ?)
her : There were no colors, just a boring black and white screen
(Hmm, you have been using computers only post-windows '95 days, no wonder you find DOS boring)
her : All I remember is that it used to show - see, two dots, slanting line and greater-than-sign -

She was trying to explain the MS-DOS Prompt "C:\>" (Now read the description again, to make sense of it)

Related articles by Zemanta

Smile Please !!

In the Wellness Program I attended few weeks ago, I gathered several useful pieces of wisdom. Here is one such gem. Enjoy !!

We have all heard about "Laughter being the best medicine". Personally you ask me, when you really need medicine, you are in no position to laugh about it. A better version would be "Laughter is better way to avoid medicine". But we aren't talking about laughter here. Sure there are laughter clubs all over India (if not world) but I'm talking about Smile. Surely you know the difference :)

During the period in between two sessions of our Wellness Program, I over heard this conversation.

Student : I have this constant headache.
Counselor : That is because you don't smile. I haven't seen you smile even once during last three days. What are you worried about ?
Student : I'm not worried about anything, I'm having a good time. But I'm not a kind of person who smiles for no reason
Counselor: Then you should. Seriously. Force yourself to smile. Since you are frowned all the time, you build up this tension. You forehead is always wrinkled. Just smile physically, even if you aren't feeling like smiling. This will help relieve the tension.

I never go to hear the aftermath, whether the student did take up smiling (I did see her smiling at least couple of times during rest of the program, so I guess it went well)

But this advice stuck with me. Whenever I'm feeling low or angry (and I'm alone) then this advice comes back to me. I have tried this several times since the program, and I must say that it has worked every single time.

It is funny really, that I am really angry, boiling mad at something (or someone) but I'm physically smiling. As soon as I smile (OK, may be not as soon as, but soon enough) my emotional state changes to far better mood.

Till few days ago, I used to think emotional state of happiness brings out smile in people. But now I have realized that a forced smile, also brings up emotional happiness.

Please try this, and let me know if it works for you.

Smile Please !!!

Beggar and The Pot of Gold

Following The Pot of Gold

Image by vgm8383 via Flickr

This is another story I heard during one of the personal development courses I attended recently. You can read the previous one here

Once upon a time in a small town in India, there was a temple. Several devotees visited it both in the morning and in the evening. After a while, one of the very poor person from some nearby place came there. He had lost everything he had. He collapsed outside the temple. People being very nice, helped him with some food, water. He started getting better, but he had no where to go. He setup his bed under nearby tree. Passersby started giving him some money. Eventually, he got better, but by now he had become comfortable being a beggar. He did not try anything else, since he was doing OK just begging.
People did not like having a beggar outside the temple, but they continued to offer him small change out of habit, and out of their goodness.

After a while, the beggar died. People arranged for his last rites. Then they decided to clean the beggars place so that there won't be any more beggars outside their temple.

They cleaned the place. But then the decided to just dig up the place while they are at it, and just be absolutely sure. After a few strikes, they hit something. After careful examination, they found a pot full of gold coin. (They used it renovate the temple)
Poor Beggar, he was sitting on a pot of gold his whole life, but never realized, and continued his life begging to people for his day to day survival.

Several of us go through life unknowingly sitting on a pot of gold (our skills, unique abilities) never realizing it.
What can we do to uncover the hidden potential, so that we don't end up like the beggar in the story ?

Please share your views in the comments.

A Man and The God

a lion at the zoo

Image via Wikipedia

I heard this story during one of the personal development courses I attended recently. I think it is worth sharing with you all.

There was a man who constantly complained to the God that there is so much misery in the world, and that the God is not taking care of the World he created in the first place. The Man just complained and whined and nothing more.

Then one day, The God appeared to him in his dreams. The man complained "in person" to The God. After all, how many times does one get to talk to the God, even if it was in your Dreams. The Man made full use of it. The God listened and He smiled. He Said : "I created the world. Sure there are unhappy people in the world. But I also created You"
That was it. The Man woke up from the Dream. God always speaks in mysterious ways. The Man had no clue what the God meant. He was just happy that he could complain to the God Herself.

Days Passed. The Man was back to his routine on whining. After after a few days, there was another dream.
The Man saw that there was a wounded Fox, who could not hunt for food. The Fox was weakening. The Man thought : "I was right. There is so much sadness in this world. The God isn't doing his job". Then he saw there was a lion(ess?) who had hunted a dear. The Lion ate just the portion of his kill, and left. The wounded fox was near by. As soon as the lion left, he quickly approached the carcass, the ate rest of the dear.
Now the God appeared, and said to the man : "I created this fox, who is now wounded. But I took care of him as well. I made sure that even in his physical condition, he gets to eat."

The Next Day, the man decided that he need to do anything. He just strolled around the house. Did not go to work. The day passed, he got hungry. But no one served him the food. He was sad. Since he had not eaten through out the day, he felt weak, and dozed off.

In the dream, the God appeared to the Man. Man started complaining again : " God, I trusted you. Yesterday you told me that you take care of everyone. .. and today, I had to go hungry the entire day. That is not fair"

The God smiled and said : "I did not make you the Fox. I made you the Lion"

I think this is very thought provoking story. Lot of us go through the life thinking that someone will help us. But how many of us realize that "We are the Lion" ?
Feel free to share your thoughts in the comments.