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


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

вторник, 21 августа 2012 г.

Когда стоит начинать ТДДить?

Поработав с юнит тестами и ребятами, которые учились этому интересному делу я заметил несколько ступенек развития. Перепрыгивать ступеньки не стоит - ничего из этого хорошего не получится. Особенно актуально эта информация для менеджеров, которые хотят на своих проектах видеть TDD - сразу вы его не увидите, как ни крути. Все должно быть естественно и последовательно.

1-я ступень. Тесты не писались и не пишутся. Код разрабатывается по классике: кодим, тестим, дебажим, снова тестим - все ручками. Лечение: начать писать хоть какие-то тесты, в любое время - как удобно, тем самым часть мануальной работы переложить на компьютер. Качество тестов не так интересует, как количество. 

2-я ступень. Тесты пишутся после того, как написан код. Возможно этого кто-то требует сверху, возможно появилась заинтересованность в автотестах. Тесты обычно интергационные, потому как протестировать сильно связанную систему оказыватся не так просто. Лечение: пытаться тестировать не в конце итерации (1-2 недели), а хотя-бы в конце дня, постепенно сокращая по времени итерацию Код-Тест.

3-я ступень. Тесты пишутся параллельно с кодом, но с небольшой задержкой. Обычно они более-менее юнит, а архитектура тестируемого кода, соответственно, более-менее модульная. Дебагом пользуемся, но не зависая надолго. Обычно уже тут специалист test infected и слабо представляет разработку без тестов. Лечение: пробовать TDD.

4-я ступень. Разработка управляемая тестированием, то есть TDD. Первые шаги, основа есть. Все немного максималистично - coverage 100%, никакого debug, только TDD всегда и везде! Лечение: пообщаться (поработать в паре) с такими же TDD практиками, пробовать всевозможные unit testing фреймворки, BDD, помагать любопытным коллегам с вопросами о TDD .

5-я ступень. TDD ретранслятор. Либо XP коуч в проекте, либо тренер-консультант, либо просто на конференциях выступает (или блог интересный ведет). Обычно с TDD все уже достаточно хорошо, как в новых проектах так и legacy. Инструмент используется эффективно в комбинации с другими инструментами или не используется. Лечение: Неизвестно.

6-я ступень. Ваши варианты?

понедельник, 23 февраля 2009 г.

Количество в качество

Вот недавно пришел к тому, что количество сознательно или неосознанно перерастает в качество. Так работает эволюция. Помню кто-то писал "если вы соберете кубик миллион раз, то в любом случае будете делать это меньше 30 секунд". Думаю то же касается абсолютно всего. Другое дело, что рост проходит несознательно, а значит дольше.

А значит просто делайте и не останавливайтесь. Делайте и делайте. Обдуманно или нет. Ведь обдумывание в любой момент можно подключить.

Просто начни что-то делать прямо сейчас. И не останавливайся пока не надоест. Или вообще никогда не останавливайся. Будет много ошибок, и это классно!, ведь на каждой ошибке ты чему-то учишься. "+1 к опыту", как я люблю говорить.

Делай и никого не слушай. А если уж и послушал - проверяй делом. И выкидывай, если не работает. Если работает - пользуйся.

Ну вроде все как.

Качество = f(количество, время)

суббота, 1 ноября 2008 г.

Метод "трай-эррор"

Эволюция самый длительный процесс развития. Некоторые люди его отождествляют с методом проб и неудач ("трай-эррор"). Ну и правильно что так делают.

Тут стоит сказать нечто для нормального понимания. Метод трай-эррор может выглядеть так: трай-эррор-трай-тот же эррор-трай-снова тот же эррор. А может и так: трай-эррор-анализ-трай-другой эррор-анализ-трай-третий эррор-анализ.

В первом случае - это эволюция в чистом виде. За длительное время из миллионов одинаковых столкновений может будет одно, которое приведет к прорыву, а может и нет...
Вот втором случае - это тоже эволюция, но эволюция человеком разумным. Есть разница.

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

Это все касается не только дел, касающихся запуска космического корабля. Это все касается самых простых вещей: вытирание пыли в комнате, поливание цветов, произношение иностранных слов, общение с окружающими... Все можно проанализировать (сложное слово я бы перефразировал так "подумать как в следующий раз сделать лучше, быстре, приятнее") после, и даже до выполнения.

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

Желаю всем стремительного роста вверх.

среда, 8 октября 2008 г.

Письмо тому, кто поймет

Привет Тьерк,

Сегодня прошёл отличный день. Мы с Саней программировали парно. Получили массу удовольствия. Иногда смеялись как дети, чем вызывали непонимающие взгляды у окружающих. Жаль, но пока еще не все понимают прелестей парного программирования. Ничего, вскоре это пройдет. Багфиксинг шел очень эффективно. Когда кто-то один глох, то второй сразу забирал клавиатуру и показывал свой вариант решения. При правке внесли минимум новых ошибок, которые тут же исправили. Надеюсь, что ввод демо данных будет теперь более удобным для тебя.
Думаю, странным окружающим казалось то, что очень важную задачу (сейчас самую важную в компании) мы решали с улыбками на лице и совсем не напрягаясь. А зачем? Стресс порождает новые ошибки. Давление мешает думать. Позитив! А задачу выполнили даже быстрее чем ожидали.

Что касается твоего вопроса. Что сказать? Я участвовал в различных (если не во всех) группировках, когда либо живших у нас и за его пределами. Наверное единственная группировка, где все серьезно и не очень интересно это менеджеры проектов. Но я это обязательно поправлю. Всем нам необходимы положительные эмоции.

Мной движет любопытство. Все, везде и в любое время. Мой самый любимый вопрос "почему?". В этом я не далеко ушел из детства. Этот вопрос, примененный ко всему что только можно придумать заставляет задуматься. Не комфортно ходить с вопросом, на который нету ответа. Ответы приходят позже. Приходят целыми пачками. И все становится яснее и в тот же момент еще более непонятным. Один ответ влечет за собой на порядок больше вопросов...

Когда ты приходишь с выходных с решением существующей проблемы (я предпочитаю слово трудность), весь светишься, и рассказываешь о решении заинтересованным, то в 99% случаев тебя не понимают. Ты варился все выходные в этим вопросом а не тот, кому принесли готовый ответ. Потому идея уходит на задний план. Часто из за нехватки времени (хотя оно через месяц уже окупит себя). Часто из за человеческой натуры - все, что извне - все неправда я лучше знаю. А иногда даже спорить приходится... Часто просто из-за неделания менять что-то. И так комфортно, зачем куда-то еще идти? Вот так.

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

После всего этого ты больше знаешь про меня. И мои мысли.
Какой период сейчас? Время собирать камни. Я очень горд за себя и своего напарника. Нас выбрали в самый ответственный момент. Мы делаем все, чем научились за то время пока... Уверен демо мы сделаем. Даль что решение о перераспределении команды пришло так поздно.

Какой будет период в будущем? Лидерство 5 уровня: нет критике, нет поучениям, нет спаму. Действие, которого невидно. Мысли и идеи, которые общие. Менеджмент, который учится сам. Проекты, приносящие удовольствие. Изменения, которые незаметные. Рост, без принуждения.
Сам собираюсь еще больше углубиться в психологию, т.к. "программирование на 85% это общение с коллегами". Остальные 15% само собой разумеется - расти еще есть куда. Если оценить мои знания по 10 бальной шкале, то я думаю что где-то недалеко возле нуля. Опыт. Только опыт и практика.

Группы. Что делать с ними? Думаю группы сами организуются и сами решат что им делать, главное дать такой шанс. Дать его. Шанс реализоваться и показать себя. И пускай сразу не ясно будет какую пользу это принесет. Уверен, что там где реализованные люди, занимающиеся своими "хочу" - там есть все. Сложно? Долго? Но мы ведь никуда не торопимся?

Из людей, разделяющих со мной эту идею я бы выделил в первую очередь Валеру. Это мой друг, которому я стараюсь помогать во всем. Есть еще пару человек, которые вот-вот начинают понимать. Это все очень необычно. У нас много стереотипов мешающих жить и думать своими мыслями. Выходить из этого тумана. Другого не дано.

Как не хотелось говорить про это, но прийдется. Множество проблем и непонимания из за самой грязной вещи - денег. Они плохо мотивируют, но их отсутствие действует противоположно. Иногда мне кажется что на меня смотрят как на дурака.

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

Удачи тебе и еще больше терпения. И большое спасибо.

С уважением и пониманием, Саша.