пятница, 12 мая 2017 г.

Как изменился курс «Техники и инструменты»

Курс — Техники и инструменты поиска и оформления дефектов
Ссылка — http://testbase.ru/learn/bugs

Картинка из лекции

Исходно курс назывался «НЛО: Найти, локализовать и оформить ошибку». Там было всего 4 лекции, под название (на оформление две темы) . Я считала, что надо разбить курс на две части:
  • Оформление — для начинающих и с опытом до 3 лет;
  • Крутые штуки и техники — для продвинутых.
Чтобы поскорее запустить курс, начала с базовой версии. Ух, думала я! Такой ажиотаж будет, особенно среди выпускников интенсива, ведь они как никто понимают, что оформлять баги понятно — очень сложно! Но важно. 

Ажиотажа не было. Ведь оформлять баги — это так скучно! И это даже не запишешь клевой строчкой в резюме. То ли дело «прошел курс автоматизатора». Так что, когда появилась новая версия, «базовую» закрыли. Всем интересны «кровавые детали». Когда я рассказала в чатике выпускников, что будет в новой версии, у многих загорелись глаза. Эти задачки выглядят поинтереснее:

— Залезть на сервер linux, найти нужный лог, изучить стек-трейс.
— Перехватить сообщение в консоли разработчика.
— Прочитать ответ, пришедший с сервера.
— Найти баг кеширования на сервере.
— Проверить классы эквивалентности и найти баги граничных значений.

Количество тем выросло до 9, а количество домашних заданий — до 27.
И вот, за плечами уже три пройденных курса, хочу рассказать о своих выводах, уроках и изменениях Smile :)

Изменения


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

Курс прошел хорошо и вот уже мы анонсировали запуск в продакшен! Собралось аж 35 человек! И, надо признать, многие выпустились.

Гуглодока оценок

Но, не за 2,5 месяца, как планировалось. Исходно думали, что вот есть 9 недель + неделя на досдачу хвостов + на последней неделе вообще нет ДЗ + на предпоследней только одно. Получается куча времени, ага Smile :)

Скайп-чатик радовал позитивными отзывами:

По НЛО первой лекции — круто! Особенно понравилось, что затронута тема коммуникации с владельцами другого продукта
И очень понравился мотивирующий кусочек в конце!!

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

Ааа!! Как же меня прёт с твоего курса)) полночи ковыряла логи и счас додела. Открывают PDF creator сделать тебе PDFку, а там в настройках "выберите уровень логирования", а я теперь это знаю!! Сразу вижу в чём смысл настройки!! Ваууу!! Крутой курс, короче!!!

Только доделала ДЗ-3. Было очень интересно. Спасибо!

Задания очень интересные, спасибо!

Должна отметить, что я прямо таки "кайфанула" решая эту загадку с Семеном. Очень очень интересно, еще раз спасибо за такие крутые домашки :)

Ох, да, домашки тожело мне даются, уже не знаю почему. Зато сразу столько идей для "полевого" тестирования! :)  Очень крутой курс!

Мне нравится, что домашки позволяют выйти за рамки того проекта, на котором работаешь в данный момент

Но к моменту окончания курса у многих еще были несданные работы. При том, что почти все сдано, жалко же не выпустить! Накинула еще недельку-другую, выпустили =)

А потом стали обсуждать, почему так. На курсе была моя коллега и помощница Юлия Миронова, она подсветила мне основные проблемы:
  1. Домашних заданий много. Получается почти как интенсив, ты тратишь кучу времени на ДЗ. И это весело пару недель, но запала на два таких месяца явно не хватит. Мне выпускницы с интенсива так говорили, что слишком много времени уходит.
  2. Долгая локализация бага. Очень много времени на это тратится. Формулировка из серии «угадай, где баг» раздражает.
  3. Невнятное описание задания. Это когда в задании "найди один баг", а когда нашел, говорят "найди теперь второй". Это было сделано специально, но напрягает.
Конечно, я упиралась:
— Нет, не надо упрощать! Получится слишком легко! В задании специально нет подсказок, чтобы сами поискали.
— Ну не 2 часа же. У тебя это задание на что, на локализацию или вот на этот кейс?
— Нууууу... На этот кейс =\
— Вот давай так и напишем.

Очень помогло живое общение. В скайпе мы с Юлей ругались и я всячески отстаивала свою позицию «будет очень легко». Но потом очень удачно нарисовалась командировка в Питер по работе. Заодно встретились с Юлей и обсудили, как бы она хотела переделать ДЗ. И, о чудо! В личном разговоре я почти со всем согласилась Smile :) Ну а что, разумные доводы и приемлемые изменения...

И вот что получилось в итоге:

1. Выкинули лишние задания


Было 27 обязательных, стало 23. Остальные перенесли в дополнительные и необязательные. Пришлось признать, что не все они ведут к цели. И подавить чувство «ну это же так важно» 

2. Улучшили описание


НЕ тронули мы описание 5 заданий. Из 23, ага 
Конечно, большинство изменений были небольшие. Небольшой намек или указание на доп материал. Или ссылка на форму, которую надо тестировать, если студенты долго искали ее. Да, можно и поискать, но зачем? Задание ведь о другом... Но пару описаний переписали с нуля.

А еще исправили две задачи, в которых условие не было прописано сразу. Из отзыва выпускницы первого курса:

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

Поправили, спасибо! 

А еще я раздумываю оценки «Не сдано — Сдано» изменить на «В процессе — Сдано», чтобы не было так обидно. Над этим думаю пока...

3. Перегруппировали лекции


На курсе есть два, бесспорно, лучших ДЗ — Семен и Юань. Семен появляется уже в третьей теме, сразу после логов и панели разработчика. А вот задание с Юанем раньше было самым последним, 27-ым. Те, кто до него доходил, непременно радовались:
Обожаю Юань) очень красивый баг)
Ура! Отловила. Задание с юанем шикарное :)
Но вот только доходят то не все... А это же баг с кешом. Это же запросы через Postman!
Исходно планировалось «вкусненькое на десерт», чтобы поднять настроение после более скучных ДЗ на оформление. Но обсудили с Юлей и поменяли темы местами. Теперь Юань идет ближе к началу, а оформление — чуть потом. И оформление заодно «схлопнули», раньше было две темы:
  • Описание (шаги, аттачи и вот это все) — 1,5 часа
  • Название — 0,5 часа
Теперь это одна тема. Пока еще два раздельных видео, но я планирую их в дальнейшем совместить. 

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

4. Доработали Buggy и Users


Когда я только создала тестовые системы, было конкретное ТЗ. Но приемка проходила в спешном режиме по ряду обстоятельств. И именно одно ДЗ я не успела проверить. Угадайте, где был баг? 

Само по себе ДЗ интересное, разные ограничения на клиенте и на сервере. Но реализация оказалась не очень: если ты ввел значение больше границы, то объект типа сохраняется, ошибок нет. Но все правки стираются о_О Я как это увидела потом, когда нулевая группа дошла до ДЗ, впечатлилась. Как студентам предлагается искать границу? По одному добавляя? Ужас, даже я не настолько жестокая Smile :) Задание ждало своего звездного часа.

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

См также:
Как я искала фриланс-разработчика — история создания систем
Users — на чем потестить SOAP и REST — одна из систем открыта в общий доступ, попробуйте поискать там баги Wink ;)


5. Выложили Users в открытый доступ



Мне было очень грустно и обидно отказывать от части ДЗ. А плюс я напридумывала столько разного функционала. Да тут еще кучу ДЗ создать можно, казалось бы! Но уже сейчас студентам сложно и тратится много времени. Конечно, за счет доработок их жизнь упростилась... Но все же, не пропадать же добру? 

Так мы решили одну из систем отдать юным дарованиям на растерзание. Users можно и нужно тестировать. Там есть баги (но зашитых в код в мало, буквально на пару ДЗ), SOAP и REST интерфейсы и еще куча взаимосвязанного функционала. Уже несколько людей мне сказали за это «спасибо», это приятно =) А еще у меня появилась отличная площадка для обучающих статей и видеороликов, это тоже круто! В общем, всем хорошо ))

Выводы


Все нужно тестировать. Даже курсы 

Несмотря на то, что у меня уже есть опыт (интенсивам около 3 лет), с первого раза получилось не прям вау. Хотя мы и выпустили кучу народа ))) Но «Техники-3» и «Техники-1» отличаются очень сильно. Столько всего наулучшали! 

И это несмотря на пробный запуск. Но пробный был на 5 тем, а не на все 9, это сыграло свою роль. Получилось так, что юнит-тесты кусочков курса по отдельности провели, а вот интеграционное показало сбой в нагрузке и интересе. Но баги исправлены, мы работаем над собой и над курсом! 

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


Отзывы

Раз уж вы дочитали до этого места, хочу сказать — вы молодцы! 
А напоследок — отзывы.

Техники-1 (до всех изменений)


Анонимно

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

Чего не ожидала - это то, что большинство курса будет направлено на оформление багов. Слишком уж много было уделено этому внимания. Мне кажется, это совсем уже материал для новичков и для набивания руки. Хотелось больше практической информации.

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

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


Анонимно

Записалась на «Техники и инструменты поиска и оформления дефектов», но данный курс мне совершенно не подходит. К кому можно обратиться - чтобы либо сменить на другой тренинг или отказаться от него. Прошло 1 занятие, но продолжать я категорически не хочу его.

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


Ирина Гаврилова

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

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

О чем стоит помнить (и хорошо подумать, прежде чем):
- курс скорее оставляет после себя ощущение марафона. Это достаточно длинная дистанция, задания часто (да что там, почти всегда) сдаются не с первого раза, и с серьезными загрузками на работе лучше не сочетать
- придется где-то поспорить, где-то наступить себе на хвост, особенно если вы уже работаете достаточно давно. Ну и что, что вы считаете, что вашим разработчикам не нужно все разжевывать и рисовать на скриншотиках вплоть до перебора, без скриншотика задание не будет засчитано. Смиритесь, вам эмулируют упоротых менеджеров и разработчиков, которые закрывают баги как won't fix, если вы не дали прямую ссылку на блок страницы)) 
- вы очень-очень редко будете получать прямые ответы на свои вопросы. Чаще всего наоборот - встречные вопросы. Где-то такие наводящие вопросы работают, где-то только запутывают, но это "правила игры". Может пройти итераций пять, прежде чем вы поймете, куда вас ведут, сдадите, но все равно останетесь при своем мнении, увы.

Хочется отметить, что улучшения в курсе есть! Ощущение марафона постарались снять (хотя это не значит, что можно работать 1 час в неделю!) и комментарии пишем более развернутые. И вообще мне помогает Юля, а она добрее, чем я  Но вернемся к отзыву Ирины:

Ради чего, Карл?
- в заданиях встречаются совершенно шикарные баги на локализацию! Это особенный сорт удовольствия, вот честно, размотать клубок от пользовательского "аааа, все сломалось!!" к стройному, выверенному, локализованному до самых основ багу; 
- много полезных инструментов и интересных идей для проверок, прям бери и применяй к своему проекту, если что-то давно не использовал/забыл/вечно времени не хватало;
- лично мне было полезно потыкать логи на линуксовом сервере и осознать, что в этом нет ничего сложного;
- посмеяться и разделить свою боль) О, баги кэширования, бич моего проекта! О, баг с розовым фоном в строгом банковском интерфейсе! До сих пор помню это чувство, когда на одном мониторе открыт макет, на другом верстка, и ты упорно видишь макет белым, а верстку в веселую полосочку, в сердцах дергаешь макет на другой монитор и тупо смотришь на него, разделенного пополам между мониторами, на одной части девственно-белого, на другом - в ту самую развеселую полосочку...

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


Анонимно

Что ожидали от курса
Как у совсем начинающего тестировщика мои ожидания были очень расплывчатыми — получить новые знания в области тестирования, а именно как искать баги, поэтому курс Bug Hunting показался интересным.

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

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

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

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

Сделали, сделали более подробное описание! Спасибо за отзыв 
И над подсказками работаем, строим базу наводящих комментариев =)

Техники-2


Надежда Барсукова

Надежда продублировала в нашей группе в ВК, за что ей отдельное спасибо! 

Данный курс выбрала, чтобы отточить навыки, приобретенные на трехнедельном интенсиве, а также научиться тому, чего раньше не умела: отслеживать логи (и узнать, что это за зверь, если не знали раньше); использовать панель (консоль) разработчика; отправлять запросы через Postman и др. О выборе не пожалела :)

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

На протяжении всего курса вашей путеводной нитью будет добрая Юля Миронова (ассистент тренера) (грозной Марии, как на интенсиве, нет). Но: помните о том, что нить иногда может увести в ложном направлении, поэтому лучше действовать по принципу «на комменты к домашке надейся, а сам не плошай».

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

Что особенно понравилось: 
—> есть ДЗ, в котором нужно было оценить чужой баг-репорт; а также ДЗ — поиск определенного баг-репорта в баг-трекере, в котором их (баг-репортов) под 50 и все с абсолютно одинаковым названием (вот когда на чужих ошибках свои хорошо видно)
—>  вначале досконально разбираются составляющие баг-репорта, и только потом появляются задания, где уже нужно учесть все изученное
—> навыки, полученные в предыдущих темах (например, умение читать и отслеживать логи, умение пользоваться панелью разработчика), нужно будет применить в зданиях из последующих тем
—> оперативность (и в проверке домашних работ, и в исправлении вещей типа не туда ведущей ссылки) и отзывчивость (если работа над ДЗ не сдвигается с места, а мысли ходят по кругу, на просьбу о помощи обязательно откликнутся)
—> курс изменяется и дополняется (например, более понятно формулируются задания; несколько статей объединяются для удобства в одну).

Чего не хватило: можно, наверное, еще задания на часто используемые тестировщиком команды Линукса добавить (не только grep), и задания на умение воспользоваться не только туром «отмены из-за дождя» Уиттакера (на тур отмены есть целых два задания, а на применение других туров — заданий нет)"

Хочу отдельно отметить, что Надя училась во втором потоке. То есть застала еще не все изменения! Часть описаний мы успели поменять, а часть ребята уже сдали... Да и пару ДЗ не успели выкинуть в дополнительные, чтобы было не обидно тем, кто уже начал... И тему с «А потом бац — а найдите еще вот это» уже проработали ))) 

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

Из скайпа (редкие имена заменены для анонимности)

Татьяна: Найти задачу в баг трекере — вообще задание не поняла для чего и чему учит. Пользоваться поиском? (ничего ничего, мы уже поменяли условие, теперь учит!)
Семён — супер. Остальные ДЗ одинаково нормальные.

Юлия: Мне понравились все задания, где нужно смотреть логи, и понравилось задание про байты, потому что нужно было лучше понять, в каком виде бразуер передаёт смешанные данные на сервер.
Юлия: А не понравилось переписывать разные обоснования багов по 10 раз))) особенно если это баг типа "всегда возраст определяет правильно, а тут не правильно". Но, может это и потому, что раньше я крайне редко вообще писала обоснования в багах.

И тут мы внесли изменения как в описание условий, так и в комментарии тренеров

Дмитрий: Мне тоже понравились задания, где нужно логи смотреть, много полезного для себя подчерпнул! А вот задания про описание багов не понравились, у каждого проекта свои требования к описаниям, где-то знаки препинания в названиях не приветствуются, а где то нужны.  И ссылки, так, же у всех по разному, например у нас на проекте стендов штук 15 минимум и ссылки мало информативны, больше гуиды нужны, но в целом курс хороший!
Тренер: Да, безусловно. если у вас штук 15 стендов, ссылка может быть бесполезна. Но если ссылка одна, то, давая ее, вы облегчаете воспроизведение своего бага
Дмитрий: Согласен полностью, но вы сами говорили, что ссылка завтра перестанет работать и как тогда быть? ))
Тренер: Вот поэтому просто дать ссылку не проканает :)
Тренер: Но пока она рабочая, воспроизводить легче, разработчик быстро перешел и глянул

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

Таких заданий больше нет! Исправились, спасибо 

Елена: Я пока осилила 4 темы (да, стыдоба), но могу сказать следующее: есть более интересные задачи лично для меня (все задания по локализации), есть менее интересные (в теме 4, НО от этого не менее полезные! А может быть и более полезные (пишу лично за себя). Да, было прикольно осилить Семена, но это очень узкий/редкий баг, как мне кажется. То есть классно, что можно увидеть, что и такие баги могу быть. Но вот описывать баги приходится каждый день, и не менее важно делать это грамотно. (Вот начала описывать с учетом рекомендаций из курса — программисты сразу отметили).

Анна: Мне тоже понравилось разбираться в логах. Жаль, что на работе не дают в них "покопаться", но я продолжаю искать подходы к этому делу.

Еще очень полезно стало умение делать прямые ссылки и пользоваться консолью девелопера. Раньше я это незаслуженно игнорировала.

Не особо понравился подбор названий для бага. Понимаю, что это очень полезно. Особенно, когда девелопер считает, что там не может быть ошибок и старается закрыть баг. Я, к счастью, с такими не сталкивалась пока, и если не воспроизводится они задают дополнительные вопросы. Но для практики — полезно. Хотя, честно говоря, не раз хотелось забросить все домашки, так как названия — дело очень субъективное и не всем это дано.

Теперь названий меньше и тренер внимательнее за ними следит, чтобы дать более наводящую подсказку и не превращать в унылую пересдачу ДЗ!

Елена: Еще понравилось: активность тренера, активность этого чатика, возможность трэчить сдачи заданий другими членами группы.

***********************************************

Приходите к нам, у нас интересно и новичкам, и более опытным! Конечно, если вы уже мастер консоли и логов, будет скучновато... В этом случае приводите своих джуниоров 

Комментариев нет:

Отправить комментарий