Over the last few months I’ve been working for Igalia, as an intern, fixing regressions in Epiphany, which extends to WebKitGTK+ sometimes. Surely a dream job: working on my favourite projects, on a great company, surrounded by great teammates and friends.
I’m happy about it, really really happy. I love this job, totally, completely!. I’ve had the chance to learn a lot. Here I’d like to share some things I have learned so far, I look forward to post again with more ideas, but meanwhile here you have two.
Different timezones are hard
The time when I find most of the Igalia crew online is between 2am and 12pm. Of course this doesn’t mean you can’t find them past 12pm, but it’s already 7pm or 8pm in Europe then. I”m on UTC-5 and Spain is on UTC+1 or (now) UTC+2.
You probably agree that asking anyone to wake up at 7am in summer is unrealistic. Luckily, Igalia doesn’t make me pass a turing test everyday at a fixed time. This rocks.
I love it when people understand that a happy hacker working at midnight is better than an unhappy hacker working on a set in stone schedule. Kudos to Igalia for that.
Your code should explain and defend itself
My written expression teacher says “Your text should be good enough to explain and defend itself”. This applies to code too. I confirmed this at the expense of Xan‘s patience.
It’s a common situation: when the maintainer reviews your patch you are not around to explain it, or present the rationale you put into the change. The solution? well, simple, your patch and commit log should explain by themselves.
I saw, after realising how much ping-pong Xan and I had to play to get a patch in, that my patches lacked a harder review by myself before being posted. You have to be your first reviewer.
Be a severe judge of your patch, ask yourself if you would accept such a patch, if you would like a commit message like that, if that variable name is really good, if someone could quickly grasp what’s it all about, etc. Get into the flippy flops of the maintainer, don’t assume everything is obvious to everyone.