Первый пошёл. Разработка без нянек — подкаст для тех, кто уже вырос.

Итак, мы открылись! Первый подкаст прошёл и он совсем не комом.

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

В гостях у Татьяны Писчасовой (2ГИС, @stricky_) были: Никита Макаров (Одноклассники, @papaMinos), Максим Шульга (Код безопасности, @maxbeard12), Андрей Солнцев (Codeborne, @asolntsev).  А в чатике с комментариями притаились остальные 🙂

Если вы не попали на онлайн-трансляцию (или хотите ещё раз пережить те прекрасные минуты), а также если ваша команда планирует минимизировать участие тестировщиков в проекте и вы хотите узнать:

  • когда может возникнуть такая потребность (4:56 — …)
  • какие риски влечёт разработка без тестировщиков (11:28 — …)
  • какие проекты не могут обойтись без тестировщиков (15:00 — …)
  • какой технический бэкграунд должен быть у проекта, чтобы начать работать без тестировщиков (20:30 — …)
  • какой должна быть квалификация разработчика и как её наработать (28:39 — …)
  • как тестировщик может поспособствовать разработке без нянек (47:49 — …)

— присоединяйтесь!

Комментируйте и задавайте вопросы, их прочитают гости и ведущие выпуска! Нам важен ваш фидбек!

Подписывайтесь на записи выпусков в любой программе управление подкастами! (iTunes, и т.п.)

А для визуалов несколько полезных ссылок:

О разном в программировании, тестировании и руководстве командами в IT — блог Максима Шульги
Разрабатываем. Тестируем. Наблюдаем. — блог Никиты Макарова
Selenide — блог фреймворка Selenide, который разрабатывает Андрей Солнцев
Мир без тестировщиков. Миф или реальность? — квартирник на Codefest, с которого всё началось.
Как Atlassian JIRA делает QA — видео

Огромные благодарности за самое непосредственное участие в подготовке подкаста: Сергей Атрощенков, Алексей Виноградов, Татьяна Зинченко, Сергей Нестеренко.

  • Тут вот интересная дискуссия в твиттере наметилась про одну из тем подкаста: TDD https://twitter.com/maxbeard12/status/599271847675432960?s=03

    • Владимир

      Извиняюсь за задержку дискуссии, немного оклемался, вот постарался изложить свои аргументы о tdd и близких материях более мене структурировано: http://reangdblog.blogspot.com/2015/05/tdd.html
      Если местами получилось немного эмоционально, то тоже извиняюсь.

      • Andrei Solntsev

        Спасибо! Отличный троллинг TDD! Впервые на моей памяти оппозиция не просто говорит «это всё говно и не работает», а обстоятельно раскладывает всё по полочкам.

        Но есть и неувязочки. Завтра распишу подробнее.

        • Владимир

          Оппозиция будет ждать )

          • Не любите вы себя, Владимир. Так долго терпеть и держать в себе — это вредно для здоровья 🙂

          • Владимир

            Я пытался объяснить… а вы меня не слышали (

      • Лучше эмоционально, чем уныло, щитаю 🙂

        Про TDD, надеюсь, выйдет своя, выделенная передача — к ней постараюсь за и против аргументы привести.

        А пока замечу, что TDD это не единственный (и имхо необязательный) метод написания unit-test-ов. Ольдскульно, по факту, к готовому коду — вполне тоже себе метод. Или наоборот заранее, вперёд, без кода.

  • Radio QA podcast

    Ждем комментариев по выпуску!

  • Alexandr Stepurko

    Спасибо за подкаст, но очень бы хотелось вас в iTunes услышать.

    • Radio QA podcast

      Исполняем желания 🙂 Откройте в iTunes меню «подписать на подкаст» (скриншот немецкой версии вниху) и введите http://feeds.soundcloud.com/users/soundcloud:users:151862660/sounds.rss

      • Sofrus

        А можете все-же заливать выпуски в айтюнс? Путь с подпиской не все подходит.

        • Radio QA podcast

          Будет, но несколько позже в ближайшие месяцы.
          А если не секрет — почему путь с подпиской не подходит?

          • Sofrus

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

          • Radio QA podcast

            А зачем подключать телефон? Инструкция на странице «Подписка», выполняется один раз — подкасты приходят потом автоматически. Протестировано 🙂

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

  • maksya

    Тестировщик в примере с пивом совсем не лишний. Клиент здесь — источник потребности, удовлетворить которую потенциально может разрабатываемый продукт. Программист — собственно, пивовар. А тестер — персонаж, способный предоставить объективную информацию о производимом пиве. Только читайте это правильно: цвет, вкус и количество пузыриков любой дурак оценит, и я говорю даже не о проверке на соответствие техническим условиям, речь о постоянной активности по получению, анализу, хранению и представлению информации о пиве. Тестер просидит за клиента на горшке, подвергая свой ЖКТ воздействию новых фич пивовара. Тестер за пивовара выяснит почему клиенту не нравится новое пиво, проверит действительно ли пиво влияент на уровень эстрогенов. Не растекаясь дальше мыслью по древу, резюмирую: тестер — человек, поддерживающий связь разработчика и клиента, улучшающий эту связь за счет усиления осведомленности всех заинтересованных лиц о продукте. И тестер может прогнать тест на вкус за клиента! Дайте мне кружку пива, я покажу как это делается =)

    Возможна ли эта схема без тестировщиков? Конечно да! А как иначе может быть в мире сотканном из сплошных недостатков и противоречий?! Тестер не нужен, когда его роль делигируется (возможно частично) самому клиенту. Обычное дело в online gamedev и соц. проектах. Цена ошибки низкая, а ее исправление — дело 5 минут. Также не нужен тестер, если буква Т уже занята словом TDD, а после внедрения 146% покрытия нашей пивоварни автоматическим лабораторным оборудованием число ошибок достигло минимума за последние 10 лет.. К слову, при этом мало кто задается вопросом — что означает низкое число обнаруженных дефектов.

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

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

    • Radio QA podcast

      вообще говоря, этот пример с пивом был немножко про другое (преимущество тестировщика-человека из плоти и крови над бездушным скриптом) и не совсем мой, я его из доклада М. Болтона спёр :-).

    • вообще говоря, этот пример с пивом был немножко про другое (преимущество тестировщика-человека из плоти и крови над бездушным скриптом) и не совсем мой, я его из доклада М. Болтона спёр :-).

      • maksya

        Спасибо за корректировку. Я уверен, Майкл бы одобрил такое заимствование при сохранении смысла о душевном человеке и бездушном скрипте, и соответственно разозлился при искажении идеи про пиво как доказательство бесполезности тестера =) Но теперь равновесие восстановлено, Вселенная спасена, можно спать и пить спокойно.

  • Alexey

    Очень интересно было послушать. В подкасте часто говорилось что тесты это боль, я бы хотел немного порассуждать на эту тему.
    Когда я учил С++ это была боль, но она была приятная, я познавал тайны программирования, когда я учил ассемблер — это тоже была боль но уже самая обычная, когда я сдавал экзамен по философии это была невыносимая боль.
    Что же такое боль? когда я слышу это слово у меня сразу возникают ассоциации, что это будет неприятно, очень неприятно, и хочется вернуться в свою зону комфорта. Изучая что-то новое неизбежно сталкиваешься с непониманием, много нового, непонятно куда двигаться дальше, страх перед неизвестностью. Если есть стимул и мотивация (тут неважно, морковка спереди или сзади) ты будешь продолжать изучать. Постепенно вникая все глубже и глубже, дискомфорт проходит, «волосы становятся мягкими и шелковистыми».
    Относительно недавний пример: Я решил изучить python, времени нету, реальных задач нету, писать что-то примитивное уже не хочется (на с++ я быстрее это сделаю), писать сложное — не позволяют знания, хочешь сделать что-то крутое, но сразу ощущается дефицит знаний и не способность сделать банальные вещи, которые в С++ делаю с закрытыми глазами, замкнутый круг, в итоге изучение python было для меня мучением.
    Такая же картина и с тестами, страх, новое окружение, новые программы, новый язык, незнание как правильно завести боевой сценарий. Постепенно с каждым новый тестом накапливается опыт, страх проходит, появляется уверенность, тут главное не потерять мотивацию (вспоминаем про морковку).

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

    Учите новое, боритесь со страхом, да не прибудут с вами баги.

  • BCPikachu

    В первом же выпуске «подкаста для тестировщиков» обсуждается почему они вообще не нужны и без них можно обойтись. Это как? О_о А подкаст тогда зачем, если его аудитория не нужна?

    • Radio QA podcast

      Нет, это вы не совсем правильно поняли.
      В первом выпуске обсуждается то, как заниматься разработкой без тестировщиков, т.е. если по тем или иным причинам от них отказались (решение сверху например).
      И уж не в коем случае, не о том что они *не нужны*.

      То, что они (т.е. мы) нужны, выходит из того, что выпуски подкаста все еще делают тестировщики 🙂 И аудитория его да, не только тестировщики, сам подкаст — про IT в целом, слушайте выпуски!

    • Точно так же понял и удивился.

  • Алексей Мельников

    Тема подкаста очень интересна. Но ведущие регулярно огорчяли своим лексиконом. Например, зачем эти категоричные и презрительные «Чё дальше делать», «Розовые поняши», «Есть мнение и оно абсолютно не верное»…

  • Pingback: Прямой эфир "Про конференции", 23 мая в 17:00 - Radio QA()

  • Pingback: Выпуск 2: Про конференции, новости и другие новые рубрики - Radio QA()

  • Pingback: Choosing Issue Equipment And Apparel For Use In Your Football T – Golf Game Shop()