Google summer of code – Pidgin stats collection!

Hi all,

Looks like this summer is going to be one dusty ride. I have been selected for the Google Summer of Code program, 2012 with Pidgin. Firstly my proposal is public. You are welcome to have a shot at it. I will be working on “Pidgin stats collection” and Eion will be helping me out with the project.

 

For those who are not aware of what Google Summer of Code entails. It’s a summer long coding program where students (and students only) are allowed to write proposals for any projects they might wish to pursue to various organizations. The organizations then choose students on requirement and quality of proposal basis. GSoC has been successfully running for over “5″ years now. The pay is nice (~ $5000) for a summer spanning 3 months.

 

I have been trying for GSoC for 4 years now, and this is my second success. So basically it’s pretty stiff to compete here! Coming to my project, I will be working on providing Pidgin with a usage-stats collecting framework. Pidgin being a multi-protocol client – has a lot of diversity and it’s generally useful to know what is being used a lot and what is used only scanty. Well, it’s a famous software engineering law that 10% of the software features are used 95% of times. Then better know them :-) . I will be working on the lines similar to Sparkle, which is a stats collation interface for Adium.

 

It sounds a very interesting summer, and the project has a very largescale impact across Pidgin! The most interesting part being, as soon my plugin goes live – it starts collecting information. It’s always very exciting to see you baby fly :-) . I have decided to write a regular blog in this space regarding my SoC progress.

 

Cheers

–Sanket

Are we not good enough for Algorithm Competitions ?

Algorithm competitions have secured their name-space in programming fraternity today. They have gathered attention of some of the most brilliant minds across the computing era. And they have set quite a few benchmarks. I am talking about the likes of TopCoder, Codechef and now emerging tid-bits like Interviewstreet. Even CSE, IIT Kharagpur is going to hold Bitwise, it’s annual Programming Competition. The variety of people participating ranges from professionals to students currently in sophomore to school kids! Such has been the craze. Besides running such competition needs least of human and capital investment. Take for example Codechef, which is a Directi initiative, and if you ask any Indian student he might know what Codechef is — but he might meek idea of what Directi does :) .

I would today discuss about why Indians, and students from IIT’s fare badly in such competitions. The first question to ask is, what does it take to really do well in such competitions ? As any other preparation this is an organized effort which requires:

  • Penchant for algorithms, and a will to solve new as well as complex problems
  • Basic grounding in standard algorithms, which are used as subroutines to most problems
  • Exposure with loads of solved problems
  • An armor of implementation techniques, mostly learnt through practice

I think the issue which requires most effort and concentration is “practice”. Programming is more or less like Math, the more you practice — patterns start to flow, techniques start to apply themselves and you become quicker by the day :) . I think this streamlined approach is missing for most Indian collegiates who have tried and frustrated at hands of such extreme competition! Take for example a typical coding competition lasting say, 2.5 hrs and asked to solve 3 problems of varying difficulty. How does an experienced competitor moves in such short time ?

  1. Identify which problem is simplest and go for it, take about 20 mins to wrap it up (it’s difficult believe me!)
  2. Identify the second problem and try to work out a doable and fast enough solution. Generally requires advanced math or graph theory etc
  3. The third question will be *tough* and even if the approach is known, the implementation will be quite difficult

Easier said than done. Following above steps takes extreme practice and regularity, as I said it’s just like maths.

The reason why Indian students are not able to excel is simple: after entering into college they simply lose that intensity to go for the kill. Secondly the misconception that Algorithms competitions are meant only for CSE students. I have seen 4 yrs of ups and downs trying to master the skills — leave mastering, in my final year I can only give advice to my juniors about how to approach and develop skill in this area. You need to be consistent with the following:

  1. Programming is an exercise, it’ll not come after you complete your Algorithms course, nor is it a dependency
  2. You need MUCH MORE than learning a few algorithms, when it comes to implementation — the game is very different
  3. If you are consistent, you will improve, hence practice consistently on any of the existing interfaces
  4. Do not compare now, you’ll be utterly disappointed :) . You are learning addition, so cannot think about finding logs right ?
  5. Finally, the competition is still brewing in India — we lack far behind most nations, so the canvas is yours :)

Cheers!

IIT Pattern change — is it really the big issue ?

I was having a quiet bornvita at Shiru, our local canteen, when a junior of mine struck open into a discussion regarding the pathetic situation of infrastructure at IIT’s. He is appalled by recent uprisings with respect to reformation of IIT’s selection procedure. We are no strangers to the phenomenon that is(was?) JEE, one of the most prestigious and undoubtedly toughest nut to crack for a teenager around. I being an IITian am proud and sometimes egoistic about it. No doubt we brag and babble about it to any stranger, specially to institutions outside India, where JEE holds a high place!

So yes, I was talking to this friend, and soon the conversation turned into a torrent of shrilled tones, heavy with emotions, about how Mr. Kapil Sibbal has destroyed IIT’s “USP”. Mind you, this guy has been to various places around the world — and hence is no n00b. But the real buck lies with the trivia — “Is IIT’s pattern change the real game changer, the real issue ?”.

I in no way, want to defend Mr Sibbal or his ancestors. But I do like to keep a balanced view, as it gives you an opportunity to think against the grain. Let’s start with the change in 10th standard’s marking system. Currently you are not graded for your marks but rather for discrete grades. There were various rationales for this, decreased load over students, better education, more concentration towards extra currics etc. Then came the flu of humbling JEE, first we had a change from subjective to objective, then the IIT’s doubled in number, and now the latest news in town is that — half of the total evaluation shall depend on 12th marks. What I see in the trail is not an attempt to demean JEE’s standard, but to bring about a phase change in the admission/selection procedure. Doesn’t this look awfully like an attempt to make admissions more uniform on a student’s aggregate ? Okay think in this way, unless we dilute the selection methodology, other factors such as Academic Achievements, extra currics, sports excellence etc cannot come into play! Otherwise how are we to achieve the perfect education system, which promotes sports and academics alike ? We all like the way things have been for last 20-30 years, but is that the best OR there can be something even better! The list of defenses can be long, for I have seen people get sentimental and cogent, but none weighs the policies for an inherent good-will.

But I am not defending here, and shall not try to take on the wrath of readers. My real concern is — is pattern change really the deal breaker ? Well, for me, in my hall mess at RK, IIT Kharagpur, we do not have enough staff or equipment to serve food. Neither is there enough space for students to stay comfortably. The labs are shabby, there’s hardly space to fit students in a single lecture hall and the infrastructure is falling apart. We all know the condition of professors, and their dwindling numbers. For all those who have been shouting like hounds, does these issues not make a major deal ? What if the Pattern changes or it stays darn same — the grass-roots are rotting, seething with filth! Whatever reasons you give, a new pattern or old — all Indian technical institutes, including IIT which is just a trickle of the whole, need a huge boost in terms of Infrastructure, teaching facilities and hiring capability!

So ask yourself, is your argument — whether it be accepted or refuted — changing the major picture !?

[PLACEMENT MANIA] What’s an IITian worth ?

Mammoth placements, ~100 guys get placed on the first day. Facebook offers 140 K USD, Microsoft Redmond 120 K USD, WorldQuant comes dangling in with a 30 L Indian offer, BCG and Deutsch Bank  with about the same astronomical price. I could literally see people fly from one end of Takshashila Complex to the other End of Vikramshila Complex for the first day. Phew! The day is over — people are happy in their slumber. Some disappointed for they could not make the cut. Some deep into booze at Little Sisters’ or Park. Well the day is over. The next day rises — and again students dressed like waiter and waitresses ( take it with a pinch of salt ) are seen escorting their portfolio laid with un-cooked inexperience, all in a single sheet. A sheet which seems to have encapsulated the entropy that is a human with 22 years of experience! It must be smokin’ hot ;) . Opera, Amazon, Epic bla blu ble. At the end of day, again some in slumber, some deep in booze and some with the noir experience.

The question to really ask ourselves is — what’s an IITian worth. What are we worthy of ? Does placements do justice to us, does that 100 words worth of random blabbering defines us! Okay, let’s start from the basics. Let’s take rough estimates — there are about 1K students who sat for placements during Dec-2011 from IIT Kharagpur. How many had entered with a dream to consult for Goldman Sachs ? How many knew they had to solve case studies. Aren’t we not totally and bizarrely disappointed for the horrible Group Discussion — whose winner could have been decided only by a stick and rebel ? Is our faith in ourselves not lost when we grope for anything that comes our way — are we so hopeless to bend to as companies wish!

I am not trying to target any section w.r.t to placements. And am totally aware of how things are for most of the departments around the campus. But let’s talk about some of the “achievers” and so called “stalwarts”. Again sorry for pointing fingers, but now that I have raised it, let me ask a simple question — how many of us make oneself what we really wanted to be. Why is that our definition of success is solely based on what “some” think as a great achievement. Why is everyone running to become the “next big SF or KTJ core team head” ? Is our world really restricted to these themes — or is it that we have become too narrow minded. Coming back to placements, why is that BCG is a dream company for all! I have a friend of mine, Rishabh — a simple question to him, he switched from IBM to BCG. Whooot ? How is that even a “switch” ? Have we become so insane and apathetic to ourselves that we have lost our identity to our apathy ?

In my humble opinion, we have lost all track of who we really are. Our definition is being increasingly influenced by what other would think of us. And that makes me wonder “what’s an IITian worth” after all ?

Yet another GIT vs SVN vs CVS

I am sure you have had tons of comparison between GIT, SVN and CVS. But they are generally a straight comparison of their technical bits, and do not discuss the criticality of migration issues. By migration I do not mean, the technical difficulties while migrating but rather the resistance against the Newton’s law of Inertia! If you are one of the managers, or are thinking of switching where your organization is closed and a clique, then this post if for you! If you have already faced the wrath of mundane programmers who do not more than write money sucking modules and do merges over CVS without considering the fact that there are *way* better tools with rather small learning curve then this post is for you( or if you are of that thought and looking for a good reason to do so )!

I am a rather inexperienced and came to intern to a very dynamic group of young devs. They have an issue that CVS performs badly with tagging, branching and merging is no piece of cake( who guessed as soon as I said CVS :P ? ). I was called upon to fix it. Me being a git user, took no hesitation in preaching out loud, only to face a series of blows which changed nothing about how I see git or other versioning systems, but give a taste of what real world can be like.

So this is my issues with the current development environment they have:

  • They use CVS( lol )
  • The merging is heavily based on tagging, which in CVS is specifically very bad
  • Merging needs dedicated people to tell CVS not only which branches but also what all to merge!
  • Their workflow is very adhoc,( the master is mostly broken )
  • The history is next to useless, it is almost impossible to make out anything useful or grep out
  • In short, they have a cribbed repository, just good enough for the bunch of guys who develop it( and hence do not crib about it :P )

But one thing that is remarkable here is, the company makes thick money, and the group of people I am talking about write the backbone code( they payment gateway ) so in no way can they be considered dumb. It is just that CVS just could not be smart enough for them( appreciate the sarcasm ? ). So I propose git to them, and give them the following reasons:

  1. Git allows your to work offline, with CVS or SVN it is not possible. Even a simple log command cribs for the server
  2. With the philosophy of Git branching, checkout, tagging is a flash. SVN is good with branching and tagging but with checkout it is slow( goes to the server for each file )
  3. Git being content addressable, can be checked for inconsistencies( they have had CVS corruption which I found out )
  4. There are great workflows which suite them completely and have been worked out great with Git, here.
  5. With facilities like interactive rebasing and interactive add, stashing etc, you do not need to make bulk commits or create un-necessary branches for each bug/feature
  6. Git is blazing fast with cloning too — it packes files and hence the transfer achieves connection speeds. With SVN and CVS there is no such tarring which makes it inherently slow over the wire
  7. Non-significant but git metadata is almost half that of CVS and SVN and there have been better reported results with Mozilla’s transition of SVN->GIT

But you need to realize that even Google uses Perforce which is a centralized server architecture and Microsoft uses something home-made. There is a lesson to be learnt –> Smarter is not always better. How much do you hate the extra smart geeky guy :D . Infact it won’t be an understatement that need of the hour is all that matters. So I was faced with the following issues which challenged my decision, they are not technical but related to the need of the migration:

  • Most of the time developers work from within the office, so no real need to have git’s offline work capability
  • SVN can do tagging and branching equally well, so how does it matter what we really use. Besides SVN has better UI tools like TortoiseSVN and integration with most IDEs.
  • Will the devs really use stashing, rebasing or 3 way merge ?
  • What about the learning curve.

If these same questions were asked in an open source organizations, I would not be surprised at the thrashing that would be happening on the thread :D . But for an organization all this *really* matters. At the end of the day, it’s a group of not-so-smart people basically developing code which is earning bucks for the manager, and no-body cares about the quality code than the quality of your turnover :D .

Cheers

Sanket

GIT macro/tasks for ANT

Ant provides a host of tasks, including those for SVN and CVS. I recently ran into a migration from CVS->GIT where I needed to migrate the CVS files too. But as GIT does not have a port for ant yet it did not work out. I googled and found a very interesting project on github: https://github.com/FrancisVarga/ant-git-macros. Though I found this inadequate for the various issues I posted( w/o any useful replies ) here: https://github.com/FrancisVarga/ant-git-macros/issues. Though I should not take away the credit from the creator for the solid framework that it gave.

I have forked this project here: https://github.com/snktagarwal/ant-git-macros. The major issues that I have fixed till now are:

  • The dir attribute was not accessible from git-* macros. In other words the git attribute was not exposed properly
  • There were some commands like git-fetch missing from the list of macros, I added this as a trivial task
  • The major concern were the options. Passing variable options is /not a piece of cake/ as in: here

I will be obliged to hear of any more issues and if you are up against a similar task/migration you are encouraged to submit any bug fixes/issues/feature requests.

Happy Coding

May the source be with you :) !

Pidgin Whiteboard Application

Pidgin for me has been the steady love. I have seen it develop for a long time, though haven’t been able to contribute to it any major form. That said, I want to change it.

I won’t go into what I have already done/experienced with Pidgin, but rather what my present/future plan is!

Pidgin has improved by leaps and bounds when it comes to integrating with leading IM Protocols, including Yahoo!, Google, Bonjour etc. I even see some not so well recognised ones! It just shows the amount of commitment of the Pidgin society. This article will be technical starting off with an introduction to the idea, the target audience. I will go ahead with the technical details, the architecture of Pidgin, the architecture of application conceived and finally my comments.

1. Pidgin Whiteboard — The idea

Whiteboard is an application which helps users to interact using images/graphics. Text chat that we have known from long, has the restriction of expressibility. It is not easy, or rather intractable to discuss a complex equation, or say a design. People augment their conversation with perhaps alternative means like mails or file transfers. But that have their own restrictions! What has always been missing, for me, is the drive of IM Software writers to implement a whiteboard application. It is almost a norm in IM devel nowadays to support Voice and Video(vv) but I haven’t seen the same commitment towards Whiteboard applications. Besides it is infact much light weight, compared to Voice and Video whose target audience is High Speed/Un NATted peers!

IMO, Pidgin provides a torrent of protocol support, and the stack has matured quite a lot over time. To provide the user with a richer experience my idea is to provide a Whiteboard Application for the same. Related work in this field are seen in Yahoo! Doodle, and more recent Coccinella.

2. Programmers point of view

Disclamier: This section deals with the technical details.

The first question I asked was, why should I share/disclose my idea. Isin’t it the world of *intellectual property rights* or *patents*. C’mon who cares you have the patents, what matters in the end is the product!

2.1 Libpurple

Libpurple is the protocol stack/engine that drives Pidgin. So you can see Pidgin simply as a wrapper which gives you a *pretty* way to interact. Infact while building Pidgin, you can simply build Finch which is a command line interface for IM. Oddly enough, no one knows that Finch is bundled with Pidgin. So to understand the integration of Whiteboard application, it needs to be understood that it will be placed atleast above the protocol stack of Libpurple. Because in that way we need not know what each protocol intricates, only need is to build it over Libpurple and let it handle the complexity of different Protocols.

2.2 Whiteboard Protocol

IM is a well defined standard implemented in form of XML RFC’s. XML has paved the way for all present Instant Messaging services. I was not amazed to see that there is a protocol stack for Whiteboard Implementation too! Here you go: http://xmpp.org/extensions/inbox/whiteboard.html. Though it is not a accepted XEP, still it provides enough concreteness to the idea( besides XML is a standard not a language. ). What will be most interesting to see is an implementation of the above XML whiteboard protocol to Pidgin!

2.3 Graphics

One boiling question is about rendering graphics on the whiteboard. There are two major ways, Vector and Bitmap graphics. Where bitmap is relatively easier to implement( no layers, simple overwriting ) Vector graphics provide richer experience. I would prefer Vector, ofcourse, though Bitmap can be a good starting point during the development phase.

2.4 Integration

So the application will have the following architecure:

  • A XML parsing module to parse the Whiteboard Specific XML messages. This parser will be placed just above the Libpurple interface( by “just above” I mean that this parser will user functionalities local to Libpurple. )
  • Session management — This part will contain the management of different sessions, for example if there are 3 different Whiteboards open or the like. IMO this can again be done using the Libpurple stack.
  • GUI interface/Windowing — This part will be purely GTK( windowing toolkit used by pidgin ). And will use functions provided by Pidgin’s API.
  • Graphics Rendering — Implementation of what to do with the whiteboard, for example, draw a circle, move an image and the like. To do all these functions we need to develop a API of our own because Pidgin presently implements/supports nothing like that. libpango IMO can be a good starting point. Though I am really not good at deciding that.

2.5 Flow of control

[Revceive]

  1. A message bound for Whiteboard is received by Pidgin in XML.
  2. Libpurple interprets it and does some preprocessing based on the protocol( yahoo, gtalk )
  3. The hook we put just above libpurple interprets this XML takes responsibility of it’s rendering.
  4. It renders it on the whiteboard, here the UI part comes into play

[Send]

  1. The whiteboard interprets the user changes and prepares the desired XML.
  2. It passes it to Libpurple to be sent.

Fests Gallore

Everybody enjoy’s fests, who dosen’t ? I won’t be blabbering about what the fests have done for the College people but rather take a *critical* at what the fest management has to preferably do in order to make the experience more healthy!

On this note I would like to take you to the technical fest organised by my college, and it is called Kshitij. Held in the month of January it attracts over 4000 people around the country and owing to it’s stupendous success, people from across the board have also started participating. Packed with events covering all ranges of technical expertise:

  • Coders: Overnite — 12 hours rigorous coding event, Javawise, Opensoft,
  • Cryptex for the hungry brainiacs.
  • Electronics: Anadigix
  • Robotix: Loads of events here, see robotix.in
  • Plastic Engineering: Cryotech
  • Management Gurus: Case Study
  • And the list goes on for over 50 events

A *lot* of energy is invested to get the right amount of publicity. I myself campaigned for Kshitij in Jaipur where I gave a talk on Cryptography and Network Security. The amount of gathering was mind boggling. I have never had a better audience. Taken apart by the energy… hats off to jaipur guys :) . Back in Kharagpur the event is in full blow of preparation. Pre registration have already blown across 7k people still in January, an estimate tells even if 4k people make it…. we’ll be out of place. But buck up guys, this is Kshitij! With now only 4 days to go, people have started flocking in for weekend hibernation from the hectic college life!

This is a general scenario for any fest which aims to attract large amount of guys. But I want to ask a question, are the participants really aware of what they want out of the fests… we should all take a step back and think about it. Also, are the fest management doing justice with the events in which you are participating ? Let’s take Kshitij for that example :- I was a technical organising member of Overnite. Overnite is a 12 hours coding event *known* by many the marathon of coders. It easily has the largest participation and it was a pleasure to be a part of the organising team :) !

I had an opportunity to look through the hazy window of how internals of Kshitij works, and lemme tell you… it was not *very* pretty! In my own event most of the organisers had left the spot within 3 hours of starting. And by the end I was the one giving out instruction on what had to be done about the Certificates etc! Disaster Management, that’s what you call it, heh ? I should ask the Kshitij management team and for that matter *any* fest management team if they are doing justice to their events ? Is having 50 events with only 5-10 being looked after properly a stellar achievement ? The answer obviously is NO! The fest keeps getting bigger but the quality keeps degrading.

I would request all event organisers to take this article as a food for thought and think about the justice they do to their participants and their events. It’s only when we make our efforts sleek and trustworthy, that we might go *the-next-stage*! Right now we are stuck in a plethora of un-organised fests!

Signing off: Sanket Agarwal

Read this article on my blog: http://www.sanketagarwal.com/blog/

…..Answers….. Gallore! — V2

[On request to make it more interesting -- Version2]

There are two theories of Blogging, one is to blog as soon as you get laid with neighbours young daughter OR you wait till you get laid with her 4-5 times :D . Well, getting serious… this one is after a LONG time. And I feel it will have more content, an orgasmic excitement! BEWARE: I take no responsibility for well structuralism of this post :D .

I will through this post, try to initialise a thought on following:

  1. what is the meaning of ANSWER ?
  2. Why do we get convinced sometimes, while else we continue in search ?
  3. Why can’t, books provide all the answers, the questions we ask are after all repeated !?
  4. And is it that, always there are answers… ?
  5. If some questions don’t have answers, why do some people still go in a futile endeavour ?

1.

Consider a Saint. In our worldly description of a Saint, he is Baba Ramdev, Baba Sudhanshu Ji Maharaj or Baba Maheshwari…. whoever he is, is considered a image of GOD, thy presence on world. But I should rather ask why do we consider him something unworldly, something divine ? What does he do to make people believe to achieve such great position ? I can’t beg to think, but perhaps he has answers to everyday hassles…. his calm and composed figure is an epitome to draw positive energy. But then why does he has all the answers ? Maybe he has already asked all the questions to himself! And perhaps our anticipation of right and wrong is not very clear.

Consider the trivial-lest of questions: “What is the purpose of life ?”. I can guarantee that no person in the world claims to know the answer…. BUT…. each established soul will make you believe that THEIR answer is correct. What I just produced is a contradiction.  How can each answer be correct, when there exist no answer ! ? Well all aforementioned people are good enough to cast a spell of their own explanation…. but the more crucial fact is, you let yourself to the hypnotic effect. It is similar to lack of immunity to diseases! The time you have immunity…. you can only be preyed to deadlier of viruses. So to answer the first question about what answer is I would say that it is our relative ignorance to understanding, our shallowness to divine.

Well then, I have something more to say, IMHO mathematicians are the most foolish people on Earth! Now you would ask me… what rubbish, heh ? See your answer is propelled by what society thinks, and your opinion on the matter is VERY shallow. Anyhow listen me out :) . Consider what is 1 + 2 it is 3. Cool! And what is 2 + 4 it is 6. Wondrous! And what do we have, Mathematics! The area which has all the answers in it’s domain. How very shallow! They think because they can solve all the questions of their domain… they’re the most intellectual people around ? And you cannot help to laugh when I would tell you that, some problems in mathematics can be proved UNSOLVABLE! That is simply hilarious ( I am myself a mathematician in some sense… :) ).

2.

Continuing from my first thought, it is clear that a narrow thought will yield to something better and give up searching more! A Saint never stops searching for the meaning of life, because he has opened himself to divine, and devine tells that there is no answer to life! Your depth defines your search!

3.

I recently watched the movie,  “Into the Wild”, based on true adventures of  Chris McCandless. In VERY succinct summary, Chris is Leather Wearer( one who roams the country ). Having a disturbed childhood and identifying himself as a Bastard, he leaves the homely comfort after his graduation in search of TRUTH. He works at a Farm, a leather workshop and yeilds to the Nature’s fury in his Great Alaskan Adventure. After months of Solitude and retrospection his last words remark:

“Happiness is only when shared.”

I cannot help thinking, in how many books, wisdom talks and verse texts, the same thought is reflected. Being a ferocious reader of Tolstoy and Shakespeare, Chris must have come across this line at least once. Was it so important for him to yield his soul ?

On a deeper note, why is history written, why is literature cherished, why do poems get so intense but still hold significance over time ? If the only way Chris could find an “answer” to happiness was by defying all beliefs, did not all our legacy fail to save him ?  Here lies the insight into the 3rd point.

4.

But when we ask what happiness is, we fail to see an answer in our surroundings, in books around us, and the society around us. Definitions shatter like pack of cards. Chris is no exception, he started off his journey in search for answers, but guess what, there existed no answers, there existed no end to the infiniteness he was propelling against! But after all the solitude and retrospection he realised that….  some questions have no answers, but the path to this cognisance itself is the answer! It is truth, the journey is the truth, the wildness of man is the truth.!!!

5.

Continuing from the last point, there may be a single realisation to GOD but there definitely exist infinite paths. Each person follows a unique one. And their lies the reason why books and legacy and history fail. Given a chance won’t you like to explore your imagination, OR would you always go via the road taken ? Each path is a realisation… maybe the ultimate truth is nothing but a dead end saying…. THE PATH IS THE TRUTH, YOUR WILDNESS IS THE TRUTH.

Trip en-route Bangalore

I am in the middle of a rollicking time @ Bangalore. It’s amazing how well I can freak others[and myself] out :D . I will guide you through an expert tour to Bangalore/Mysore!

So where do we start, yeah:

Microsoft Research Bangalore

The place where it all starts, my working desk and also host to some really *brilliant* kids, besides they do not how to enjoy their stay, but that’s why I am here right :D . The office is superb, a amazing desk with a personal telephone/computer and a mind blowing Pantry. Ohh yes you should have a look at the pantry in Microsoft… there’s one such on each floor :) .

DSC00662

DSC00661

DSC00660

Let’s see what all we get in the pantry:

  • A awesome coffee maker.
  • Loads of chocolate.
  • Butter, Cheese Spread, Cold Drinks, Beer( Just joking ), Juicses.
  • Variety of Biscuits.
  • Bread, toast maker, milk, corn flakes.
  • Quick Cook food.
  • Basically all you need to survive like a king :D

But you should also look at the other facilites around, they are truly out of what I had thought of an Ideal working place!

DSC00704DSC00705

The first pic above shows the playing yard of the building, we have loads of games and we prefer cards generally! If you see the third desk at the back, something covered with a white sheet… it is actually the Microsoft Surface, an amazing tool from the Computer Vision Group. I have heard that you can potentially make Coffee/Tea over the surface. FYI, the surface is nothing but a *big* computer screen with sensors to note motion!

We have parties as well as *surprise lunch* outside, I have had more pizza in these 3 weeks than I had in last three years.( I had practically no *pizza* before that so… :P )! I think that is enough as for Microsoft India is concerned :) .

Mysore Trip

Mysore is a place 3-4 hours from Bangalore and I have become more travel freak then ever so I thought of a 15hr trip to the place( formally it leaves only 7 hours for any sight seeing ), I will leave you and my pics to have a trip:

mysDSC00685

How can I forget the all memoranble night outs on the roads of Bangalore. I’ll tell you about this day on Saturday, we had lunch at some gruelling southindian food place. Followed it up with roaming and time killing at Forum Mall( it has nothing other than randomly shooting youth couples ). This was just the starting, this was followed by Rocket Singh, then Bowling Alley’s@Amoeba and then ‘The Informant’ starring Matt Damon in Inox. We reported back some 2-3 in the morning( ohh did I miss the Beer, ahh I guess I did ;) )! Again, a picture speaks thousand words.

Playing Air hockey@Amoeba

Bowling@Amoeba

Three idiots in Inox before the movie :)