17 янв. 2008 г.

Разработческое

Интересная статья на TheServerSide

Ничего нового там нет, но есть некоторые точно сформулированные моменты. Например, про излишнюю радикальность выбора между отсутствием дизайна до работы и полным завершением дизайна перед реализацией - усредненный подход работает здесь в полной мере (хотя мне трудно представить себе апологета первой техники, это чистое безумие и ковбойство!). Не нужно путать XP и отсутствие дизайна, но, к сожалению, не все чувствуют разницу.
Еще есть там полезная мысль о Code Reuse: тесты должны быть тоже поддерживаемы, как и основной код. Обычно им уделяется меньше внимания с этой точки зрения.
Pair programming - ну что тут сказать, моя (впрочем, недолгая) профессиональная жизнь сделала меня полным приверженцем этой техники. Опять же не ясно, почему ей противопоставляется Code Review, веть оба этих подхода вполне успешно сочетаются (при достаточном количестве ресурсов). ИМХО для парного программирования основная проблема - человеческий фактор. Не каждому разработчику легко делить власть над кодом, быть ведомым, когда кто-то постоянно комментирует и отвлекает от полета фантазии :) А у ж тем более ведущим (что, по моему мнению, труднее) - сохранять внимательность и критический взгляд на труд коллеги долгое время довольно утомительно. Но это приносит свои плоды, в прошлом году наиболее продуктивным я чувствовал себя именно работая в паре.

Вообще, смотреть на процесс или на методологию как догму странно. Это ведь не религия! Но дает ли эффект методология, от которой откушены некоторые части? Мне кажется, да. Главное - фундаментальные ценности, лежащие в основе процесса. Для кого-то то ориентированность на пользователя и максимально простая система, для кого-то это тщательная документация, следование формальным процедурам и стабильность. Однажды выбраны, эти ценности должны пронизвать систему, поддерживать концептуальную целостность и процесса, и кода. И, конечно, должны быть приняты и поняты членами команды. Но как эти ценности должны распространяться? Это должно быть что-то вроде программистской "корпоративной культуры", которая у крупных компаний выражается лозунгами (outstanding professionals working together to deliver value;) ) и прочими речевками? Может казаться странным, что фирма имеет свою культуру - это ведь не страна или секта - но без нее невелика цена такой компании.

11 янв. 2008 г.

НГ :)

Впервые встретил 31е катаясь на горных лыжах :)

По пути в Финляндию казалось, что про лыжи в этот раз можно забыть - шел дождь, на обочине никакого намека на снег, за бортом плюс. Но уже на следующий день все встало на свои места, а к концу поездки было вообще -20. Местечко Vuokatti, в котором мы отдыхади, смело можно было на это время переименовывать в Russtown - на горе и в магазинах сплошная русская речь. На Тверской чаще услышишь иностранца! С местным населением вообще пересечься возможности мало, во многом из-за автоматизации всего (особенно понравились бензоколонки). В Финляндии идеальный семейный отдых - природа, чистый воздух, спокойствие... и, кроме горок, классные спа-парки.
На обратном пути опробовал круиз-контроль. Классная штука, когда нужно отмотать 500 км по пустынной и более-менее прямой трассе. Нога не устает, машина сама прибавляет газу в подъемах и притормаживает при спусках - знай иногда руль поправляй. Нашу таможню прходили почти 4 часа. No comments, как говорится (финскую 20 минут).

from the roof of Vyborg Castle

Рождество встречали в зимнем Выборге. Мне полюбился этот город еще во время поездки Laterом на Рыцарский Замок и Майское Дерево, и сейчас не разочаровал.

morose Monrepo
А это из парка Монрепо, до которого я никак не мог дойти в предыдущие поездки в Выборг. Потрясающее место, немного мрачное но оооочень красивое. Еще там есть остров Мертвых, на котором можно фильмы ужасов снимать без декораций. Летом конечно все повеселее, а вот зимой - самое оно.
Потом с отправились в почти родной Питер, объедаться в пабах и вообще приятно проводить время - и в Москву!
Я люблю свою работу, но после такого прекрасного отдыха выходить на нее было трудно :)))