• Услуги
  • Новости
  • Тренинги
  • Расписание
  • Материалы
  • Проекты
  • О нас

2012 February

Отчет о конференции Selenium Camp 2012

Selenium Camp 2012

В конце прошлой недели прошла вторая по счету конференция Selenium Camp. В этот раз конференция растянулась на два дня – 24 и 25 февраля. Первый день был целиком посвящен обучению. Мы организовали 3 потока мастер-классов и тренингов на целый день для более 50 участников. Программа получилась достаточно насыщенной: «Написание тестов с нуля на базе WebDriver и Java», «Selenium против AJAX», «Пробуем Selenium на практике», «Миграция с Selenium 1.0 на Selenium 2.0 (aka WebDriver)», «Тестирование веб приложений с WebDriver/Selenium».

Вечером того же дня ребята из automated-testing.info организовали посиделки тестировщиков. В качестве приглашенных докладчиков выступили David Burns и Алексей Баранцев. Было очень интересно послушать историю о развитии Selenium/WebDriver и получить множество полезных советов от людей, которые напрямую занимаются разработкой этого замечательного инструмента.

В это же время велась активная подготовка зала в БЦ “Парус” для основного дня конференции. А принять в гости предстояло около 350 участников. Зимой в Киеве очень мало площадок готовы принять комфортно такое количество людей. Мы приложили максимум усилий, чтобы все чувствовали себя свободно. Поэтому пришлось ограничить количество участников и отказать многим из тех, кто пытался зарегистрироваться в последнюю неделю.

Регистрация прошла успешно, без каких-либо очередей и суеты. Все получили яркие пакеты с материалами конференции, красочные бейджи и смогли вдоволь пообщаться за утренним кофе в холле. Холл в это время напоминал муравейник, который просто гудел от общения. В этом году мы впервые поменяли формат печатной программы конференции. Теперь она является одновременно и блокнотом для заметок. Участники могут делать заметки непосредственно около доклада, что позволяет структурировать записи и получить в итоге персональную “книгу участника”.

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

В этом году мы заключили договоренность с Mail.RU Group и компанией Воля об обеспечении надежного и быстрого интернета на конференции. Интернет держался стабильно и не падал на протяжении всего дня. По холлу постоянно бродили работники компании и проверяли качество соединения. Лично у меня были небольшие перебои утром, но оказалось, что они были вызваны настройками одного из ноутбуков в холле, который пытался раздавать интернет.

Программа конференции в этом году была на голову выше чем в прошлом. Это лично мое мнение. Доклады стали гораздо более техническими, практическими и злободневными. В этом году уже 3 иностранных докладчика посетили конференцию. Также в составе докладчиков было 3 члена команды разработки Selenium/WebDriver. Это очень здорово, потому что участники имели возможность из первых уст узнать подробности развития инструмента, ближайшие планы, технические детали.

Мы старались как могли сбалансировать нагрузку в программе между тремя потоками. Но все равно маленькую и уютную сцену для мастер-классов, рассчитанную на 50 человек, то и дело участники норовили расширить дополнительными стульями. Не переживайте, все доклады записывались на видео и будут выложены на сайте конференции в течение нескольких недель. Маленькая сцена пригодилась еще раз ближе к вечеру – на ней устроили серию Lighting Talks. Нашлось 5 желающих выступить с мини-докладами. Это очень здорово, когда у участников есть чем поделиться.

У меня самого в этот день было 2 доклада, поэтому мне удалось побывать далеко не на всех выступлениях. Из увиденного очень понравились доклады David Burns “The road to a standard” и “Selenium против AJAX” от Алексея Баранцева. David рассказал о текущем состоянии дел в продвижении WebDriver в качестве стандарта W3C. Это очень важное направление, потому что оно может революционным образом облегчить жизнь всех, кто тестирует приложения в браузерах. Производители будут сами заботиться о поддержании стандарта, что сделает тестирование проще, быстрее и стабильнее. Леша отлично рассказал технический доклад о тонкостях и особенностях работы WebDriver с AJAX приложениями. Огромное количество полезных советов, идей, известных проблем и обходных маневров к ним. Отличный доклад!

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

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

Незаметно подошел момент закрытия конференции. Кроме традиционных слов благодарности докладчикам, волонтерам, организаторам, спонсорам и всем присутствующим, у нас был заготовлен розыгрыш призов. Это было чрезвычайно весело и интересно. Мы заранее огласили, что только заполненные анкеты обратной связи смогут участвовать в розыгрыше призов. Некоторые участники не вняли нашей просьбе, поэтому не всегда приз уходил с первой попытки. В общей сложности мы разыграли 3 книги, Amazon Kindle Touch и 1 сертификат на посещение любого тренинга от XP Injection. Компания SysIQ вдобавок разыграла 25 прикольных футболок, билет на конференцию SQADays 11, сертификат на курсы английского языка и лицензию на Intellij IDEA.

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

Все материалы конференции будут выложены на сайте в разделе материалов. Сейчас там уже появляются отчеты и презентации докладчиков. В скором времени подоспеют видеозаписи и фотоотчеты.

Мы будем рады увидеть всех в следующем году на Selenium Camp 2013 и на других наших мероприятиях!

event29/02/2012
personНиколай Алименков
mode_comment1
Далее
Новый тренинг “Практики эффективного, но экономного проектирования” 13-14 апреля в Киеве

Дмитрий Ефименко

Мы не стоим на месте и постоянно развиваемся. Вместе с этим растет наш состав тренеров, в который мы приглашаем только очень опытных профессионалов индустрии, у которых есть чему поучиться. Очередным нашим тренером стал Дмитрий Ефименко. Дмитрий является экспертом в управлении проектами и командами, бизнес- и системном анализе, проектировании, разработке, тестировании и построении процессов. Более 13 лет в разработке софта, последние 4 года – лидер продуктовой команды. Категорический сторонник вытягивающих подходов в проектировании и разработке, самоуправляющихся команд, бережливых и легковесных процессов. Увлекается синтезом эффективных процессов «под команду» из известных и не очень методов и практик.

13-14 апреля в Киеве Дима представит свой тренинг “Практики эффективного, но экономного проектирования”. В этот тренинг он постарался включить весь свой опыт и знания на тему проектирования программных продуктов, полученный за многие годы работы в IT.

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

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

Кому он нужен? Тому, кого достало частое изменение требований, ошибки в приоритетах, метания заказчика и “трудности перевода” между заказчиком и командой.

Регистрация на тренинг уже открыта. Стоимость участия составляет 1700 гривен (обед включен). Тренинг проходит в 2 дня. Торопитесь, количество участников ограничено!

event28/02/2012
personНиколай Алименков
mode_comment0
Далее
Рубрика «Полезное чтиво». Выпуск 23

полезное чтиво

На прошлой неделе выпуск рубрики «Полезного чтива» не увидел свет, поэтому на этой неделе выпуск получился толще и вкуснее. Налетайте:

  • Continuous Delivery Using Maven – пример настройки полного цикла Continuous Delivery на Java проекте со всеми деталями
  • THE MYTH OF THE STANDARD TESTER – по-хорошему, резюме должно составляться под вакансию, вакансия – под реальные нужды, а не на 100 лет вперед
  • Bug reporting for dummies, или Шпаргалка молодого тестировщика – странный, но наверное полезный, список подсказок молодому тестировщику
  • Amazon RDS for MySQL – Is it any good? – Amazon RDS можно использовать только если вы не собираетесь делать тонких настроек и тюнинг
  • The 7 habits of highly effective developers – привычки эффективного разработчика
  • Почему я не провожу собеседования – посмотреть на человека в работе – лучше любого собеседования, но где найти время и желающих при нашем рынке?
  • Understanding-Driven Development – понимание кода постоянно уменьшается, поэтому надо постоянно работать над его поддержанием
  • Оптимизация ORDER BY — о чем многие забывают – в каждой RDBMS куча своих хитростей и тонкостей – в MySQL order by null мы часто используем
  • 10 причин для отказа от TDD – проверьте нужен ли вам TDD!
  • We must have working software at the end of the Sprint! – главная цель каждого спринта в Scrum – подготовить готовую к использованию версию продукта, а помех при этом куча!
  • Протестируем по-быстрому? Это не сработает – миф “протестируем по-быстрому” никогда не срабатывает, даже не пытайтесь
  • Никто тебя не должен развивать? – кто должен развивать человека (компания или он сам) – очень спорный и сложный вопрос
  • ScrumMaster Tales – Technical Debt is Slowing the Team – Technical Dept придет и за вами
  • Nexus Pro 2.0: Support Distributed Teams with Smart Proxy – Nexus начал поддерживать распределенные команды, каждая из которых имеет свой репозиторий
  • Meetings: Where Work Goes to Die – cоветы по проведению полезных митингов, f вообще 3 раза подумайте стоит ли их проводить и кого звать
  • Spring 3 MVC Exception Handlers and @ResponseStatus – продолжение обработки ошибок в Spring MVC 3.0 – меняем статус код при ошибке
  • What is Amazon EBS for? – при грамотной репликации может и не нужно иметь надежные хранилища, к примеру Amazon EBS
  • MySQL Cluster 7.2 Released with 70x Increased Performance and NoSQL Features – вот почитаешь такие анонсы и хочется тут же переходить на MySQL Cluster 7.2
  • Agile Requirements Definition and Management – Agile требования – одна из основных проблем команд, поэтому их надо готовить заранее, постоянно и только на ближайшее время
  • Is Test Automation a “Project”? – для успеха автоматизации тестирования не стоит выделять ее как отдельный проект или делать отдельную команду
  • Technical Debt: How Much is it Really Costing You? – для того, чтобы бороться с техническим долгом, его нужно научиться считать, а тут Sonar – один из помощников
  • Pomodoro как метод самоорганизации и тайм менеджмента – статья о технике Pomodoro на LifeDriver
  • Spring 3 MVC Exception Handlers and Multiple Exception Arrays – работа с ошибками в Spring 3 MVC
  • NOT ALL HUGE XPATH IS EVIL XPATH – не стоит бояться XPath в локаторах, но использовать его грамотно, а для этого надо хорошо им владеть
  • SCRUMMASTER? COACH? AGILE COACH? THE NEEDS OF THE TEAM AND WORK DEFINE THE ROLE. – как выбирать человека, который поможет вашей команде или компании перейти на Agile
  • You Should Use EBS Boot Instances on Amazon EC2 – автор за EBS Boot Instances, но я на стороне большей части комментирующих – instance-store более клаудно
  • Is DevOps a Power Grab? – админы вымрут? правильно ли это? хватит ли знаний и сил у разработчиков делать их работу?
  • Apollo 1.0 Released, Next Generation ActiveMQ – сюрприз от разработчиков ActiveMQ – Apollo 1.0
  • Грейды: оцифровка программистов. Часть первая – желание всех классифицировать в IT возникает от понимания, что нет контроля рынка
  • An Engineer in Management (Tales from the Dark Side) – что делать инженеру в менеджерах?

И немного видео для просмотра:

  • How to Change the World – выступление Jurgen Appelo на философскую тему
  • Devops Fools, Tools and other Smart Things – интересное видео о роли инструментов в нашей работе
  • MODERN ENTERPRISE JAVA ARCHITECTURES WITH SPRING 3.1 – неплохой вебинар на тему современных приложений на Spring 3.1
  • Amazon Announces AWS Storage Gateway – симпатичное рисованное видео о новом сервисе AWS
  • Where Exploration And Automation Meet: Getting The Most From Automated Functional Tests – пример смешения автоматизированного и исследовательского тестирования на базе Twist
  • TDD in functional testing with WebDriver – видео-запись моего выступления на конференции Auto ConfeT&QA

Читайте и набирайтесь новых знаний!

event27/02/2012
personНиколай Алименков
mode_comment1
Далее
Успешное выступление на онлайн конференции Auto ConfeT&QA 2012

онлайн конференция Auto ConfeT&QA

13-15 февраля с 17 до 19 часов по московскому времени проходила онлайн конференция для специалистов по автоматизации тестирования – Auto ConfeT&QA. Организаторы собрали докладчиков из России, Украины и Беларуси, которые представили на суд слушателей 10 докладов. Уровень организации был достаточно высоким, докладчикам помогали подготовиться к выступлению, репетировали с ними доклады, делали ревью презентаций. В результате все выступили достойно.

Я тоже принимал участие в качестве докладчика с докладом «TDD c помощью функциональных тестов на WebDriver». Я давно хотел выступить на данную тему и как раз представилась неплохая возможность это сделать. TDD (Test Driven Development) является популярным подходом среди разработчиков. Сначала пишется тест, а только потом на основании этого теста пишется реализация. Эта практика дает много преимуществ, позволяя сосредоточиться на небольшом аспекте функциональности и автоматизировать проверку правильности его реализации. Таким образом, разработчик сразу думает о вариантах использования и реализует минимальный необходимый функционал.

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

Многим понятны преимущества TDD, но они не знают с чего начать. Некоторым кажется, что написание теста до появления реализации вообще невозможно. В своем докладе я рассказал не только о преимуществах и особенностях данного подхода, но и на примерах продемонстрировал, как работать с TDD на практике. Были рассмотрены варианты распределения ролей, техники написания тестов и особенности их использования. В качестве основного инструмента для тестирования использован WebDriver.

Доступен слайдкаст доклада:

Так как я показывал живую демонстрацию, то посмотреть доклад в полном объеме можно на видеозаписи:

Лично мне понравилось несколько докладов. Отлично выступил Алексей Баранцев на тему “Разработка стратегии автоматизации”. Леша очень опытный докладчик, особенно в онлайн режиме. Доклад был насыщен полезными советами, которые помогут многим начать автоматизировать и снизить риски провала.

Яркий и живой доклад получился также у Ольги Киселевой, которая выступала первый раз. У нее была очень спорная тема “Можно ли писать автотесты на родном языке?”, которая вызвала много споров и дискуссий. Но сам доклад никого не оставил равнодушным.

Еще я для себя отметил доклад “Обходные пути в автоматизированом тестировании”, с которым выступал Дмитрий Жарий. Не всегда получается жить в идеальном мире и к нему приходится приспосабливаться. Именно о таких способах обходить препятствия и рассказывалось в докладе. Просто и со вкусом.

Остальные докладчики тоже молодцы. Спасибо всем за подготовку и потраченное время!

Организаторы проводили голосование среди участников за лучший доклад на конференции. Результаты опубликовали сегодня. С отрывом в один голос я занял второе место после Алексея Баранцева. Леша благородно отказался от приза по причине причастности к организации конференции. В результате, первый приз достался мне – игровая приставка Xbox 360 + сенсор Kinect. Я несказанно рад этому факту! Значит, мои усилия были интересны людям и приносят пользу. А теперь мое выступление принесло пользу и мне лично. 😉

Я буду с удовольствием выступать в очередной онлайн конференции из этой серии – Chief ConfeT&QA. На этот раз с докладом “Жизнь без тестировщиков: миф или реальность?”. Не подумайте, я не против тестировщиков. Наоборот – я за то, чтобы они занимались интересной работой и приносили большую пользу проекту. Подробности можно будет услышать на моем выступлении.

Участники задавали достаточно много вопросов после доклада. Ниже вы можете найти мои ответы:

Вопрос: Какими средствами CI докладчик пользуется (советует пользоваться) наряду с TDD?

Лично я уже давно почти везде пользуюсь TeamCity (http://www.jetbrains.com/teamcity/). Отличный UI, множество уникальных фичей, отличная интеграция с различными IDE, поддержка для практически всех известных мне инструментов, классная архитектура и т.д. Бесплатная версия подойдет для большей части проектов и не вызовет проблем или нехватки чего-то. На втором месте Jenkins (http://jenkins-ci.org/). Основной аргумент за него – бесплатный с огромным сообществом, а это значит куча плагинов под все, что только можно придумать. Но UI достаточно беден и нужно конфигурировать плагины самостоятельно.

Вопрос: А если ошибки возникнут потом при эксплуатации? Те тесты, которые не предусмотрели в “чек-листе”, согласованном с клиентом?

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

Вопрос: По факту все же получается, что тест пишется паралельно с реализацией?

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

Вопрос: А какую test management system посоветуете?

В идеале – никакую. Я уже говорил о дублировании усилий на поддержку тестов и тест кейсов. Я вижу этот процесс как полную автоматизацию, поэтому предлагаю избегать использования test management систем. Они заведомо склоняют нас к дублированию.

Вопрос: Авто тесты лучше писать до разработки приложения или после и кто должен за это отвечать?

Конечно же их лучше писать до разработки. В этом и есть подход TDD. Таким образом вы сможете получить весь спектр преимуществ, о которых я упоминал в докладе.

Вопрос: Что делать если UI достался от legacy проекта?

Legacy код будет проблематичным для всех, включая тестировщиков. Но TDD заставляет работать над проблемами всей командой. Разработчики будут помогать победить проблемы. Вам придется разработать с течением времени тонкую прослойку над вашим нетестируемым UI и в будущем будет на порядок легче.

Вопрос: Опиши детальнее возможности инструмента testdox.

TestDox – это очень простой, но удобный инструмент. Он ставится как плагин к IDE и позволяет разбирать названия тестовых методов на слова. Таким образом можно включать гораздо больше полезных данных в название теста, причем писать просто на английском языке, избегая особенностей языка программирования (подчеркиваний, camel case и прочих). Поддерживается редактирование, список тестов, создание новых тестов. Таким образом, данный плагин приближает вас на шаг к тестам в качестве документации. Остается только подключить мозг. 🙂

Вопрос: Что ты думаешь по поводу BDD?

BDD – отличная практика, которая является подмножеством TDD. Вместо тестов рекомендуется начинать с поведенческих шаблонов приложения, причем оформлять их в человеческом виде (в основном предложениями английского языка). Не всегда дополнительные расходы времени на специализированный инструмент действительно оправданы. Если никто со стороны бизнеса не заглядывает в эти тесты, то возможно стоит перейти на уровень технических тестов с DSL.

Вопрос: Прокомментируй еще раз рекомендации с чего начать.

Начать стоит с того, чтобы осознать четко для себя зачем и почему стоит работать по TDD. После этого стоит донести свои мысли и идеи до всех членов команды. Причем не то, что вы собираетесь работать по TDD, а то, какие преимущества могли бы получить все от этого. Если у вас получится это сделать, то все будут хотеть применить TDD. А потом дело лишь в стратегии. Вам нужно найти удобный момент и начать внедрение. Поддержка команды поможет вам сделать это достаточно быстро (я имею ввиду начать). А дальше у вас будет освобождаться все больше времени за счет 100% автоматизации новой функциональности и вы сможете укрепить свои позиции. И не забудьте подготовиться морально к тому, что придется поломать мозг, как свой так и коллег. 🙂 Удачи!

event21/02/2012
personНиколай Алименков
mode_comment2
Далее
Microsoft SWIT 2012 в Киеве

22 и 23 марта в Киеве пройдёт крупнейшая техническая конференция Microsoft в Украине – Microsoft SWIT 2012, на которой в течение двух дней будет представлено более 50 докладов по новейшим технологиям. Доклады будут проводиться ведущими экспертами международного уровня, с которыми будет организована возможность интенсивного общения.

Благодаря посещению конференции участники смогут

  • Одними из первых узнать детальную информацию о развитии, настоящем и будущем всего спектра технологий Microsoft.
  • Задать детальные вопросы и обсудить с сотрудниками Microsoft и ведущими индустриальными экспертами представленные анонсы, доклады, продукты и программы.
  • Посещая доклады,  узнать наиболее современные лучшие практики, решения и способы оптимизации использования всего спектра технологий Microsoft.
  • Общаясь на докладах и в зоне «спроси эксперта» установить полезные контакты с ведущими специалистами Microsoft, индустриальными экспертами, представителями партнеров Microsoft, а также коллегами по индустрии.
  • Посещая партнерскую выставку, ознакомиться с решениями ведущих ИТ-компаний Украины и установить деловые контакты для решения производственных задач.

Это знаковое мероприятие в Восточной Европе и каждый IT-шник, причастный к продуктам Microsoft просто обязан его посетить.

В рамках конференции будут покрыты следующие темы

  • Облачные вычисления;
  • Языки и инструменты разработки ПО;
  • Архитектура приложений и систем;
  • Мобильная платформа Windows Phone;
  • Информационная безопасность;
  • Управление ИТ-инфраструктурой;
  • Технологии виртуализации;
  • Бизнес-решения;

Один из тренеров нашего центра, Александр Белецкий, выступит на конференции с докладом «ASP.NET MVC 4 для разработчиков мобильных приложений». С некоторых пор, мобильные платформы являются неотемлимой частью нашей жизни. Актуальность разработки под них растет каждый день. Отвечая современным требования веб-фреймворк компании Майкрософт ASP.NET MVC версии 4 включил ряд расширений, облегчающий и расширяющий арсенал инструментов разбработки для мобильных устройств.

На докладе будет рассмотрена текущая реализация ASP.NET MVC 4 CTP (Community Technical Preview), которая доступна для скачивания и использования, в том числе: расширения темплейтов проектов, шаблон проекта для мобильного устройства, jQuery Mobile, режимы екранов (Display Modes), CSS3 media queries.

Двухдневная программа конференции включает

  • Пленарный доклад о стратегии развития технологий Microsoft;
  • Более 50 докладов, сгруппированных по трекам;
  • Лабораторные классы hands-on-lab по новым программным разработкам;
  • Круглые столы с участием ведущих экспертов Microsoft и индустрии;
  • Зону “Спроси эксперта”;
  • Выставку новинок и решений от ведущих технологических компаний Украины;
  • Демо-зону стартапов BizSpark и не только.

Программа конференции поделена на 4 потока. Это позволит каждому участнику найти для себя доклады по интересам.

Регистрация на конференцию уже открыта. Подробная информация и расписание докладов будут доступны на официальном сайте конференции – http://www.msswit.in.ua. До встречи!

event20/02/2012
personНиколай Алименков
mode_comment0
Далее
Пишем приложение для Windows Phone 7 “с нуля”

Мы продолжаем серию встреч “Клуба анонимных разработчиков” на тему Windows Phone 7. 7 февраля прошла первая из них (12-ая встреча клуба). Эта встреча клуба, 13-ая по счету, будет проходить в сотрудничестве с порталом Windows Phone 7 Rocks. Это отличная новость для всех .NET-чиков и .NET-чиц Киева, потому что у вас появилась замечательная возможность послушать и поучиться у профессионалов в этой области, которых не так уж много. И все это в рамках формата “Клуба анонимных разработчиков” с непринужденной обстановкой и отличной атмосферой.

В этот раз ребята решили начать с самого главного – как начать писать приложения под Windows Phone 7. Платформа совсем новая и очень мало людей умеют это делать вообще, а еще меньше умеют это делать правильно. В докладе будет продемонстрирована разработка контентного приложения для Windows Phone. Будут затронуты такие темы:

  • UI / UX
  • полезные инструменты и библиотеки для Windows Phone
  • паттерн MVVM
  • работа с данными – загрузка, обработка, сохранение
  • отладка, подготовка к публикации

В роли докладчиков выступят Михаил Галушко и Александр Краковецкий. Они оба являются авторами многочисленных статей на сайте Windows Phone 7 Rocks. Александр является автором и идеологом сайтов Windows Phone 7 Rocks и Microsoft User Group Community. Оба начали изучать технологию Windows Phone с момента ее появления на свет. На данный момент уже опубликовали несколько приложений.

Эта встреча обещает получиться более практической и участники получат ответы на многие вопросы, связанные со стартом разработки приложений под Windows Phone 7. Итак, встреча пройдет в четверг 1 марта. Место проведения мы объявим ближе к дате мероприятия. Это связано с тем, кто число членов клуба постоянно растет и мы рискуем не влезть в уютный Киевский офис компании DataArt. Этот офис полюбился членам клуба своей уютной обстановкой и наличием всего необходимого для продуктивного общения. Но, по итогам прошлых встреч, есть риск, что все желающие не поместятся.

Официальное начало встречи по-прежнему в 19:00, завершение в 23:00. Стоимость участия 80 гривен при оплате заранее, 120 гривен при оплате на месте. Пива, пиццы и кофе с печеньками хватит на всех. Регистрация обязательна. Все детали по оплате будут высланы вам после успешного прохождения регистрации. Количество мест ограничено 60 участниками.

event16/02/2012
personНиколай Алименков
mode_comment0
Далее
Рубрика «Полезное чтиво». Выпуск 22

полезное чтиво

Пролетела неделя и свежая порция «Полезного чтива» готова:

  • Why Do Products Fail? – почему проваливается продукты и что с этим делать
  • ScrumMaster Tales Impediments are holding back the team – первоочередная задача ScrumMaster в том, чтобы убирать препятствия с пути команды, а не все они так очевидны…
  • Working with Agile in a Distributed Team Environment – отличная статья о сложностях работы по Agile в распределенных командах
  • Transaction configuration with JPA and Spring 3.1 – отличная статья про конфигурацию транзакций в Spring, только не согласен с транзакциями в контроллере
  • the Performance Golden Rule – на веб-проектах 80-90% времени загрузки страницы занимает работа на клиенте, там и надо оптимизировать!
  • Query time joining in Lucene – Lucene сделал важный шаг для реляционного поиска, меньше можно будет мучаться с БД
  • That’s Not Agile! – ошибки, которые мешают нам учиться и меняться в лучшую сторону
  • Not Your Dad’s Agile – Delivering Business Value – что скрывается за Agile 3.0?
  • Separating Integration and Unit Tests with Maven, Sonar, Failsafe, and JaCoCo – подробная инструкция как настроить подсчет покрытия кода интеграционными или функциональными тестами
  • Two phase release planning – интересный двухфазовый подход к планированию релизов
  • How to Be an Effective ScrumMaster – как быть в роли ScrumMaster действительно эффективным
  • Pair Programming Benefits – подробное описание почему стоит использовать парное программирование и почему это выгодно всем
  • ScrumMaster Tales – The Team Gets Bottlenecked – bottleneck лучше всего разбирать всей командой и лучший способ для этого – лимиты на WIP и ретроспективы
  • When to stop holding retrospectives? – никогда не бросайте практику ретроспектив, даже если кажется, что все и так здорово
  • Nexus: Don’t dive in until you know how to swim – прежде чем что-то использовать, изучите как это работает, а тренинги помогают сделать это быстрее
  • ESTIMATING AND PLANNING ARE NECESSARY FOR MAXIMIZING DELIVERED VALUE – мы оцениваем и планируем постоянно, даже если явно не называем это оценками о планом, ведь важен процесс!
  • HOW TO CHOOSE SELENIUM TRAINING – как выбирать тренинг и тренера по Selenium, что без труда переносится и на другие темы
  • You Should Use EBS Boot Instances on Amazon EC2 – Классная статья о различиях в типах AMI для EC2
  • What Powers Instagram: Hundreds of Instances, Dozens of Technologies – Instagram молодцы, сидят на AWS целиком, вот советы от них по поводу технологий и тулов
  • Code coverage is a side effect and not an end goal – высокий процент покрытия тестами – это побочный эффект грамотного тестирования, а не цель
  • Timebox Alternatives – вот почему “железный треугольник” развернули в Agile именно так, остальные варианты не помогут
  • 37signals: почему в нашей компании нет менеджеров – вот это правильная стратегия – маленькие эффективные команды технарей без менеджеров
  • Code reviews in the 21st Century – о чем нужно помнить, делая ревью кода в современном мире
  • Visualized Git practices for team: branch, merge, rebase – визуализация стандартных практик при работе с Git
  • 13 Keys to Continuous Delivery – отличная подборка правил для Continuous Delivery
  • Do Not Close This Window (Or Click The Back Button) – меня тоже всегда бесят сайты, где просят ничего не нажимать и не закрывать окно
  • “Pragmatic Agile” – что такое по-настоящему прагматичный подход к Agile?
  • Testing asynchronous applications with WebDriverWait – бейте себя по рукам каждый раз когда используйте Thread.sleep в тестах асинхронного действия на странице с WebDriver!

Читайте и набирайтесь новых знаний!

event13/02/2012
personНиколай Алименков
mode_comment0
Далее
Отчет о 12-ой встрече “Клуба анонимных разработчиков”

Вчера состоялась 12-ая встреча нашего “Клуба анонимных разработчиков”. Эта встреча открыла серию встреч на тему Windows Phone 7. Все встречи данной серии будут проходить в сотрудничестве с порталом Windows Phone 7 Rocks.

В этот раз уютный и полюбившийся многим офис компании DataArt принимал гостей из мира .NET. Встреча началась с небольшой задержкой в связи с аварией на подъезде к месту проведения. В пробке стоял один из докладчиков, а также заказанная пицца. Поэтому у участников было полчаса на знакомство и общение перед началом официальной части.

Открыл встречу автор и идеолог сайтов Windows Phone 7 Rocks и Microsoft User Group Community Александр Краковецкий. Он уже давно изучает платформу и представил свой доклад «А вы уже были в Metro?». В докладе Александр рассказал о новом языке дизайна Metro, который используется для разработки интерфейсов в Windows Phone 7, а также будущей версии Windows 8. На примерах продемонстрировал типичные ошибки при проектирование мобильных приложений для данной платформы. Вот презентация этого выступления:

Второй доклад был более технический. Михаил Галушко выступил на тему «Хранение данных в Windows Phone». Доклад посвящен вопросам работы с данными в Windows Phone приложениях. Участники смогли больше узнать о возможных вариантах хранилищ, сравнительном анализе их возможностей и рекомендациях по выбору того или иного решения. Презентация этого доклада также доступна:

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

Дополнительную информацию вы можете найти в Twitter по хештегу #uadevclub. Можно почитать о ходе встречи, найти интересные цитаты, советы и факты о рассматриваемых технологиях. Присоединяйтесь и обсуждайте вместе с нами!

Мы снимали видео всех выступлений и постараемся в ближайшее время выложить их в открытый доступ.

Следующая встреча запланирована на конец февраля. Следите за анонсами и не пропустите начало регистрации!

event08/02/2012
personНиколай Алименков
mode_comment0
Далее
Метрики в Scrum и Kanban

По разным причинам Scrum получил очень широкое распространение среди IT компаний. Многие компании и отдельные команды начали внедрять Scrum в своих проектах. У одних это получается, у других не очень. Грамотный и опытный специалист перед внедрением чего-то нового всегда задумывается о метриках. Как убедиться, что внедрение Scrum идет по плану? Улучшается ли производительность команды? Нет ли каких-то проблем?

И тут в Scrum очень мало ответов. Кроме сугубо бизнес-метрик, которые можно применять практически в любом процессе (ROI, Earned Business Value, Running Tested Features и т.д.), в Scrum предлагается метрика Velocity. Но уже писано переписано, что использовать Velocity в качестве метрики не стоит. Это может привести к неожиданным неприятным последствиям.

Получается, что хороших метрик на первый взгляд нет. В конце статьи я упомяну некоторые неявные метрики в Scrum, но пока давайте поговорим о причине проблем. Самая главная причина – это время. Бизнес практически все измеряет временем (даже деньги – это время). А в Scrum это самое время фиксируется (быстренько все вспоминаем “железный треугольник” 😉 ) и разработка ведется итерациями. Но внутри итерации происходит много всего интересного: мы делаем задачи, пользовательские истории, тестрируем, собираем продукт, устанавливаем и т.д. И вся эта информация теряется на фоне итерации. Происходит так называемое “сглаживание шумов”. Если мы затянули с одной активностью, то можем нагнать в другой. Ведь итерация целиком принадлежит команде и команда может “придумывать” внутри итерации что угодно, лишь бы в конце все было готово. Этот подход очень хорош для планирования, но отвратителен для метрик.

Во-первых, мы очень редко можем снимать показатели метрик – в конце итерации. А это в лучшем случае раз в неделю. В основном, все таки раз в две недели. Во-вторых, мы уже упоминали “сглаживание” и оно тоже вносит свои коррективы. Всю итерацию ситуация была из рук вон плохая, а в конце все сделали нечеловеческое усилие и вуаля – все готово и метрики в порядке. Хорошо это или нет? Нет! Мы теряем полезную информацию и не учимся на своих ошибках.

Cumulative Flow Diagram

Совсем по-другому дела обстоят в Kanban. Тут внимание уделяется каждой задаче. Метрики снимаются со всего потока задач, который проходит через команду разработки. Вот краткий список метрик:

  • Cycle Time – время, которое задача находилась в разработке от момента, когда ей начали заниматься, до момента, когда она прошла фазу конечной поставки.
  • WIP – количество задач одновременно находящихся в работе. Разделяется по разным стадиям работы над задачей.
  • Lead Time – время от появления задачи до ее конечной поставки. Включает Cycle Time и время ожидания в очереди на реализацию.
  • Wasted Time – время, которое задача проводит в различных очередях, а не непосредственно в работе.
  • Effectiveness – процент времени, которое тратится непосредственно на работу с задачей, а не на ожидания в различных очередях.
  • Throughput – количество задач, которое может выполнять команда в единицу времени (день, неделя, месяц).

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

Я обещал упомянуть о неявных метриках в Scrum. Эти метрики можно собирать, используя Burndown Chart. Вы можете анализировать его с целью определения шаблонов работы команды, рассматривая ежедневный прогресс и гладкость графика. Вы можете усилить анализ. Для этого нужно ввести категоризацию задач и строить Burndown Chart по каждой категории. Некоторые команды ведут отслеживание метрик задач внутри итерации, но на мой взгляд это несколько противоречит принципам Scrum – внутри итерации команда может работать над задачами в произвольном порядке.

Подведу итог. В Kanban метрики гораздо сильнее, чем в Scrum, но это не делает Kanban более простым в реализации подходом. Наоборот, Kanban требует от команды гораздо больше ответственности, контроля и анализа с постоянным усовершенствованием. Зато с точки зрения бизнеса Kanban гораздо более прозрачный и контролируемый.

А какие метрики применяете вы? Какие метрики хорошо работали для вас в Scrum?

10-11 февраля мы с Сергеем Поволяшко проводим тренинг “Метрики: команды, проекты, процессы и код”, где моя часть будет как раз посвящена метрикам и работе с ними в Agile проектах. Я буду рассказывать о метриках на различных уровнях в разных методологиях, методике их сбора и анализа.

event07/02/2012
personНиколай Алименков
mode_comment1
Далее
Рубрика «Полезное чтиво». Выпуск 21

полезное чтиво

Вот снова наступил понедельник и вас ожидает новая порция «Полезного чтива»:

  • New Tools in My TDD Arsenal – рекомендации по инструментам для TDD в .NET
  • What’s New In Java 7: Copy and Move Files and Directories – по ходу в Java 7 можно будет жить без FileUtils
  • Selenium IDE v1.6.0 Released and Includes Firefox 10 Support – новая версия Selenium IDE
  • Бесплатная электронная книга по гибким методологиям разработки – Боря Вольфсон выложил свое творение
  • What’s New In IntelliJ IDEA 11 – IDEA 11 предлагает скорость, новые рефакторинги, больше живых шаблонов, сравнение папок и многое другое
  • Sonar 2.13 in screenshots – Sonar потихоньку становится еще и платформой для онлайн code review
  • 7 Deadly Sins of Automated Software Testing – отличный список мифов и проблем при автоматизации тестирования
  • Estimation Techniques For Teams Adopting Scrum – эволюция техники оценивания в молодой команде
  • Separate Retrospectives – идея отдельных ретроспектив
  • Dealing with Negative Persuasion: Can the Product Owner Lead to Quality Destruction? – качество труднее всего пощупать, поэтому чуть что страдает именно оно
  • Резервное копирование данных в MySQL – как делать резервное копирование данных в MySQL
  • Surprising results of autoboxing – парочка неприятных сюрпризов от автобоксинга в Java
  • COMMAND & CONTROL: LET’S TALK ABOUT POWER – Command & Control также как и микроменеджмент базируется на недоверии
  • Grabbing Screenshots of Failed Selenium Tests – снимаем скриншоты после упавшего теста с WebDriver и JUnit
  • What’s the first Decision? Implementing Kanban vs Scrum – Kanban или Scrum? Kanban или Scrum? проблема гораздо выше!
  • How to Create Maintainable Acceptance Tests – советы по созданию надежных и легко поддерживаемых приемочных тестов
  • Selenium: работаем с элементами страницы, используя @FindBy и PageFactory – отличная статья про шаблоны Page Object и Page Element
  • Fixing the Singleton – шаблон Singleton морально устарел
  • ROTATING THE SCRUMMASTER ROLE – а вы ротируете роль ScrumMaster у себя в проекте?

Интересное видео:

  • Материалы конференции IT Brunch – опубликована часть материалов конференции IT Brunch “Time Management”
  • “Hadoop” – доклад Владимира Орлова с седьмой встречи “Клуба анонимных разработчиков”
  • “Актеры в JVM” (часть 1), “Актеры в JVM” (часть 2) – доклад Виктора Тесленко с восьмой встречи “Клуба анонимных разработчиков”

Читайте и набирайтесь новых знаний!

event06/02/2012
personНиколай Алименков
mode_comment0
Далее

Posts navigation

Page 1 Page 2 >>
Важное
XP Days Ukraine 2018: вспоминаем как это было
folder
label
event
star
forum
Категории
  • Club (50)
  • Material (179)
  • Project (6)
  • Review (3)
  • Schedule event (452)
  • Trainer (7)
  • Общие (267)
  • Полезное чтиво (57)
  • Статьи (242)
  • Тренинги (62)
Tags
.NET agile Agile Base Camp AgileDays Agileee 2010 build automation code review continuous delivery continuous integration DevOps exploratory testing Hibernate IT Brunch IT talk Java JavaScript JEE JEEConf kanban QA refactoring scrum selenium Selenium Camp spring tdd test automation testing unit testing webdriver XP XP Days Ukraine автоматизация тестирования архитектура видео инженерные практики клуб анонимных разработчиков команда конференция полезное чтиво презентация проектирование тестирование тренинги управление рисками
Archives
  • February 2021
  • October 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • June 2019
  • April 2019
  • March 2019
  • January 2019
  • December 2018
  • September 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
  • February 2018
  • January 2018
  • December 2017
  • November 2017
  • October 2017
  • September 2017
  • August 2017
  • July 2017
  • June 2017
  • May 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • September 2016
  • August 2016
  • July 2016
  • June 2016
  • May 2016
  • April 2016
  • March 2016
  • February 2016
  • December 2015
  • November 2015
  • October 2015
  • September 2015
  • August 2015
  • July 2015
  • June 2015
  • May 2015
  • April 2015
  • March 2015
  • February 2015
  • January 2015
  • December 2014
  • November 2014
  • October 2014
  • September 2014
  • August 2014
  • July 2014
  • June 2014
  • May 2014
  • April 2014
  • March 2014
  • February 2014
  • January 2014
  • December 2013
  • November 2013
  • October 2013
  • September 2013
  • August 2013
  • July 2013
  • June 2013
  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • November 2012
  • October 2012
  • September 2012
  • August 2012
  • July 2012
  • June 2012
  • May 2012
  • April 2012
  • March 2012
  • February 2012
  • January 2012
  • December 2011
  • November 2011
  • October 2011
  • September 2011
  • August 2011
  • July 2011
  • June 2011
  • May 2011
  • April 2011
  • March 2011
  • February 2011
  • January 2011
  • December 2010
  • November 2010
  • October 2010
  • September 2010
  • August 2010
  • July 2010
  • June 2010
  • May 2010
  • April 2010
  • March 2010
  • February 2010
  • January 2010
  • December 2009
  • September 2009
Recent Posts
  • Байки про Архитектуру, микросервисы и монолиты.
  • Rise and Fall of story points. Capacity-based planning from the trenches.
  • Static analysis tools as the best friend of QA
  • Modern CI/CD in the microservices world with Kubernetes
  • Тренинг “Kubernetes for Java developers”
  • Тренинг “Test automation strategy for microservices-based systems”
  • Тренинг “Test automation strategy for microservices-based systems”
  • Тренинг “Efficient Selenium Infrastructure with Selenoid”
  • Конференция JEEConf 2020
  • Конференция Simplicity Day: Agile Magic
Recent Comments
  • Микола on Справедливо ли зарабатывают представители IT Украины?
  • Николай Алименков on Страсти по Crossover
  • Pavel on Страсти по Crossover
  • Василий on Опубликована программа JEEConf 2018
  • Николай Алименков on Опубликована программа JEEConf 2018
НАШ twitter
Tweets by @xpinjection
© XP Injection, 2019
  • Услуги
  • Новости
  • Тренинги
  • Материалы
  • Расписание
  • Проекты
  • О нас
© XP Injection, 2019