A bit of background first: I joined Yahoo!  Bangalore in May for a 10 weeks summer vacation internship. And my first industry experience.

So: what did I work on? Stuff that involved extensive use of a keyboard, monitor (2 in fact) and a touchpad (occasionally even a mouse). Apart from that, I'm not sure what I'm allowed to speak about, so to avoid any unnecessary complications, I'll leave it at that.

Let's start at the beginning, shall we. Day zero: Go and see the Y! building from outside. Getting into the business park was a bit difficult, so didn't try venturing into the building itself. Day one: Arrive at 8.30 in the morning, wondering what I'll be doing. Completely dressed up in formals, of course. I mean, which company doesn't expect shirts, trousers and black shoes? A lot of them, apparently. Including Y!.

9.30: My introduction to Y! . A 2 hour presentation followed by an intro to my team. I am completely amazed by the office -- themes for each floor; Cafe Coffee Day machines on every corner; neat and clean cubicles. Even better than what I'd expected after having seen the Adobe office in Delhi during India's first WordCamp.  My computer wasn't quite ready yet, so I was given a quick introduction to search engines, the structure, etc. by my Team Leader and Manager. Which, in itself, was pretty cool. My computer was set up by the end of the day, but getting it to run was a pretty big problem without support.

Finally, near the end of the day -- it was working. I quickly set up/was helped in setting up my email, Cube No., etc etc. And customizing my desktop. So I was set to reading about a lot of stuff maintained by Y!, which I would be working on. And this kind of went on for the first week -- orientation, reading up a lot of stuff, presentations and clarifications by my team leader; and I click my way through to Friday, setting up a dev environment (customizing Vim, etc.) and so on.

Come Friday, and my team's changed. Which was a bit strange -- but there wasn't anything I could have managed to do wrong by then, so I wasn't that worried. And I probably shouldn't have been, from what I've seen of Y!. ( Y! is so much easier to type than any pronouns, or the company name.)

Week 2: I'm introduced to my new Manager and Team Leader -- my computer's still the same till now. And then I start reading up on new stuff that I'll be using/working on. Re-run 1st week, with a different context. Oh, and I also move to a laptop; as the desktop hasn't been removed yet, I start using both the Desktop's huge monitor and my laptop's average one together. The downside to a laptop -- I'm stuck with Windows; the up-side? I can carry it to conferences and all. And finally, near the end of the week, I'm told about what I'll be working on. Something or the other.

Week 3 onwards is kind of a blur -- I walk into office anywhere between 8 and 11, stay till anywhere between 1 and 3 (am), learn a lot -- both related to computers and pool -- annoy my team leader with strange questions related to the environment I'm working in. And have fun. Weekends are spent crawling around malls looking for books (Landmark being my favourite), having iced coffee at Gloria Jeans Coffee -- and wondering about the requirement of weekends in general for certain kinds of jobs. Occasionally I would be bored enough to walk into office, get some work done, play some pool. Also joined the gym during this time, and kept a goatee. And a moustache.

Somewhere around the middle, I gave my first presentation. I even spent half the night photoshopping 2 flickr images to make a nice image for my debugging tool. It was during this time that I started walking into office at around 10 and leaving anywhere between 1 and 3 am.

I distinctly remember the first night I spent at office. I had initially planned to leave at 11, as I needed some help from someone across timezones. By the time I was ready to catch a cab, it was pouring heavily; and the solitary cab that had managed to reach the office was already overcrowded -- I turned, went to the Cafe, bought a Red Bull (my first) and marched back to my cube. And worked till 3 am. Followed by 2 hours of pool with some other insomniacs (and people who had come back from home 'cause of power cuts). And then some more work till 7 am. After which I caught an auto home.

I spent 1 or 2 more nights at office after that day. There always used to be a few people around. The longest I stayed at office was some 30 hours or so -- during the hack day. I brought along a change of clothes, a towel and other toiletries -- stayed up throughout the night, worked on my hack (http://kunal-b.in/Tangent2) and had more concentrated doses of caffeine than I had probably ever had before. I'm sad to say that my hack bombed and didn't even reach the top 40, but it was an interesting experience.

Life went on, office, various malls et al. Landmark, novels and comics being my primary source of entertainment.

Perhaps too soon, I reached the end of my intern. I gave my final presentation -- which was well received (or I hope it was) -- and spent a week adding a bit more stuff to the final part of my project and handing over whatever I had done to a FTE Y!. And then, back.

After such a long, stream of consciousness typish post, a short summary: Went to Y!, set up camp in office, had fun, did some work, made quite a few friends, played pool and came back to college (but didn't want to).

Interning @ Yahoo!

I seem to have developed a habit of blogging on Saturdays. Interesting.

So today wasn't a bad day; attended a nice series of talks by the heads of Naukri.com and Rediff.com as well as a very interesting presentation on current internet trends -- as well as what had been predicted by a certain investment company a few years in the past, and how well those predictions stood up to the test of time.

I also got myself a new book -- Nightfall/Asimov. At this rate, I might set up my own library in Blr before leaving.

Tomorrow will be spent in office; working a bit, practicing pool shots in the recreation room and maybe even gymming if the gym is open.

Today will be spent in going to the mall, having a spot of dinner followed by doughnuts(!) and probably ice coffee. Maybe even practicing the guitar a bit.

Recently, I've been discovering a few of my limitations. Some I want to work on; others I couldn't care less about. One of the things I've given up completely on is Environmental Engineering; one of those I want to work is my social awkardness; and the one I'm going to blog about today -- which really doesn't matter either way is -- I've lost all ability to simply while away time (after almost 6 years of not having any -- time to while away, that is).

So I went to 2 malls today; Forum and Oasis -- and even watched a movie (99). So how did I pass my time?

  1. Roaming around aimlessly. For normal people, this amounts to window shopping and walking around slowly; for those cursed with my unfortunate afflictions, it involved walking around quickly, pausing only occasionally and doing 2 full rounds of the mall within 45 minutes. And then wondering what to do next.
  2. Watching a (mind numbing) movie (99) [Insert: I've detected a new pattern in Bollywood films. Hero comes, bad coincidence happens, stuff happens, finds heroine, insert crisis here, more stuff happens, inexplicably resolved by various coincidences and miscellaneous acts of god, more stuff happens, happily ever after.] I did my best to add to the laughter soundtrack at appropriate instances, but that was all. I possibly would have preferred a root canal (at least it would have been over quickly).
  3. Drinking coffee with a novel. Being a coffee connoisseur (I prefer my coffee bitter) I wound up at Cafe Coffee Day with a Kaapi Nirvana. It was more like the innermost circle of ice coffee hell; dilute sweetened coffee overloaded with cream. I had planned on loitering over my glass, perhaps whiling away an hour or two; I finished as much as I could bear in fifteen minutes and walked away.
  4. Having lunch. Now, you might ask yourself that this is probably something anyone can spend hours on. I beg to differ -- under extenuating circumstances (such as a family of 5 carrying trays of food breathing down your neck waiting for you to get up and leave -- specially when they can see that you're lovingly lingering over a few remaining french fries). Maybe there's more than one reason they call it fast food. Dinner involved hot dogs. And juice.
  5.  Walking between two malls. For me, this was the best and most fun part of the day. I've started enjoying walking, specially as my legs started to cramp after moving from cycling 6 km a day to sitting on a swivel chair all day long.

As I reminiscence about my day today, I am realizing that the most productive part of the day was that I could write a blog post on it. The other good stuff that happened today was that I got a great webcam (iBall for anyone interested) as well as a good book to read (Cosmos/Carl Sagan).

Hoping that the weekends ahead won't be as bad.

I have managed to survive two years of life at IIT.

I feel I've always been here.

I feel like I joined yesterday.

Now that that's cleared up let me review what all has been done to me and done by me in IIT. Very frankly, I've changed a lot over the past two years. The first, and biggest change that came around was -- from one month into IIT life -- I've been wishing I had not been selected in JEE.

Other stuff includes losing 18 kg of weight and almost 10 in of waist, becoming extremely adept at putting things off till the last possible moment and still completing (most of them) on time, losing all fear of examinations and tests after being subjected to all sorts imaginable, learning more about site designing and Photoshopping than I ever had, playing in concrete, mud and other stuff, carrying out pages full of calculations without forgetting where I started off, running around a hockey field daily for a year, playing Table Tennis in the dead of the night (3.00 am to be precise) ...

... taking part in Rendezvous, Tryst, Literati and a plethora of other competitions, getting an intern, applying for interns, missing treats, attending treats, giving treats ...

... considering night and day as abstract concepts -- good to think about theoretically -- but not practical ...

... attempting to talk to girls during my socials -- and failing/succeeding ('s a long story), filling my resume with a long list of PORs and going mad doing all the work that requires, surviving for months with exceptionally long hair and beard, giving vivas, interviews, getting blasted and praised by professors ...

... learning to play the guitar, keep time, quizzing, occasionally debating, word games and cryptic crosswords, running a library...

... blogging.

Midpoint.

I keep changing my desktop to suit my mood and the kind of work I'm doing around that period of time. I just switched today, and made myself a new background too.

Some screenshots:

Empty

Working out

screenshot Cube

Finally, I've managed to make something I can be (moderately) proud of. I've tried a lot of new stuff in the new site design and I've recieved positive and highly negative reviews -- 3 and 1, respectively. What really matters to me, though -- is that I'm happy with it. What all have I learned from making the theme?

  • I used a home-brewed CSS grid; generated the css using Header-content and managed to get a full, easily customizable grid up and ready quickly. A suggestion for everyone making their own themes -- use a grid for making a blog. By keeping text and columns neatly lined up, you tend to give a basic form; some quiet space to read. It also made it much easier for me to create the alternating layout for posts while keeping the same order of html code for SEO -- just varying the classes was enough.
  • I've payed a lot of attention to typography this time around. I haven't used ems just so I can keep everything simple (as in -- whole number values of pixels) but I probably should have. Maybe I'll write something in PHP to do that for me. This design currently has a line height of 20px, with text of varying sizes. The font used for text and headings is palatino linotype; verdana, etc. are sprinkled throughout the rest of the blog in bits and pieces. I've also tried to maintain a vertical rhythm for the site, and believe that I have been successful -- more or less. Font-variant: smallcaps has been a great help for separating out links and stuff.
  • The CSS colours and typography/positioning elements have been purposely separated so that I can easily and quickly skin it. Perhaps I'll let the user choose his favourite colour theme once I get the php scripts for it up and running.
  • Fully supporting comment threading -- unlike a lot of the current batch of wordpress themes. It took me quite a bit of time to understand what went where -- Otto's blog was a great resource, but ultimately the best help was just going through the actual core files (as I was using a callback function to display comments). Maybe I should write up something about that here.
  • Tiny twitters: I've created a completely distinct -- and hopefully non-obstrusive look -- for the asides/twitters. I'll shortly be further hiding these by compacting consecutive twitters in a single box, but that, again will be sometime in the far future.

The new design

36 hours. 1 hacker.

His objective: hack his way to saving the earth.

How? by improving IIT Delhi's internet connection.

Well, not really. Yahoo! held it's first Hack-U competition in India at IIT Delhi this year (at least we have some advantage of studying in IITD). We were given all the tools Yahoo! had to offer, some excellent talks by Rasmus (the creator of PHP for those of you who didn't know), Christian and various others on the API's, etc. on offer as well as T-Shirts, bad snacks and pen-drives.

How could I have not participated. I ended up working for around 30 of those alotted 36 hours, having managed to clear my schedule with great difficulty -- I'm still catching up with the back-load -- and finished my hack: Tangent. (Yeah, yeah, I know -- but I couldn't come up with a better name.) I also stayed up for 35 hours at a stretch -- the longest time I've gone without sleep.

I ended up with an honourable mention. I can't prove it, though. You'll have to take my word for it.

So -- the experience of hacking for hours non-stop? Exhilarating. Specially when you end up with something useful (more on tangent later). The guys at Yahoo? Very very helpful -- they stayed up all night with us to help solve our problems: Christian, Rasmus and Subram (in no particular order). I even learnt a lot: JSON, the BOSS API, Twitter Search API, Pipes, getting stuff across domains, etc. etc.: a lot of cool stuff that was available on the net and I didn't know about.

So, the winners? A cricket query natural language parser, an intern finder and an anti-recommendation engine. Descriptions should be up somewhere on the net. If they aren't, ping me and I'll add a few descriptions.

Hack U IIT Delhi

I attended an interesting talk today -- it was a combination of a technical presentation by Mr. Vipul Ahuja followed by a talk on what's closest to every IITian's heart from the day he steps into college: online gaming his (future) job.

He spoke about a lot of topics; why to be a civil engineer or not, etc. etc.

There were three things he said that I really liked:

  1. You will always be catching up with other people if you go outside your core competency.
  2. Being a Civil Engineer requires a very high standard of integrity. You cannot mess around with the laws of nature. Whatever bribe/incentive you're offered -- that building will break down if you don't make it properly.

    and last, but also my favourite:

  3. Command a salary; don't demand it.

Current Stage: Alpha

I couldn't resist uploading my --albeit buggy-- theme, titled minimalWrite. Currently in stage alpha, it should work in all major browsers except the one and only IE6 (which I don't care about anyways).  I still have loads to do -- specially making a good landing page for readers, but I didn't feel like blogging at all on my previous theme.

I'm making this post non sticky now --- I'd like to move onto some other project at the moment -- which involves a lot more interesting stuff -- and best of all, no photoshopping.

Site Design: Progress

As usual, as expected -- life is hectic. Run, run, run.

Study, study, study.

Lab reports.

Websites.

Posters.

...

And in all this, I still haven't managed to make a proper design for my own website. So, ultimately, I've made a decision: everyday, I'll devote some time -- a minimum of 20 minutes, to designing/coding my site. For every day I miss -- for example during exams, I do double on holidays.

I should be finished in a month. Or two.

Till then, I'm putting a 'sticky' post showing the progress of my site.

A decision