Команда докладчиков на предстоящую конференцию XP Days Ukraine уже начала формироваться. Мы ожидаем много интересных докладов в этом году от зарубежных и отечественных экспертов. А пока продолжаем публиковать ТОП-10 докладов с прошлого года. В этот раз 7-е место и доклад Николая Алименкова “How TDD helps to produce better design, or not?”.
Описание доклада:
TDD is well known approach to develop more clear and less buggy solutions, completely covered with tests as a bonus. But what about design? Some people think that TDD also helps design to emerge as implementation grows, so there will be just enough design in place when all cases are covered. Others think that without general design skills and experience output from TDD will be a garbage from design perspective. In this talk we will try to cover this topic in all details, focusing on TDD usage at different levels and with different styles.
Видео:
Не забывайте делиться с нами идеями потенциальных докладчиков для приглашения на XP Days Ukraine 2017, программный комитет будет рад услышать ваши мнения и пожелания.
Для кого-то лето – это пора отпусков, а кто-то старается не упускать возможности научиться чему-то новому и развить свои профессиональные навыки. В рамках прошедшей конференции JEEConf 2017 мы проводили несколько новых тренингов и места на них быстро закончились. Поэтому мы решили не откладывать в долгий ящик и запланировать повторное проведение на июль. Итак, какие есть варианты?
Неделю назад я упоминал в одной из статей об интервью, которое я давал на тему тестирования и TDD для JUG.RU. Так вот, уже опубликована полная версия на хабре. Первые несколько дней после выхода статьи я активно отвечаю на вопросы и комментарии, поэтому к интервью добавилось дополнительной интересной информации.
Кому интересна тема TDD, приглашаю на XP Days Ukraine 2016, где будет несколько выступлений на данную тему, включая мои размышления по поводу влияния TDD на дизайн вашего кода: “How TDD helps to produce better design, or not?”. Вот краткий анонс доклада:
TDD is well known approach to develop more clear and less buggy solutions, completely covered with tests as a bonus. But what about design? Some people think that TDD also helps design to emerge as implementation grows, so there will be just enough design in place when all cases are covered. Others think that without general design skills and experience output from TDD will be a garbage from design perspective. In this talk we will try to cover this topic in all details, focusing on TDD usage at different levels and with different styles.
В ходе недавнего интервью для JUG.RU я отвечал на один из вопросов в примерно такой формулировке: “TDD – это замечательный подход и все об этом говорят, но на практике оказывается, что тестов пишется мало и далеко не все следуют данному подходу. Дело тут в лени разработчиков?”. Полная версия интервью еще готовится к публикации, но я для затравки решил опубликовать ответ на этот вопрос.
Тут дело не в лени разработчика. Тут дело в двух причинах, на мой взгляд.
Первая – это то, что люди не умеют этого делать. Для того, чтобы разрабатывать по TDD, необходима подготовка. И мало этого, необходимо понимание инструментария, как им пользоваться и какое он дает преимущество. Человек, который проходит курсы, или сам изучает TDD, или садится работать с кем-то грамотным, кто уже работает по TDD, видит столько преимуществ в работе, что после этого ему становится понятно, что глупо так не делать.
Мы успешно начали новое направление тренингов на тему JavaScript разработки. Один практический тренинг “TDD в JavaScript” уже прошел в Киеве и мы получили много позитивных отзывов от участников. TDD позволяет писать более надежный и контролируемый код, что особенно важно для динамического языка как JavaScript, поэтому данная практика является обязательной в арсенале любого классного разработчика. Тренинг очень практический и большую часть времени участники пишут код и тренируют различные аспекты TDD. Следующий тренинг пройдет в Киеве 19-20 сентября, а также в Одессе 11-12 сентября. Регистрация уже открыта, размер группы ограничен.
По результатам 38-ой встречи «Клуба анонимных разработчиков», которая была целиком посвящена Node.JS, мы получили достаточно много просьб почаще проводить встречи с JavaScript тематикой. Также некоторые спрашивали, есть ли возможность пройти более углубленный курс по темам, которые рассматривались на встрече. Мы решили организовать расширенный двухдневный практический тренинг “Строим серверные приложения с Node.js и Express.js”.
Этот тренинг рассчитан на развивающихся программистов, которые хотят получить практические знания в области построения серверных решений с использованием Node.js стека технологий и языка JavaScript. Это двухдневный тренинг с упором на практическую часть. Требования к слушателям: быть знакомым с языком JavaScript, базовые знания Node.js будут плюсом, владение своей средой разработки (Sublime, WebStorm, Eclipse) и командной строкой. Тренинг запланирован на 29-30 августа в Киеве и 8-9 сентября в Одессе. Регистрация уже открыта, торопитесь занять себе место!
Это вторая обзорная статья конференции JEEConf 2014. Традиционно в рамках конференции мы проводим разнообразные тренинги для желающих не только посетить основные дни конференции, потусоваться с коллегами и послушать интересные доклады, но и получить практические навыки в одной из специфических областей. В этом году мы подготовили для участников совершенно новые тренинги, которые раньше никогда не проводились в Киеве.
Первый доступный тренинг покрывает наверное самый полезный инструмент для контроля качества Java кода – SonarQube. Он носит название “SonarQube in practice”. Мы давно хотели провести этот тренинг и предоставилась замечательная возможность пригласить тренером человека, который не только сам использует инструмент на практике, но и написал книгу “SonarQube in Action” на тему его практического применения. Этот человек Patroklos Papapetrou. Тренинг не будет сугубо теоретическим, предполагается практическая работа, поэтому участникам нужно иметь при себе ноутбук. Регистрация на тренинг уже открыта и группа наполовину сформирована. Так что поспешите забронировать себе место.
Второй тренинг будет проводить яркий и очень опытный тренер Женя Борисов. Тренинг будет посвящен одной из его любимых тем – Groovy и Gradle. Gradle представляет из себя инструмент для сборки приложений нового поколения, основанный на Groovy. Это позволяет не только использовать компактный и удобный DSL, но и писать свои специфические команды на языке Groovy. Так как знания Groovy являются обязательными для изучения и использования Gradle, то первая часть тренинга будет посвящена этому языку. За два дня вы сможете познать основы Groovy и научиться на практике использовать Gradle. Все тренинги Жени отличаются большим количеством практической работы, поэтому знания, полученные на тренинге, вы сможете легко применить у себя на проекте. На тренинг осталось только 6 мест, советуем поторопиться с регистрацией.
В этом году мы решили больше внимания уделить веб разработке как наиболее приоритетному и востребованному направлению. Поэтому пригласили Антона Моисеева прочитать тренинг по набирающему популярность фреймворку AngularJS. В принципе, тренинг не требует знаний Java и является скорее расширением горизонта знаний для Java разработчиков. Ведь многим из них приходится разрабатывать не только серверную, но и клиентскую часть веб приложений. AngularJS предоставляет замечательную инфраструктуру для простого написания кода на клиентской стороне с использованием JavaScript. Тренинг проходит в один день и регистрация на него уже открыта.
Последний тренинг является нашим классическим – “TDD в Java”. TDD – одна из наиболее полезных для разработчиков инженерных практик. Она помогает разрабатывать надежный и простой код быстро с высоким уровнем качества. Но не так просто начать работать по TDD. Нужно осознать и попробовать на практике базовые принципы, научиться двигаться к цели небольшими шагами. Данные тренинги отлично решают эту задачу. Попутно вы сможете узнать много полезных подходов, инструментов и хитростей, которые сделают вас продуктивнее. Группа почти набрана, осталось всего 5 мест. Регистрация еще доступна.
Мы будем рады вас видеть на наших тренингах в рамках конференции JEEConf 2014!
В субботу мы с Тимом Евграшиным вернулись с очередной конференции AgileDays, которая прошла в Москве 21-22 марта. Мы ездим на эту конференцию каждый год и в этот раз ребята из ScrumTrek собрали самую большую Agile тусовку за все годы – почти 900 участников и 5 параллельных потоков выступлений.
Я обычно начинаю отчеты с того, что было не так и что мне не понравилось на месте проведения. В этот раз мне нечего сказать. Это лучший конференц-центр, в котором мне удалось побывать за все время. Кофе, чай и печеньки не кончались, очередей нигде не было (даже на обеде), гардероб на 2000 человек, эскалатор на второй этаж, обед был вкусным с фруктами и сладостями на закуску, места хватало для всех участников, залы отлично оснащены технически и очень просторные (ни разу не было переполнение зала). В общем, я завидую белой завистью. Очень бы хотелось иметь такое место в Киеве. Нереально круто! Я бы советовал всем организаторам конференций в Москве обратить внимание на это место.
Организация тоже была просто отличная – отлично организованные стенды спонсоров, классные рюкзаки в подарок участникам, интересный конкурс с ключами для получения призов, раздача клевых футболок. Еще порадовала качественная печать фотографий на магнитной бумаге на фоне конференционной стены. Я думаю каждый увез хотя бы одну фотку. И все как-то уютненько и по-домашнему. Очень порадовали, спасибо!
Теперь немного о выступлениях. Мое мнение тут совершенно не показательно, потому что большая часть тем для меня уже давно глубоко изучена на практике. Но я все равно нашел для себя что-то интересное и полезное.
После открытия я остался на доклад David Anderson про Kanban, о чем сильно пожалел. Доклад был без эмоций, ничего нового, хотя я ожидал большего. Сбегал послушать Сергея Дмитриева про то, как Waterfall сожрет Scrum. Сергея слушать было куда приятнее, но тема была заявлена провокационная, а на деле снова обсудили Agile ценности и затронули пару фундаментальных понятий. После этого порадовал доклад Ahmed Sidky – энергично, достаточно интересно, полезно. Тема внедрения и распространения Agile подходов в больших компаниях сейчас беспокоит многих.
После обеда я посетил технические доклады про технический долг и CQRS. Из первого было интересно послушать, какие варианты использовали ребята в своем проекте для организации борьбы с техническим долгом. Мы когда-то давно прошли этот путь в одном проекте. Доклад по CQRS был интересным, но малополезным с технологической точки зрения. Больше было похоже на введение в CQRS.
В последней секции докладов я заглянул на мотивационный поток, но как-то не проникся. Идеи интересные, но слабо применяются в реальной жизни, да и мотивация высокооплачиваемых профессионалов для меня всегда была странной темой. Если тебе нравится твоя работа, тебе комфортно работать в компании и платят неплохо, то ты работаешь. Нет – не работаешь. Затем принял участие в продуктовом мастер-классе от Никиты Филиппова. Мы составляли продуктовые идеи, проверяли их на соседях, составляли план реализации их в жизнь. Было интересно. Мы придумали “контролер депутатов”, который многим очень понравился.
А дальше было виски-пати, где можно вдоволь наобщаться со старыми и новыми знакомыми, выпить виски и посмеяться вместе над программистскими шутками. Спасибо всем участвовавшим за классную компанию!
На второй день первым докладом я попал на Антона Волкова. Как по мне, его выступление в прошлом году было гораздо более полезным. Там он рассказывал о безумно интересной системе мотивации и оценок сотрудников через систему набора баллов. В этом году была тема людей, не менее важная, но более узкая и специфическая для каждой компании. В продуктовых компаниях его идеи правильные, но и то не для каждой компании. В других направлениях они слабо реализуемы.
Дальше был интересный отчет от Димы Лобасева на тему внедрения Kanban в банке. Всегда круто слушать о реальном опыте, проблемах и способе их решения. Тем более под классные и яркие слайды с множеством шуток и приколов. Я остался очень доволен. Следующим был Асхат Уразбаев с докладом про новый современный подход #NoEstimates. Мне этот подход очень нравится для опытных команд, но есть одно НО. Его стоит позиционировать как следующий шаг после хорошего процесса оценок, а не как замену ему. Цепочка ХАОС->ПРЕДСКАЗУЕМЫЕ ОЦЕНКИ->#NoEstimates. Такой подход многого потребует от команды взамен – постоянных надежных поставок ценности заказчику.
Дальше был мой технический доклад про TDD для интеграции с БД. Немного теории, а потом живой кодинг. Надеюсь немногочисленной аудитории понравилось. Вот слайды:
На завершающий блок я пошел послушать про ретроспективы. Сначала Тим сделал вводную, рассказав много полезностей и раздав кучу советов по проведению ретроспектив. А потом Макс Дорофеев поведал интересные истории “с полей”, показав как использовать инструменты теории ограничений для улучшения ретроспектив и получения максимальной пользы от них. Ретроспективы – это круто и доклады были очень живые.
В скором времени организаторы выложат материалы в открытый доступ. На всех докладах снималось видео, поэтому вы сможете пересмотреть понравившиеся выступления.
Из программы и общения в кулуарах я вынес для себя одну особенность – на конференцию стало ходить значительно меньше технарей. Если когда-то мы рассказывали про Code Review и доклад собирал полный зал, то теперь на всех технических докладах залы были полупустые. При этом очень забавно на многих докладах звучали вопросы: “Как вовлечь в это разработчиков? Как продать разработчикам эти ценности?”. У меня появлялся к ним встречный вопрос: “А почему на этой конференции находитесь вы, а не ваши разработчики? Экономите? Пусть они пока поработают, пока вы узнаете как их организовывать?”. 🙂 Мне кажется, на следующей конференции при такой тенденции можно будет запросто избавиться от инженерного трека и никто не пострадает.
Подводя итоги, мне очень понравилось в этот раз. Я бы сказал, что было гораздо круче чем во все предыдущие годы. Так держать! Огромное спасибо организаторам за приглашение!
Мы уже давно планировали расширить набор тренингов по проектированию и разработке. По многочисленным просьбам участников различных наших мероприятий выбор пал на шаблоны проектирования (design patterns) и наиболее популярный фреймворк в мире Java разработки – Spring. Оба этих тренинга будет вести Женя Борисов – опытный тренер из Израиля. Он уже приезжал в Киев и мы получили очень позитивную обратную связь от участников.
Итак, тренинг “Spring 3 – копаем до самого ядра” пройдет 12-13 февраля в Киеве. Данный тренинг поможет вам пройти путь от начинающего до мастера. Вы не просто научитесь пользоваться Spring, но и поймете как расширять его возможности, а для этого придется залезть глубоко под капот. Будут обсуждаться все основные компоненты Spring, разные виды контекстов и их конгломераты, интеграция Spring с другими популярными технологиями, такими как Hibernate, web, security, validation. Данный тренинг будет максимально практичным. Много кода будет писаться вживую. Будет весело, сурово, но максимально понятно. Регистрация уже открыта и группа ограничена по размеру.
Второй тренинг “Шаблоны проектирования или как писать код, которым можно гордиться” состоится 14-15 февраля. Данный тренинг отличается от привычных всем тренингов по шаблонам проектирования, он основан на реальных примерах, на чужой боли и суровом опыте. Здесь вы не столкнетесь с нудной теорией, которая редко применяется на практике. Вы будете решать реальные задачи, с которыми сталкивается почти каждый программист. Будут обсуждаться как правильные, так и неправильные шаблоны, названия которых будут озвучены только после того, как качественный код будет написан. С этого тренинга вы унесете чужой жизненный опыт и собственноручно написанный красивый код, которым можно гордиться. Регистрация открыта, торопитесь занять себе место среди участников.
17-18 января пройдет тренинг “Инженерные практики в Agile”. Это один из самых информативных наших тренингов. Его проводит Николай Алименков и он приготовил для участников увлекательный рассказ о 8-ми инженерных практиках. За два дня тренинга вы можете получить целостную картину эффективного процесса разработки с точки зрения его технической составляющей. В программу вошел весь многолетний опыт и знания тренера в области применения и внедрения инженерных практик. Регистрируйтесь и присоединяйтесь к группе участников.
Не хочешь пропускать ничего интересного? Подпишись на ленту RSS или следи за нами в Twitter!
Мы работаем над тематикой следующей встречи «Клуба анонимных разработчиков», которую анонсируем на следующей неделе. Пока же мы решили опубликовать расписание инженерных тренингах, которые пройдут в ноябре-декабре этого года.
Тема архитектуры и дизайна собирала больше сотни участников на встречах клуба, поэтому мы пригласили опытного тренера из Москвы Евгения Кривошеева прочитать отличный курс на эту тему. Тренинг называется “Дизайн и архитектура в Agile” и предназначается для разработчиков, архитекторов, лидеров команд и менеджеров проектов. Это отличный способ закрыть все пробелы в архитектуре и дизайне современных приложений. Ознакомьтесь с детальной программой, оно того стоит. Тренинг состоится 10-11 декабря, стоимость 2500 гривен.
Опытный TDD-гуру и .NET-практик Сергей Калинец в очередной раз соберет .NET разработчиков на свой тренинг “TDD в .NET”. Сергей построил действительно очень практический тренинг, на котором большую часть времени участники пишут код под руководством тренера. Через практику TDD дается гораздо проще. При этом есть возможность узнать много нового от профессионала своего дела. Тренинг пройдет 15-16 ноября, стоимость участия составляет 2000 гривен.
Это один из самых информативных наших тренингов. Его проводит Николай Алименков и он приготовил для участников увлекательный рассказ о 8-ми инженерных практиках. За два дня тренинга вы можете получить целостную картину эффективного процесса разработки с точки зрения его технической составляющей. В программу вошел весь многолетний опыт и знания тренера в области применения и внедрения инженерных практик. Вы можете оценить программу тренинга. Он состоится 6-7 декабря, стоимость участия 2000 гривен.
Тематика DevOps в последнее время обретает все большую популярность. Автоматизация настройки окружения стало обыденной работой, особенно в случае развертывания приложения в облачной инфраструктуре. Chef является одним из самых популярных инструментов в этой области. Андрей Самиляк уже выступал в клубе на эту тему. Но теперь он решил собрать весь опыт воедино и подготовил практический курс из 5-ти занятий по 3 часа. Занятия будут проходить по средам с 19:00 до 22:00, начиная с 20 ноября, и ориентированы сугубо на практическое применение техник и инструментов. Стоимость 2000-2400 гривен в зависимости от даты регистрации.
Не хочешь пропускать ничего интересного? Подпишись на ленту RSS или следи за нами в Twitter!
Только вчера прошла 32-ая встреча “Клуба анонимных разработчиков” и мы уже готовы анонсировать следующую встречу. Она состоится 1 октября и пройдет в формате практического мастер-класса.
Темой мастер-класса будет “TDD в Java для начинающих”. Многие слышали о том, что TDD – это круто и с помощью этой практики можно писать код лучше, быстрее и качественнее. Но в теории все звучит просто, на практике оказывается не так уж легко начать. Виктор Кучин подготовил практическое введение в TDD для тех, кто хотел бы попробовать этот подход, используя Java. На мастер-классе вы услышите небольшое теоретическое введение, а остальное время проведете за реальной разработкой по TDD. Поэтому все участники должны иметь с собой ноутбук с предустановленным ПО.
Встреча пройдет во вторник 1 октября. Местом проведения мы выбрали уютный Киевский офис компании DataArt. Этот офис полюбился членам клуба своей обстановкой и наличием всего необходимого для продуктивного общения.
Официальное начало встречи по-прежнему в 19:00, завершение в 23:00. Стоимость участия 80 гривен при оплате заранее, 120 гривен при оплате на месте. Пива, пиццы и кофе с печеньками хватит на всех. Регистрация обязательна. Все детали по оплате будут высланы вам после успешного прохождения регистрации. Количество мест ограничено 30 участниками.
Не хочешь пропускать ничего интересного? Подпишись на ленту RSS или следи за нами в Twitter!