Monday, December 27, 2010

2010-12-27: Google Summer Internship, Zürich Switzerland

"Hello Hany!...We are glad to inform you that you have been accepted in the summer internship program this year in Google Zürich GmBH!". Call me a geek but these were the best words I have ever heard! I now work for Google, well in one way or another!

After struggling with the visa issues I finally got my Swiss Schengen visa and the work permit. The Swiss people are very strict and precise, they thought I was 2 persons, one named Hany Khalil, and the other Hany SalahEldeen! Well I don't blame
them (fyi, in Egypt we don't have the concept of family name, your name is a concatenation of your ancestors names, my name then my father's, then his father's...etc). All my life I have been called Hany SalahEldeen but for some reason the American embassy in Cairo decided that my grandfather's name Khalil suits me better.

"Ich spreche kein Deutsch!" or "I don't speak German" Was the sentence I was repeating to my self on the plane to Zürich, you will never know when it could become handy sometimes! I was brushing up my old French as well, which seemed useless after I arrived to Zürich to realize that French is the main language in Geneva not Zürich. But I didn't care...I was in Google!....I am a Googler!...I even got an email address with my first name!

On the 6th of July I landed in Geneva, then I took the train to Zürich Hauptbahnhof (which means main station, try to keep up with the German words, or should I say Swiss-German words?). The Swiss really fascinate me, they know the real concept of time (well, they have the best clocks in the world). If you want to call something really punctual or accurate you say it's Swiss, or clock-work which also implies... Swiss. I was dragging my bag from the station, still can barely walk from my leg surgery I reached the tram station. When they say it will arrive 6:43 they actually mean it. I arrived to the student residence of ETH University where I sublet a room for the next 3 months, settled my stuff and fell asleep.

At 9 am next morning I was in the Google Zürich GmBH lobby. I met other interns and after an introductory session we were taken on a tour through all the huge 3 buildings (I used to lose my way for the first 3 days, well but maps were every where). I met there some fellow interns who became my great friends later on. The first two weeks were scheduled to be the training phase, including sessions and tutorials. I got to say when you get access to all these foods, candies, games and entertainment facilities (fussball tables, ping-pong tables, xbox, ps3, rockband, pool, musical instruments, they even got a massage and meditation room!) You get really distracted at the beginning, but that was trivial the following weeks and I loved the idea, if you spoil your employees and make them happy they will feel ownership to the company and commitment thus they will produce amazing work, that was the motto.

My host and manager was very excited and eager to start, so was I. I was the first intern to work under his supervision. He was a mentor, always there to help and give good advice, give me room to work, create and think outside the box and above all he was a good friend. Mostly that's the theme within all employees there, lieght weight, informal but respectful of course. later that week I had a standup coffee meeting with a guy who I later knew that he invented the automated language detection in Google translate! I was working in the MENA (Middle East and North Africa) team on a project allied with the Google translate team. I wish I was able to describe my project but the NDA (Non-Disclosure Agreement) I signed with Google prevents me as it is a new cool project and by the end of the three months I built successfully a huge portion of it. When it is released I will let you know!

Transparency and trust, that's what I was thinking of when I was working. You have access to all the resources and individuals, all available to help you proceed in your project. You can mail anyone and say hey I wanna ask you something! He/She will answer immediately. If you are stuck with a certain program or library you can ask, there experts in it on the mailing list. Maybe you can find the guy who actually invented it and wrote the whole thing! (Like the case in Vim, also you can find Sergey, Page and Cerf on the mailing list too!). Development process is totally different in Google, yes it is Agile and standup meetings are more common than coffee in Italy but there are other considerations. You want to meet deadlines and race to be innovative but also you have to produce code that is extremely scalable, dependable, throughly tested, following style convention and very readable. Handover time to another engineer shouldn't take a long time. I had to throw all most of what I know in C++ and adapt to the new framework of libraries, bigtables, mapreduces ...etc. If you required a functionality someone probably wrote it before so go directly to Code search and acess the code base.

TGIF (Thank Google It's Friday!) are the best weekly gatherings ever! You meet people from different teams in a social manner, relax, laugh, have fun and even karaoke which was a bad idea for me to participate! Every Friday night me and the other interns used to go discover the city and dine in a new place serving a new cuisine, ranging from Swiss cheese fondue to flaming duck Phad Thai. It was delicious and enlightening!

I have been to several parts of Switzerland, learned a little German,one of my friends at Google actually taught me the Blues Harp (AKA. Harmonica) and we used to practice three times a week. I travelled back to Spain to see friends, did water skiing on the lake in Zürich and was scheduled to do a sky-dive on top of the Alps but it was cancelled for bad weather, I was pissed!

Walking through the city was a pleasure itself. Enjoying a cup of coffee down one of the curling streets was amazing. Reading a book by the lake was a quality time. The only bad thing about Zürich is its prices!...I saw a suit in a shop and I kept looking for its price tag because I thought the numbers on the tag in front of it were the serial number not price!

The student residence I used to live in was amazing. Imagine living in a place where 100 different students live from more than 35 countries. We laughed together, we watched World-cup together and cheered for all teams! we cooked, watched movies and partied together too. It was friendly, brotherly and definitely educating. I met there people who definitely left a mark on my life.

In conclusion it was an amazing summer, educating, life changing experience. Working for the best company, living in an amazing city and meeting great people, what more can one ask for?!

Monday, December 6, 2010

2010-12-06: Memento Wins the 2010 Digital Preservation Award

The Memento Project won the 2010 Digital Preservation Award in London on December 1, 2010. The DPA is sponsored by the Digital Preservation Coalition, and the Memento Project is sponsored by the Library of Congress (see also: LC's project page).

Details about the DPA are provided in several press releases, including ones from the DPC, ODU, LANL and LC. DPC has also posted a short video of an interview with Herbert. And for posterity, the original tweet from William Kilbride announcing the winner (more information from the award ceremony will be announced on #dpa2010).

Thanks to the DPC, the DPA judges, the Library of Congress, and everyone on the Memento team!


Thursday, December 2, 2010

2010-12-02: NASA IPCC Data System Workshop

I attended a NASA Intergovernmental Panel Climate Change(IPCC) Data System Workshop in Greenbelt Maryland, November 9 - 10. The IPCC is an international committee overseeing the assessment of global climate change.

The purpose of this workshop is to discuss technical plan to prepare, incorporate and share IPCC-relevant NASA satellite observational datasets to support the Coupled Model Intercomparison Project Phase 5 (CMIP5). CMIP is a standard protocol and framework for evaluating climate model simulation (hindcast) and predictions/simulation of future climate change. CMIP5 is the 5th evaluation and being organized and lead by the Program for Climate Model Diagnosis and Intercomparison (PCMDI) mission at Lawrence Livermore National Laboratory. All of this activity will help contribute to the IPCC 5th Assessment Report (APCC AR5) and beyond. In prior assessments, NASA observational datasets were not used (or very little). NASA HQ has recognized the richness and important of NASA datasets and encouraged the satellite project teams to get involve and collaborate with the PCMDI on CMIP5.

An interesting overview talk on Earth System Grid (ESG) was presented. ESG is a distributed computational environment of grid services to support next generation climate modeling research. More technical details of ESG can be found in this paper by Bernoldt et al (2005). Technical talks from JPL,GSFC, NCAR, NOAA, and ORNL discussed progress from each group to support CMIP5. While most group are 1 or more year into the effort, we (at LaRC) are newbie. Our group presented an overview of relevant CERES datasets and new tool for ordering and retrieving CERES data. The biggest hurdle and question is how do we make satellite observations look like model output. This is critical for intercomparison. Lots of talk on CF NetCDF compliant formats, technical notes and metadata for each dataset, and selection of relevant observation dataset to include into CMIP5. A couple groups have gateways into the ESG while most have data nodes. With tight deadline in April 1, 2011, we agree to let ORNL host our CERES dataset on their ESG data node. We agree to set up a data node at Langley in the near future.