воскресенье, 28 августа 2011 г.

Gimme my cool shiny tools

Нет, это не про инструменты. И не про то какие они клевые.

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

Раньше читая про сферическое тестирование в вакууме у меня возникали довольно простые мысли. Например:
  • Что за хуйню несет этот чувак?
  • Почему этот старик затирает мне про корабли бороздящие просторы большого театра и откуда он их взял?
  • Почему вот эти чуваки написавшие клевый тестовый тул Х разинув рты слушают этого старпера?
  • ...
  • И еще 100500 вещей.
Если кто не понял, то я это про всяких Бахов, Петтичордов и прочих Болтонов. Тысячи их.
Нет, у них там очень много интересных вещей. Много теории доступной любому желающему. Много просто интересной игры разума.
Но для них это вещи довольно банальные и на серьезных выступлениях они рассказывают совсем другое. Просто потому что индустрия тестирования ПО там сильно старше. Просто потому что любой уважающий себя специалист мало-мальски разбирается в этом контексте. А когда ты не в контексте все очень смахивает на собрание сектантов и прочие сомнительные тренинги. И оказаться в этом контексте довольно сложно, потому как у нашего тестирования ПО история меньше, практически отсутствует связь с контролем качества в промышленном его понимании... да и вообще дефектность развития отечественной культуры разработки (многие тупо нырнули из каменного века в космические технологии за 20 лет, но для России это нормально чисто исторически) способствует потере этого контекста.


А контекст простой.
Например вот: http://www.youtube.com/watch?v=IGQmdoK_ZfY
Если хочется подробностей, то вот: http://www.wjh.harvard.edu/~cfc/Simons1999.pdf
Не понятно? Сейчас поясню.
В этих двух линках есть хороший пример того почему скриптовое тестирование это не есть хорошо и уж тем более не есть достаточно. То есть если вам поставили задачу посчитать пасы, то вы не заметили макаку. Или не заметили шторки. Или еще кучу вещей не заметили которые на самом деле важны.
В этих двух линках есть пример того почему трудно найти все баги. Кстати, вот просмотрев видео вы уверены что вы заметили все изменения которые на самом деле могут быть важны? Ну или просто все изменения?
Так же это неплохой пример того почему контроль качества ничего не контролирует, а лишь сервис по предоставлению информации.
Можно много и весьма плодотворно обсуждать это исследование. И вынести оттуда ряд хороших примеров которые могут сильно повлиять на ваши взгляды на тестирование вообще.
И это лишь малая часть того что лежит под этими мутными с первого взгляда выступлениями некоторых гуру тестирования.

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

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

Итого:
  1. Сферическое тестирование в вакууме есть и про него действительно стоит думать и читать/слушать.
  2. Инструменты в вакууме есть, но просто так в вакууме они бесполезны. Долгая история тестовых говнотулов подтверждает это.
  3. Инструменты знать и уметь надо. Потому что это здорово облегчает жизнь.
  4. Обсуждение банальностей для новичков это скучно и уныло, особенно когда можно достать бумажку 20 летней давности и прочитать все в более детальном изложении чем вам расскажут на собрании для детей.
  5. Контекст и понимание основ контроля качества (в том числе и не для IT) это правда очень интересная штука. Ведь там есть такие вот ништяки: http://www.performancetestinglabs.com/

18 комментариев:

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

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

    ОтветитьУдалить
  3. В теории легко быть д'Артаньяном. Подавайте доклад на SQA Days, создавайте полезные ресурсы, решайте проблему - это и интереснее и полезнее, чем жаловаться.

    ОтветитьУдалить
  4. Наталья, почему вы в таких случаях всегда отвечаете "сперва добейся"? Это же почти как сказать в глаза "идите в жопу, я вас не знаю".

    Перечитайте еще раз - я не жалуюсь. Это просто наблюдения. Тем более ни вас, ни кого другого лично я не упоминал.

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

    ОтветитьУдалить
  5. Чувствуете разницу между "сам козёл" и "сам сделай"?

    Я не могу сказать, что у меня "есть возражения", потому что по большому счёту со всем вышенаписанным я абсолютно согласна. Просто мне не нравится подход "всё плохо, давайте поплачемся" - что мешает исправить положение дел?

    Если Вы "не можете", то и на критику никакого права не имеете. А если можете и сделаете, то толпы людей скажут "спасибо!" (включая меня, кстати), раша тестинг дорастёт до западного уровня, девчонки выстроятся в очередь поклонниц, а эта статья потеряет смысл.

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

    А вот последний абзац это уже практически цитаты из Геббельса. Фу таким быть.

    ОтветитьУдалить
  7. Кстати, почему вы считаете что это статья только про то что в раша тестинг каммьюнете "бидабида"? Там про это три абзаца и то в серединке. Для вас это настолько больная тема?

    ОтветитьУдалить
  8. Вы привели ссылку на исследование 12 летней давности (про которое рассказывали на SQA Days 9) и исказили цитату из поста в блоге Джеймса Баха (недавно переведенном на русский язык). Вам это кажется интересным или уникальным контентом?

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

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

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

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

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

    ОтветитьУдалить
  10. Сергей, мне кажется, Вы подменяете понятия "что кто-то сказал" и "что я услышал".

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

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

    А теперь, если можно, закончим лирические отступления? Никто не хочет здесь чем-то меряться и что-то доказывать, есть конкретное предложение: "А давайте изменим положение вещей?". Ну вот конференции, к примеру: я с удовольствием схожу на дельный, глубокий доклад. Или статьи - очень много "перепевов былого", кто бы спорил, и я буду рада чему-то новому.

    Давайте сделаем, а?

    ОтветитьУдалить
  11. Ненене! Не надо мне такой магии. Если я что-то написал, то я зхнаю что я написал. Если ко мне приходит человек и говорит что я написал совсем другое - он врет. Это факт. Если он приходит и говорит "вот тут у тебя это и это", то да, мы просто обсуждаем детали.

    А что сделали вы, Наталья? То же что и Иосиф - заявили что "Вы написали пост на тему 'я негодую'.". А это уже ложь. Так что подменой понятий занимаюсь тут совсем не я. Но я вполне допускаю что мы говорили в разных контекстах. И это хорошо (с профессиональной точки зрения в том числе) что вы таки уточнили свой контекст.

    Теперь по сути вашего комментария:
    Я делаю.
    Потом вы спросите что я делаю, попросите линки и т.п.. Потом кто-нибудь припрется и начнет обсуждать всякую гуманитарщину (до технических вещей мудаки докапываются редко, т.к. не компетентны в большинстве своем). Ну или вы мне предложите сделать то чего я не могу сделать в силу разных причин (NDA, например). Я, например, до сих пор не знаю смогу ли поехать в декабре на SQADays (и причины тут во многом такие которые незнакомым людям публично я говорить не имею никакого желания). И я возможно откажусь, а вы обидитесь и подумаете (или напишите) какую-нибудь гадость. Или кто-нибудь еще это сделает.

    Зачем мне это? Мне эти головняки не нужны. Тем более что люди которым я могу/хочу помочь и так в курсе что, как и когда я могу сделать.

    Когда несколько дней назад Леша Баранцев спросил меня можно ли добавить этот бложег в ленту на s-t.ru я ответил "Да" не потому что хочу сотен нефти и славы, а потому что если кто-то считает что в нем можно нарыть что-то полезное - я не против.

    ОтветитьУдалить
  12. Теперь про "сперва добейся".

    "Критик должен быть готов и способен в любой момент и по первому требованию занять место критикуемого им и выполнять его дело продуктивно и компетентно; в противном случае критика превращается в наглую самодовлеющую силу и становится тормозом на пути культурного прогресса."
    Йозеф Геббельс (говорят так)

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

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

    И мне очень странно, Наталья, видеть от вас фразы вида: "Если Вы "не можете", то и на критику никакого права не имеете."

    ОтветитьУдалить
  13. Почему мне кажется, что Вы пытаетесь спорить с чем-то? Вроде спора-то нет никакого, или я что-то совсем не понимаю :)

    По поводу критиков и комментаторов "со стороны": у каждого своё отношение к критике. *Лично я* не буду воспринимать всерьёз критику (так же как и похвалу) от человека, который в обсуждаемом вопросе не компетентен. У меня сразу картинка перед глазами: сидит толстый дядька с пивом перед телеком и кроет матом футболистов "вот как надо, а не так как ты!".

    Критика "всё плохо" - штука бессмысленная, критика "правильнее сделать вот так" - штука полезная. Но естественно она будет полезной только если человек компетентен в вопросе. Читатель компетентен в обсуждении книги, потому что он её целевая аудитория и он имеет полное право сказать "я хочу чтобы она была более трогательной, и главному герою чтобы уделяли больше внимания". При этом, сказать "используйте больше аллитераций и реминсценций" он конечно тоже может, но вот эта оценка полезна только от другого успешного автора, а не от читателя. Это всё моё личное мнение к критике, другим не навязываю и оспаривать не готова, это Ваш личный выбор, какую критику считать для себя полезной.

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

    ОтветитьУдалить
  14. Ну это же так здорово обсуждать в интернетиках всякую ерунду! Может что дельное получится. И нет ничего увлекательнее для зрителя чем бурная дискуссия на эмоциях, которой, например, является спор.

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

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

    То есть как ни крути важна не только (и не столько) форма критики, а то кто критикует и его знания. И тут отсевы по каким-то жестким критериям очень плохи хотя бы потому, что вы рискуете остаться в кругу "Экспертов С Мировым Именем".

    К тому же как вы сами написали - я целевая аудитория. Я не советую как организовывать конференции, я ничего не говорю про логистику - я в этом не понимаю ничего. Зато я прекрасно понимаю чего я хочу или не хочу там видеть.
    Например я хочу чтобы я мог более или менее плотно забить себе весь график интересными для меня докладами. Что мне интересно? Ну я простой технический специалист умеющий пользоваться гуглем. Мне не очень интересно околоменеджерское вуду (и всякие "я стал тестировщиком, как мне дальше жить?"), мне не интересно слушать о вещах которые любой мало-мальски разбирающийся специалист по автоматизации уже 100500 раз делал, мне в меру интересно послушать об общей теории (и уж точно не про древние как мир комбинаторные методы в стиле "они есть, правда, вот опеределение из википедии"). В итоге в лучшем случае 2/3 SQADays мимо, просто потому что или для wannabe менеджеров или про детские шалости (и есть мнение что не одному мне это не нравится). В худшем выхлоп такой же как от YaC, где в этом году мне интересно полтора доклада не по тестированию и один по тестированию от Артема Ерошенко (просто потому что я знаю о чем он и мне интересно что у него вышло с нашей последней беседы).

    Про тестопедию я легко, но сразу предупреждаю - для меня это хобби.

    ОтветитьУдалить
  15. Про критику, судя по тому, что я прочитала, наши мнения абсолютно сходятся :)

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

    По поводу тестопедии - стукнись в скайп? Я там natalya.rukol

    ОтветитьУдалить
  16. Или я чего-то не понял или вы как-то очень гибко относитесь к своему мнению.

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

    В Скайп стукнусь асап.

    ОтветитьУдалить
  17. Интересная у вас тут дискуссия развязалась, коллеги. Но как-то, как по мне, она, мягко говоря, к посту не относится.

    На самом деле, зачастую на конференциях и во всяких подкастах катастрофически не хватает конкретики.
    Как по мне, сферическое тестирование в вакууме следует из оного вынуть, и натянуть на пару кейсов - один, на который натягивается, и второй - на который его никак не натянуть.

    Мне кажется, что Сергей поднял проблему, которую я неоднократно наблюдала в ВУЗах - преподаватели читали лекции о чистой теории, не вдаваясь в практические подробности и не снисходя до объяснений непонятных формулировок и постулатов студентам, находившимся "не в теме", пускай и имеющих необходимые базовые знания.
    То, что хорошо в среде коллег на научной конференции, которые знают весь контекст, совершенно не подходит для широкой публики - Вы это имели в виду?
    Что же касатеся СНГ*овских конференций по тестированию - к сожалению, мы не доросли ещё до "научного" уровня, когда все "в теме".
    Однако же, я также полагаю, что рассказывать на конференциях ликбезные вещи и сыпать ссылками на всяческие ресурсы тоже не есть хорошо.
    Как по мне, люди, идущие на конференцию, в первую очередь, ищут способ решения каких-то имеющихся у них задач, или они ищут что-то новое, что можно было бы освоить, опять же, для решения своих конкретных проблем.
    А что они получают на конфе? Море вылитой воды и чувство озлоблённости за напрасно потраченные время и деньги.
    ИМХО, на такого рода конференциях следует поднимать какие-то вопросы или проблемы, требующие нетривиального решения.
    Или рассказывать о чём-то инновационном. На конкретных же примерах.
    Доклад о том же pairwise тестировании можно было бы сделать захватывающим и полезным, описав два примера - первый, где он реально спас ситуацию; второй - где его применение (хотя, вроде бы, к нему были все предпосылки) привело к ухудшению ситуации, и наглядно объяснить, почему. И как различать эти случаи.

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

    ОтветитьУдалить
  18. То что практические приложения легко понять, т.к. их можно потрогать это старая проблема многих отраслей. А проблема как раз в том, что без хорошей фундаментальной теории не будет хорошей практики. Но для теории нужно достаточно знать, чтобы начать хоть что-то понимать.

    ОтветитьУдалить