Накачка мышц в области обеспечения качества ПО

27 и 28 октября 2009 года я провел в небольшой полудреме. Во-первых, не верилось, что я действительно в Москве, а вокруг меня — пятая ежегодная конференция CEE-SECR 2009, в рамках которой проходила шестая конференция в области обеспечения качества ПО «SQA Days». Unreal science fiction стал dream come true…

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

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

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

В действительности, как всегда…

Однако я очень постарался, и в следующие недели у меня запланированы сплошные пересказы звуков интервью во внятные тексты интервью. Ради этого я слегка придушил все текущие проекты, над которыми традиционно работаю по вечерам. Отложен даже проект «Выспаться».

«Охота на интересных людей» проходила, понятно почему, рывками, поэтому не удалось посетить ряд интересующих меня докладов. Зато повезло зайти на некоторые, в которых было мало чего понятно.

Вообще, дилемма «или слушать доклады, или искать общения» передо мной не вставала. Она лежала, придавленная аргументом «разговаривать интереснее», поэтому «краткий отчет о прослушанных докладах» здесь неуместен. Не пересказывать мне краткое содержание или ощущение от докладов, на которые уже не сходить… Зато я смог узнать не только то, что входило в некоторые доклады, но и причины их появления, тот background, который почти всегда скрыт и не очевиден, и наиболее интересен.

Попадайте под наш маховик!

Сравнил темы, которые обсуждаются в московском регионе с теми, которые обсуждаются в Кишиневе. Изначально думалось, что вроде бы у наших разработчиков уровень и круг тем для разговоров не ниже и не проще, чем у москвичей. На месте оказалось, что разность есть, и местами существенна. Она не в технологиях, а в организации.

Для московских студентов ситуация сложилась благоприятнее, нежели для молдавских — большие компании стараются обучить юных работников «своим» технологиям, а после окончания учебы — «забрать» юную душу к себе в разработку. Пусть и ненадолго. Благодаря засилью уже установленных процессов в крупных компаниях и обучающих программ, все это возможно. Маховик запущен и требует рабочей силы, поэтому неудивительно. Даже если позже повзрослевшие студенты разбегутся… А может быть, и не разбегутся, мало ли.

А вот в Кишиневе, и всех его клонах на территории СНГ, компании любого калибра, в первую очередь, вынуждены искать тех, кто уже УМЕЕТ работать.

Идея «а вот когда я наконец-то уеду в Канаду (Россию, Румынию, Кипр, Албанию)…» у нас всё ещё бытует на очень подспудном уровне, и бытовое окружение эту идею только подпитывает. Работать с настолько идейной молодежью сложно. Вон, французы из Pentalog даже проводили общественные слушания на тему «Да сделайте же вы что-нибудь, чтобы ваша молодежь не разбегалась, а то мы не знаем, как пережить сложности с наймом нужного количества людей под наши проекты…»

Когда-то, пытаясь соответствовать этой ситуации наилучшим образом, я нарочно искал работу в разном окружении с различными процессами. Приходилось перескакивать, и местами очень разочаровываться в промежуточных результатах. А вот результат итого очень положителен — мне не надо чему-то особо переучиваться, практически в любой ситуации я могу быстро «влиться в работу» и начать «крутить педали».

Это отнюдь не соответствует общепринятой установке «Надо много лет работать в одной фирме, чтобы резюме не попортить», но портить карму в обмен на хорошее резюме — даже хуже. Настоящая ценность не в строчках резюме — она между этим строчками маячит.

«Бытовуха» в Кишиневе портит души разработчиков. Считаю более адекватным желание «уехать», нежели заявления вроде «Давайте оставаться и поддерживать местного производителя».

Вы на каком языке говорите?

SECR 2009 представлялся как место встречи разработчиков и тестировщиков. Наверное, следовало каждому представителю определенной гильдии носить какие-нибудь знаки различия, например, бумажные колпаки разных цветов — все равно ведь кучковались среди «своих».

Кто может поддержать беседу о методах автоматической выборки юнит-тестов, которые следует прогонять после внесения изменений только в определенные места в коде? Я?! Не…

Сама по себе идея ясна и сногсшибательна — натренировать робота, который будет вычислять взаимосвязь между участками кода, в который были внесены какие-либо изменения, и запускать только те юнит-тесты, которые относятся к сделанным изменениям. Скажем, в случае работы с аааагромадными системами эта фишка может принести реальную экономию времени и средств. Но обсуждать эту идею надо с теми, кто пишет автотесты на определенном уровне, а не с функциональщиками.

Но поддержать мысль и развить…

А Алексей Лупан все записывает на диктофон
Сергей Архипенков (справа) рассуждает «за тестировщиков»

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

«Дедушка русского тестирования», Александр Александров, восхитил неубиваемой способностью отвечать на все мои вопросы. Ответов в нем хранится больше, чем можно предположить.

С Ларсом Баком, разработчиком браузера Chrome, контакт наладился очень быстро — я спросил его только об аспектах тестирования в его работе. Кажется, он понял мой английский. Во-всяком случае, я понял ЕГО английский.

Стас Калканов оказался именно таким, каким он кажется по его ЖЖ. Знаток и поклонник системности во всем. В системах всему есть свое место. Аудит процессов, которым он занимается, является для него органичной, логичной, наиболее подходящей профессией.

Асхат Уразбаев оказался почти высоким. Ну, почти как я. Но оба мы не так крупны и основательны и в поведении, и в речах, как Владислав Орликов.

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

Юля Нечаева как-то незаметно, но эчень элегантно заполняет вокруг себя любое пространство. Сколько ей выдели, столько там ее и будет — два метра в толпе, комнату, зал, и, наверное, целую Красную площадь. Редкое позитивное качество. Обычно пространство невыносимо заполняют нахальные нахалы — это не тот случай.

Александр Орлов, таки да, действительно «лысый». И хотя пребывал он в очень усталом виде (увлекается многочасовыми перелетами и переездами из Лондонов по Финляндиям, Питерам и Москвам), все равно было заметна натура цельная и планомерная.

Полагаю, что есть какое-то явное благо в том, что следующая конференция «SQA Days» (май, 2010, Харьков) будет заселена только тестировщиками. Адекватность твоих собеседников определяется, в первую очередь, твоей личной адекватностью и способностью рассуждать на предложенные темы.

Хочется верить, что в докладах SQA Days 2010 все известные темы уже будут рассматриваться на уровне «максимум практичности и минимум толковательных теорий из разряда «как надо поставить процесс». Как надо — каждый знает. У нас с воплощением постоянные сложности.

У программистов постоянно есть о чем поговорить в очень утилитарном плане именно потому, что общие темы у них уже давно устаканены. На том же Хабре в епархии программистов постоянно появляются новые материалы из разряда «How To» применительно к определенным инструментам и сервисам.

А в полушарии тестировщиков — все больше анонсы тренингов да поздравления с очередным ежегодным «днем первого бага, который залетел в компьютер»…

Наверное, дело может сдвинуться, если акцентировать внимание на чем-то более приземленном.

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

По верхам

Еда — приличная. Не съезд дегустаторов имени Эскоффье.

Организация — знаю, из каких мелочей складываются подобные мероприятия, и понимаю, что иногда в погоне за чем-то важным некоторые мелочи остаются неохваченными. Но, все-таки, очень был удивлен, когда открыл диск с надписью «Разработка ПО 2009». Ожидал найти там все презентации конференции, а нашел только два крупных pdf-файла с перечнем докладов и их краткими анонсами — те же материалы, что и на сайте конференции, на русском и на английском языках. Свободного места на диске осталось очень много.

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

Качество помещений тоже отмечабельно. Был большой зал, в стиле «концертный», был малый зал, в стиле «камерно-концертный», был холл, переделанный в зал, и был большой коридор между всеми этим помещениями — всё очень хиппово и уместно.

Организаторы!

Большое спасибо!!!

Послевкусие от участия

Чем-то конференции подобного рода сравнимы с Олимпиадами.

Вранье, что в Олимпиаде главное — участие. В спорте вообще не бывает второго и третьего почетного еста, есть только первое. Или ты на коне, или иди домой пешком.

Но участие в Олимпиаде действительно ценный опыт для любого портсмена. Можно быть чемпионом двора… но надо сравнивать себя с другими чемпионами. Поставить рекорд дома — это круто. Поставить рекорд на Олимпиаде — круто вдвойне.

Ценность Олимпиады в том, что все ее участники находятся в одинаковых условиях — одно поле, один ветер, один судья.

Вот для того, чтобы было понятно, куда, как и зачем двигаться дальше, надо ходить на Олимпиады.

То есть, да, конференция в чем-то — соревнование.

PS Москва спроектирована таким образом, что каждое здание, которое следует легко находить, очень хорошо и непонятно где спрятано. Например, вздерзнулось мне отлучиться от места проведения конференции всего на полчаса, и на обратном Столица силком завернула меня в какой-то Лялин переулок, и, напугав созвездием проулков и странной вывеской «Булошная», долго не выпускала на истинный путь.

6 ответов на “Накачка мышц в области обеспечения качества ПО”

  1. Прочитал.
    Я, как программист, ожидал именно How To по чему нибудь. Но поговорить с людьми тоже полезно, хотя чаще всего для себя лично, а не для общественности. С Архипенковым я познакомился тоже в Москве, на Agile Days, грамотный мужик, с довольно грамотным, но скромным сайтом.
    Ларса Бака можно поздравить — я тоже теперь иногда юзаю Хром :).
    Вот на счёт робота, который определяет какие юнит тесты можно запускать я думал ещё когда работал в Сиклуме (там тесты запускались в течении пары часов) и хотелось бы определять как их можно оптимизировать. Тогда я пришёл к выводу, что эти роботы — хорошо обученные программисты. Вообще говоря, через несколько лет такой робот появился: TeamCity с каким-то плагином может по покрытию кода посмотреть какие тесты нужно запускать после такого-то чекина. Но только для Java (видел демонстрацию в Чикаго). Это прикольно, но не сильно то много усилий экономит, и работает с оговорками: у программистов всегда есть много вариантов «обдурить» робота и засунуть тест. Зная свою среду (.Net) могу сказать, что здесь таких случаев будет куда больше.
    И вообще сейчас в Киеве респираторы продавать куда выгоднее чем заниматься разработкой, так что я на рынок 🙂

  2. Надеюсь, на SQA Days в Харькове будут все же не только тестировщики, но и программисты с аналитиками забредут, им полезно будет послушать, сегодня на работе еще раз в этом убедился 🙂

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

  3. «натренировать робота, который будет вычислять взаимосвязь между участками кода, в который были внесены какие-либо изменения, и запускать только те юнит-тесты, которые относятся к сделанным изменениям.»
    Done.
    Не мной, я сейчас пытаюсь вникнуть и продолжить дело.
    «А в полушарии тестировщиков – все больше анонсы тренингов да поздравления с очередным ежегодным «днем первого бага, который залетел в компьютер»…
    Наверное, дело может сдвинуться, если акцентировать внимание на чем-то более приземленном.»
    дададада! ППКС же.
    P.S. Приглашение еще надо или уже пришло?

Добавить комментарий