Sunday, December 13, 2009

The adventures of Magduska

Please visit
kinyirtam.blogspot.com

to read her latest adventures (in Hungarian).

Wednesday, October 21, 2009

Jeff Dean's slides about Google infrastructre

These slides tell you more about what I work with than I have ever thought I would be allowed to tell you...

Saturday, June 27, 2009

Aquarium

There is always a first time. I never had an aquarium in my life, now my 5 year old daugther was pushing hard enough to get one:

Thursday, April 16, 2009

Zebra Paint 1.2

The new release went out yesterday. The only change is that it includes 24 templates instead of 12, and the old ones were updated too.

Facts: in 38 days Zebra Paint had 38k downloads and 47% still have it installed. It has a 4-star rating (out of 5). It is currently the 6th most popular application in the Games/Casual category. And even more, it is a featured app on the market!

There are some requests for adding new features, but there will be no update in the foreseeable future.

Wednesday, April 15, 2009

Thursday, April 2, 2009

Google discloses server hardware details

Surprisingly, Google has shed light on some aspects of the hardware used in its data centers. If interested, read more here.

Thursday, March 19, 2009

Zebra Paint update

Since I practically used all my free time to develop version 1.0, I wanted to take a rest and not do anything for a while. But almost 10000 people downloaded it during the first week and even though the app is free, my rest was shorter than planned.

Some facts first. As of today, 10 and a half days after putting it onto the market, I had 15300 downloads and people still have it installed 10600 (69%). I got 263 reviews and 11 emails, most of them positive (and some of them very negative). Overall, it looks good, the app has a 4+ star rating and it is currently #7 in the Games/Casual category in the market. Better than what I was hoping for.

From the reactions it was pretty clear what to do to improve it. The most demanded features:
  • Save (send, set as wallpaper) the image - this is here with v1.1
  • More templates - I will add more eventually, but no promises here
  • Paint with black - v1.1 has dark gray now (no black because that would easily make it unusable)
  • More colors - I am not going to add more because it would be more complicated for small kids and lead to other usability problems
I have also added other features that were not explicitly asked:
  • Starts with a random template now
  • Minor stability fixes, e.g. it does not reload when opening/closing the lid
Overall, adding image saving was far more complex and demanding than my initial estimate, which was 2-3 hours. In reality it took almost 4 working days. The cause is that saving images to the SD card does not make them show in the gallery, and the API to do that is not very straightforward and easy to screw up. I even managed to render the whole gallery crash at each start so I had to erase all data from my phone. But having the code of built-in apps like the Camera app helped.

What I learned:
#1: it always takes more than the estimate.
#2: saving images in Symbian (S60) is much simpler, it magically just works.
#3: the Market is a great way to distribute applications. I would not have get so many downloads any other way.

Wednesday, March 11, 2009

Life of an Android app

After getting an Android dev phone, I was tempted to write my own app for it. Since I am the proud father of 3 girls now, I wanted to do something that they can play with: an app with which they can color an image with their fingers. Now, after about 2 weeks of development time everyone can download it from the Android market by the name "Zebra Paint".

The start was easy - even though I have never used Eclipse before, the instructions for setting up the emulator and the environment were crystal clear. Doing Hello was also a piece of cake, less than 30 minutes. Choosing a new Android project adds everything needed and the logic is about 2 lines of Java code. Even better, it keeps everything up to date during development, e.g. when one adds new resources, the pointers from the code are automatically updates. XML files containing resources are also checked on the fly. When a line is changed I can see immediately if it works or I have made a mistake. That adds a quite rapid feel for development.

Not everything is easy, though. Understanding the fundamental concepts like resources and activities needed some time. Probably the worst thing is that while there is Javadoc for everything, the documentation describing resources lacks details and examples in many places. For example there are "drawables" that can be used to paint just like anything, there is no reference docs, no tutorials. The examples cover some simple cases but I have the feeling that drawables are capable of much more than what's documented. For instance, layers and combining objects.

The other surprising thing was that the Dalvik VM is actually slow and nowhere near the speed that I predicted based on that the CPU is more than 2x faster than my Symbian E61. For a simple algorithm like flood fill a lot of int array magic and ugly design was necessary because the VM could not get through it.

Overall, doing it was faster than on Symbian, but there is room for improvement. Hope you enjoy Zebra Paint!

Monday, February 16, 2009

Formula 1 2009 rules in 2 minutes

If you have heard nothing about it so far, it's great:

Friday, December 12, 2008

Famous

I always wanted to be present somewhere on Wikipedia. And today I have discovered that I am! I am especially proud of this: the 2nd cited article for Ray Tracing (graphics) says: Péter Dornbach. "Implementation of bidirectional ray tracing algorithm". Yay!

(I did not edit anything myself. Honestly.)

Sunday, September 21, 2008

Android = iPhone?

From this side of the ocean, the way people think about mobile phone prices in the US seems very unusual.

With the launch of the first Android phone imminent, I read tons of articles like this quoting that the expected price tag is $199, "in line with what Apple's charging". The same article does not spend a word mentioning how much an iPhone customer pays during the first 2 years, or speculating what it would take for an Android phone customer.

Please, wake up. $199 does not matter. $60 each month for 2 years does.

Tuesday, September 2, 2008

Google Chrome

Working at Google means some excitement each day. Coworkers are working on projects I have never heard before, so when we make an announcement, it frequently comes as a surprise: "Oh, did we work on this?"

With the announcement yesterday this was not the case. Everyone at Google knew that we are working on this. Hence, I was very excited, because know you know it too: the Chrome browser is public! At the moment it's only a blog post and a cartoon, but hopefully you will all learn more in a day.

Tuesday, July 22, 2008

Firefox leading the way ... Haha :)

While I have to admit that Firefox is having a great impact on the browser world, I personally think that the crowds doing them are no different than the crowd during the concurrence... For example, look at this:
http://tech.slashdot.org/article.pl?sid=08/07/22/0012210

Christopher Blizzard, Firefox evangelist: "... they would not have done it, if we would have not built Firefox. And the same is true for Apple, they are doing a lot to keep up with us."

A couple of random facts to keep things on the ground:
  • Opera 9.51 does 83 out of 100 on the Acid3 web compatibility test. Safari 3.1 does 75. Firefox 3.01 does 71. (All of them are the latest production versions today.)
  • Example: on Picasaweb, Opera actually works (even though the site claims it is not actually not tested) whereas Firefox 3 does not (even though Picasaweb says it's supported).
  • Example: Firefox is lagging behind in mobile. There are successful mobile browser products based on WebKit, Opera and IE deployed on millions of devices. Where's Firefox?
Firefox 3 is important. It is a great step forward, uses less memory etc. But they have to admit that their goodwill advantage is much more important than their technical one. And if they do not innovate on their own, they may be hit from unexpected directions.

Monday, July 21, 2008

Lego forever

Whoever knows me probably knows my relationship with Lego. This has raised to a new dimension that I even managed to surprise my spouse. Instead of words, let pictures tell the story:



To cut the story short - you can download Lego Digital Designer from the Lego site (free of charge), and build whatever you want on your PC. This is what I did in my free hours (like waiting 5 hours on JFK). The result on the first image above. The second shows its real world counterpart - of course you can order it!. More images here. I wish you good building!

Thursday, July 10, 2008

How many spaces is a tab?

Tricky question - real programmers do not use tabs, except in Makefiles. From now on everyone can see how many spaces we use in Google-land. Plus lots of other rules. Fluent C++ is a plus:

http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml

Wednesday, July 9, 2008

Open Source Protocol Buffers

Google tries to be the cool guy and from time to time donates one of its many building bricks to the community. Apache license, everyone does what they want with it.

This time it's Protocol Buffers. What is it good for? To store any structured data - something like XML, but better:
  • Simple. Minimalistic, nothing is over-complicated.
  • Fast. Parsing, writing, checking all very efficient.
  • Compact. Takes little space.
  • (Of course it's available from C++, Java and Python)
And the most important:
  • Peter uses it every day in his work (like everyone else around here).
More on the Google blog:
http://google-opensource.blogspot.com/2008/07/protocol-buffers-googles-data.html

Download from here:
http://code.google.com/p/protobuf/

Something else I use every day:
http://code.google.com/p/googletest/

Pictures from Seattle and New York

I know, it has been a while since I posted something... To keep you up to date, here are some pictures from the trip I have made in June. First, I visited the SMX conference in Seattle. It was an experience... Before, it was not obvious that there is an entire industry based on beating PageRank... :) Then, I had some business in New York (my first ever visit). Enjoy the photos:

The Space Needle in Seattle:


Rebooting the plane during the flight (powered by Linux):


Shot in the NYC Google office:


One of the many means of transportation in NYC:


More on:
http://picasaweb.google.hu/dornbach

Wednesday, March 21, 2007

The first 2 months

I think we managed to settle down.

In retrospective, the first month was the most difficult one. We had a lot of paperwork, and the small apartment downtown was not too convenient with kids. We did not have a lot of toys, and the space was a bit too small for them. Luckily, Kriszta found that playground nearby.

After we got the new place, everything seemed to go smoothly. It took a week until we could assemble everything that we bought in Ikea. Okay, there are some things missing still, like curtains and some more furniture. But overall, it looks like a place to live :) In contrast to the downtown apartment, I have the feeling that I go "home" after work.

Our kids seem to love it a lot more too. They were sick a little bit, but except 1-1 day it did not influence their mood. Of course, now they have their own bed, own toys and everything. We left many of them at home, but the count of toys here started increasing at an unbelievable pace already :) Lola can express herself more and more. The cutest thing is that instead of the obligatory "no" she keeps shaking her head. "Wanna drink?" - headshaking, "Come here" - headshaking, etc. No answer usually means "yes" :) Noemi likes to go to the Hungarian daycare very much. I think she starts to find her own friends. They both like the playground in front of the new place, we cannot get Lola away from the swing :)

And about work? Last week I already had the feeling that I am working on something. Tasks coming after each other, sometimes 2-3 at once. When I changed something, it is often only the next day when it turned out if it worked or not. Any case, it feels like a real job - and I start to see how the puzzle pieces fit together. I already wrote a small program, about 100 lines of code that is a utility for others too. So I feel useful - at the beginning it seemed that this would need more time.

We start to find our rythm - if you happen to be in Zürich, just visit us!

Monday, March 12, 2007

Moving in

During February, we lived in a furnished small flat rented by the company in central Zurich. It was ok and we got to know the city a little bit, but it was too small for our family and not very convenient on the top floor.

We could finally move in to our final apartment in Adliswil late February. We agreed to start at 9, they were looking after us already 8.30. They were really quick, and left right after noon. But all our stuff was there, furniture assembled - the only thing was we did not have a lot of storage space to unpack many boxes. When Lola saw her bed, she started laughing. Noemi climbed onto her bed immediately and started being sleepy.

To celebrate that everything went so quickly, we went to the local Ikea. Amazingly, the prices are lower than in Hungary in many cases (could be the Hungarian VAT?), the only problematic spot is to get everything home. We decided to rent a van - the kids really enjoyed sitting in the front row (hope that police does not read this). I had to move more than 500kg stuff myself, but I did it. The only thing left was to assemble everything - but that was the story of the week after that. Just one thing - we now have more than 10 of those tiny bent metal tools Ikea gave to drive the screws :)

Yet another amazing thing is that the next day after we moved in, we already got the package for the net and digital tv - 2 days after the move everything was working! I think this is amazing. We even have 1 Hungarian language channel.

Friday, March 9, 2007

3 weeks in Google-land

Back in end of February, my first 3 weeks passed. The first week was almost completely covered with listening to presentations - I needed to learn a lot of things to catch up. I still need to. But let's go back to the beginning.

First, the terminology. The company is Google, anyone who works here is a Googler. Clear so far. How about someone who just started like myself? Well, I am a Noogler. But regular Googlers live and work in Mountain View in the middle of Silicon Valley. We cannot call ourselves the same - here in Zurich we are Zooglers. So I am a Noogler-Zoogler. I didn't dare to think about Googlers in Krakow, though :)

Every Noogler has a starter project. This is usually quite short, but one has to know a lot to do the couple of lines needed. I had my one ready at the end of February - was about 20 lines of code in a top secret (Google-specific) language. It gave me the feeling that I accomplished something. And that I know some bits already.

So far everything looks nice. Workmates are friendly and help each other in lots of things outside work too. This is also aided by most of them being from outside Switzerland - just like I am. For a long time I have thought that my work here will have something to do with what I did before - well, this is not the case. No mobile, no phone, no operators, no Symbian (with a Mac, I would be in trouble developing to Symbian). Lots of server stuff, deep into it. I would not say it is particularly interesting, but it is challenging. But I like the Google approach. Everything that can be automated is actually automated. Ranging from handling the source code through code reviews to deployment. This is the biggest strength of Google - to solve "big" problems more efficiently than anyone else. Just a minor thing - I have more than 100 times the quota for company mail than what I used to have before.

I hope we will be good at it for a long time!