short takes
Jan. 7th, 2004 09:14 pm(This arose from a bit of linguistic anthropology. The words I use for this are "thingamajig" (spoken only, except in meta-conversations like this) or (more common) "doohickey" or "thingy"; Dani uses "thingamabob".)
I persuaded a developer today to implement the correct, general solution to a problem, rather than the expedient solution that would have been good enough for his current needs (only) but would be hard to maintain. Yay. As an extra bonus, I anticipated one area where he might have been tempted to hard-code a value and persuaded him not to. I love it when these things work. :-)
Speaking of developer interactions, it's nice when "how do I do such-and-such with this interface?" generates the response "you're right, that should be supported; I'll take care of it". :-) (I thought the problem was my lack of knowledge, not his lack of support.)
I tried a new-to-me
recipe
for fish stew tonight (thanks
src).
It had a mix of spices that struck me as unusual,
but it works well. Definitely a keeper. I couldn't
find cellophane noodles (would that be dry, frozen,
or refrigerated?), so I served it over rice and that
worked.
(For anyone who's wondering,
src is her initials, not a Unix reference. I didn't get that right away either. :-) )
cellophane noodles
Date: 2004-01-07 06:29 pm (UTC)(no subject)
Date: 2004-01-07 08:20 pm (UTC)(no subject)
Date: 2004-01-07 08:47 pm (UTC)dongles
Date: 2004-01-08 06:43 am (UTC)noodles
Date: 2004-01-08 06:44 am (UTC)Re: cellophane noodles
Date: 2004-01-08 06:45 am (UTC)(no subject)
Date: 2004-01-08 06:47 am (UTC)(no subject)
Date: 2004-01-08 08:14 am (UTC)(no subject)
Date: 2004-01-08 03:46 pm (UTC)Also, I'd just like to say that the collision of "people I know" always amuses me.
(no subject)
Date: 2004-01-08 08:34 pm (UTC)Indexing the commenters on this thread against your friends list suggests that you're talking about me and
(no subject)
Date: 2004-01-10 03:13 pm (UTC)Y'know, every time you say something like this, I'm forced to conclude that your project desperately needs a good Lead Engineer. This is really the important part of the Lead's job, in my book: making sure that the architecture is clean, and teaching the younger programmers how to do it better.
(My current project doesn't technically have a Lead Engineer, but I've wound up taking on that role anyway. It's really important to have someone thinking about the maintainability equation, and driving things in a good direction.)
*Sigh*. The better I understand system engineering, the more convinced I am that most programmers need some serious re-education...
(no subject)
Date: 2004-01-10 03:44 pm (UTC)We have a core product team, which has recently been raided for a Big Important Project (that's not sarcasm; it really is that important). We have half a dozen projects, and projects often serve as prototyping testbeds for stuff that will eventually go into the core product. Projects can't modify the core product, so they write their code and eventually it's reviewed and possibly refactored for inclusion in the product.
In this case, an engineer on one of the projects wanted to add a feature that I could instantly tell would be useful in the core product. He was going to implement the minimal solution that would work for his project but then need to be rewritten to be general; I persuaded him to just make it general from the start for easier migration. If he had had this conversation with his project's tech lead I hope he would have gotten the same advice. Unfortunately, projects are often, by their nature, implementing things quickly and in a good-enough way, and there's no systematic review before stuff gets written of stuff that might end up having a longer lifespan. In this case, I just happened to be in the right place at the right time and saved our product engineers a bit of work. Since I'm pretty much the (single) advocate of the cleanliness of product APIs, I'm happy about this. (This was an API extension.)
The product team itself does have a good lead engineer who pays attention to stuff like this. Maybe he needs to have more visibility into projects -- but there's only the one of him, and half a dozen projects, and he has product work of his own to do too. Really, we just need to get better collectively about communication (a drum I've been beating for a while).