Лови жуков, или История о том, как мы баги чинили


Опубликовано

в

Время чтения 4 минут

Метки:

  • Привет! Я — Даша, занимаюсь текстами и коммуникациями с пользователями Lingualeo. Рассказываю полезное про учёбу и занятия в сервисе. Развлекаю мемами в рассылке, подписывайтесь 😉

– У юзера ***mail.ru не подргужаются задания. Заводить багу?

– У нас уже есть такая бага.

Пример диалога специалистов нашего отдела поддержки.

bugs
Ты, вероятно, знаешь, что баг (от англ. bug) – это ошибка в программе, из-за которой программа выдает необычное для нее поведение.

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

bug

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

Мы не заметили жука, и рамы зимние закрыли

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

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

Учите английский
в приложении LinguaLeo!
Лексика, грамматика, аудирование
1000+ слов и фраз
300 новых слов в месяц
MDN

Реклама. Рекламодатель: ООО "Лингуалео". Подробности на сайте https://lingualeo.com/ru

Я поймал в траве жука, но помял его слегка

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

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

Периодически мы проводим “субботники” – дни, когда разработка занимается только борьбой с багами. В это время никакие другие дела (кроме обеда и, разве что, кофе-брейка с печеньками) не могут их отвлекать.

Ты зачем приносишь вред, жук-негодник, короед?

Итак, за последний квартал (с января 2017 года) усилиями разработчиков были починены такие крупные баги:

1. Проблемы с сытостью Лео: сколько ни корми, все ему мало!

В конце февраля – начале марта у многих пользователей возникла одна и та же ситуация: кормишь-кормишь Лео, занимаешься-занимаешься, а сытость его не увеличивается! Оказывается, такой “дефект” программы возник после фиксы другого бага (о таких случаях я писала выше).

Ныне этот баг починен, и теперь все по-честному: отзанимался по полной – Лео сыт.

2. Не подгружались задания на dashboard (ленту заданий).

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

dashboard

Не так давно тем, кто занимается, ориентируясь на dashboard, пришлось нелегко, поскольку у многих пользователей задания просто не подгружались – юзер видел “бесконечную загрузку”. Рассказывать о причинах возникновения такой неполадки не стану (признаться, сама толком не поняла), но главное результат – бага пофикшена.

3. Не синхронизировались слова без картинок.

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

Оказалось, что проблема была вызвана тем, что эти слова по каким-либо причинам не имели картинок. Программа такие слова просто “не видела”. Разобрались – починили.

4. Невозможно пройти тренировку “Расставь пробелы” до конца, если в тексте есть тире.

Юзеры iOS-приложения столкнулись с проблемой в новых тренировках чтения – невозможность пройти одну из них, если в тексте встречалось тире (а бывало это довольно часто).

Мы оперативно (и даже удаленно, без обновления) исправили эту ошибку. Юзерам было достаточно перезапустить приложение, чтобы фикс подтянулся. А уже позднее вышло обновление с этим фиксом.

app5       app6

5. Тормозили тренировки чтения на устройствах старшего поколения.

Обладатели iOS старшего поколения (4S, 5C, 5S) больше не будут страдать из-за того, что новые тренировки слишком медленно работают: юзеры просто не успевали пройти их до конца. В последнем релизе (он вот-вот выйдет) мы улучшили производительность на этих устройствах.

Плёлся жук издалека и на вид, казалось, был безобиден, даже мил

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

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

Улетай обратно, в Колорадо! Нам таких жуков – как ты – не надо!

Уважаемые, любимые, самые классные и внимательные пользователи в мире! Мы получаем и фиксируем для себя каждую жалобу и пожелание по улучшению. Для этого у нас есть 2 отдельных канала – support questions (жалобы) и student voices (пожелания).

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

Кстати, прокачать лексику на английском языке поможет приложение LinguaLeo. Бесплатно устанавливайте на свой смартфон или регистрируйтесь на сайте. Даже 10-15 минут в день в игровой форме расширит ваш словарный запас.

Предсказание дня:

Подпишитесь на рассылку
от Lingualeo, и ваш английский поднимется на
high level





Нажимая на кнопку «отправить», вы принимаете политику обработки персональных данных
Регистрируйтесь на Lingualeo
Учите английский онлайн самостоятельно и бесплатно. Нас уже 23 миллиона

Реклама. Рекламодатель: ООО “Лингуалео”. Подробности на сайте https://lingualeo.com/ru

Другие статьи по теме

33 комментария на ««Лови жуков, или История о том, как мы баги чинили»»

  1. Аватар пользователя faiwer
    faiwer

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

    1. Аватар пользователя ykaneva
      ykaneva

      faiwer, добрый день! Как мы и писали в посте, из-за ограниченного числа часов разработки, часть багов висит в waiting list. Как только доходят руки или накапливается критическая масса жалоб на проблему, она фиксится.

      Спасибо Вам за терпение и за то, что Вы с нами!

  2. Аватар пользователя faiwer
    faiwer

    А ну и до сих пор вроде бы не исправили недавний (с полмесяца-месяц) баг с часовыми поясами. Я вот не могу узнать “сытость-Лео” своей жены, не открыв её ноутбук, т.к. из-за разности часовых поясов после часов 10 я всегда вижу в друзьях число “0”. Более чем детальную информацию вам отправил.

  3. Аватар пользователя Denis
    Denis

    Есть еще “жук” в переводе слов, часто встречаются слова с задвоенным переводом, что очень раздражает, приходится заходить в карточку слова и редактировать.

    1. Аватар пользователя Евгений
      Евгений

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

  4. Аватар пользователя Макс
    Макс

    Я бы хотел чтобы в приложение добавили кроссворд! Уже раза 4 просил, очень полезная штука была бы в приложениии!!!

  5. Аватар пользователя Сергей
    Сергей

    Безумно меделенно устраняете баги. 🙁
    Я почти год назад о десятке багов сообщил, так они до сих пор живут и здравствуют!
    Как не работала, так и не работает синхронизация словаря в приложение на телефоне. Приложение, вообще, ваше слабое место. Там много того, что надо было бы давно исправить.

  6. Аватар пользователя Владислав
    Владислав

    А какое-то “продолжение банкета” сделали? Баги – это, конечно, хорошо исправлять, хотя частично они “висят” с 2013-2014 годов, но вот что делать людям, которые перешагнули рубеж 30-40-ого уровня? Дальше – просто ничего не меняется. Грамматика пройдена, слова практически все изучены, тексты всё хуже и хуже попадаются…

    1. Аватар пользователя ykaneva
      ykaneva

      Владислав, добрый вечер! Да, конечно, “продолжение банкета” будет. Именно с тем, что мы сейчас усиленно работаем над новыми тренировками, и связано то, что многие баги висят в листе ожидания (бОльшая часть времени разработки брошена на создание обновлений). Поэтому подождите, пожалуйста, немного… Спасибо, что Вы с нами!!

  7. Аватар пользователя Александр
    Александр

    Спасибо, любимая команда Lingualeo.
    Представляю, насколько у вас сложная логика и как порой тяжело это всё фиксить.

    С днем рождения 🙂

  8. Аватар пользователя Сергей
    Сергей

    Если месяцами висят баги, так может стоит провести курсы повышения квалификации разработчикам?
    Это если не хватает квалификации.
    А если хватает, так может вам стоит расширить штат? 🙂
    ладно, это не мое дело как управлять бизнесом (тем более не моим).
    А сервис очень нравится, спасибо за все изменения и за то что делаете качественный продукт.

  9. Аватар пользователя Evgeniy
    Evgeniy

    Выйдет-ли какое-либо обновление на Android?.iOS получают по полной а про андроид как-будто и не слышали

    1. Аватар пользователя ykaneva
      ykaneva

      Evgeniy, здравствуйте! Все обязательно выйдет, пожалуйста, подождите и потерпите немного.. Задержка на других платформах связана исключительно с нашими нынешними техническими ресурсами. Тимур Гаврилов (продакт Lingualeo) говорил об этом на дне открытых дверей, вот посмотрите пожалуйста в видео, начиная с 40:34 мин. — https://www.youtube.com/watch?v=rKoEBjpY6Ts

      И спасибо, что Вы с нами!

  10. Аватар пользователя Sergey
    Sergey

    «Но призываем тебя и дальше пинать нас со своими проблемами, желаниями и советами.»
    «Эх, раз, еще раз, еще много-много раз…»
    Третий раз:
    1. Тренировка Повторение. Косяк: длинные слова не успевают проговориться. И получается, что они накладываются друг на друга. В этой каше запоминать на слух нереально. Приходится выключать звук и проходить повторение только с визуальным восприятием. Нужна задержка перед показом следующего слова, пока не проговорилось первое. При этом не менять время на ответ в 5 секунд. Просто после ответа не показывать следующее до завершения проговаривания предыдущего. Особенно это мешает при изучении неправильных глаголов.
    2. Тренировка Аудиовызов. Ее сложно проходить, потому что слайд-эффект сильно утомляет глаза. Кроме того дизайн тренировки (а именно слабая контрастность) не позволяет расслабиться при обучении. Правильное слово слабо выделяется среди других. Вам про это не один человек писал. Почему ее не сделать дизайном как прошлые? Зачем гнаться за дизайном ухудшая при этом удобство обучения? Будет ли пункт в настройках с выбором дизайна (старый/новый)?
    3. Будет ли бета-тестинг новых тренировок и будет ли багтрекер, где пользователи смогут засылать баги и следить за выполнением?
    4. Когда уже будет убрано озвучивание слеша (/) и устранены ошибки озвучивания некоторых слов?
    5. В расширении для Firefox перестал работать «Enjoy content!» после введения многопоточности.
    Пожелание: можно добавить в расширение для Firefox возможность добавлять несколько переводов одного слова и отображение есть ли оно в личном словаре?»

  11. Аватар пользователя Галина
    Галина

    Спасибо огромное за Вашу работу!

  12. Аватар пользователя Дмитрий
    Дмитрий

    Здравствуйте.
    “Мы получаем и фиксируем для себя каждую жалобу и пожелание по улучшению. Для этого у нас есть 2 отдельных канала — support questions (жалобы) и student voices (пожелания).” Не могли бы вы подробней рассказать о каких канал идет речь. На сайте есть раздел “Поддержка”. Правильно ли я понимаю, что я могу отправлять вам свои предложения с его помощью? Или он служит только для сообщений о багах и вопросов?

    1. Аватар пользователя ykaneva
      ykaneva

      Дмитрий, здравствуйте! Да, Вы можете писать и пожелания, и вопросы, и замечания и т.д. в поддержку, а уже специалисты службы поддержки передают все обращения разработчикам и методистам. Каналы, о которых речь в статье – это каналы в нашем внутреннем мессенджере (slack), в котором происходят все внутренние коммуникации сотрудников.

  13. Аватар пользователя Алексей
    Алексей

    давно уже нет никаких заданий, везде один премиум, премиум, премиум. Тока грамматика осталась (пока) и ролики…

  14. Аватар пользователя Сергей
    Сергей

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

  15. Аватар пользователя Сергей
    Сергей

    Спасибо за полезный сайт, но за почти год, что пользуюсь, никаких улучшений не наблюдаю. А доработок требует очень многое! :-((

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

    А на странице наборов слов вот откуда общее количество наборов 485? Их количество только несколько десятков. Давно уже говорил об этом поддержке.

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

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

    В общем, получается, что когда-то сделали хороший ресурс, а с тех пор 7 лет сплошное бездействие. 🙁

  16. Аватар пользователя GeorgeS
    GeorgeS

    ios. Багу два года. Любая тренировка слов зацикливается и невозможно пройти “до конца”. Бесит, неимоверно бесит. И Вы об этом знаете!

    1. Аватар пользователя Александр
      Александр

      Есть такая ерунда. Я включаю режим полёта, учу слова, потом синхронизирую. В офлайн режиме проблем не наблюдается. Единственный минус – нет картинок и Лео каждый раз говорит, что мы офлайн, можем только поучить слова. Хотя из режима тренировки я не вышел, а перешёл только к следующей пятерке. Правда несколько месяцев назад были проблемы с синхронизацией. Приложение писало, что оно синхронизируется. Проходит несколько минут, надоедает ждать, перезапускаю и в итоге ничего не синхронизировалось, а когда оно действительно отрабатывает это длится несколько секунд. Сейчас вроде нет проблем. Но сегодня была проблема со словарем. Решил позаниматься в автобусе, Лео сказал: “обновляю словарь”. Прошёл час. всё также висело сообщение блокирующие приложение. Перезапустил. Может добавить какое-то сообщение. Например “Обновление 1000 из 7000 слов?” Или повесить эту процедуру на кнопку, чтобы можно было запустить дома по wi-fi?

  17. Аватар пользователя Наталья
    Наталья

    Добрый день. Очень нравится Linguale, но последнюю неделю проблема- не подгружаются Тренировки. Открывается только “Брейншторм”, остальные – не открываются. Что делать? Ноутбук – не старый. Спасибо, если поможете.

    1. Аватар пользователя ykaneva
      ykaneva

      Наталья, добрый день!) Мы советуем Вам почистить кеш и куки (помогает в 90% случаев). Если это не поможет, то попробуйте посмотреть сайт и тренировки в режиме инкогнито. И если там (в инкогнито) все работает, значит проблема скорее всего в расширениях браузера. Нужно в обычном, не анонимном режиме их отключить по одному, пока не заработает. Часто все портит фригейт.

  18. Аватар пользователя Natalya
    Natalya

    Буквально на днях в задании “Кроссворд” на сайте исчезла кнопка “Проверить” 🙁

    В остальном – спасибо большое вам за вашу работу и за ваш ресурс!

    1. Аватар пользователя ykaneva
      ykaneva

      Natalya, здравствуйте!) Вероятно, у Вас просто активирован сложный режим тренировки, который убирает проверку. Подробнее по ссылке.

  19. Аватар пользователя Ziyod
    Ziyod

    А когда день рождения ЛЕО?

    1. Аватар пользователя ykaneva
      ykaneva

      Ziyod, здравствуйте!) Празднество планируется в середине апреля 🙂 Следите за новостями здесь и в наших соцсетях (ссылки есть в футере блога).

      1. Аватар пользователя Ziyod
        Ziyod

        Спасибо за информацию))

  20. Аватар пользователя Vadim
    Vadim

    Добрый день! Не знаю, баг это, или нет, но очень раздражает, что в тренировках программа различает написание, к примеру, it is и it’s, или there is и there’s и т.п. На слух иногда просто невозможно разобрать, используется ли во фразе полный или сокращённый вариант. И, в итоге, получается ошибка там, где, по логике, её нет. Было бы здорово приравнять написание it is к it’s – ну и так далее. Заранее спасибо!

  21. Аватар пользователя Anton
    Anton

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

  22. Аватар пользователя Nikoltait
    Nikoltait

    Сделайте что-то с повторением, что бы отфильтровывать те слова, которые ты – не знаешь, но программа решила, что ты их выучил.

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

  23. Аватар пользователя Виталий
    Виталий

    А есть возможность рассказать немного подробностей с технической стороны?

    1. Какую issue tracking system используете?
    2. Используется ли CI/CD? Если да, то какой продукт?
    3. Как построен development workflow (хотя бы в общих чертах)?
    4. Как часто происходят deploys?
    5. Можете привести какие-нибудь технические цифры? LOC, DB size и пр.

    Спасибо. 🙂