I am going to conf.kde.in . You Should Too !

I am going to KDE india Konference ;)

KDE india Community is Organizing its first conference at Bangalore and I am thrilled to be a part of the organizing committee. I am going to the Konf ( As i would like to call it, lovingly 🙂 ) that’s no news, i love KDE ! but this blog post is for the vast majority of my friends who have no idea what KDE is , and what it means to be a part of.

Read On , to  know more about what to expect at the Konf , and why you just have to be there !

1. Artists :

KDE is a *HUGE* project and we have brilliant artists in our KDE art team. Seen our shiny new poster or the stunning artwork on the website ?  Those are Courtesy Eugene Trounev, be there to talk to him personally ! He is also giving a talk about “Graphics & Open Source: Survival guide” . You don’t have to be a software guru to attend this talk, just bring the artist in you 😉

2. Photographer :

As a photographer you try to capture all the moments you cherish ! You almost definitely use a photo-management application like Adobe Lightroom or the likes. But my fellow developer Aditya Bhatt will introduce you to “digiKam: Professional Photo Management” a *Free* photo management app that you just have to know about ! If you are excited about “automatic lens correction”, “Online sharing Integration” in lightroom, digikam had it for a very looooong time ! Be there to know more about it !

3. Person Managing a large diverse workforce (a.k.a Manager):

Before i start off on this point , let me put you in perspective. KDE is a project which has, as far as i know, thousands of active contributors, so it is very very big ! Now, I introduce our community ninja (a.k.a community manager, formally) Lydia Pintscher. She directly interacts with all of the thousands of the contributors , when required , and is very good at managing people. So , i am sure you can definitely learn a thing or two from her ! Plus have a lot of fun at the conference !

4. Gamer

You are an avid gamer , right ! Ever wondered what goes underneath your shiny new game that makes it tick ? Be there to attend the talk “Glue games with Gluon” Shantanu . I am sure , your time will be very well invested ! not spent 😉

5. Programmer / Technology Enthusiast :

You my friend are in for a treat ! Frankly this blog post will be an injustice to all the amazing tech talks lined up. Just head over to http://kde.in/conf/talks/ to treat yourself !

6. User :

You guys are very important part of the community ! we the KDE community are always open to new ideas and criticism / suggestions.  Please do drop by and bring in your friends too ! Your visit would definitely be fruitful . We also have loads of Hands-on Sessions , please bring in your laptops if possible 🙂

7. School Kids / College Students :

Guys and Gals , you just have to be there ! Heard of Google Summer of Code ? Google Code-In ? We have a LOT of ex-GSoC ers attending the Konf , come and meet them personally ! Also get to know about the project that interests you ( a must for GSoC & GCI ) and there is no better way than to get introduced by the people who actually develop for the project !

If you have queries about the event , post a meesage to conf@kde.in or Just register ! at  http://kde.in/conf/register/

NOTE : Use the below discount codes, don’t forget to bring your college IDs  🙂

  • Student discount: KDEIN_DIS_STU
  • Teacher discount: KDEIN_DIS_TCR

That’s all for now ! and See you at the Conf.


Kunal Ghosh


Searching , Google Vs Facebook

After having watched Mark Zuckerberg’s two part interview on youtube, i was wondering what would, searching the same thing ( “seagate Goflex” ) on both the platforms (facebook and Google) would result in.

Side by side, the search term on google , facebook , bing (apparently facebook has some tie-up with M$)

OK , some of my observations ( please do share your observations too ! ) :

1. Google is good with Factual data.

2. Facebook has an added advantage with it knowing what my friends , other facebook users’ and i like . And how many of the users’ like / dislike / have commented on the topic i am searching. For the factual data , its using Bing (M$ ‘s search engine).

3. Bing is a reasonable search engine, i have nothing to say about it .


4. Though Facebook uses Bing for its search, the Bing results Facebook displays on its search page are significantly different. I think Facebook does its own filtering on top of Bing results , to filter out results like following :

  • FreeAgent® GoFlex™

    Complete all three stages and stand to win the FreeAgent® GoFlex™ Family and Full HD 42 inch LCD TV. Contest closes 28 June 2010. Play now! FreeAgent® GoFlex™. Meet the world …

    seagategoflex.com · Cached page
  • seagate goflex : seagate goflex – Cheap, Discount and FREE Super …

    seagate goflex – Cheap, Discount and FREE Super Saver Shipping

    seagategoflex.blogspot.com · Cached page

The first of the above results from Bing, is quite relevant to my search string (“seagate Goflex”) its the official site of the product. Here both Facebook and Google missed it.

My motivation for the blog post is that , many search providers are coming in the market, each with their own way of looking at the problem of search. All are trying to do their best. But none of them IMHO are actually showing me what “I WANT TO SEE”.

They (search engines) should understand what i am searching for (in this case a product) and give me most relevant information first ( in this case, the price in and around where i live , the technical specs etc , they should ask some more questions to refine their search results ) .

Both google and facebook have the means (personal data) to understand about me and should strive to give personalized search results. With an option of “Factual Search” which is also very important. Facebook’s positive point is that, it gives me very few searches with some degree of personalization (what my friends think about it) . When i search for a text , i am not going to look through millions of pages that google shows me but only a few say about 10 to 20 most “relevant” results.

Both Google and Facebook should learn from each other. And M$ should focus on the one thing it has managed to do fairly good , make an operating system 😉 (Humor intended). It would be fun to see what future of search has in store for us !

Until next time !


Kunal Ghosh

Piano Lesson

NOTE: The incident you are about to read was forwarded to me by my father, and i do not know the origin of the story. I would gladly include credits, if anyone lets me know the original author of the same.

REQUEST: In Case some parts of the following text are incorrect factually, read it as an Inspirational story 🙂

“At the prodding of my friends , I am writing this story. My name is Mildred Hondorf. I am a former elementary school music teacher form DeMoines, Iowa. I’ve always supplemented my income by teaching piano lessons ; something i have done for over 30 years. Over the years I found that children have many levels of musical ability. I’ve never had the pleasure of having a protege though I have taught some talented students. However I’ve also had my share of what I call “musically challenged” pupils. One such student was Robby.

Robby was 11 years old when his mother (a single mom) dropped him off for his first piano lesson. I prefer that students (especially boys!) begin at an earlier age, which I explained to Robby. But Robby said that it had always been his mother’s dream to hear him play the piano. So I took him as a student. Well, Robby began with his piano lessons and from the beginning I thought it was a hopeless endeavor. As much as Robby tried, he lacked the sense of tone and basic rhythm needed to excel. But he dutifully reviewed his scales and some elementary pieces that I require all my students to learn.

Over the months he tried and tried while I listened and cringed and tried to encourage him. At the end of each weekly lesson he’d always say, “My mom’s going to hear me play someday.” But it seemed hopeless. He just did not have any inborn ability. I only knew his mother from a distance as she dropped Robby off or waited in her aged car to pick him up. She always waved and smiled but never stopped in.

Then one day Robby stopped coming to our lessons. I thought about calling him but assumed, because of his lack of ability, that he had decided to pursue something else. I also was glad that he stopped coming. He was a bad advertisement for my teaching!

Several weeks later I mailed to the student’s homes a flyer on the upcoming recital. To my surprise Robby (who received a flyer) asked me if he could be in the recital. I told him that the recital was for current pupils and because he had dropped out he really did not qualify. He said that his mom had been sick and unable to take him to piano lessons but he was still practicing. “Miss Hondorf… I’ve just got to play!” he insisted. I don’t know what led me to allow him to play in the recital. Maybe it was his persistence or maybe it was something inside of me saying that it would be all right.

The night for the recital came. The high school gymnasium was packed with parents, friends and relatives. I put Robby up last in the program before I was to come up and thank all the students and play a finishing piece. I thought that any damage he would do would come at the end of the program and I could always salvage his poor performance through my “curtain closer.”

Well, the recital went off without a hitch. The students had been practicing and it showed. Then Robby came up on stage. His clothes were wrinkled and his hair looked like he’d run an eggbeater through it. “Why didn’t he dress up like the other students?” I thought. “Why didn’t his mother at least make him comb his hair for this special night?”

Robby pulled out the piano bench and he began. I was surprised when he announced that he had chosen Mozart’s Concerto #21 in C Major. I was not prepared for what I heard next. His fingers were light on pianissimo to fortissimo…from allegro to virtuoso.His suspended chords that Mozart demands were magnificent! Never had I heard Mozart played so well by a person his age. After six and a half minutes he ended in a grand crescendo and everyone was on their feet in wild applause. Overcome and in tears I ran up on stage and put my arms around Robby in joy. “I’ve never heard you play like that Robby! How’d you do it?” Through the microphone Robby explained: “Well Miss Hondorf…remember I told you my mom was sick? Well, actually she had cancer and passed away this morning. And well….she was born deaf so tonight was the first time she ever heard me play. I wanted to make it special.” There wasn’t a dry eye in the house that evening. As the people from Social Services led Robby from the stage to be placed into foster care, I noticed that even their eyes were red and puffy and I thought to myself how much richer my life had been for taking Robby as my pupil. No, I’ve never had a protege but that night I became a protege… of Robby’s. He was the teacher and I was the pupil. For it is he that taught me the meaning of perseverance and love and believing in yourself and maybe even taking a chance in someone and you don’t know why.

(A footnote to this story) After serving in Desert Storm, Robby was killed in the senseless bombing of the Alfred P. Murrah Federal Building in Oklahoma City in April of 1995, where he was reportedly….playing the piano. And now, a footnote to the story.

This story has been passed around by e-mail. It has not yet been proven to be a true story as no mention has been made of the exact name of the music teacher nor of the boy. The story proves that we all can make a difference. We all have thousands of opportunities a day to help realize God’s plan. So many seemingly trivial interactions between two people present us with a choice: “Do we pass along a spark of the Divine?”

Script Console in GSoC branch of Digikam has Full Qt API available now !

Following my last post, the Script Console in Digikam’s GSoC branch has the FULL Qt API available by default.

Now you can access the full range of Qt Widgets from Modules like
QtCore, QtGUI, et al.
Use all the modules available in the Qt API as follows:
Open the script console in Digikam from tools->Script console
and type out :
var a = new QWebView();
var url = new QUrl(“your Url here”);
and then click on the Evaluate button.
The screen shot shows the result 🙂
Stay Tuned, More to Come !
Until….. Next time !

Yay !! i am on the planet !

It feels great to be on planet KDE.
This opportunity came as a pleasant surprise , Season of KDE.
Putting aside my project proposal for GSoC "Integration of Face Recognition in Digikam" as
one of my fellow (now a GSoC er on the same project). I have decided to focus my attention
on "QtScript integration in Digikam". More on this in a while.

Save Time and Money !

Many a times i read PDFs linked on websites, not knowing whether it is what i wanted (when i am trying to learn something new). In these cases Google comes to the rescue.

Instead of downloading the PDF ,i just google (verb) the link referring the pdf i.e. http://www.hihello.com/hello.pdf

Google would return a “Quick View” link clicking which it returns an HTML version of the pdf, saving a lot of time and bandwidth (money).


Windows Sins ….

“Give a man a fish and you feed him for a day. Teach him how to fish and you feed him for a lifetime.”

Increasingly, computers are expected to be useful tools in our children’s education. But today, most children whose education involves computers are being taught to use one company’s product: Microsoft’s — Microsoft spends large sums of money on lobbyists and marketing to procure the support of educational departments.
continued …. http://en.windows7sins.org/

Urinal protocol vulnerability

When a guy goes into the bathroom, which urinal does he pick?  Most guys are familiar with the International Choice of Urinal Protocol.  It’s discussed at length elsewhere, but the basic premise is that the first guy picks an end urinal, and every subsequent guy chooses the urinal which puts him furthest from anyone else peeing.  At least one buffer urinal is required between any two guys or Awkwardness ensues.

Let’s take a look at the efficiency of this protocol at slotting everyone into acceptable urinals.  For some numbers of urinals, this protocol leads to efficient placement.  If there are five urinals, they fill up like this:

The first two guys take the end and the third guy takes the middle one.  At this point, the urinals are jammed — no further guys can pee without Awkwardness.  But it’s pretty efficient; over 50% of the urinals are used.

On the other hand, if there are seven urinals, they don’t fill up so efficiently:

There should be room for four guys to pee without Awkwardness, but because the third guy followed the protocol and chose the middle urinal, there are no options left for the fourth guy (he presumably pees in a stall or the sink).

For eight urinals, the protocol works better:

So a row of eight urinals has a better packing efficiency than a row of seven, and a row of five is better than either.

This leads us to a question: what is the general formula for the number of guys who will fill in N urinals if they all come in one at a time and follow the urinal protocol? One could write a simple recursive program to solve it, placing one guy at a time, but there’s also a closed-form expression.  If f(n) is the number of guys who can use n urinals, f(n) for n>2 is given by:

The protocol is vulnerable to producing inefficient results for some urinal counts.  Some numbers of urinals encourage efficient packing, and others encourage sparse packing.  If you graph the packing efficiency (f(n)/n), you get this:

This means that some large numbers of urinals will pack efficiently (50%) and some inefficiently (33%).  The ‘best’ number of urinals, corresponding to the peaks of the graph, are of the form:

The worst, on the other hand, are given by:

So, if you want people to pack efficiently into your urinals, there should be 3, 5, 9, 17, or 33 of them, and if you want to take advantage of the protocol to maximize awkwardness, there should be 4, 7, 13, or 25 of them.

These calculations suggest a few other hacks.  Guys: if you enter a bathroom with an awkward number of vacant urinals in a row, rather than taking one of the end ones, you can take one a third of the way down the line.  This will break the awkward row into two optimal rows, turning a worst-case scenario into a best-case one. On the other hand, say you want to create awkwardness.  If the bathroom has an unawkward number of urinals, you can pick one a third of the way in, transforming an optimal row into two awkward rows.

And, of course, if you want to make things really awkward, I suggest printing out this article and trying to explain it to the guy peeing next to you.

Discussion question: This is obviously a male-specific issue.  Can you think of any female-specific experiences that could benefit from some mathematical analysis, experiences which — being a dude — I might be unfamiliar with?  Alignments of periods with sequences of holidays? The patterns to those playground clapping rhymes? Whatever it is that goes on at slumber parties? Post your suggestions in the comments!

Edit: The protocol may not be international, but I’m calling it that anyway for acronym reasons.

ACK: This was originally published in XKCD http://blag.xkcd.com/2009/09/02/urinal-protocol-vulnerability/