॥ स्वक्ष ॥

To content | To menu | To search

2013 September 9 [Monday]

Ata tala varnam::Viriboni

A varnam is one of the hardest phase of the learning process in the shishya-parampara (student learning process) within the Karnatic classical school, a grounding in fundamentals of sorts. In my opinion, that intricacy makes them more soulful and complete as compared to, say, a kriti.

Varnam's are further classified into "pada" varnam and "ata-tala" varnams.  "Viriboni" is one such Ata-tala varnam set to Bhairavi ragam by Pacchimirium Sri Adiyappaiyer

Composition: Viriboni
Composer: Pacchimiriyam Adiyappa
Raga:  Bhairavi                 
Mela: Natabhairavi - 20

Type:  Varnam                  
Tala :  Khandajathi Ata

Arohana:    S G1 R2 G1 M1 P D2 N1 S || S Gi Ri Gi Ma Pa Dhi Ni S
Avarohana:S N1 D1 P M1 G1 R2 S      || S Ni Dha Pa Ma Gi Ri S
Bhashanga Raga: Chatusruti dhaivata


PALLAVI:
viribōṇi ninnē kōri ||
marulu konnadi-rā ||

ANUPALLAVI:
sarasuḍau dakṣiṇa dwāraka ||
sāmi śrī rājagōpāla dēva ||

CHARANAM:
chirunavvu mōmuna ||


If you are thinking this is just five lines, dont. Ata-tala varanams are very complex pada-varnams and we usually take 25 minutes to finish it. Yeah 25 minutes to practise five lines of lyrics!

Ata-tala varnam, as the name suggests, are set to a 14-beat cycle, far different as compared to a varnam set to Adi tala. That complexity in beats makes it complex and yet soulful, thanks to the complex svara structures.

They are also used for the Bharatnatyam dance recitals, where the ragam-tanam-pallavi is more intricate as compared to a regular varnam and it could go on for as long as 35-45 minutes, depending on the choreography and the visual story-telling the artiste-dancer indulges in.


2012 December 16 [Sunday]

Happy Pandas

I've always wanted to attend a scientific Foss hacking session in Python and last Sunday, I made that idea come true. So how do you even begin to describe a fantastic Sunday that got over even before it started. Well, that was how it felt in retrospect...  :-)

Having kick-started the Pydata-Pandas workshop-sprint, it was annoying to catch a viral bug the week before the sprint-workshop one is  organizing - talk about increasing the stress levels. The cold weather did add to my discomfort, but could not dent my enthusiasm - I was organising my first event on a whim, at short notice in a new city (country?) where I hardly knew anyone, not to mention it was at the start of the Holiday Season! See what I mean about having perfect timing ... gee, what was I thinking!?!

Aahz announced it on the Pythonsprints site and soon enough Sunday dawned bright and shiny. I reached the Pivotal Labs Manhattan office to find Asheesh calmly sprawled on the ground calmly munching on croissants and sipping Java (err..coffee). We had planned to come in a little earlier incase someone needed installation help. I had not eaten any breakfast but I was more stressed than hungry as this was the first event I was organizing in an alien country. I declined the yummy snacks and nervously wondered if Chang would show up?; ... will all the people who registered show up?; ... this was the Sunday before the Christmas week and maybe everyone may decide to sleep-in or go off on a holiday; would Saturday have been a better choice, or maybe we should not have kept it free - what if nobody came despite registering, what if ....   oh, well..the monkey-mind was hard at work :-P

Disastrous thoughts were stronger than the currents of the Niagara, when Chang and Emily made their appearance and I managed to make small conversation as the stress ebbed away. Things were sunnier when JT arrived and opened the doors, leaving me with less time to indulge my monkey-mind. We all got busy setting up the space for the event, arranged the tables and chairs, checked if enough power-points were available, checked the video camera, set up the name tags, did a recce of the adjoining kitchen.

Pivotal Labs has the nicest open kitchen, well-stocked with a variety of snacks, fruits, nuts and a large variety of drinks that cater to all taste buds. I hate carbonated sugary drinks and artificial flavouring which restricts my choice to drinking H2O, but to my surprise there was coconut water. Now if you liked your pint of beer while coding, the PL kitchen had that too. A big shout-out (Thank You :)) in gratitude to Pivotal Labs for being the most gracious host an organizer could ask for!

Back to the tiny tasks bits, I got a print out of Chang's presentation so he could have his notes handy during the workshop. The machine was a Mac, so ipython files would not work. The solution was a PDF. When you are organising an event like this there may be small miniscule things that can hold up your event so you would need to plan and budget time for them. Someday I shall collate my thoughts on 'how to organise small events' like workshops and sprints in a new blog entry.

A little past 10 AM, I introduced Chang She to the assembled attendees, and Chang kick-started the Pandas workshop by walking us through the Pandas data structures for 1-dimensional, 2-dimensional and 3-dimensional data. He moved on to DataFrame components and indexing, accessing data via files and Databases, Broadcasting and some basic Statistical computations. 

It was not all theory, as all the participants were following and experimenting on their laptops, in part, thanks to Asheesh's excellent "Laptop setup guide", enabling attendees to come with configured machines, making it easier to get going with Pandas. They worked on the small tasks and exercises that Chang gave out as the session progressed.

Soon it was lunch time and Asheesh being in-charge of the food (and the finances), did an awesome job of keeping us well-fed - we had Vegitarian wraps, Egg wraps and Hummus wraps, and Salads. That was the first meal of the day for me and over lunch I got to know a nice group of interesting people; with the conversation meandering around scientific programming with Python, Julia and R-language, different programming environments, our offices, work, etc..

Small talk and big lunch over, it was now time to Sprint - not literally, just the mental hacking kind! Chang split us up into small groups of 2-3 people and it was very exciting to see the attendees pored over their machines, trying to tackle Pandas bugs.  Working in small groups of 2 (or 3) people meant Chang could walk around and talk to each group to help and guide them. He was ably aided by Asheesh who also went around helping other sprinters, answering questions, etc...

I was neck deep in the Pandas code and a flash went off - looked up to see Asheesh behind the lens. Reminded me that I had totally forgotten to click pictures. Having organized multiple workshops over the last few years, Asheesh was an experienced pro unlike the rookie (me) organizing her first event. Pictures speak a thousand words:
[0] https://plus.google.com/photos/113578342347990591936/albums/5823492237517007505?authkey=CIC53t-xnYGVZQ
[1] http://www.flickr.com/photos/paulproteus/sets/72157632277350121/detail/


The sprint went on till evening, when finally at 1745 hours, Pivotal Labs had to ask us to leave. Yeah, we had so much fun that they had to tell us it was time to go home !

For those who love numbers, enjoy these statistics. We had 31 registrations (Capped at 30, but we had a waiting list that accommodated the cancellations.) and 18 people attended the Pandas Workshop-Sprint, with 7 female hackers, which makes it a cool 39% female attendees :-))  Infact, three female researchers had to opt out due to other obligations during the holiday season. The most amazing email was from a person who missed the registration by a few minutes, wanting to drop by on Sunday morning hoping for last minute cancellations. _That_ was the kind of response I would have expected for a talk, never for a Sprint!

Ofcourse, this entire event would not have been possible without our generous sponsors. A huge Thank you to:
* Chang She for conducting the workshop.
* Pivotal Labs, our generous host for the day -Thanks JT for spending an entire Sunday with us.
* The Python Software Foundation, whose generous grant for "Breakfast+Lunch and Asheesh's travel from Boston", kept us fueled and
on track all day.
* O'reilly Media, who gave all attendees a free E-book copy of Wes McKinney's "Pandas for Data Analysis", including a 40% discount on the
print copy of Wes's book.

Thank You Everyone !


2012 December 4 [Tuesday]

Announcing the Pandas Workshop Sprint

Positively thrilled to announce the one-day hands-on intensive Pandas workshop and sprint for new contributors with Chang She - a Pandas core-dev leading the sprint.  Its 4 am'ish and I just finished spamming a few mailing lists, IRC channels and thought I'll write a blog-post if I must be energetically expensive.

You can find the workshop details on the wiki: https://github.com/svaksha/PyData-Workshop-Sprint/wiki/2012-NYC but here is a short "how did it happen in a week recap". Last month, I had attended a day-long "Introduction to JavaScript" by JohnResig, and I enjoyed it. Later, I met some PyLadies and on the train ride home, I felt that we needed to have a proper workshop, core-dev in attendance, leading us along the way.

Given that there was a PyData conference in NY a few weeks ago, this was the place to be at, so I pinged the diversity list for speakers, and of course IRC - The response was phenomenal and unbelievable - People went out of their way to make my wish come true - they tweeted, emailed, chatted on IRC, gave me advice, introduced me to core-devs, volunteered for the event, pinged friends for hosting space, encouraged me to write to the PSF/sprints funding, ... and on and on.

I have so many people to thank that there will be a longer blog post, post the event  ...yeah, the list is long but maybe if I get started now (and my apologies if I have missed your name  ... feel free to gently lart me, its 4AM and I am sleep deprived :)) ...  Alphabetically-ordered XXXL THANK YOU'S to: Aahz, Asheesh, Brian, Carl, Chang, David, Diana, Jesse, Josh Knowles, Krissy, Meghan, Sheila, Steve, Wes.


2012 November 17 [Saturday]

Pycon Canada 2012 in Toronto

import pycon
from pycommunity import AwesomePeople

canada = pycon.path.abspath(pycon.path.dirname(__file__))
README = open(pycon.path.join(canada, 'README.rst')).read()
__version__ = '0.01'

requires = [
    'diana',
    'daniel',
    'david',
    'kay',
'micheal',
    'nicola',
    'taavi',
    ]

Patches welcome!

Last weekend, at this moment, I was giving a technical talk at Pycon Canada, my first. Right now, I am still wallowing in the fun and warmth of friendships (some old, some new) that thawed the cold Canadian weather. It was the most mentally simulating, energy-packed experience I've had.  Oh, wait...I say that about all the PyCon conferences I attend - Well, this is my second PyCon but the first speaking gig, and it has, as before, been about meeting some of the smartest people and having the most intellectually simulating discussions with them, learning from them and having a whale of a time. Wish all my weekends were this much fUn! The Python community is known for just that - their fabulously fantastic community, which attracted me to the language (no, I love the syntax too) and has kept me hooked.

Thanks to the change in climate (thanks Sandy!), I had a migrane that got worse on the plane ride on Friday morning and I was much happier landing in a slightly warmer and dry climate in Toronto. Enjoyed the shortest ferry ride of my life and reached the Metropolitan Hotel by 2pm to find the Google goodie-bags waiting for us at the hotel room - such a nice surprise, thanks Google!  Went for a long walk in the afternoon - its a relief to be able to walk around and see the city and its inhabitants without men bumping into you, or tripping yourself over jutting stones on the sidewalk (erm...whenever Indian roads have a sidewalk), the calmness of being able to stop and click pictures without worrying about someone "accidentally" (it always is, isnt it?) feeling you up while you were just standing there admiring a monument ........ Oh, well... never mind, you get the picture!

Later that evening, there was a casual mixer event enabling attendees, speakers and some awesome sponsors (one of them being Google, whose Diversity grant made this conference a reality for me) to register, hang out, and chat before the conference, with food and drinks at the venue bar open to all... and oh, we ate some yummy cake. Mixers before your conference is a smart way to avoid the rush and long lines that will queue up to register on the morning of your conference, a nightmare if you are short on volunteers.

I managed to reach the venue thanks to Suzanne (who I randomly stopped on the road to ask for directions, instead she ended up dropping me off till the venue - its amazing how one meets kind souls), met Laura at the registration desk who saw that every attendee had their badges and tags. Nicola introduced me to Sheila, who suddenly morphed into a real person instead of an email address with a picture attached to it. In a global distributed space knit via bits and bytes, our identities are unequivocally tied to an email, twitter, G+/FB account now.

Met more interesting people and had the longest discussion with Mark Eichin and his friend Laura, on a range of technical topics, mobile technology, languages, and not excluding the mandatory talk about the DFSG and licenses in FOSS - talking legalese is the most important thing when you meet a DD (j/k). After the party, I returned to the room, met Laren, another diversity grant recipient room-sharing with me. By now, the pounding in my head was worse and the pain would not let me sleep, so I kept re-editing my slides till I was tired enough to sleep.

On Saturday morning - Day One of the conference, Laren and me walked over to the venue and I went of into the Green Room where all the speakers were pampered with food, some space to sit and work with you laptop, more food, chat with other speakers while having even more food, but I had no taste buds so I took three Advil's and gave my first technical talk.  That done, I was free to go and watch talks but instead I went off to be a volunteer - this is the easiest way to make friends with some really cool people within the community who welcome and appreciate your contribution and efforts. Its also very humbling to see the PyConCA board members and speakers who volunteered to carry in the lunch boxes the caterer had dropped off.

Post lunch, I attended the "Numerical and Scientific Computing with Python" tutorial by David, listened some great speakers, spoke to more people, had interesting discussions on NLP and linguistics with Mike and DWF, and before I knew it, it was the end of the day, which means more food - snacks and drinks were available at the bar. Did I mention that Pycon-CA pampers you with food and drinks all through the day. At every break, there was something to munch on. Every where I looked there were food boxes, fruits / salad boxes, cookies, coffee, tea, drinks, water bottles, cakes, tacos, samosas (I noticed that those ran out really quickly as compared to the salads which is not surprising), strawberry and chocolate, juice, .... ummm..ok, you get the picture. You were very well-fed and taken care of. At one point I counted the number of laptops Vs. the food boxes on the table. Guess which was outnumbered!?

Sunday morning, being the second and final day of the conference, I attended talks on Graph databases in Python and Persona (identity/privacy, which is important to me) and later, Greg Wilson and a bunch of speakers in the green room had an interesting conversation on education and knowledge (or the lack thereof) in the current education system, what role do Universities and schools have to play within the system - are they redundant with their monolithic rigid structures, MOOC's, their pro's and cons, and how the internet and technology is changing the education system, whether sites like Udacity and Coursera (did you know that their business model allows them to sell your personal details to publishers like McGraw Hill and their ilk, who have apparently signed on the dotted line) are imparting knowledge to their users and learners at the risk of their privacy? Where exactly is creativity, mental development, critical thought, knowledge and learning today? That was more food for thought than the food around the table. Post lunch, I morphed into a Runner - yeah, its that person who runs behind each speaker! Katie and me were deputed to the Main hall speakers and got to see all the talks, including lightning talks, ending with Fernando's (not-to-be-missed) closing keynote.
Videos:
No matter how hard you try, you cannot attend every fantastic talk out there. When Carl sent across the video link to me, I was stunned by the excellent production quality. The first thought that crossed my mind was "Wow, that is a second career right there" and sure enough it is - these excellent videos are brought to you by nextdayvideo.com :

* Taavi showing you how pandas get a workout
* Elizabeth Leddy rocking the Main Hall
* Did you Test today?
* No conference is complete without a talk on "BigData"
* Brandon Rhodes on why he thinks Python is beautiful (a must see if you are a beginner to Python)

Wow, this post has gotten too long. Among all the things, I admire the organizational abilities of the board the most. The conference had awesome sponsors too, one of them being Google, whose Diversity grant made it possible for me to attend the event. Initially, when my talk was accepted, I had planned book the bus tickets in advance so that I could stretch the grant money to enable me to attend both the days of the conference. When I mentioned this to Diana, she worked her magic, enabling me to cover my flight bookings and also the hotel stay within the grant. Amazing team! Kudos to the PyCon-Canada team.

2012 August 29 [Wednesday]

Contributing to Libre software

"How do I start contributing to Libre Software?" is a very common question (I asked that too) one comes across on most FOSS lists. Today, I posted the following on a private list and was asked for a public link, so here goes:

SWOT

There are many Libre software projects to choose from, so choosing one project can be quite confusing when you are starting out. Do yourself a favor and take a few moments to do a SWOT (Strengths, Weaknesses, Opportunities and Threats) analysis before you decide to jump onto the Libre software bandwagon.

Its better to give yourself time to think (or write down) which technical area or field interests you
  • Which language do you want to program in?
  • Is it front-end software or backend stuff?
  • Web programming or something else?
  • Do you like writing system software or application level software?
  • Or, do you like libraries, prefer working with algorithms/statistical applications, etc..

Once you have figured out your field of interest, its easier to shortlist something and get started on finding a project to work on.

From Failure to Success

If you are still having a hard time figuring out your interests, fret not ! Its OK to NOT know what you want when you are starting out - make sure you keep an open mind and be willing to try out new things that are unfamiliar (and sometimes hard and confusing) and/or fail at them. Failure is a good teacher!

Its what you do when you fail that distinguishes you from a successful person. If you give up your failure remains a failure BUT if you decide to practice and try again (and Again and AGAIN), you can convert your failure into success. Remember, the bridge between failure and success is Practice!


FINDING A PROJECT

As I mentioned above, there are so many Libre software projects that its overwhelming at the outset. Having figured out your field, dont randomly visiting a bug-tracker and try to solve bugs, which is not a bad idea if you have only a few hours per week. However, if you want to wade a little deeper, try using Google to your advantage - scan the orgs at the Google Summer of Code.

This recently concluded program, has a ready list of organisations to choose from and the 2012 list is available at: http://www.google-melange.com/gsoc/program/accepted_orgs/google/gsoc2012. Besides these few hundred GSoC Orgs,
However, if you are interested in working outside of the SoC span, projects are always interested in contributors and would welcome your efforts 24x7x365. That said, these SoC tasks require a longer commitment of 40 hours per week in terms of time, so you need to decide what you want to do. Its not part-time work, so commitment and rigor is a prerequisite.

FOUND A TASK, WHAT NEXT ?

After you have searched Melange (or ESA) for keywords of your choice, visit the Ideas page for each organisation. Here, you will find a list of tasks ranked as per preference or difficulty level (NB: This entirely depends on the Org). Remember to cross-check with the Melange page if the task has already been completed via GSoC, or not.

If a task is still available, find out what is required to get started on it and prepare a short abstract. This will help you to,
  • figure out the development stack vis-a-vis your skillset,
  • realise how much time and effort is required to bridge the gap, if any ;
  • prepare a timeline estimate. (Dont obsess over the timeline as it is just an estimate and it will vary if the Org changes any requirements.)

These done, talk to the Org - always, Always, ALWAYS talk to the Org _before_ you start work on anything.
Just because a task is listed on the Ideas page does not mean its a part of their workflow (which can always change), nor is the opposite true. The best way to find out is to talk to them, first. Again, remember that these SoC tasks require a longer commitment in terms of time.

COMMUNICATING WITH LIBRE COMMUNITIES

Most Libre projects have their own communication channels. This could be via Mailing lists or Forums, including IRC channels on dedicated servers or on freenode. Its important to work with them via these public channels and that means learning to communicate and not worry about asking silly (psst..there are none!) questions.
Communicating with the core developer and/or mentors and community of users is crucial - they can be an invaluable source for ideas and helpful hints. Many projects have separate lists (and IRC channels) for users and developers. Join them and introduce yourself (or lurk around to get a hang of how things work) and when you are ready, do talk about the task you want to work on.

A development mailing list, where the core developers would be available, is distinguishable via the "*-devel" mailing address. Same is true for IRC channels - If you like CLI tools, try Irssi or Quassel if you want a GUI client. Pick your poison from this list of IRC clients.

EXPERIMENT WITH THE DEVELOPMENT STACK

Finally, and most importantly, you must be comfortable working with the software the project uses - that means, you should be able to clone and get the software to install and work on your local machine. Here, communicating with your Org helps - You can ask for help if you have hardware or software issues, clarify installation and dependency issues, etc... No software works flawlessly (else, people would be out of jobs :)) and Libre software is no exception - the only difference being "software development on a libre / public scale".

Another aspect of getting familiar with the development stack is familiarizing yourself with the projects internal system - Since, each project uses its own bug tracker and DCVS, Wiki (for documentation), Email/Forum and IRC communication system, take some time to get familiar with each of these. If you plan to stick around for any length of time, you would be using some, or, all the software stacks they use on a regular basis.

Your transition from newbie to active contributor is a lot faster when you are comfortable with the development stack. Doing your homework before the SoC program starts will give you the confidence required to grok it enough to start working on the code-base, suggest changes or solve bugs, etc..

I hope these suggestions help you find your niche learning shell to contribute to, and of course, welcome to the Libre software. Have fun!

2012 August 3 [Friday]

Rest in peace Lawgon

Am breaking a long hiatus from blogging to report a really sad news :: Kenneth Gonsalves, (lawgon on IRC), a long time Free/Libre software (especially INPycon) contributor is no more. When I first saw this mail in my inbox, I could not believe it was true.

My first interaction with Lawgon was via the LinuxChix mailing lists. Back then, I was surprised to see posts from a "nilgiris" domain name and I assumed he was an USA-NRI actively posting on their lists. Later, via the Mumbai-LUG list when I had tried to install his "avsap" accounting software ~ it would not work on my machine and I wrote him a mail with the gory error details. Finally, in 2007, I met "lawgon" on IRC, ##linux-india. I was never an IRC person but when he got banned from the channel, I had a long argument with Devdas (f3ew on IRC) about it - mostly because I felt that the rules were not clear, and even more importantly, felt that rules ought to be implemented uniformly, sans cronyism.

A few moons later, I met him in real life for the first time at the first formation meet for Fosscomm and sat next to him through the whole meeting. In my eyes, he was like a father-figure, a person you can talk to freely, someone who didnt see IT and FLOSS as the road to self-publicity, fame and riches. Rather, he saw Libre software as I did - of, for and by the people. It was nice talking to him and hear the stories via the work he had done at NRC-Foss/AU-KBC.

He was someone I respected because unlike some FOSS people, he actually wrote and released his code publicly: https://bitbucket.org/lawgon, and worked within the community, had no illusions or superiority complex about himself. Most of us in the FLOSS community were his kids age and in my interactions I didnt find him patronizing nor elitist in "demanding" we respect his age. Quite the opposite, he never hesitated to ask for technical help from people younger than him, quite ego less. His fiery rants on his blog (http://lawgon.livejournal.com/) always made me chuckle. There are very few blogs I follow and thusfar, I've read every post of his - strong opinions peppered with character. His own!

In his mailing list communication, he could be quite blunt in his comments, and I've had my moments sparring with him on the lists, but if you take a moment to look behind the scenes, his honesty and sincerity towards Libre software showed. I remember his mail asking me not to leave the Mumbai LUG list and my response on the kind of Libre community (the lack thereof) we foster, which, to my surprise, found an echo with him. I remember his long email rant (about someone which I wont get into in public) where he mentioned "...and I'm scared of you" ~ yeah, I too scrubbed my eyes and smiled at his droll sense of humor, as I typed out an apology.

I remember his IRC comment that he wanted his daughter to meet me and my curiosity piqued ~ this was long before I had met him in real life but after meeting me in his blog he used the word "legendary Svaksha" and I was surprised that it was not "fiery Svaksha" given my frank replies. Going by the stereotypical Indian fathers attitude, I very much doubted if they would want their daughters to be like me - Or maybe it was his sense of humor - I'll never know!? Some moons later an email asking for some information on "legal rights of women in India" for her coursework, IRC discussions on virtualenvwrapper (he asked me why I wanted to use it and for a moment I thought he was testing me -- I could not imagine a long-time Python developer (atleast a lot longer than me) asking me that, unless he was pulling my leg or if it was an interview question?), discussing a recent Python workshop he held at Kerala, and so many other interactions... {Edit1:: His recent mail on the open source business model has some excellent advice for wannabe entrepreneurs.}

I was hoping to meet him at InPycon this year but now the conference wont be the same without him. I hope and pray his family finds the strength to carry on without him and may his soul rest in peace! You will be missed Lawgon..and try not to kickstart a "GPL Vs. BSD" argument in heaven!

2012 March 11 [Sunday]

Programming with Julia

Using (or talking) about R makes me want to rant sometimes and if you've ever written a line of Fortran code, you would have certainly wanted to experiment with a new language stack for scientific programming. Yup, I am aware of scipy, numpy, sympy, sage, et al.. and despite their existence, when I came across this language for scientific programming in January this year, sheer curiosity** made me give it a spin.

Starting the year with a scientific language that has clean syntax and some nicer documentation made me feel warm and fuzzy, until, it refused to build due to a BLAS dependency. That problem didnt last for long though, as I was able to pull a fresh commit which had fixed this issue. Its nice to see an active team having interesting (read, sane) development discussions. A Matlab coder has opined thus about Julia while an R programmer has done a comparison between Julia and R.

After some trial-and-error, I managed to grok its syntax, enough to rewrite an old fortran code in JuliaLang [Julia is still pre-release and I ran Version 0.0.0+1331430882.r69af from Commit 69afb7032d (2012-03-11 07:39:42)]:

#!/usr/bin/env julia
# -*- coding: utf-8 -*-
#*****************************************************************************
# COPYRIGHT (C) 2012 VidAyer <svaksha@gmail.com>
# LICENSE: GNU AGPLv3, http://www.gnu.org/licenses/agpl-3.0.html
#*****************************************************************************
# http://en.wikipedia.org/wiki/Pearson_correlation#Geometric_interpretation
# Example, suppose 5 countries have gross national products
# of 1, 2, 3, 5, and 8 billion dollars, resp. Suppose these 5 countries
# (in the same order) are found to have 11%, 12%, 13%, 15%, and
# 18% poverty. Then let x and y be ordered 5-element vectors containing
# the above data: x = (1, 2, 3, 5, 8) and y = (0.11, 0.12, 0.13, 0.15, 0.18).
#*****************************************************************************

gnp = [1, 2, 3, 5, 8]
poverty = [0.11, 0.12, 0.13, 0.15, 0.18]
vectorgnpgnp = 0.0
vectorpovertypoverty = 0.0
vectorgnppoverty = 0.0
costheta = 0.0
n = 1.0

vectorgnpgnp = vectorgnpgnp + gnp[n]*gnp[n]
vectorpovertypoverty = vectorpovertypoverty + poverty[n]*poverty[n]
vectorgnppoverty = vectorgnppoverty + gnp[n]*poverty[n]
costheta = vectorgnppoverty / (sqrt(vectorgnpgnp)*sqrt(vectorpovertypoverty))

# Terminal Out
println("The Vector product value of Cos Theta is: ",costheta)   # correct value should be 0.9208   
println("The Vector product of GNP and Poverty coordinates:  ",vectorgnppoverty) # correct value should be 2.930   
println("The Vector product of GNP is:  ",vectorgnpgnp) # correct value should be 103.0   
println("The Vector product of Poverty coordinates is:  ",vectorpovertypoverty) # correct value should be 0.9830E-01


I was avoiding blogging this code snippet here - code belongs in a DVCS, not in a blog. But I've intentionally not uploaded this program to github because its not fully functional yet -- see my comments within the code. When I cross-check the results from the fortran code (or as mentioned in the WP page --Geometric_interpretation.) I find "sqrt" isnt working as it should -- I need to figure out the syntax a wee bit more, so I'll push this when it works perfectly.


** PS: That it was named after a woman (or atleast I like to think so) isnt what prompted my interest! No kidding!

2011 July 13 [Wednesday]

E-filing IncomeTax returns in india

The Indian government agency that runs the Income-Tax portal  "incometaxindiaefiling.gov.in" has very thoughtfully provided an electronic filing facility for its citizens which enables all tax-payers to file their Tax returns without a trip to the local Income Tax Office. However, their thoughtfulness only extends to Windows users as they have provided the e-forms only in the MSOffice .xls format which will not run any macros on a non-Windows platform. Now, I have not used Windows for many years now and having been forced to pay for a half-baked edition pre-installed on my laptop, I could not wait for my warranty to finish and free up that disk space.

Last week, I found two Open-Office hacks for the ITR forms 1 and 2 at:

However, the Open-Office  supported ITR-2 form from KSEB is borked -- has locked cells which will not work nor retrieve macros in Open-Office and many fields and cells are protected, making it impossible to enter data so that the Tax macros work properly. The ITR-2 form (available from the above link) has some errors in the conversion for Open Office --In Part B - TI in Computation of total income. It does not allow you to enter any figures in the following fields:

1. Salaries (6 of Schedule S)
2. Income from house property (C of Schedule-HP) (Enter nil if loss)
3. Capital gains
4. Income from other sources
This prevents the macro from tabulating the Total (Example: A + B +Total of (I) for all fields), due to which its not possible to tabulate the final tax payable.

Does anyone know how to get locked cell macros to work in Open-Office? All help and pointers to get these hacks working on Open-Office would be a big help. TIA.

PS: FWIW, I had asked this question on the local LUG list, which was a waste as one list member, who didnt read the question, chose to focus his undivided attention on the terrible mistake I made -- used the word  'company'. Thereafter, it was a fun exercise in "I-am-the-loudest-jerk-and-bully-here" ad hominem and logical fallacies. Yeah, total WIN on the technical help scale. The smartz knocked my socks off! 

2011 June 13 [Monday]

TiddlyWiki

I've been using TiddlyWiki for some years as a personal wiki space and although the first version was a bit clumsy about saving and searching ; today, it is the most re-usable, portable, easily shared self-contained wiki that you can find to manage your local tasks and information.

Mainly, I use TiddlyWiki to maintain notes, store and manage links. While there are online sites like Delicious and Stumbleupon which facilitate users sharing weblinks, they dont have the highly customizable features that Tiddlywiki has ; namely, the freedom to customize, edit pages and add oodles of content (ex. store phone nos, or other personal data which you dont want to store on a public space). Sometimes, I want to add IRC conversation snippets or installation notes as a future reference for something I had tried previously and found useful and it makes it very easy to add new tiddlers instantly. This level of fine-grained user-level customization is not available in any online site.

I wanted to share this so that folks who like wikis for the ease of editing can use Tiddlywiki instead of struggling to maintain local wiki installations on their servers. Dont forget that Tiddlywiki is the only wiki that does not need a server-side implementation and runs entirely on your browser.

TiddlyWiki is built on a combination of HTML, CSS and JavaScript and you can start by downloading an empty.html page to start using it. Here is the sourcecode if you want to contribute new features, and they also have a community space, some tutorials, a bug tracker, and many freely available themes to customize your local wikipage. In short, the uses are as (un)limited as your imagination is. Enjoy!

2011 May 28 [Saturday]

buying LIC Jeevan Dukh insurance policy from L&T Finance

L&T Finance, Bangalore, sells personalized financial solutions, like LIC's life insurance policies to retail customers and a very pushy marketing person managed to hound us since last year until we finally succumbed into buying a Jeevan Anand insurance policy. Little did we know that instead of 'Anand' (joy) it would be the beginning of a period of "Dukh" (sadness) -- after the INR 54,157/- cheque was encashed by them, the sales agent says there would be a medical test and their office would call us to schedule it. WTH?

Thereafter, S.I.L.E.N.C.E.

The silence lasted for two months as the sales agent at the Bangalore office would not take our calls nor did he call us back with details of when the medical test would be scheduled -- So why did the sales guy NOT mention an important detail like a "medical test" BEFORE taking the INR. 54,157/- cheque when he knew it was a senior citizen taking the policy, nor was this mentioned during the zillion phone calls when he wanted to sell the policy?

More S.I.L.E.N.C.E.

After some hassle, we got the Bangalore office number and it was our duty to keep calling them to find out the status of our policy. Finally, we heard that the sales agent had left their employment, talk to a manager --Err..what happened to the INR. 54,157/- cheque that L&T had encashed on 02-Feb-2011 --were they going to return the money to us or grant the Jeevan Anand policy? Nobody at the L&T Finance office in Bangalore knew who was handling the case, atleast that is what we were told upon repeatedly calling them, being shunted around to speak to different employees, and after many weeks of excuses and false assurances it took them only TWO months to schedule the first medical test.

Medical done, we still had no idea if they were actually going to issue a policy, or not. More silence followed and a week of calling them incessantly (the bane of mobile phones and people not picking your calls) were told that the medical test results would go to the L&T Hyderabad office which would make a decision. Upon more calls from us (the L&T Finance Bangalore employees just dont bother to inform us of the policy status) we were told that there would be another medical test....wait, did the Bangalore office realize this TWO months after the first medical test? That they would need to reschedule the second medical test and we were supposed to await a call (which would never come) informing us when to go for the test.

Days have passed, but there was no call, only S.I.L.E.N.C.E for company.

As usual, we called the local L&T Finance employee -- if they dont wish to schedule the second medical test and make a decision regarding the health eligibility, the least they could do was to return the money. Instead, we were given the excuse that it was the Hyderabad office making the decision and their local Bangalore office was just collecting documents and couriering it to Hyderabad for final decisions.

L&T Finance, if you dont intend to give the LIC Jeevan Anand policy, the least you can do is return the 54,157/- Rupees that you encashed FOUR months ago. Is this the way you treat senior citizens, by keeping their money in limbo, without interest for FOUR months while you take your own sweet time to make a decision? Is this is the "emphasis on systematic and planned investments" service L&T Finance provides? Why do the L&T Finance sales agent NOT mention important deal-breakers like a "medical tests" BEFORE encashing the INR.54,157/- cheque or during the zillion phone calls when they hound you to sell their insurance policies --or is that also a part of the "continuous monitoring and active re-balancing depending on changing needs and market dynamics" service that LT sales agents use to divest the senior citizens of their life-savings? I wonder how many other senior citizens have paid you their hard-earned money for which you dont pay any interest whatsoever, while taking half a year to make a simple decision.

I had always thought that L&T was a respectable brand name and enjoyed so much goodwill that I would have trusted them blindly BUT the L&T Finance employees have managed to destroy the enormous goodwill that the company enjoyed. Being a Finance company they would know that had this amount been invested in the simplest investment plan in any government bank's fixed deposit scheme, it would have earned around 10% interest for the last half year. Shame on you L&T Finance --do the math and return INR. 54,157/- with interest if you are not interested in allotting the Jeevan Anand policy immediately!

UPDATE [2011may28]:: Others personal experience and public opinions on LIC's Jeevan Anand policy:

[0] http://www.vinayahs.com/archives/2011/01/18/how-to-surrender-and-close-your-lic-jeevan-anand-life-insurance-policy/
[1] http://hubpages.com/hub/MY-VIEW-ON-LICS-JEEVAN-ANAND
[2] http://www.mouthshut.com/product-reviews/Jeevan-Anand-925037407
[3] http://ritusays.wordpress.com/2011/01/21/lic-life-insurance-corporation-of-india-jeevan-anand-endowment-assurance-and-life-insurance-policy/
[4] http://www.r2iclubforums.com/forums/showthread.php/20963-LIC-Jeevan-Anand-1


UPDATE [2011jun30]:: Soon after this blog was published, the L&T company representative contacted us and quickly arranged for the second test but a few days after that they were still unable to tell if LIC would issue the policy or not. The LIC agent also contacted us and they came up with a new scheme to enroll in (read, which entails us spending more on premiums with very little to show in terms of returns). In all it sounded like a terrible bargain and we insisted they return the 54,157/- Rupees without interest. There was some back-and-forth and we finally decided that if they didnt return the money (we were not even asking for the 6 months of interest at 10%), we would go the legal route where we would claim interest and harassment damages. LIC decided to return the money and we got the check this week. End of story.

2011 May 3 [Tuesday]

Building packages from source tutorial by DebianWomen

DW is conducting a packaging tutorial. Do note, this is not a tutorial for upstream package building from source, but still, its worth listening to. Here is Marga's announcement::


Are you enthusiastic about Debian and thinking about contributing? We want to guide you with the basics.

We are convinced that there are a lot of people out there that want to get involved with Free Software but don't know where to start.  For Debian, the most common task you'll do as a contributor is rebuilding a package.

The Debian Women project, in collaboration with the OpenHatch project, will be holding an IRC event to help people that want to compile their first Debian package from source, and apply their first patch.

The event

On Saturday May 7th, two tutorial sessions will be held on #debian-women on irc.debian.org to help people rebuild a package for the first time.
The earlier session, suggested for those that live in Oceania, Asia, Africa and Europe, will be held at 11:00 UTC. 

The later session, suggested for those that live in the Americas, will be held at 22:00 UTC. You can find out the exact time in your timezone by using the timezone converter: http://www.timezoneconverter.com/cgi-bin/tzc.tzc

There will be people available to answer questions and generally help out with any difficulties that might arise all along the day.

More info at http://wiki.debian.org/DebianWomen/BuildItEvent

Intended audience

This event is aimed to anyone who wants to rebuild a Debian package for the first time, it's a simple task that doesn't require any previous knowledge, only a working installation of Debian (or Ubuntu, or other Debian-derived system).  We want to particularly encourage women who want to get involved, to take their first steps in
contributing to Free Software, but everybody is welcome.

More about IRC

IRC is a real-time chat system you can use to get in touch with members of the Debian community. You can connect to IRC through lots of different clients, including xchat, pidgin and konversation.

About Debian Women

The Debian Women project seeks to balance and diversify the Debian Project by actively engaging with interested women and encouraging them to become more involved with Debian. http://women.debian.org

About OpenHatch

OpenHatch is an open source community aiming to help newcomers find their way into free software projects. It works towards this goal through on-line and outreach events. This event is a reappropriation of the OpenHatch "Build it" events.

--
Besos,
Marga

2011 April 30 [Saturday]

Internet free speech meme-"Casteism can get you jailed but Sexism and Ageism are acceptable in Indian politics"

I avoid meme's but had to rethink my stance after the Information Technology Rules, 2011, (aka the Electronic Service Delivery) Act was quietly implemented last month. This Act states that any content that is "threatening to the unity, integrity, defense, security or sovereignty of India, friendly relations with foreign states or public order, including any content on the web that is blasphemous, scandalous, defames, or can be considered obscene", eligible for immediate removal by the hosting provider upon order from the Department of Information and Technology. Now, that was the long-winded legalese which is so darn vague but here is the short version: "you cannot criticize politicians publicly, ever."

Such draconian censorship rules have no place in a democracy that values free-speech and this calls for a  free speech meme -- I'm reproducing content (with author credits) from other websites which criticizes politicians on my blog, making it harder for DIT/gov.in to implement censorship successfully. For starters, Antara Sen criticizing the Communists for encouraging Sexism and Ageism in Indian politics.

By Antara Dev Sen , Created 30 Apr 2011 - 00:00

Which is worse — calling one of our finest politicians and a respected elder statesman a mummified corpse, a dead man who has no business opening his mouth? Or saying that the spirited woman leader and challenger to the Communist throne of Bengal ignores funds from Bengaluru to get money from the United States, much like bazaar women forget smaller clients when they get bigger patrons? Going by the collective shock and horror, the latter comment wins hands down.


What? He called her a prostitute? Do they stop at nothing? Veteran Communist Party of India-Marxist (CPI-M) leader and member of Parliament Anil Basu was promptly pilloried by all concerned, including his own party members. West Bengal chief minister Buddhadeb Bhattacharjee apologised publicly, censured Mr Basu and pulled him out of campaigning. What he had said was uncivilised and unbecoming of a Communist, lamented the mortified chief minister. It was unpardonable.


True. Mr Basu had used shocking language and imagery, suggesting (thanks to the blinding hatred for the US that Communists have) that the US was Mamata Banerjee’s “bhaataar” (slang for a woman’s keeper) now, so she didn’t have to look at smaller homegrown patrons in Bengaluru, Chennai or Andhra Pradesh. Like the women of Sonagachhi (Kolkata’s red light district), she had dumped smaller babus for bigger ones.


Now, I hate to break this to our slanderous comrade and gentlefolk horrified by the insult, but moving from smaller to bigger clients is not the business strategy of prostitutes alone. It’s common sense. It happens in all professional and business dealings, in all societies and in all times. So Mr Basu’s sex-worker imagery was not about the logic of fund-raising — it was about using degrading stereotypes to insult a woman.


This jibe shows how regressively patriarchal even our Communist bastion is. Sex workers can be invoked as an insult in a state that came to power professing to fight for workers’ rights and dignity of labour and clung to power for more than three decades with the muscle provided by lowly workers of all kinds. Could the comrade have made similar derogatory allusions to low-caste tanners or to Doms who burn corpses? Perhaps not. But chastity is such a deep need of Indian patriarchy that even a seasoned Communist can snigger at sex workers. They aren’t really workers, just fallen women. More than Ms Banerjee, it is prostitutes who have been insulted here.


But the intent was to hit out at the deviant woman who dared to challenge the status quo. And this is not the first time that Ms Banerjee — herself adept at insult — has been attacked with sexist tools. During the Singur agitation, when she was busy taking our breath away with her astounding dramatics, this same Mr Basu had declared that if he had his way he would have dragged her by her hair and plonked her back home instead of allowing her to sit in dharnas. Clearly, for this little caveman in a dhoti, home is where the woman belongs. Not on the streets or in sit-ins. Not in politics.


In fact, the cunning Trinamul Congress chief has been called “brain dead” by the Communists — an accusation so far from the truth that it makes you wonder whether the Communists have completely lost their minds. And when Ms Banerjee first came up with her slogan “Ma, maati, maanush!” (mother, earth, people) some Left leaders had sniggered, “But she isn’t a mother — what does she know of motherhood?” In a patriarchal society, the good woman is domesticated and acceptable as a wife, a mother, a daughter-in-law. But if you are an unmarried politician woman — gosh, you have a problem, sister! You don’t fit in, you are hugely inadequate.


And it is not always men who point out this inadequacy. Some time ago, the feisty Renuka Chowdhury, then minister for women and child development, had hit out at Mayawati on the Aarushi Talwar murder case. She herself was thinking as a mother, she announced righteously, but Ms Mayawati was not a mother, she could only think as a chief minister. And was therefore wrong, of course. Shortly thereafter, Maneka Gandhi was not allowed to flout rules to meet her son Varun in a Uttar Pradesh jail. Ms Mayawati is not a mother, Ms Gandhi hit back, how could she understand a mother’s concerns?


Ages ago, a young Indira Gandhi was called a “goongi gudiya” (a dumb doll) by her respectable opponents. When she grew to become the most powerful Prime Minister India ever had, she was lauded as “the only man in her Cabinet”. Patriarchal symbolism plays a vital role in our perception of political leaders.


The wife, widow or daughter-in-law is very readily acceptable, and most of our women leaders play that role beautifully. And those who don’t — like the unmarried Ms Mayawati or Ms Banerjee — have many extra battles to fight. One way of sidestepping this is to become the universal mother, like “Amma” Jayalalithaa. But the “Behenji” or the “Didi” can only be stereotyped as a dry, heartless, careerist old maid.


But plugging into derogatory stereotypes has been part of the game of politics. What I find alarming is our refusal to see such insults when they are not included in the high-profile, politicised identity groups. Casteism in poll campaigns can get you jailed. Sexism is appalling and can get you in trouble. But ageism, however mean and hurtful, is acceptable.


Which is why I am shocked at the jibe of Bratya Basu, theatreperson and Trinamul Congress candidate in West Bengal, at Somnath Chatterjee. The former Lok Sabha Speaker, though expelled from the CPI(M) for putting the Indian Constitution before the party during the confidence vote, had generously agreed to canvass for CPI(M) minister Gautam Deb. Quick as a flash, Mr Bratya Basu — the challenger in the minister’s constituency, the “intellectual” and first-time politician — attacked the elder statesman, calling him a mummified corpse out of a coffin. Why should anyone listen to him?

An Egyptian mummy, he grimaced for effect, why is he talking in Bengali? He should talk in hieroglyphics!

Maybe civil campaigning is indeed the language of the dead. Maybe lumpenised politics does not need informed debate — either on the campaign trail or in Parliament, the highest seat of rowdy ruckus. Our democracy can just ride on vulgar name-calling and derogatory stereotypes. The vulgarisation of politics has bred a new language for a new age of ungracious, uncivil, illiberal politicians. And unless they are checked, this crude lot will breathe their own mean spirit into our wounded democracy.

Antara Dev Sen is editor of The Little Magazine. She can be contacted at: sen@littlemag.com

2011 April 15 [Friday]

Vidalia calling volunteers

Openhatch is holding a 'build it' initiative in collaboration with Vidalia which is the front-end for the proxy you installed on your system. Most importantly, for a change, has India-friendly timings instead of a graveyard shift(s) which make it hard for non-owls (like me) to attend meetings. So, if you have C/C++ skills, dont forget to join #vidalia on irc.oftc.net at 18:30 hrs, today and volunteer! Continue reading for more details from, https://blog.torproject.org/blog/vidalia-get-involved,

Hello everyone, for those who don't know me, I'm the one that's taking care of Vidalia these days.

The other day I was contacted by paulproteus in the #vidalia IRC channel about an initiative they (OpenHatch) are organizing called "Build It".

The idea

Open Source projects live and die depending on contributors and people that want to see the project evolve, but this isn't so easy sometimes. The guys behind the Build It initiative have a theory about this difficulty:

"...lots of users of free desktop software want to get involved in customizing or contributing to the project's development, but they haven't gotten to the first step of getting the program to compile."

Since I'm a Gentoo user for years now, the compilation part comes naturally to me and I haven't thought of this issue that way but it's an interesting approach.

The event

This week, people involved in Vidalia and other Open Source projects will be at a specific time online to help users (future developers, may be :) ) jump over this compilation wall. Particularly, Vidalia is scheduled for this Friday at 13:00 UTC in the same place as usual: #vidalia at OFTC.

While this event is taking place on a particular day and a particular time, I'm online all the time (even when I'm not in front of the computer). So if you want to contribute to Vidalia or any of the projects around Tor (or Tor itself), don't hesitate, just get online and start typing, but be patient and stick around. Also, you'd probably want to read this: https://www.torproject.org/getinvolved/volunteer.html.en

If you want to know more about the Buld It initiative, you can ask in #openhatch at Freenode, or read here: https://openhatch.org/wiki/Build_it


2011 April 4 [Monday]

b0rked Broadcom bcm43xx drivers

Dear Broadcom, Despite your late gesture of opensourcing the bcm43xx wireless drivers, I continue to have issues -- Last week a kernel upgrade from lucid not only broke the driver but managed to kill the nvidia drivers for good measure -- it was easier to take a data backup and do a clean re-installation of Lucid than waste a lot of time figuring out how your bcm43xx driver broke the nvidia drivers killing my graphics display totally. 

However, I was mistaken about it being a kernel upgrade (to 2.6.35) issue as the peace lasted for hardly 3 days -- since I am blessed with having to start my monday morning troubleshooting your broken hardware drivers (on 2.6.32-21 generic kernel version) instead of getting actual work done.
 
lucid@ubuntu:~$ dpkg --list |grep b43
ii  b43-fwcutter             1:012-1build1          Utility for extracting Broadcom 43xx firmwar

lucid@ubuntu:~$ dpkg --list |grep bcmwl
ii  bcmwl-modaliases       5.60.48.36+bdcom-0ubuntu3       Modaliases for the Broadcom 802.11 Linux STA

So the "b43-fwcutter" utility package exists on my system (as I had installed and activated the drivers) but something between each reboot was blocking the drivers as the link would suddenly be hard blocked. This despite me taking the trouble to NOT upgrade from the 2.6.32-21 generic kernel version.

Then, I checked the B43 blacklisted file:

lucid@ubuntu:~$ cat /etc/modprobe.d/* | egrep '8180|acx|at76|ath|b43|bcm|CX|eth|ipw|irmware|isl|lbtf|orinoco|ndiswrapper|NPE|p54|prism|rtl|rt2|rt3|rt6|rt7|witch|wl'
# which ath5k cannot recover. To prevent this condition, stop
blacklist ath_pci
blacklist eth1394
# replaced by p54pci
blacklist prism54
# replaced by b43 and ssb.
blacklist bcm43xx
blacklist uart6850
blacklist twl4030_wdt

and sure enough, "bcm43xx" was indeed on the blacklist.....nice, girdle up for more yakshaving!

Next, I paid a visit to the "blacklist.conf" file and commented out the line "blacklist bcm43xx".

Rebooted for it to take effect. Nada, Zilch, still no wifi.

lucid@ubuntu:/lib/firmware/b43$ ls
a0g0bsinitvals5.fw  a0g1bsinitvals13.fw  a0g1initvals5.fw     b0g0bsinitvals9.fw  lp0bsinitvals13.fw  lp0initvals14.fw    n0initvals11.fw  ucode14.fw
a0g0bsinitvals9.fw  a0g1bsinitvals5.fw   a0g1initvals9.fw     b0g0initvals13.fw   lp0bsinitvals14.fw  lp0initvals15.fw    pcm5.fw          ucode15.fw
a0g0initvals5.fw    a0g1bsinitvals9.fw   b0g0bsinitvals13.fw  b0g0initvals5.fw    lp0bsinitvals15.fw  n0absinitvals11.fw  ucode11.fw       ucode5.fw
a0g0initvals9.fw    a0g1initvals13.fw    b0g0bsinitvals5.fw   b0g0initvals9.fw    lp0initvals13.fw    n0bsinitvals11.fw   ucode13.fw       ucode9.fw

lucid@ubuntu:~$ cd /lib/firmware/brcm
bash: cd: /lib/firmware/brcm: No such file or directory


Then, a sudo ln -s bcm43xx-0-610-809-0.fw bcm43xx-0.fw and sudo ln -s bcm43xx_hdr-0-610-809-0.fw bcm43xx_hdr-0.fw should have loaded and activated the drivers after a reboot. It did not, forcing me to switch to a wired connection on a laptop. WTF!

Broadcom, fiddling with "bcm43xx" is a sure-fire way to kill time. Thankyou very much for the Yak-shaving experience --it serves as a constant reminder to me, why I will never (unknowingly) buy another Broadcom driven product in future, ever! KTHXBAI.

UPDATE:: Its a "networking disabled on boot" bug in Ubuntu-Lucid and Maverick that has a fix (but not yet committed for Maverick):
[0] http://ubuntuforums.org/showthread.php?t=1594577
[1] https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/524454
[2] https://help.ubuntu.com/community/WifiDocs/Driver/bcm43xx#Installing%20b43%20drivers
[3] http://www.qc4blog.com/?p=857

I've tried everything mentioned in the above threads to no avail. Wifi is out cold!

2011 March 7 [Monday]

Aruna Ramchandra Shanbhag

Tomorrow the the world will celebrate the 100th International Women's Day, but today the Supreme Court verdict rejected the mercy-killing petition of Aruna Ramchandra Shanbhag, filed by Pinky Virani the author of "Aruna's Story". In a country like India, "mercy killing" (whether passive or not) will definitely be misused by parties with vested interests and while I welcome the court's judgement on passive euthanasia, I can't help but wonder if India has done enough since then. As Usha writes, "In the 60s , Jayakantan wrote a story called “Agnipravesam” where a college girl is raped in a car on a dark rainy evening . On seeing her state when she reaches home, her poor widowed mother immediately senses what has happened. She takes her in and simply pours water on the girls head; then she tells her to treat the water as fire and feel pure again and forget the incident."


Thinking about Aruna, I am in two minds --one part of me wants her suffering to stop and it was really hard to not cry for her, for "what may have been" when I saw her hospital video being aired on every news channel, or while writing this entry, or while reading for the first time all those years ago -- Aruna's tragedy still evokes the same emotional reaction today as when I first heard heard her story all those years ago -- A pretty nurse, brutally raped by her subordinate, Sohanlal Bharatha Valmiki, as an act of revenge ; who has since 1980 been a free man -- free to marry and have a family of his own ; whose first act upon being released from jail in 1980 was to visit Aruna's room at KEM hospital and remove the bed guards, leading to her falling from the hospital bed. He probably thought Aruna would fall and die. She didnt. Presumably security was raised after this second incident and her co-nurses and doctors are her only visitors. Later the rapist moved out of the city and was last heard working in a NewDelhi hospital under an assumed name.

I met a big learned pujari who said I had a sau mein ek patrika [a rare horoscope], that I’d be a success, will live long and would go abroad..... but even if he was talking rubbish it does not matter because I know that I will become known in my field -- That was the ambitious and dynamic 25-year-old Aruna, talking to her cousin about her career plans to pursue her dreams of studying abroad. Eerily, the soothsayer's predictions to her father did come true but I doubt if this was the kind of fame they would have wished for, nor expected.  Aruna, born on 1948June01, was the youngest daughter of the Shanbhag family -- consisting of her parents and siblings, six brothers and two sisters, all of who were more interested in extracting an apartment in Mumbai and financial compensation out of her tragedy. When that didnt materialize, they abandoned her to her fate.

For a woman who went against her family and rejected the life of abject poverty in the village, she did well as a nurse in Mumbai, met and fell in love with Dr.Sundeep Sardesai, who upon realising that Aruna would never be normal again, deserted her to marry another woman on 1974May01 and settled down abroad. If you knew and loved someone so deeply would you not feel any guilt for deserting them? I cannot help but wonder if Dr.Sardesai, even once, over these 37 years, ever wondered how Aruna is doing. His rejection makes me wonder if he had ever cared or loved her at all!

Apparently everyone in Aruna's life has moved on and is living a normal human life. There is no doubt that Aruna's hellish experience has made her suffer for 37 long years but mercy-killing? Killing someone who cannot make that decision for themselves isnt mercy. However which way I argue, it seems terribly unfair that others get to decide when Aruna should die. How do we have the right to make decisions on behalf of a person who, unfortunately, cannot decide for herself!

Strange as it may sound, she seems like a fighter to me -- Didnt she overcome her comatose state after the rape, albeit declared "brain-dead"/'persistent vegetative state' thence. Her tremendous will to survive reflects in the fact that despite being brain-dead she has definitely shown a will to live, and most importantly, she can breathe on her own and isnt dependent on life-aids. The nurses at Mumbai's King Edward Memorial (KEM) Hospital claim, Aruna responds to them when they attend to her, albeit as 'screams' or 'smiles' and they cheered at the Supreme Court's verdict that Aruna should live. For once, I am glad that the tax-payers money is being put to good use by a handful of KEM nurses and doctors.

All the people in favor of killing (err..mercy-killing) Aruna, should take a moment to wonder at her indomitable spirit her body still holds on to -- She responds to stimuli, is on a liquid diet and loves listening to music and the staff nurses and doctors of KEM care more for Aruna than her family or ex-fiance ever did. She continues to live among strangers who care enough to care for her life. Why should we deny her the right to live?

On 2011June01, Aruna Shanbhag will not know she turned 63, as she has remained oblivious to all her birthdays since 1973November27, but that is not reason enough to permit euthanasia. Let us not kill someone who, despite two murder attempts on her life, has shown such tremendous will to live. She has survived despite the odds stacked against her and she should be allowed to die when her body chooses it, naturally. That, for me, is mercy!

If reading about Aruna was heart-wrenching, writing this blog entry was equally difficult, especially because I wanted an appropriate title in Marathi, one that could reflect Aruna Shanbhag's strong never-say-die spirit, choosing to outlive her tragedy by 37 long years (and probably many more to come), only to remind Indians (and the world?) that as a society, and as a nation, we conveniently choose to forget the silent, the inconvenient, the speechless and actively deny justice to women who are rape victims. Its ironic to be forgotten by the next generation you supposedly bring forth!

In Sanskrit, "Mukta"has various meanings: "finally set free", "liberated, delivered, emancipated (esp. from sin or worldly existence)" ; as also meaning "abandoned, relinquished, given up , laid aside" ; "the quarter or cardinal point just quitted by the sun" [ironically, her first name 'Aruna'; means "the red colour of the morning sun"] ; unchaste woman; "the spirit released from corporeal existence" (a noun form). How ironic!

For me, Aruna is already mukta -- she, whose ruddy spirit wills her to live, despite the cruel betrayals by those she loved, the society and the Indian legal system! I cant even begin to imagine the pain Aruna may have gone through but instead of killing her in the name of mercy, we should be fighting to update the ancient rape laws in India -- bring them on par to those followed in developed nations like USA, Europe, et al. Lets petition to change Indian laws and make it impossible for an Aruna Ramchandra Shanbhag redux, ever! That, for me, would be true mercy towards all Indian women and each day would be Indian Women's Day!

UPDATE: Tasting crystals of sugar fed by sister Sugandha Rokade in her mouth, nurse Aruna Shanbaug, 62, cried out, “Aaah!” when she was told about the Supreme Court judgment.

2011 February 22 [Tuesday]

beware of spammers asking for your account password

If you've got a mail with the subject line "Account System Update", asking for your "Passvvord" (gee, atleast spell it right :/), because they are shutting down your account, .... Simply delete it.

Notice the headers, its not from Google or Gmail and you would be safer not responding to them. I'm not sure if google has a feedback system where I can submit this so I thought its better to blog and tell the whole world.

Delivered-To: s***@gmail.com
Received: by 10.236.95.41 with SMTP id o29cs221272yhf;
Mon, 21 Feb 2011 16:29:35 -0800 (PST)
Received: by 10.224.28.66 with SMTP id l2mr1663334qac.68.1298334565437;
Mon, 21 Feb 2011 16:29:25 -0800 (PST)
Return-Path: <nobody@alexander.ourhostingservers.com>
Received: from alexander.ourhostingservers.com (alexander.ourhostingservers.com [75.126.65.69])
by mx.google.com with ESMTPS id m15si11781389qck.51.2011.02.21.16.29.25
(version=TLSv1/SSLv3 cipher=OTHER);
Mon, 21 Feb 2011 16:29:25 -0800 (PST)
Received-SPF: pass (google.com: best guess record for domain of nobody@alexander.ourhostingservers.com designates 75.126.65.69 as permitted sender) client-ip=75.126.65.69;
Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of nobody@alexander.ourhostingservers.com designates 75.126.65.69 as permitted sender) smtp.mail=nobody@alexander.ourhostingservers.com
Received: from nobody by alexander.ourhostingservers.com with local (Exim 4.69)
(envelope-from <nobody@alexander.ourhostingservers.com>)
id 1PrfGY-0000BR-P5
for s***@gmail.com; Mon, 21 Feb 2011 17:34:06 -0600
To: s***@gmail.com
Subject: Account System Update
X-PHP-Script: ex-dn.com/e107_themes/inbox.php for 41.31.241.220
From: Gmail <verifyscevsces@gmail.com>
Reply-To: verifyscevsces@gmail.com
MIME-Version: 1.0
Content-Type: text/plain
Content-Transfer-Encoding: 8bit
Message-Id: <E1PrfGY-0000BR-P5@alexander.ourhostingservers.com>
Date: Mon, 21 Feb 2011 17:34:06 -0600
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - alexander.ourhostingservers.com
X-AntiAbuse: Original Domain - gmail.com
X-AntiAbuse: Originator/Caller UID/GID - [99 32002] / [47 12]
X-AntiAbuse: Sender Address Domain - alexander.ourhostingservers.com
X-Source:
X-Source-Args:
X-Source-Dir:

We are shutting down some accounts due to congestion in our database system and your account was chosen to be deleted automatically. To avoid permanent lockup, kindly click reply and fill in the space below for verification purpose:-

Account ID
Passvvord
Registered Year (MM/YYYY)
Designation Field:
Direct Phone:

Note: This email is only for Gmail users (Users should reply within 48 hours to avoid "Permanently Lockup" Account)

Thank you for using Gmail !

2011 February 9 [Wednesday]

GSoC-2011 invites small FLOSS projects

On the heels of GCI ending a few days ago, GSOC-2011 was announced at LCA. This year there is an important change, that of the participating organizations, as per Carol's mail (below), http://lists.p2pu.org/pipermail/p2pu-dev/2011-February/000288.html :

--
On Tue, 8 Feb 2011, Carol Smith wrote:

Hi all,

Per some feedback from the mentor summit last year, I've decided to
encourage and accept more small and new mentoring organizations this year.
In tandem with more organizations, I am also setting up a separate mailing
list for the newbie organizations to subscribe to to get advice on how to
successfully participate in the program for the summer.

I need your help with this effort. If you know of small/new projects who are
doing interesting work in the opensource space who might not otherwise
apply, please encourage them to do so. We're looking for all kinds of new
orgs - ones doing stuff on the bleeding edge, ones opensourcing stuff that
hasn't been before, ones who might get overlooked because they're otherwise
too small.

There will be two special questions on the mentoring organization
application this year: one for which a large or experienced organization can
vouch for a small, new organization and one for new or small organizations
to list their "references" in the form of veteran orgs or people. These two
questions will be looked at very specifically when we review organization
applications this year so please fill them in if they are applicable for
you.

To facilitate the mentor/mentee relationship between orgs I've set up a
mailing list for both veteran and newbie mentors to join [1]. Please sign up
if you feel comfortable offering advice to new organizations on how to
participate in a successful GSoC. I've made this list invite-only, so please
request membership if you're interested in joining and list the org you
mentor for. After we've announced accepted organizations for this year, the
mentors and org admins from the new projects will be automatically
subscribed to this list and encouraged to ask questions and get advice.
**This will be a chatty list.**

Thank you in advance for your help with this effort, and may this be the
most awesome summer yet!

[1] - http://groups.google.com/group/gsoc-veterans

Cheers,
Carol
--

As you can see, Google is inviting all fledgling free software projects to apply and there is a concerted effort to rope in smaller organizations doing nice things in Libre software this year. So if you know any organization or floss project that should be a part of gsoc, encourage them to join the mailing list and apply for 2011. [UPDATE,2011feb25: Here is a spreadsheet of the FLOSS organizations applying for GSOC-2011, but do remember that this is NOT a final list which is entirely upto Google.]

Like FLOSS projects, GSOC is perhaps the only technical event that is open to students in any stream (you could be studying for your B.A in literature and still participate in GSOC), does not have artificial barriers which perpetuate a myth that only Engineers or Computer Science students can use, decode and contribute to FLOSS. Any student can, provided they put in some effort to understanding the Libre software ecosystem.

So go ahead, download and use their presentations, logos and flyers to promote Gsoc in your college or university, spread the word and participate when the list of accepted projects is announced in March.

[UPDATE,2011feb28: Google has opened the application process for mentoring organizations for Google Summer of Code 2011 which are being accepted at Melange for ALL Libre software organizations. Please note that the application period closes on 11 March at 23:00 UTC.]


2010 December 17 [Friday]

Smartmontools load_cycle_count

Dear Lazyweb,

If you have installed "smartmontools" on your laptop on Ubuntu-Lucid, has it been behaving erratically after the last update about a week ago?

me@ubuntu:~$ sudo smartctl -s on -a /dev/sda 

smartctl version 5.38 [i686-pc-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Momentus 5400.3
Device Model:     ST9160821AS
Serial Number:    5MA1LL40
Firmware Version: 3.BHD
User Capacity:    160,041,885,696 bytes
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   7
ATA Standard is:  Exact ATA specification draft version not indicated
Local Time is:    Fri Dec 17 11:09:46 2010 UTC
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF ENABLE/DISABLE COMMANDS SECTION ===
SMART Enabled.

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
See vendor-specific Attribute list for marginal Attributes.

General SMART Values:
Offline data collection status:  (0x82)    Offline data collection activity
                    was completed without error.
                    Auto Offline Data Collection: Enabled.
Self-test execution status:      (  21)    The self-test routine was aborted by
                    the host.
Total time to complete Offline
data collection:          ( 426) seconds.
Offline data collection
capabilities:              (0x53) SMART execute Offline immediate.
                    Auto Offline data collection on/off support.
                    Suspend Offline collection upon new
                    command.
                    No Offline surface scan supported.
                    Self-test supported.
                    No Conveyance Self-test supported.
                    Selective Self-test supported.
SMART capabilities:            (0x0003)    Saves SMART data before entering
                    power-saving mode.
                    Supports SMART auto save timer.
Error logging capability:        (0x01)    Error logging supported.
                    No General Purpose Logging support.
Short self-test routine
recommended polling time:      (   2) minutes.
Extended self-test routine
recommended polling time:      (  88) minutes.
SCT capabilities:            (0x0001)    SCT Status supported.

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   105   096   006    Pre-fail  Always       -       9940165
  3 Spin_Up_Time            0x0002   099   098   000    Old_age   Always       -       0
  4 Start_Stop_Count        0x0033   098   098   020    Pre-fail  Always       -       2683
  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000f   072   060   030    Pre-fail  Always       -       17255855270
  9 Power_On_Hours          0x0032   096   096   000    Old_age   Always       -       3998
 10 Spin_Retry_Count        0x0013   100   100   034    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0033   098   098   020    Pre-fail  Always       -       2155
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   049   035   045    Old_age   Always   In_the_past 51 (15 36 54 47)
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       1159
193 Load_Cycle_Count        0x0032   001   001   000    Old_age   Always       -       227684
194 Temperature_Celsius     0x0022   051   065   000    Old_age   Always       -       51 (0 18 0 0)
195 Hardware_ECC_Recovered  0x001a   078   060   000    Old_age   Always       -       64509422
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       1
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       1
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0000   100   253   000    Old_age   Offline      -       0
202 TA_Increase_Count       0x0032   100   253   000    Old_age   Always       -       0

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Aborted by host               50%      2943         -
# 2  Extended offline    Aborted by host               70%      2699         -

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

As you can see here, there is no LCC for desktop server hard-disks and its especially meant for laptop HDD, where I'm interested in limiting the Load_Cycle_Count (LCC) to increment only with each boot cycle. Yeah, it has inherent risks, but...


193 Load_Cycle_Count        0x0032   001   001   000    Old_age   Always       -       227825

However, since (the lucid update) last week, running 'smartctl' has not worked its magic since the count has incremented from 227684 to 227825 within an hour. I've been randomly checking it every other hour or so to find the LCC racing away.

Is this a sign that the HDD is dying? Is this a hardware issue or has the code-base changed to require a rebuild? What am I missing here?

2010 November 5 [Friday]

Google Code-In 2010

Today Google announced the list of participating organizations for Google Code-in --earlier known as GHOP, is targeting school-going teens (upper age limit is 18 years) to contribute to Free/Libre software projects. The Code-in starts on 2010-Nov-22, so do read up on all the organization's task lists and encourage your family, friends, and colleagues to participate!

UPDATE: Carol had posted a longer mail to a private list, which is more informative than my two-line post :)

We’re pleased to announce the Google Code-in contest starting this 22-November-2010 and ending on 10-January-2011. This contest is modelled on the success of our pilot program, the Google Highly Open Participation Contest, that was run in 2007-08. We will again be giving 13-18 year old students around the world an opportunity to get involved with open source projects by doing tasks ranging from documentation to outreach to hands-on coding. We're hoping to get lots of women involved in this effort, so we're hoping you'll spread the word about it, or participate yourself if you are eligible.

The participating open source projects that will be serving as mentoring organizations have been chosen from past participants in Google Summer of Code for their commitment to working with younger students as well as their overall mentoring skills. The 20 organizations - twice as many as were in our pilot program - are listed on our site at http://www.google-melange.com/gci/program/accepted_orgs/google/gci2010.

The participants have a chance to earn prizes including cash and teeshirts, with 10 grand prize winners receiving a trip to Google headquarters in Mountain View, California for an awards ceremony. Grand Prize contest winners will be announced on 14, February, 2011.

We’re looking forward to a fun contest this year and hope you’ll consider participating yourself if you are eligible or spread the word to friends, family, and colleagues about the program.

We encourage you to join the Google Code-in contest discussion list: http://groups.google.com/group/gci-discuss and announcement list:
http://groups.google.com/group/gci-announce.

Please see our blog post: http://google-opensource.blogspot.com/2010/10/google-code-in-schools-out-codes-in.html for further details and feel free to contact me directly if you have specific questions that aren’t answered on the website: http://code.google.com/gci.

Cheers,
Carol Smith

2010 October 11 [Monday]

Extract msi archive format on Ubuntu

I was googling for some information which was only available in a .msi archive format which I could not extract directly on ubuntu. Since I didnt have windows on the machine, I could not extract it there and just copy the files over to linux.

On ubuntu, installing WINE (and trying to extract with msiexec) didnt work -- wine kept whining about it not being an executable (on linux? *g*), the source being from an untrusted source, etc...

Next, I tried p7zip -- install it with

sudo apt-get install p7zip-full

Then, change directories, and type:

7z x filename.msi

While this extracts all the files, it will still not be easily viewable nor is it usable -- windows executable dlls, bitmaps, windows installer package, microsoft cabinet archive, some icons, and other useless cruft compressed in the folder. Other than manually digging out text files for the information, there was no easy option.

The data was locked inside the database (hint, extract the cabinet archive) in the .mbd (MS Access) format. Google threw some perl modules to convert a .mbd file to .txt. BUT there was a gnome mbd-reader tool which you can easily install with

sudo apt-get install mdbtools

sudo apt-get install mdbtools-gmdb

Then, click on Applications>Office>MDB Viewer.

In Ubuntu, mdbtools includes command line tools such as mdb-export and mdb-schema and to export data from the MS Access .mdb files, extract contents from each table from each .mdb file through the shell --for which one needs to determine table names before using:

mdbtools <filename.mdb> <table name> <output_filename.txt>

mdb-export filename.mdb tblfoo

The compressed archice included among other things, files with .ocx and .tlb extensions. More googling (yay!)

TLB, a Visual Basic OLE Type Library, is a binary file containing all the type information for using procedures or classes in DLLs.

LINKS:

o. mdb-tools and postgresql script

2010 October 9 [Saturday]

Openhatch IRC meet

On the Ubuntu-Women list we get a number of women introducing themselves, listing their coding skills, wanting to contribute, etc.. Right now we simply re-direct them to the specific communities within Ubuntu -- to find a project to contribute they have to use keywords to search Launchpad.net for bugs.... search for "perl" / "python" packages, or search for a specific project of choice and squash the bugs listed there -- this does not seem like a terribly efficient way to track participation or contribute, besides being confusing and/or intimidating for someone who is new to the community and is completely un-aware of how floss communities work.

Before anyone says IRC, I should chime in that the infrastructure issues (power outages, poor bandwidth, poor tech support, etc...) in India make it that much harder to contribute. This is not true for other nations with superior basic (power, water, roads, etc..) infrastructure.

So how do we know if a contributor actually searches and finds what she wants to work on or is even comfortable working with? Does she leave because the information she came looking for was not available and/or was simply intimidated by the sheer size and vast technical scope within Ubuntu? These are unanswered questions which I have wondered about -- not knowing if we managed to retain a contributor is a grey area.

Existing members are volunteers themselves with responsibilities, making it harder to track if we are losing technical contributions because we dont know what happens after the initial guidance to a query on the list. I'd been wondering how we could narrow the scope and find technical areas where UW can collaborate with other Ubuntu teams needing help.

In essence that is the usecase: Suppose a woman lists "C/C++ and networking" or "python and AI" as her skillsets, how could we scrape information from LP and use it to channelize women to specific bugs that need squashing --the difficulty level, its upstream/downstream, etc... Could we use an API for data-mining LP for possible areas of interest and list these on our wiki-pages, or post mails to the mailing list or push them into an RSS/Atom news feed on planet.ubuntu-women.org, enabling interested folks to subscribe to the news feed.

After that I pinged Asheesh of openhatch which does something similar -- tags all the floss bug trackers for open bugs, small bite-sized bugs and the big ones too. The idea sounded interestin to him and he called for a meetup -- The meetup is on Monday, Oct11 at 9am IST on #openhatch (logged) on irc.freenode.net and its just meant to bounce off ideas iirc.

PyDojo-20101008

As per the schedule, we had the first dojo meet at CIS yesterday. Met Satish Kumar while searching for the CIS office and a helpful biker who cursed google-maps actually guided us there as we were both relying on the wrong geo-location plots on Google-maps (openstreetmap someone?)...as if the city's whimsical penchant for one-way roads was not irritating enough. There is an interesting anecdote --the biker who guided us there took us to the exact building and i asked him how he knew the place when 'CIS' didnt strike a memory chord. He promptly replied that there was a foreigner (he used the term 'white') who worked at CIS whom he has seen around town. Ah! There is something about finding your way around Indian roads, something to be said about the human touch that google-maps or other tech gadgets cannot compete with.

The CIS staff were very helpful and Royson immediately arranged refreshments and we both started off discussing what the dojo was all about -- many dojo participants around the world were nice enough to have a discussion on how they did things, what worked and didnt -- so it being the first day we had time to discuss how to structure it or not to have a structure at all, etc... In the middle of this discussion NigelB and Akshay Gandhi walked in and the discussion veered to the RHCE course he had joined. Later Nigel showed us the git graph he was working on. We had a longish discussion on git, bug trackers, communities and it was 8.45pm when we left, but not before planning to meet next week to work on nltk at 7pm same place. Join us!

I'm was multi-tasking --listening to a IE9 product pitch for html5/css3, while typing this entry, so any errors and missing information can be attributed to the much tortured greycells. </excuse>

2010 October 5 [Tuesday]

The Sparsh BPO's Intelenet way to defraud BSNL

20131012-Update: I changed the title of this blog post as I just came to know via Valorie that the term "gyp" has racist connotations.

I've been having DNS issues since last weekend and since my ISP has been happily outsourcing its customer service obligations to Sparsh India, so whenever the DNS conks off (which is once a month at the very least), I get to have interesting conversations very often.

[after our initial conversation when I've tried explaining the DNS problem, in vain.]

ME: I've tried changing the DNS to point to 208.67.222.222, saved and rebooted the router, etc... , can ping "random" server, can use IRC, etc...BUT cannot connect to some websites like "www.zareason.com", which gets redirected to "http://searchportal.information.com/?a_id=92438&domainname=www.zareason.com". Please reboot your DNS server as it does not resolve some domains properly.
CSR: Click on 'start button', click on 'internet explorer', ...
ME: Excuse me ...Sir/M'am, I told you I dont have windows on this machine. I use a Linux-based operating system so if you tell me what information you require to troubleshoot, I can check for it locally.



At this point I'm put on hold, ...CSR returns after a few minutes to ask if I can connect to 'google.com'. I answer in the affirmative and he/she proceeds to say the problem is because I use Linux and there is nothing they can do about it. Simply stunning.

Asking to speak to another person who knows "linux+networking" or a team leader results in them disconnecting your call. That isnt surprising. A Business line article says "Sparsh BPO, which is the domestic arm of Intelenet Global Services, put in a bid at Rs 1.15 a call for providing contact centre services...." -- The higher the number of calls to the BSNL toll-free numbers will result in more income for Sparsh. I'm not aware of the finer points in their SLA but the pattern I have observed is very very common. Calls are always dropped, sometimes mid-way, etc...

Sparshindia is a subsidiary of Intelenetglobal, meant to handle the pan-India BPO business. I am curious to know if Intelenet provides similar poor service to their US clients. Would a CSR disconnect an overseas call mid-way without solving the customers problem? Will they get to bill clients simply on the basis of number of calls handled without actually solving the problem.

http://www.sparshindia.com/opration_quality.html, states they monitor calls and have a good QA process. I beg to differ. If I call back and go through the whole discussion for the N'th time and insist on speaking to a TL, I'll be put on hold, and the same person pretends to be another person. Oh well, it takes more than changing voices and giving a fake name -- the 'trying too hard to fake it' bit that gives them away. Nine out of ten times the conversation has gone downhill when the CSR insists that you are having a DNS issue because you are using Linux.

https://www.zareason.com/  was also unable to connect and dig @8.8.8.8 zareason.com returns the correct IP address. While I grok that every ISP out there uses a transparent proxy to save on bandwidth. Using an anonymous proxy gives me the zareason website but what if its a site you want to order something. How can the user know or trust the site if the ISP has borked DNS which just redirects you to a phishing site?

On multiple occasions I have requested to speak to any technical person who understands "linux + networking" as the DNS issue has a simple solution -- Probably the DNS server used by the proxy is broken and its is caching incorrect data. The backend technical team (whom i've spoken to just once in so many years) can reboot the server and clear the cache. This is all it takes, all of 5 minutes to reboot the appropriate server and solve the DNS issue. BUT its easier to do a shirsasana (head-stand) than get the sparshindia agents to reboot the darn dns server.

UPDATE: I called Sparsh India yet again. This time I refused all the request to give the mobile number so the outbound process would call me. Erm...I would hold on forever until the DNS problem was solved. As of writing this, its been 2 hours that i've been talking to a TL (he claimed so), who finally booked my complaint which I checked here: 'http://bangaloretelecom.com/' --it has no details of the problem. The excuse this guy gives me is 'BSNL must have blocked the site" ...hilarious, why would bsnl want to block one site peddling computers? If it were a p0rn site that argument might atleast make sense. We retraced the steps of changing the routers WAN settings and other tasks which didnt help.

Which part of the sentence "I can access websites and surf online, only some sites like zareason dont work, reboot your DNS server and solve the problem" does a person not grok?  He even pretended to not know how to spell "cache" and i could hear his co-worker giggle in the background. So I politely told him that while he was busy 'pretending to not understand basic tech terms', he was not harassing me, rather, he came across as a dumb person with zero technical knowledge. That got his attention real quick and he didnt seem to enjoy harassing me anymore. Oh, the joys of being a sexist troll !!

At the moment it seems that Sparsh India is only interested in increasing their revenue by billing BSNL INR1.15 for each call that customers make --Not solving the problem in one phone call definitely helps Sparsh and Intelenet gain more revenue. Rebooting the server means the problem gets solved, hence less revenue.

2010 September 30 [Thursday]

Weekly Python-Dojo at Bangalore

In an IRC discussion this week, I suggested we kick-start a weekly python-dojo meet-up in Bangalore. Sunil Abraham of CIS was kind enough to donate their office space and even offered to sponsor the java (pun unintended). Thanks Sunil/CIS.

So here's the plan for weekly python-dojo sessions in Bangalore,

WHAT: Weekly python-dojo sessions in Bangalore which is inspired by dojorio (english translation) meetups in Brazil where they apply the "small acts manifesto". The idea is to create a friendly atmosphere which encourages "beginners" (...and experts and everyone in between) to share and learn with the community. Please bring your laptops/netbooks etc.. as the dojo will be hands-on where we will work on small problems that exist in FLOSS software which automatically helps us learn a lot more about our system. Folks that dont have laptops are also welcome -- atm, we cant provide machines to work on but you can watch others, ask questions, learn, and later try it out at home.

WHO can participate: ANYONE. Absolutely anyone can walk in and participate at the venue. There is no registration fee or cost (except your time and travel costs perhaps?). There is no agenda either -- please note that the environment would be similar to that of an unconference. There is no formal teaching involved. We are all learners here and you are free to ask any python-related question.

WHERE: The Centre for Internet and Society (google map link)
No. 194, 2nd 'C' Cross, Domlur 2nd Stage, Bangalore 560 071

WHEN: 7pm-8pm every Friday. We start from next week, 08Oct2010.

So if you are interested in python, dont hesitate to join us for the weekly dojo sessions and do spread the word -- dent/tweet, blog and mail your friends about the weekly dojo meetups.

PS: If anyone (women in particular) feels the evening timings are rather late for traveling please feel free to suggest a more convenient day (sat/sun?) and time <-- its not set in stone and suggestions are welcome.

2010 September 25 [Saturday]

PyCon-IN-2010

Kinda sad to see all the effort put into a complete community volunteer-driven event almost come to a standstill under the shadow of local communal politics -- the Ayodhya verdict. Given that I missed last years even for personal reasons, it seemed the Ayodhya verdict would be the roadblock this year. Not.

Today, David Goodger kicked off the second Pycon-India 2010 in Bangalore with his keynote speech while briefly dwelling on his Indian 'adventure' -- no seat-belts in the autorickshaw!? The auditorium hall echoed with laughter!  Then it was a series of talks on python 2to3, multicore programming, and many more talks .... The only irritating part during one talk was one audience member interrupting the speaker to discuss the topic/ask questions. Probably this resulted in the speaker not getting enough time to finish his talk and demo the code completely. In a 30-min talk it would be a lot nicer if the audience restricted their questions to the last few minutes *after* the speaker completes the talk.

Another interesting talk was the screen scraping talk but I'll return to my lazyshell under the pretext that the videos will probably be uploaded online in a few days. Else, you could just attend the second day of pycon coz the nicest part was good 'ol networking, old friends, meeting new ones and the barcamp style corridor chats with people. Considering that the attendees were almost 500+, the inpycon team really pulled off a community event quite successfully! Now I gotta get some sleep if I need to make it for tomorrows event!



- page 1 of 12