16
Mar

Last week has mostly been taken up with QCon London. I really had a great time and I would like to give a big thanks to Google for supporting my travel and registration costs.

QCon is a conference focusing on 19 different tracks. Some to mention: Architectures You’ve Always Wondered About, Software Craftsmanship, Functional programming Irresponsible Architectures and Unusual ArchitectsPragmatic Cloud Computing, Agile Evolution, How do you test that? and Browser as a Platform. I attended to one or two talks from almost every track except .Net and Java oriented ones. Keynotes from Dan Ingalls (Forty Years of Fun with Computers), Ralph Johnson (Living and working with aging software) and Robert Martin, aka Uncle Bob (Bad Code, Craftsmanship, Engineering, and Certification) were inspring.

I also got the chance to chat with Dan Ingalls (principal architect of five generations of Smalltalk). I asked him if he follows a method while working (like Pomodore that Dan North recommended in his “Simplicity – the way of the unusual architect” talk). Hopefully, we share a similar characteristic: we can’t work if we don’t like the job but when we like it, we can’t stop working from morning till night.  He recommended me to go where I think I would have the most fun. If something bothers you, it is ok: “If it’s hot, it is hot. If it’s not, it is not!” There’s always something to do when you can’t work; empty the rubbish or wash the dishes. And when you concentrate, start to work again -but know yourself very well.


Me and Dan Ingalls

We also talked about the lack of women in computing. He shared some of his observations; for example in a conference about Wikipedia, he observed there are almost same number of women and men. But when it comes to more technical and less social conferences and events, there are really very few women participating. He also added maybe there’s a genetic factor about this. He has two boys who cannot stop being “boys” –always breaking/fixing things but in fact, that’s what all about the computers!

There are lots of ideas and keys to share, here are some main ideas:

From Uncle Bob’s keynote (slides are available here):

  • Follow the Boy Scout rule: Always leave things a little better than you find.
  • Methods should be less than 20 lines.
  • Don’t have a function that takes a boolean. It is clear that it does two things; one if its false, another if its true.
  • Cut/Paste is bug replication
  • Extract until you drop! Keep extracting until all functions only do one thing
  • Source code represent the design -not the UML tools.

Architectures You’ve Always Wondered About was one of the tracks I wondered about =] Some gems from (Facebook: Architecture and Design) by Aditya Agarwal (Director of Engineering at Facebook):

  • Services of philosophy: choose the tool for the right task. They use Thrift, a lightweight software framework for cross-language development (C++, PHP, Python, Ruby, Erlang, Haskell, etc.)
  • Most important thing in their engineering team: How quickly can you move?

Agarwal said despite being a small team (over 1 million active users per engineer) they do great because of the Facebook culture. There are three very important things in FB:

  • Move fast and break things
  • Huge impact with small teams
  • Be bold and innovate

Agarwal also gave some important tips for MySQL. They have about 6k server-years of runtime experience without data loss or corruption (can you believe it?!) Here are my notes:

  • Don’t ever store non-static data in a central database
  • Data driven schemas make for happy programmers and difficult operations.
  • Logical migration of data is very difficult. Create a large number of logical databases, load balance them over varying number of physical nodes.

There are 1,200,000 photo requests a second in Facebook and scaling takes iteration. They serve 20 billion photos in 4 resolutions =  80 billion photos (which would wrap around the earth more then 10 times!)

  • They use cachr: cache the high volume smaller images to offload the main storage systems, and only cache 300 million images in 3 resolutions. Then disribute these through a CDN to reduce network latency

There are 400 million unique home pages and 50 million operations per second in Facebook. They have a love-hate relationship with memcache; it is easy to corrupt and has a limited data model. But it is simply crucial and it does what it does, really good.

At the end of the talk, I asked to Agarwal about their operating system choice and he told me they are probably  going to use Centos.

One of the most interesting talks was Building Skype. Learnings from almost five years as a Skype Architect by Andres Kütt (architect of Skype). First, some stats:

  • There are about 650 employees at Skype (which makes 800k users per employee)
  • 27.2 billion minutes of Skype to Skype calling per quarter.
  • 210k minutes of calls each minute (71k contains video)

Points Kütt made:

  • Rules of thumb does not apply: It is always tempting to use patterns that have worked previously but they should be used as a starting point for discussion – not as a solution.
  • Functional architecture is important. You neglect how the functionality of your system is organized at your own peril.
  • Simply things work. The simplier things are the more intelligent they are.
  • Buzz words are dangerous: They are both dangerous as carriers of meaningless chance but also as a catalyst for breaking down relationships.
  • Architecture needs to fit your organization. There’s no such thing as a beautiful system design. The design either fits what your organization needs or it doesn’t.

Dan Ingalls keynote was very entertaining. He showed his early codes and he made all the demonstration in Squeak and also shared demonstrations of lively kernel. One wise quote from Ingalls talk:

We’re bad at learning the lessons from the past because:

  • we don’t have enough storytellers and
  • our generation doesn’t listen very well.
  • I have a lot more notes in my Moleskine but I need to take some time to transfer them into the blog.

    I also had the chance to visit the gorgeous O’Reilly stand and buy some books (I even have Erlang Programming and 97 Things Every Project Manager Should Know signed by the authors!)

    I had a great time and I look forward to being back the next time. Thanks to Google, again!

    6
    Ara

    By mid of November, I left my job after working two years at TUBITAK UEKAE. I worked with one of the best Open Source teams in Turkey and led Pardus Security Team, therefore I am a bit sad about leaving that early..

    Fortunately, the reason for leaving my job leads me closer to my dreams: I have been selected as a Fulbright Ph.D. fellow and hopefully, I am going to continue my education in USA next year. As I am currently doing my master degree at Computer Engineering Department, Bogazici University, I had to give my full energy and time to finish my education in Turkey, so I decided to contribute Pardus as a non-TUBITAK employee. >>

    Therefore, I will continue my career in Perceptual Intelligence Lab. at Bogazici University and continue work on my master thesis with Prof. Ethem Alpaydin on Machine Learning.

    I also would like to thank to all of my colleagues who supported me to apply for Fulbright fellowship and to take the right decisions for my career. Everything is gonna be awesome! =]

    * From The Hitchhiker’s Guide to the Galaxy

    1
    Kas

    Last week I attended to Google Summer of Code Mentor Summit at Googleplex, Mountain View. It was definitely one of the best time I had in recent years.

    First of all, thanks to Leslie, Ellen, Cat, Chris DiBona and Google Open Source program office and everyone who made this happen (I should also thank to Sam Lantinga (writer of SDL) who let me to use his travel stipend.)

    My adventure started at Los Angeles; thanks to my Google Summer of Code t-shirt, I met with Fridrich (from Go OpenOffice project) at Los Angeles and we made all way to Sunnyvale from San Francisco with Thorsten (also from Go-OO). After travelling for 20 hours, I went to the opening party at Wild Palms on Friday. It was really nice to see some familiar faces from last year’s summit; Donnie Berkholz (Gentoo), Sam Lantinga (SDL), Selena Deckelmann (PostgreSQL), Jacob Appelbaum (Tor), Gary (Pidgin), Marty (Etherboot) and many others that I cannot name now.


    Women in Open Source session (bottom + left)

    On Saturday, the sessions got started and everybody who wanted to lead a session wrote their ideas and proposed them for vote: the more people add badges to your session, the bigger conference room you get. I proposed a session; Reversing the Trend: Women in Open Source and hopefully, there was quite a lot interest for the session and I found the chance to lead it at the biggest conference room, Tunis. There were really interesting ideas and experiences about the topic and we continued the session on Sunday, too. (I will write about the session and share the notes and thoughts in another blog post, soon.)


    Photo by John ‘Warthog9′ Hawley.

    When I got tired of participating to technical sessions, I spent some time at Casablanca session :) Casablanca is a room with full of Play-dohs, toys and this kind of things (as appears in the picture above) and it’s for discussing things while playing with toys =)

    Also I should mention Sam’s Solar System session, which we discussed solar system and astronomy applications under Linux and examined some stars and build a solar system with play-dohs for Sam’s daughter =)

    During the summit I had the chance to meet with awesome people (I wish I could mention all of them, but thanks to jet-lag!), Ryan and Lionel (GNOME \m/), Alistair and Erik (WorldForge), Jason (Limesurvey), Lydia and Leo (KDE), Jon, Josh and his wonderful wife Erin (Inkscape) and Nicolas (GIMP) and many others.

    After two days of hacking, summit ended on Sunday and we took the traditional group photo together:


    Photo by John ‘Warthog9′ Hawley.

    I really appreciate to Leslie and other Googlers who made me to have that awesome time.

    Also thanks to everyone who participated to write Google Summer of Code Mentoring Guide, so we can read the fraking manual instead of asking the same questions to Leslie. ;)

    I also had awesome time after the summit with Lionel, Ryan and Jason. Maybe I can write about that trip later, but here’s our awesome photo with Android and its releases: cupcake, donut and eclair. \m/

    17
    Haz

    (Kaptan Pardus welcome wizard which aims to help user to configure basic settings on first boot.)

    Note: This is the Beta release for Kaptan 4. Design (graphics, colors, layouts) can change until Pardus 2009 stable release (30 days to launch! \m/)

    Kaptan4 looks like Kaptan3 but it is fully written in Qt4 and Python. As always, comments are appreciated :)


    More screenshots ->








    19
    Oca

    Whenever I try to be a stable blog writer (one post each month seems fine, huh? =)) I just FAIL. So I’ll write a summary of last few months, ..

    • A couple of days ago, I got the following e-mail from Google Diversity Team that was saying I am one of six award winners to attend linux.conf.au:

      Thank you for your application to the Google-Linux.conf.au Diversity Delegates Programme. After careful review by a committee made up of Linux.conf.au organizers, Linux Chix, and representatives from Google – your application has been selected as one of the 6 award winners!

      I had a list of talks in mind to attend @linux.conf.au. But unfortunately, it seems I can hardly get the visa on time (remember the MySQL case -and other side of the coin.. *click*)

      Wonderful news.. but,.. well.. just news. =)

    • * It’s 19th of Jan. but I forgot to tell you Project 366 was succesfully finished! I started Project 366 just for want of trying, but lately it became a long-year album. I see how Photojojo was right. It’s an amazing way to document travels and accomplishments, relationships, .. and so on. Time moves surprisingly fast.

      Btw, i made a video from all Project 366 photos:


      Project 366 (2008) from Pinar on Vimeo.

    • I have some supercalifragilisticexpialidocious plans about school, ah.. frak school.
    • And at last, I started to use KDE4 on my daily system, but it’s more like a mutant (using Nautilus as a file manager is enough?)
    3
    Kas

    Finally, I returned to hometown after a painful roadmap (San Jose -> Denver -> Frankfurt -> Istanbul). But the only thing that makes those hours quickly spendable is the people I met –hopefully I can always find some interesting people to talk with :)

    This time, at my last transit flight (after 4 + 9 hours on air) I met with two men, it was really funny. In fact I just asked if they want a dark Twix or not, but one of them told me he’s just too tired to eat. So I wondered if they’re from CA, too.. Then we started to talk. After a while, I realized one of them was wearing a Microsoft t-shirt :)

    - Uhmm.., you’re working for Microsoft?
    + Yes, we are.
    - Oh, I’ve just attended to a summit in Google. Actually.. I am working for a Linux distribution.

    Then we started to laugh.. and some kind of funny fan stuff. Then it went like that:

    + So what are you doing exactly?
    - I am from the security team, I am tracking vulnerabilities and fixing them. And you?
    (they started to laugh, and I was trying to figure out why :))
    - Hey, what’s wrong? :)
    + We’re from Microsoft’s security team!

    I think it was a really nice conjunction, think about that: you find somebody to talk -> you’re colleagues -> and you’re working in the same specific area + they are from a very different point of view.. So we talked about security, open source, Microsoft & Novell and so on. And Android! Damn, despite unlocking it successfuly, I still can’t sign in my Google account.. They were really nice people and shared their knowledge about unlocking phones :) So I realized I have some extra things to do rather than just network unlocking.

    And at last.. the funniest part of our conversation:

    + So why are you working for open source anyway?
    - For freedom! :)

    PS: I spent my Halloween in California’s Great America and had a lot of fun. :) Picturezz ->

    31
    Eki


    photo by Austin Ziegler

    I was at Google Mentor Summit this weekend. It was at Google Headquarters in Mountain View, California. It was really amazing to meet with other FOSS developers.

    It took 22 hours to arrive CA but hopefully I was strong enough to directy go to the welcome party. :)

    First of all, I’d like to thank Chris DiBona, Leslie Hawthorn, Cat Allman, Ellen Ko and any other Googlers who participated to organize such a wonderful summit. I really had a great time.

    During the summit, I attended several sessions including Android related ones (which made me to buy a TMobile G1 yesterday!) and Distro Leader’s summit that Donnie (from Gentoo) proposed (Karsten Wade from Fedora, Joe Brockmeier from OpenSuse, Steve McIntyre from Debian showed up) and we talked about how to get introduced more people with Linux. And of course, Sam’s Open Souce Game Development session was one of the greatest ones.


    pic. from open source security session

    I also led a session called Open Souce Security. It took much more time than I thought (90 minutes instead of 30′). A lot of participants from various level of security showed up– Google Network Security Team Leader, Eugene Teo from Redhat Security Team, developers from Tor project (you can remember Jacob Appelbaum from his Cold Boot Attack Research) and so on. At first minutes, I got really excited because there were a lot of security experts who have much more knowledge and experience than me. :) But the session went quite good and we mostly discussed about tracking vulnerabilities, disclosing security flaws, patches to OSS projects that possibly have security vulnerabilities and criterions of accepting them, and GSoC students’ secure coding.

    I’d like to thank some of my friends that I met at the event -in order of appearance :)

    * Eugene Teo from Redhat Kernel Security Team. I knew and respect him from OSS security society- it was really nice to meet and talk about security with him.

    * Donnie Berkholz from Gentoo. He’s currently Gentoo council member and maintains X.org–which I think is a quite hard job :)

    * Sam Lantinga, lead software engineer and leader of the group of gameplay programmers on World of Warcraft, Blizzard Entertaintment. *cool* He’s also the creator of fabulous library, SDL. He became one of my closest friends during these two days. I’m really so lucky to meet with him. :)

    * Nils Kneuper and Mark de Wever from Wesnoth. We used to know each other with Nils but I totaly forgot that he’ll attend to this event. But thanks God, we met at lunch by chance! :) Mark is also a cool guy from Wesnoth and *i think* he had a great time while watching me when I was drinking *natural* Green Tea (it was the worst thing i’ve ever drunk. ahh.).

    * Austin Ziegler, from Ruby Central. He is a cool photographer and ruby person and I am looking forward to see his group girl photos.

    * Selena Deckelmann, from PostgreSQL. I always glad to meet with other women in computing. I am looking forward to participate in a WiC project with her.

    * Mike Melanson, Justin Ruggles, Reimar Döffinger from ffmpeg team. They were really funny people and we had a great time while Mike was talking about the times that Ismail‘s complainings on Turkish support :)

    * Alisson Yagi Costa, from Umit. We went to San Francisco and Santa Cruz with him and his words to describe me were quite remarkable :“you’re not normal, but you’re not strange” :)

    Of course there are much more people to mention here. I’d like to see all of them in the next summit!

    PS#1: There are some photos (the giant anroid, too!) on my Flickr set: Mentor summit, San Francisco, Santa Cruz, Stanford, Palo Alto.

    PS#2: To Turkish readers: I merged my Turkish blog (and RSS’ also) with this blog address, so from now on all my entries will be in English. Thanks! :)

    6
    Haz

    Or Display Configuration Manager.. Hhmm.. name sucks, doesn’t it? =) (But it will stay like that until you suggest something cool =))

    Anyway, we have released Pardus 2008 Beta this week. It comes with a new manager (I and Fatih – “the Xorg guy” =) were together in this) which enables you to configure Xorg server (drivers, monitors, dual screens etc.)

    You can reach DM via Tasma -> System -> Display Manager or simply by typing display-manager command from the line. Please do not hesitate to share your opinions and bug reports via Bugzilla.

    There’re some screenshots here:



    19
    May

    I should have been written this post months and months earlier, but I was waiting for our superb designer, Gokhan‘s designs for layouts. He did an excellent job, both for Kaptan and Yali (you should have seen last screenshots of Yali in OzgurlukIcin.com magazine, if you haven’t yet, have a look at here).

    Well, as some of you may know, Kaptan was written in C++. But as all of our tools (except TASMA) are being written in Python, we decided to port Kaptan into Python, too. Actually, it only works on Pardus (network and package manager stuff) but I’ve been thinking to write a generic welcome wizard for KDE- but wait until we port ourselves to KDE4 =)

    Okay, okaay.. here’re the screenshots =)


    *i am putting a more tag here, and installed a wp plugin for truncating long posts. hope it works =)*