02 Февраля 2015
0

Уголовный кодекс для самых маленьких

Путешествовал сегодня на троллейбусе, во время поездки в паре метров от меня расположились типичные личинки гопников, лет по 10-12. Шумят неимоверно. Назовем их Трус, Балбес и Бывалый.
Привлекает мое внимание довольно громкая писклявая фраза:
Трус: Я 228! (видимо указывая на свою шапку)
Бывалый: ты хоть представляешь вообще что такое 228?
Трус: не, чет не знаю...
Бывалый: а ты? обращается к третьему
Балбес: неа, слушай, ваще хз, ты знаешь?
Бывалый: ну так вот чувак, ты себя опустил пи*дец как
включает гуру и с умным видом
Это статья за ПЕДОФИЛИЮ!!!

Уже хрюкаю в перчатку, Трус чуть ли не плачет.
Трус: слушай, а чего тогда в песнях так много про это поют? с надеждой
Бывалый явно на пике своих дедуктивных способностей
Бывалый: ну эта, ваще, с 12 до 20 наверное можно?

Я в слезах, как и мои перчатки, но, к сожалению, в переполненном троллейбусе проводить беднягам ликбез по российскому УК совершенно не хотелось.
P.S. Из Латвии, у нас эта тема с русским репом, как и всем, что за него грозит, в народных массах так сильно не популяризована.

Как надоели эти жуки...

Тараканы?

Тараканы?

Есть миф: “Ну вы же тестировали. Значит, багов быть не должно”. Мы бы тоже хотели жить в этом мире. Но реальность разработки такая, тесты ловят многое, но не ловят всё. Особенно в стартапе, где команда небольшая, а приложение должно работать у людей на тысячах разных устройств и в сотнях разных сценариев.

Какие бывают баги? Самые понятные — “грубые”, кнопка не нажимается, экран не открывается, платеж не проходит. Их обычно видно практически сразу. Но самые неприятные те, которые появляются редко и “по настроению”. Например:

  • баг проявляется только на старом Android, а на новых всё идеально;

  • всё ломается только при плохом интернете, когда связь то появляется, то пропадает;

  • ошибка случается, если человек сделал действия в необычном порядке;

  • баг возникает в момент, когда на сервер одновременно пришло много запросов;

  • “что-то пропало”, потому что в одном месте обновилось, а в другом не успело.

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

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

Часто баги всплывают только тогда, когда появляется реальная база пользователей. И это нормально: тысяча людей (хотели бы мы такой онлайн ;) )за день создаёт больше уникальных комбинаций действий, чем небольшая команда тестировщиков за неделю. Пользователь делает то, что разработчик никогда бы не придумал: закрывает приложение на середине, разворачивает телефон, кликает быстрее, чем мы успеваем моргнуть, уходит в метро, возвращается через час и ждёт, что всё продолжится “как было”. Самое крутое в большом количестве пользователей — среди них всегда есть достаточно неравнодушных, чтобы быстро находить баги. Они часто пишут, где и когда столкнулись с ошибкой (дают точные данные, в каких логах искать), и это сильно упрощает их исправление.

Самое интересное, что многие баги не ловятся “месяцем тестов” просто потому, что тесты — это ограниченный набор сценариев. А реальная жизнь бесконечна. Поэтому лучший продукт получается не там, где “всё идеально на старте”, а там, где команда умеет спокойно признавать ошибки, быстро разбираться и делать приложение устойчивее с каждым обновлением. Вот почему в стартапе баги — это не “мы плохо работаем”, а часть взросления продукта. Важно не “вообще не иметь багов”, а уметь быстро их чинить.

P. S. Баг (англ. bug — «жук») — это термин, который используется в программировании и означает ошибку в программе

Реклама ООО «ЮНИК», ИНН: 7751240810

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

Отличная работа, все прочитано! Выберите

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества