Если нельзя, но очень хочется, то нужно обязательно и ничего в мире не стоит того, чтобы делать из этого проблему!


Интересна Java? Кликай по ссылке и изучай!
Если тебе полезно что-то из того, чем я делюсь в своем блоге - можешь поделиться своими деньгами со мной.
с пожеланием
столько времени читатели провели на блоге - 
сейчас онлайн - 
Показаны сообщения с ярлыком КьюА. Показать все сообщения
Показаны сообщения с ярлыком КьюА. Показать все сообщения

четверг, 17 декабря 2009 г.

Еще один день в паре: конец деливери и все сделано

Сегодня последний день деливери и доска выглядела так. Красным обведена область New и Developing нашей фичи - там пусто и все таски в зоне Testing и Done. Это значит что мы все сделали!!! Не побоюсь сказать - это одна из лучших деливерей за последний год, точно. Давно так кайфово не заканчивали - пол дня занимались мелким багфиксом, ведь мы успели реализовать весь функционал и даже немного помогли с тасками еще одной напарнице, которая, к сожалению, всю деливери работала в одиночку.

Нас в команде пятеро: я, две девушки, КьюА тестировшик и продактовнер на 1/3 времени - супер команда. Вообще-то в начале деливери я предупреждал команду и продактовнера, что стоит подыскать еще одного командного игрока, чтобы было две пары, но людей нет! Ладно. Местами казалось, что мы ее бросили, хоть и сидели все время на расстоянии 2 метра. Видно было как она скучает и в одиночку справляется со своими тасками. Но я сознательно ничего не сделаю. Чтобы заинтересовать чем-то надо просто этим с удовольствием заниматься, окружающие втянутся. Если оно им надо конечно. Поглядим...

Если есть такая возможность, всем в команде может быть комфортно - команда должна состоять их четного числа программистов (на счет КьюА не знаю, не был, спрошу) - никто не должен остаться без пары. Иначе на это смотреть невозможно. Ну ничего, у нас еще впереди общая ретроспектива - думаю всем будет что там сказать.

КсюА уже сегодня на перерыве поделился фидбеком - сказал, что ожидал более сложной деливери. На счет того, что мы на второй день дали таски на тестирование (что довольно необычно) сказал ровно, что это хорошо. Ладно. Себя не похвалишь, никто не похвалит. В паре хвалите друг друга, это очень повышает эффективность.

А завтра сутра будет демо....

А вообще день можно назвать днем JBPM. Утром, как и договаривались ранее, мы взяли самый сложный таск - разобраться с процессами оплаты, разработанными на JBPM. Код запутанный и не наш. Код практически не покрыт тестами. Приходилось все тестировать ручками. В следующей деливери у нас уже нарисовался один таск - покрыть весь этот функционал тестами. Напарница даже очень за. Закончили багфикс тем, что было предложено все знания, что мы получили, записать в виде java docs классам. К нашему сожалению их (JavaDocs) у кода так же не было. Но теперь есть.

Вывод есть. Если вы матюкаетесь на чужой код - сделайте доброе дело, а? Приведите код в порядок. И пускай следующий разработчик не скажет "что за чудики писали ЭТО?&!". Когда код привели немного в порядок, то с гордостью дописали в заголовке классов свои имена.

среда, 16 декабря 2009 г.

Еще два дня в паре: 1) мы успеваем 2) мне тоже есть чему учиться 3) как показать эффективность?

Прошло еще два дня в паре. Мы успешно применили практику 50 минут работаем/10 отдыхаем, работая по очереди не зависимо от того, какую задачу кто лучше выполнит. Но мне все же стоит меньше влазить в работу напарницы, когда она за штурвалом.

Сегодня на кухне, во время очередного перерыва, мы провели неформальную мини ретроспективу, где я спросил "ну как?". Плюсы очевидны - меня интересовали больше минусы. А они такие: усталость + головная и глазная боль. Что-то мы делаем не так, но уже пошли намеки на зрительную гимнастику со стороны напарницы. Я же стараюсь делать зарядку при малейшей возможности.

Так же мы выявили, что после обеда, где-то с 15 до 16 (обед у нас заканчивается в 14:30, а скрам дейли проходит в 14:45) продуктивность минимальна за весь день, а ближе к 18:00 она обратно увеличивается. Возможно мозк в это время занимается перевариванием пищи, кто знает? Решили, что в это время будем давать передышку друг другу и расходится по углам комнаты (наши рабочие места находятся в двух диагонально противоположных углах комнаты).

Так же решили, что в первой половине дня, где продуктивность наиболее высока мы будем решать наиболее сложные задачи. То же говорят многие источники по тайм менеджменту, которые я встречал.

Мы успеваем! Это наверное самый классный показатель. Кроме тог омы сегодня еще ускорили разработку в будущем. Что раньше приходилось тестировать, делая деплой на удаленный сервак раз в день, теперь мы можем тестировать на локали - мы исключили узкое место привязанное к тому серваку, в случае, если в базе в таблицы свойств находится запись debug.testing.mode = "on". Естественно все сделано секьюрно, дабы никто посторонний не мог воспользоваться этим для своих целей. Оба довольны, потому как кадый из нас по отдельности хотел это реализовать давно, а решились лишь вдвоем и сделали это за час.

Мне стоит больше доверять интуиции моей напарницы, потому как она классно работает. Когда что-то возникает у нее вголове, она еще не знает что это, но стоит дать время на обдумывание, потому как в результате получаютсядовольно красивые архитектурные решения. Там где я сегодня хотел переписать половину проекта напарница нашла всего лишь два места, куда добавили пару строчек кода и все заработало. Гениально! Конечно же было написано парочку тестов по моей инициативе и вскоре все отправилось в реппозиторий. Напарница предложила мне в таких тупиках, когда мы оба не можем понять что делать дальше так же расходится по углам, минут на 15 и пробовать решить эту задачу параллельно а потом поведать друг другу про результаты. Иногда нужно сосредоточится, а для этого уединение мне и напарнице помогает.

Близится конец деливери, а мы уже почти все сделали. В пятницу сутрау нас будет демо с продакт овнером по так называемм "аксепттанс историям", которые были записаны на пленнинге КьюА. Истории были такими "логинимся, видим обычный список. Создаем то-то и в результате в таком-то месте надпись меняется на. Потом жмем ту кнопку, и переодим туда-то. При всем при этом по такому линку видно то-то, но если мы нажмем туда-то то больше этого видеть не будем...." Написано так, что моя покойная бабушка могла бы разобраться. Это мы и проделаем в пятницу утром каждый по своей фиче отдельно. Чисто формально моя напарница отвечает за эту фичу. Но реально отвечаем мы оба. Я сознательно на пленнинге отмалчивался, когда продакт овнер спрашивал "кто отвечает за фичу", потому как понимал, что при нашей стратегии парного программирования отвечать будем мы оба. Кроме того за провтык фичи у нас пока не предусмотрена никакое наказание... Но это пока... Да и что говорить, если мы успеваем в срок.

В этой деливери так же было примечательно то, как мы декомпозировали задачу на мелкие так, чтобы после каждой части можно было КьюА ее потестировать.
Потому КьюА вступил в игру уже со второго дня деливери.

Вопрос другой, как доказать нашему продакт овнеру, что то что мы проделали вдвоем за этих 6 дней мало кто в компании сделает в одиночку с таким же уровнем качества даже за время в два раза большее. Это не померять. Код написан и повторно его разрабатывать с нуля никто не будет. Но я то знаю. Теперь это знает и напарница. Что-то меняется. И это радует.