juan_gandhi: (Default)
[personal profile] juan_gandhi
While at Google, I believed in two things: peer code review and unacceptability of ascii art in the code.

Peer code review means you are supposed to show your stuff to somebody in your team before submitting it. So, when you want to submit the stuff in the end of the day (yes, all unittests pass), you are supposed to hold on, wait for half a day (the next day), not touching the code, get into a discussion, and then, eventually get through with it. Which means the code should be pretty solid. No way you would go ahead submitting something working but halfway through, or something that is in the process of being formed, in transition, work in progress.

That's bad. I found myself spending several days forming my ideas regarding how I can possibly specify binary output format in JSON, so that the format can be sent From Above to the client when requirements change (say, a new format is eventually implemented by busy/lazy server guys). If I had to submit a fully-implemented, fully thought-out, neat-looking code, it would take a couple of weeks. Thinking, prototyping, discussing, including three days of explaining how the stuff works and what JSON is, and why it is okay to use strings as keys, etc.

That's about pair programming too. Imagine pair theorem proving. Two guys are placed together by a senior mathematician, say, Grisha and Misha, and told to prove a theorem by the end of the week.

What I want to say: get the fuck off programmers' backs. If they want to work together, let them work together. If they want to work alone, let them work alone. If they want to be agile, let them be agile; if they want to be locally-convex, let them be locally-convex. On the other hand, if you, the manager, know better how to write code, how come you cannot produce in a week anything comparable to what a junior programmer can easily concoct in 30 minutes? Just kidding.

Now ascii art. Programming is art. Ascii art is a part of programming art. If a programmer thinks that his or her code reads better formatted the way the programmer formatted it, challenge this, the fact that it is, not the fact that it does not follow Coding Style Guide Laws.

Date: 2010-03-25 02:43 am (UTC)
From: [identity profile] taganay.livejournal.com
Не надо давать программисту свободу. Надо требовать от него результата а не соблюдения ритуалов очередного cargo cult. Ну и главная задача менеджера - создать такие условия, когда программист может работать, не отвлекаясь на всякую ерунду.

Date: 2010-03-25 04:27 am (UTC)
From: [identity profile] ivan-gandhi.livejournal.com
Когда я был менеджером моя идея была поддерживать такие условия, чтобы человек не тратил время зря, а работал с удовольствием и с пользой.

Date: 2010-03-25 06:32 am (UTC)
From: [identity profile] 6zow.livejournal.com
Получалось?

Date: 2010-03-25 06:37 am (UTC)
From: [identity profile] ivan-gandhi.livejournal.com
В течение примерно 15 лет. Но я был довольно циничен, и выпихивал всякого, кому это было неинтересно.
Edited Date: 2010-03-25 06:37 am (UTC)

Date: 2010-03-25 07:26 am (UTC)
From: [identity profile] 6zow.livejournal.com
Видимо, это единственно правильный вариант, разве что с некоторыми оговорками.

Date: 2010-03-26 10:21 pm (UTC)
From: [identity profile] jakobz.livejournal.com
Наверное все книжки по организации программистов, нужно начинать и заканчивать этой фразой. А посередине можно ничего и не писать.

Такого менеджера я бы глубоко уважал даже если бы он меня уволил.

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

May 2025

S M T W T F S
    1 2 3
456 7 8 9 10
11 121314151617
181920 21 222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 24th, 2025 12:19 pm
Powered by Dreamwidth Studios