and the touching leads to sex
and then there is no mystery left
So, Kristien went to get the cat yesterday. He’s about five weeks old, has grey-whitish stripes and a few cute gingery spots on the top of his head. He’s more active than we expected – in one night he’s eaten three times already (out of the zero times projected by the woman handing over the cat) and he was already sleeping happily on our belly while people were being shot on TV in the Sopranos. Pictures up soon.
How not to do it
Yesterday some guy came into the #gstreamer channel. This was the start of the discussion:
<NickWithheldToProtectTheInnocent> I'm almost finished reading the documentation, and I must say that the terminology of gstreamer is very lousy, much better metaphor names could be used that would map to better real world object. Like the ones used in home theater example. Don't you guys think so ? <thomasvs> NickWithheldToProtectTheInnocent: no, I don't think so. <thomasvs> NickWithheldToProtectTheInnocent: but feel free to write some documentation that uses home theater terminology. <NickWithheldToProtectTheInnocent> how does "bin" and "sink" make sense to you without reading the documentation. <thomasvs> NickWithheldToProtectTheInnocent: how do you pee cleanly without your daddy telling you ? <thomasvs> NickWithheldToProtectTheInnocent: how do you learn that it's not acceptable to poo in public ?
Now, suppose you’re having an open house day, and someone walks in, walks over to the group of people standing in your living room talking to each other, and then says loud enough for everyone to hear “This room is very ugly, it could look a lot better. And who puts a fishtank in the living room when everyone can see a pool table would be a much better fit for this room ?”
It’s one thing to deliberately start off on the wrong foot with people you don’t know at all. If you do, you’d better have a personality that can make up for it. Now later on, this guy goes on to say that he would use “metaphors that could map to real world objects, that would ease the learning process obviously. Like signals and slots of Qt. something that you can connect other thing to.”
Now, I had before not taken a look at exactly what slots were in Qt, but I always wondered what they would be, since the only real-world image I had of slots was “some opening you can slide a wide and thin object into”. Like, a slot machine, or a letterbox. So he starts off by saying that our terminology is not real-world enough (though to me, a bin is something you put stuff in, and a sink is something in which a stream disappears – I have one of those in my kitchen and bathroom), but a slot is fine.
It might be possible that Vegas has slot machines connected to the ground somehow to prevent from getting stolen, but in the end, a slot being basically the absence of something in something else makes it really hard to *connect* something to it.(1)
Anyway, if you’re new to a project:
- be nice when you get in
- if you’re not nice, but think you have a valid point, defend your point when people question it
- make sure you use a valid example to make your point. be prepared to back up if you chose an invalid example
- don’t call one of the project people “stereotypical” when they challenge your point’s validity. It’s very stereotypical.
- don’t tell them to stop wasting your time. you just came in and wasted theirs *without* having a history of good will on your side.
- don’t expect to not have to read *any* documentation. Saying that “bin” and “element” should mean something to you without reading any docs is just dumb. How do you know that these concepts exist in first place ?
On a related note, I hope the cat will learn about the acceptability of pooing in public.
I got fed up about the fact that both our FC3 kernels and matthias’s production kernels cause a kernel fault every time you start or stop capturing from firewire, and sometimes they even lock up hard. It keeps us from hacking on nice Flumotion bits related to Firewire. So I decided it was time for me to do the hard work and start kernel debugging. Boy, what a world of pain :)
I managed to get a serial cable linked up between the test box (which sadly is also our firewall and svn repository) and the workstation. After some tweaking, kernels started spewing all sorts of info to my other machine. But apparently firewire dies without an oops or anything. The machine just locks up and that’s it.
So I started hunting for info, similarities in bug reports, kernel patches, … I also managed to rebuild Fedora Core kernels with my own patches in a fairly sane way, but it’s still painful. Yesterday night I tweaked the config a little to give me more debug info, and this morning I will bother my co-workers again with on-off internet. So if you see us go under …
(1) This is no attack on Qt. It’s a fine framework afaict. The guy gave “slot” as an example, and it just happens to be a Qt thing.
and the bad dreams lead me to calling you
and I call you and say “COME HERE”