среда, 27 мая 2015 г.
воскресенье, 24 мая 2015 г.
Киргишаны 2015
Чуть меньше года назад узнал от Коли о одном их самых массовых XC марафонов - Киргишаны.
70 километров я еще опасался, но уж больно увлекательным показался рассказ. А еще посмотрел ролик:
Тогда и порешил, что в 2015 поеду обязательно.
Вчера это случилось.
Команда подобралась - я, Коля Шестаков и Святослав Контарь.
Загрузились в электричку. Кстати, очень удобный способ перевозки велосипедов - вешать их на полки. Это прямо перед моим лицом:
Пока ехали (полтора часа до места) - строили и обсуждали планы и стратегии - кто как выступит:
Коля претендовал на время лидера + 20%
Слава хотел попасть в первую сотню (заявившихся на сайте было 280).
Моя цель - занять место, затейливо вычисленное по формуле Количество участников минус количество женщин и ветеранов (так я условно назову категорию 50+, сперва называл пенсионеры, но вы бы их видели).
Быстро добрались до лагеря. Солнце жарило вовсю:
Кстати. Спонсор моей поездки на киргишаны - Женя, заботливо предоставившая камеру GoPro.
Тест камеры перед стартом и приветы зрителям:
Как видно, набежали тучи. Затем они так и остались. Идеальная погода.
Итак, скоро старт. Общий, все собрались в кучу, вот вот начнется финальный отсчет:
Спортсмены стояли во главе колонны и унеслись вперед, а мы не спеша выезжали с поляны большой толпой. Впрочем первый же спуск с подъемом нас быстро рассортировали. На этом спуске разогнался до 53 км/ч.
Перед лесной частью трассы - проезжаем деревню. Собакам уже надоело облаивать лидеров и на нас они не реагируют. Раздаем пятюни местным пацанам:
Кстати, вот этого дедушку, которого я героически обогнал в деревне, можно заметить еще на нескольких видео. Из семидесяти километров мы с ним шли рядом, периодически меняясь местами, не меньше 30. Потом он оторвался. Или я отстал. Вот так, кстати, выглядит основная часть трассы: сухой грунт, редкие лужи. И еще раз обгоню этого деда.
Перед самым интересным подъемом - небольшой спуск. На 9й минуте встречаю Славу с пробитым колесом, на 20 минуте он обгоняет меня в горку. В конце видео - с 20 минуты - начало последней большой горки. Для тех, кому неясно, почему я настолько медленно еду по ровной дороге- обратите внимание на направление роста деревьев.
А это большой спуск. На видео совсем не ощущается скорость, ехал 25-40км/ч, только и успеваешь - выбирать места без сильных кочек и обдумывать, как красиво обогнуть ручей. Еще не ощущается вода, обдающая тебя, когда проезжаешь по лужам. Что особенно понравилось - на подъеме такого количества луж, ручьев и грязи практически не было. На спусках же они махом пролетались.
На 6 минуте героически помогаю двум гонщикам, которые уже почти 20 минут мучаются с пробитым колесом и неработающим насосом.
КП и начало асфальта.
Больше не снимал, ехал практически один, груунт в поле, асфальт. И окончательно сдохший, а потому медленно едущий я.
Финишировал через 4 часа 20 минут. Трек в страве.
Всем, кто проехал дистанцию, давали медальки участников. Селфи с честно заработанной моей:
Счастливые лица соучастников, Слава:
Почему лица довольные? Цели, озвученные в электричке вроде бы не оправдались ни у кого. Впрочем, посмотрим на протоколы. Тем не менее - очень рад, что проехал. С организацией, трассой и соперниками все от хорошо до отлично. Даже погода не подвела, что редкость.
Итого - надо больше тренироваться - как обычно, но с нюансами. Во-первых подъемы. Если даже в длинные в подъемы я уже заезжаю, то скорость этого заезда оставляет желать лушего. А еще после 50 км совершенно закончились силы и еле плелся.
В следующем году поеду обязательно, присоединяйтесь.
70 километров я еще опасался, но уж больно увлекательным показался рассказ. А еще посмотрел ролик:
Вчера это случилось.
Команда подобралась - я, Коля Шестаков и Святослав Контарь.
Загрузились в электричку. Кстати, очень удобный способ перевозки велосипедов - вешать их на полки. Это прямо перед моим лицом:
Пока ехали (полтора часа до места) - строили и обсуждали планы и стратегии - кто как выступит:
Коля претендовал на время лидера + 20%
Слава хотел попасть в первую сотню (заявившихся на сайте было 280).
Моя цель - занять место, затейливо вычисленное по формуле Количество участников минус количество женщин и ветеранов (так я условно назову категорию 50+, сперва называл пенсионеры, но вы бы их видели).
Быстро добрались до лагеря. Солнце жарило вовсю:
Внимательно изучили маршрут на стенде с тролльским призывом:
Кстати. Спонсор моей поездки на киргишаны - Женя, заботливо предоставившая камеру GoPro.
Тест камеры перед стартом и приветы зрителям:
Итак, скоро старт. Общий, все собрались в кучу, вот вот начнется финальный отсчет:
А это большой спуск. На видео совсем не ощущается скорость, ехал 25-40км/ч, только и успеваешь - выбирать места без сильных кочек и обдумывать, как красиво обогнуть ручей. Еще не ощущается вода, обдающая тебя, когда проезжаешь по лужам. Что особенно понравилось - на подъеме такого количества луж, ручьев и грязи практически не было. На спусках же они махом пролетались.
На 6 минуте героически помогаю двум гонщикам, которые уже почти 20 минут мучаются с пробитым колесом и неработающим насосом.
КП и начало асфальта.
Больше не снимал, ехал практически один, груунт в поле, асфальт. И окончательно сдохший, а потому медленно едущий я.
Финишировал через 4 часа 20 минут. Трек в страве.
Всем, кто проехал дистанцию, давали медальки участников. Селфи с честно заработанной моей:
Счастливые лица соучастников, Слава:
И Коля, кстати, его трек:
Почему лица довольные? Цели, озвученные в электричке вроде бы не оправдались ни у кого. Впрочем, посмотрим на протоколы. Тем не менее - очень рад, что проехал. С организацией, трассой и соперниками все от хорошо до отлично. Даже погода не подвела, что редкость.
Итого - надо больше тренироваться - как обычно, но с нюансами. Во-первых подъемы. Если даже в длинные в подъемы я уже заезжаю, то скорость этого заезда оставляет желать лушего. А еще после 50 км совершенно закончились силы и еле плелся.
В следующем году поеду обязательно, присоединяйтесь.
воскресенье, 17 мая 2015 г.
вторник, 12 мая 2015 г.
Прошлого пост
Намедни совершили прогулку по местам прошлого десятилетней давности.
Около ГУКа девочки косплеят мстителей:
Около крыла экономфака обнаружился ранее тут отсутствовавший артефакт:
Прошлись мимо Звездного. Сейчас не работает, хотя закрылся уже давненько:
И - то самое здание:
Общаги теперь открыты до часу:
А из окон комнат не торчит во все стороны витуха. В центра - наша, 308 комната:
Стадион все еще открыт для всех желающих, правда вход остался только один. И пиво на трибунах уже не пьют. Наверное, это хорошо.
Славно прогулялись. Хорошо, что приехал:
Около ГУКа девочки косплеят мстителей:
Около крыла экономфака обнаружился ранее тут отсутствовавший артефакт:
Прошлись мимо Звездного. Сейчас не работает, хотя закрылся уже давненько:
И - то самое здание:
Общаги теперь открыты до часу:
А из окон комнат не торчит во все стороны витуха. В центра - наша, 308 комната:
Стадион все еще открыт для всех желающих, правда вход остался только один. И пиво на трибунах уже не пьют. Наверное, это хорошо.
Славно прогулялись. Хорошо, что приехал:
пятница, 8 мая 2015 г.
Дополнительных велопланов пост
Как водится, кроме более интересной версии 11 мая, вашему вниманию предлагается прогулка попроще, прогуляться.
Дата: 10 мая
Время: 12:00 (гисметео обещает ясно с полудня)
Место: парковка перед БЦ Татищевский
Маршрут
В программе - Малый Конный, отстойники, московский парк, гора Хрустальная, озеро Глухое, озеро Чусовское, будущий офис контура.
Дата: 10 мая
Время: 12:00 (гисметео обещает ясно с полудня)
Место: парковка перед БЦ Татищевский
Маршрут
В программе - Малый Конный, отстойники, московский парк, гора Хрустальная, озеро Глухое, озеро Чусовское, будущий офис контура.
Лени пост
Осталось три тысячи непроеханных километров.
Осталось три сотни страниц непрочитанной книги.
Осталось тридцать страниц недопереведенного учебника.
Осталось три выходных дня.
Вот, кстати, полностью стих от František Hrubín
Еще не осень! Если я
Терплю, как осень терпит лужи,
Печаль былого бытия,
Я знаю: завтра будет лучше.
Я тыщу планов отнесу
На завтра: ничего не поздно.
Мой гроб еще шумит в лесу.
Он - дерево. Он нянчит гнезда.
Я, как безумный, не ловлю
Любые волны. Все же, все же,
Когда я снова полюблю,
Вновь обезумею до дрожи.
Я знаю, что придет тоска
И дружбу, и любовь наруша,
Отчаявшись, я чужака -
В самом себе я обнаружу.
Но в поединке между ним
И тем во мне, кто жизнь прославил,
Я буду сам судьей своим.
И будет этот бой неравен.
четверг, 7 мая 2015 г.
Велопланов пост
UPD 2 мая не вышло, пробуем еще раз 11 мая.
Предлагаю скататься в майские на очередную покатушку одного дня.
Возможных названия у поездки два:
Главное верить, что организатор знает дорогу.
или
Mountain Shit в честь поселка, который будем проезжать.
Дата: 11 мая.
Место встречи: Уктус, улица Зимняя, 27.
Время: 11:00
Маршрут:
Идея поездки - поближе ознакомиться с оврагами, горками и просеками Уктуса, а затем в режиме отдыха проехать еще 40 километров до академического. В основном - лесными тропками.
Как водится, предложения по времени и маршруту - принимаются.
Предлагаю скататься в майские на очередную покатушку одного дня.
Возможных названия у поездки два:
Главное верить, что организатор знает дорогу.
или
Mountain Shit в честь поселка, который будем проезжать.
Дата: 11 мая.
Место встречи: Уктус, улица Зимняя, 27.
Время: 11:00
Маршрут:
Идея поездки - поближе ознакомиться с оврагами, горками и просеками Уктуса, а затем в режиме отдыха проехать еще 40 километров до академического. В основном - лесными тропками.
Как водится, предложения по времени и маршруту - принимаются.
Тестирования требований пост
Не далее, как месяц назад коллеги прошли курс Наташи Руколь Школа Тест-Аналитика , о чем рассказали нам.
Судя по их отзывам, полезность - высокая. Планирую пройти сам.
Мое мнение на этот счет - школа укладывается в парадигму "надо думать заранее", так как требования как правило идут до разработки; а также в парадигму "кто если не мы", так как почти всей описанной у Наташи работой, на мой взгляд, должны заниматься аналитики.
И по стечению обстоятельств получилость так, что в это же время Юля @yuzaks устроила у нас локальную движуху под названием "Ревью аналитики".
Она была вообще про аналитиков и для аналитиков (и это правильно), но позвали одну команду тестеров в качестве то ли приглашенных звезд, то ли подмостовых троллей, то ли источников альтернативного мнения.
В чем суть, смысл и процесс?
Делаем раз - собираем штук 16 аналитиков и 3 тестировщиков. делим на команды. Выбираем аналитиков-жертв, просим несколько годных постановок (ТЗ, требований).
Делаем два - читаем книгу 15 главу книги Карла И. Вигерса Разработка требований к программному обеспечению. В 15 главе как раз - о тестировании требований.
Делаем три - адаптируем к нашим реалиям список вопросов из книги и раздаем командам. Вопросы - по блокам, ясность, проверяемость, трассируемость, оформление, качество внесения изменений и так далее.
Четыре - даем командам полторы недели времени, на почитать, посовещаться, договориться о ответах на вопросы и выслать все это организаторам.
И финальное шоу - собираем всех вместе, кидаемся дискутируем, обобщаем, делимся опытом, обсуждаем, планируем улучшения.
Мои ощущения от процесса:
С аналитиками, страшно, у всех уж очень умные лица.
Советов надавали уймищу огромную, и если их все выполнить, качество постановки возрастет неимоверно. Но время создания постановки тоже, неясен приоритет советов.
Мне кажется, что те, кто проводил ревью, немного забыли, что такие постановки читают все же люди в теме. И у них большой контекст. И не обязательно надо, чтоб он был в постановке.
Мне кажется, те, кто писал постановку забыли, что она нужна для того, чтоб ее читали. И читают ее с определенной целью. И цели - "перенести в вики информацию, которую я знаю о бизнесе" и "реализовать приложение для бизнес-процесса" предполагают разную структуру.
Во время обсуждения все же выяснилось, что и новички часто читают такие постановки, так что и контекст не помешал бы.
По итогам решили, что полезность - неимоверная, но с актуальностью будут проблемы. Все шоу длилось 2 недели, а особо ценный эффект оно приобретет, если будет применяться к постановкам в те редкие моменты, когда постановка уже написана, а код еще нет.
Обратно же, если сделать шоу регулярным и не столь малочисленны, то хуже тоже не будет.
Посмотрим, как дело пойдет дальше.
Кстати, понравилась цитата из книги:
Судя по их отзывам, полезность - высокая. Планирую пройти сам.
Мое мнение на этот счет - школа укладывается в парадигму "надо думать заранее", так как требования как правило идут до разработки; а также в парадигму "кто если не мы", так как почти всей описанной у Наташи работой, на мой взгляд, должны заниматься аналитики.
И по стечению обстоятельств получилость так, что в это же время Юля @yuzaks устроила у нас локальную движуху под названием "Ревью аналитики".
Она была вообще про аналитиков и для аналитиков (и это правильно), но позвали одну команду тестеров в качестве то ли приглашенных звезд, то ли подмостовых троллей, то ли источников альтернативного мнения.
В чем суть, смысл и процесс?
Делаем раз - собираем штук 16 аналитиков и 3 тестировщиков. делим на команды. Выбираем аналитиков-жертв, просим несколько годных постановок (ТЗ, требований).
Делаем два - читаем книгу 15 главу книги Карла И. Вигерса Разработка требований к программному обеспечению. В 15 главе как раз - о тестировании требований.
Делаем три - адаптируем к нашим реалиям список вопросов из книги и раздаем командам. Вопросы - по блокам, ясность, проверяемость, трассируемость, оформление, качество внесения изменений и так далее.
Четыре - даем командам полторы недели времени, на почитать, посовещаться, договориться о ответах на вопросы и выслать все это организаторам.
И финальное шоу - собираем всех вместе, кидаемся дискутируем, обобщаем, делимся опытом, обсуждаем, планируем улучшения.
Мои ощущения от процесса:
С аналитиками, страшно, у всех уж очень умные лица.
Советов надавали уймищу огромную, и если их все выполнить, качество постановки возрастет неимоверно. Но время создания постановки тоже, неясен приоритет советов.
Мне кажется, что те, кто проводил ревью, немного забыли, что такие постановки читают все же люди в теме. И у них большой контекст. И не обязательно надо, чтоб он был в постановке.
Мне кажется, те, кто писал постановку забыли, что она нужна для того, чтоб ее читали. И читают ее с определенной целью. И цели - "перенести в вики информацию, которую я знаю о бизнесе" и "реализовать приложение для бизнес-процесса" предполагают разную структуру.
Во время обсуждения все же выяснилось, что и новички часто читают такие постановки, так что и контекст не помешал бы.
По итогам решили, что полезность - неимоверная, но с актуальностью будут проблемы. Все шоу длилось 2 недели, а особо ценный эффект оно приобретет, если будет применяться к постановкам в те редкие моменты, когда постановка уже написана, а код еще нет.
Обратно же, если сделать шоу регулярным и не столь малочисленны, то хуже тоже не будет.
Посмотрим, как дело пойдет дальше.
Кстати, понравилась цитата из книги:
Ловушка
Остерегайтесь тестировщиков, которые утверждают, что не могут приступить к работе, пока требования еще формируются, и тех, которые утверждают, что для тестирования ПО им не нужны требования. Тестирование и требования связаны между собой синергетическими отношениями, поскольку они представляют дополняющие взгляды на систему.
пятница, 17 апреля 2015 г.
четверг, 16 апреля 2015 г.
понедельник, 13 апреля 2015 г.
Урок 5. Слайд 263
Поехали:
Слайд 263
Но сейчас время подвести итоги.
От тестировщиков требуют выполнения множества различных задач. Вместе с тестированием необходимы локализация багов, написание отличных отчетов, написание документации к тестам. участие в ревью кода, создание инструментов тестирования, помощь техсаппорту с нахождением обходных путей, обзор пользовательской документации и многое другое.
Но даже для основного тестирования требуется бесконечное время, что не оставляет времени на все эти активности. Каждый раз, когда ты делаешь что-то одно, ты не делаешь остальное. Легко сказать, что тестировщики должны всегда полностью документировать каждый тест, но решения в реальном мире более сложные, например, если время на написание документации забирает время от ревью кода или наипсания репортов.
Перед лицом бесконечного количества задач утверждение, что тестировщики должны всегда делать и то и это - глупо. Каждая задача - предмет компромисса - какова ценность этой задачи в сравнении с остальными, вместо которых она будет делаться.
Вы можете попытаться решить эту проблему, нанимая больше тестировщиков, но перед лицом бесконечного количества задач, вы потеряете деньги и у вас все еще будут тестировщики, которые не успевают автоматизировать, документировать и так далее и вам все равно придется решать, какие задачи вы будете делать, а какие нет.
Это, вероятно, самая большая проблема в тестировании ПО.
Слайд 263
Но сейчас время подвести итоги.
От тестировщиков требуют выполнения множества различных задач. Вместе с тестированием необходимы локализация багов, написание отличных отчетов, написание документации к тестам. участие в ревью кода, создание инструментов тестирования, помощь техсаппорту с нахождением обходных путей, обзор пользовательской документации и многое другое.
Но даже для основного тестирования требуется бесконечное время, что не оставляет времени на все эти активности. Каждый раз, когда ты делаешь что-то одно, ты не делаешь остальное. Легко сказать, что тестировщики должны всегда полностью документировать каждый тест, но решения в реальном мире более сложные, например, если время на написание документации забирает время от ревью кода или наипсания репортов.
Перед лицом бесконечного количества задач утверждение, что тестировщики должны всегда делать и то и это - глупо. Каждая задача - предмет компромисса - какова ценность этой задачи в сравнении с остальными, вместо которых она будет делаться.
Вы можете попытаться решить эту проблему, нанимая больше тестировщиков, но перед лицом бесконечного количества задач, вы потеряете деньги и у вас все еще будут тестировщики, которые не успевают автоматизировать, документировать и так далее и вам все равно придется решать, какие задачи вы будете делать, а какие нет.
Это, вероятно, самая большая проблема в тестировании ПО.
воскресенье, 12 апреля 2015 г.
Стихов на память пост
Еще немного из Мельниковой, просто оставлю здесь.
Раз:
Раз:
мы менялись. реже звонили, копили на что-то средства,Два:
боролись за статус и реже верили чьим-то словам.
и из всех друзей из далёкого светлого детства
в итоге остались лишь те, кого каждый придумал сам.
забывают лица, слова и даты,И три:
но живёт веками один сюжет:
не забыть того, кто тебя когда-то
так и не сумел полюбить в ответ.
у нас проблема, хьюстон.
только давай без лжи во спасение,
иначе сразу отбой.
"всё будет хорошо!" — самое хреновое утешение,
гораздо лучше "я не знаю, что будет дальше, но проживу это вместе с тобой".
четверг, 9 апреля 2015 г.
У страха глаза велики
Версия плана следующего велозаезда.
Название "У страха глаза велики"
Ссылка на карту.
По трассе ехать практически не придется - лишь выбраться за ЕКАД.
В основном - асфальт и грунт вдоль леса. В одном месте - мимо комбината по захоронению радиоактивных отходов.
Зеленым обозначен короткий путь. по которому можно срезать и даже заблудиться и поплутать.
На эти выходные обещают дожди, так что скорее всего - на следующие, 18 или 19 апреля.
Принимаются предложения.
Присоединяйтесь.
Название "У страха глаза велики"
Ссылка на карту.
По трассе ехать практически не придется - лишь выбраться за ЕКАД.
В основном - асфальт и грунт вдоль леса. В одном месте - мимо комбината по захоронению радиоактивных отходов.
Зеленым обозначен короткий путь. по которому можно срезать и даже заблудиться и поплутать.
На эти выходные обещают дожди, так что скорее всего - на следующие, 18 или 19 апреля.
Принимаются предложения.
Присоединяйтесь.
Урок 5. Слайд 261-262
Поехали:
Слайд 261
Баг воспроизвелся в такой ситуации: каждый раз. когда удерживаемый звонок сбрасывался, в стек попадал мусор, но каждый раз, когда телефон находился в режиме ожидания - стек очищался. Проблема проявлялась в случае, когда у вас было много звонков на ожидании и суммарное количество удерживаемых и сброшенных звонков превысит 20.Тогда стек переполнится.
Когда стек переполнится, телефон начинает переводить настоящие звонки на номера из режима ожидания. Вы звоните кому-то, ждете на линии, затем слышите голос: "Здравствуйте, кто вы и чего хотите?"
Телефон продолжает переводить звонки дальше по стеку.
Слайд 262
Нам очень повезло с этим багом. Этот продукт находился в бета-тесте. Иначе последствия могли быть хуже. Когда мы поняли, как работает этот баг, мы смогли представить реалистичный сценарий использования системы Я хочу вернуться к вопросу покрытия. Время от времени какой-нибудь напыщенный дурак встает и говорит, что мы не должны пытаться достичь полного покрытия состояний или ветвей.
Слайд 261
Баг воспроизвелся в такой ситуации: каждый раз. когда удерживаемый звонок сбрасывался, в стек попадал мусор, но каждый раз, когда телефон находился в режиме ожидания - стек очищался. Проблема проявлялась в случае, когда у вас было много звонков на ожидании и суммарное количество удерживаемых и сброшенных звонков превысит 20.Тогда стек переполнится.
Когда стек переполнится, телефон начинает переводить настоящие звонки на номера из режима ожидания. Вы звоните кому-то, ждете на линии, затем слышите голос: "Здравствуйте, кто вы и чего хотите?"
Телефон продолжает переводить звонки дальше по стеку.
Слайд 262
Нам очень повезло с этим багом. Этот продукт находился в бета-тесте. Иначе последствия могли быть хуже. Когда мы поняли, как работает этот баг, мы смогли представить реалистичный сценарий использования системы Я хочу вернуться к вопросу покрытия. Время от времени какой-нибудь напыщенный дурак встает и говорит, что мы не должны пытаться достичь полного покрытия состояний или ветвей.
понедельник, 6 апреля 2015 г.
Урок 5. Слайд 259-260
Поехали:
Слайд 259
Предположим, что вызывающий вешает трубку в то время, когда вы поместили его вызов на удержание. Это редкий кейс в 1980-е. Стандарты клиентского сервиса были очень высокими. 90% вызовов на удержании пересоединялись в течении двух минут и не очень много людей бросали трубку, пока их вызов удерживали. И мы хорошо обрабатывали этот случай. Когда вызывающий бросал трубку, мы убирали его имя с дисплея, помечали линию, как доступную, все выглядело так, как будто звонок закончен. Но запись о звонке оставалась в стеке. Недоступная, но не удаленная. И стек переполнялся.
Слайд 260
Вам кажется, что мы могли бы заметить сразу эту проблему, так как наши тестировщики работали с 10 вызовами на удержании и сбрасывали вызовы.
Но проблема более тонкая.
В действительности наш код проверял стек каждый раз, когда мы добавляли или удаляли из него что-либо. И мы поймали бы этот баг. К сожалению, к этому времени прошло слишком много времени и мы были уверены, что удержание и ожидание звонка работают корректно и не ожидали обнаружить проблемы со стеком.
Баг был создан позже, когда мы увеличили размер стека до 20 звонков в очереди. Так что даже если мусор и попадал в стек, у нас все равно было в нем место для настощих звонков. Также мы добавили сброс стека в некоторые места программы, например в состояние режима ожидания телефона. Так мы убеждались что если в стек и попадет мусор, то он будет очищен.
Это не было необходимо, так как стек работал, но мы сделали это на всякий случай, в рамках защитного программирования, вы учитываете возможность внесения дефектов в код в дальнейшем и хотите автоматически обнаруживать и восстанавливать сбои.
В следующем году один из нас действительно внес баг и этот защитный код сделал его безвредным и незаметным для остальных.
Слайд 259
Предположим, что вызывающий вешает трубку в то время, когда вы поместили его вызов на удержание. Это редкий кейс в 1980-е. Стандарты клиентского сервиса были очень высокими. 90% вызовов на удержании пересоединялись в течении двух минут и не очень много людей бросали трубку, пока их вызов удерживали. И мы хорошо обрабатывали этот случай. Когда вызывающий бросал трубку, мы убирали его имя с дисплея, помечали линию, как доступную, все выглядело так, как будто звонок закончен. Но запись о звонке оставалась в стеке. Недоступная, но не удаленная. И стек переполнялся.
Слайд 260
Вам кажется, что мы могли бы заметить сразу эту проблему, так как наши тестировщики работали с 10 вызовами на удержании и сбрасывали вызовы.
Но проблема более тонкая.
В действительности наш код проверял стек каждый раз, когда мы добавляли или удаляли из него что-либо. И мы поймали бы этот баг. К сожалению, к этому времени прошло слишком много времени и мы были уверены, что удержание и ожидание звонка работают корректно и не ожидали обнаружить проблемы со стеком.
Баг был создан позже, когда мы увеличили размер стека до 20 звонков в очереди. Так что даже если мусор и попадал в стек, у нас все равно было в нем место для настощих звонков. Также мы добавили сброс стека в некоторые места программы, например в состояние режима ожидания телефона. Так мы убеждались что если в стек и попадет мусор, то он будет очищен.
Это не было необходимо, так как стек работал, но мы сделали это на всякий случай, в рамках защитного программирования, вы учитываете возможность внесения дефектов в код в дальнейшем и хотите автоматически обнаруживать и восстанавливать сбои.
В следующем году один из нас действительно внес баг и этот защитный код сделал его безвредным и незаметным для остальных.
воскресенье, 5 апреля 2015 г.
Настроения пост
Кто ненужных вычеркнул, те свободные,
Нужно отпускать, с кем вы слишком разные.
Ведь, если настроение не новогоднее,
Значит, точно не с теми празднуешь
Это некая Ок Мельникова.
Хрен ее знает, сильно не все мне нравится, а это зацепило. Взгуглите этот стих целиком, да и остальные. А вдруг?
Велоотчета пост
Скатались намедни вполне неплохо.
Неделю назад было еще холодновато, через неделю будет уже слишком грязно, а сейчас - в самый раз.
В лесу еще полно снега, но лежит плотно, с настом, потому ехать - вполне можно. Даже как я - на сликах, благо, широкие, 2.3''
По лесу полно бегунов, которые удивленно на нас смотрят.
Как-то так:
И фоточки. Все вместе:
Снежок, примерно так выглядела треть дороги:
Так выглядела очень небольшая часть дороги:
Уже почти дома:
Неделю назад было еще холодновато, через неделю будет уже слишком грязно, а сейчас - в самый раз.
В лесу еще полно снега, но лежит плотно, с настом, потому ехать - вполне можно. Даже как я - на сликах, благо, широкие, 2.3''
По лесу полно бегунов, которые удивленно на нас смотрят.
Как-то так:
И фоточки. Все вместе:
Снежок, примерно так выглядела треть дороги:
Так выглядела очень небольшая часть дороги:
Уже почти дома:
пятница, 3 апреля 2015 г.
Разведка боем
Время встречи - 10 утра, 4 апреля, суббота.
Место: Шефская-Баумана около Монетки:
Маршрут:
https://maps.yandex.ru/?um=dQ8EO1Px9sCrSJE1PNgzaiX3yUq9_zf2&l=sat%2Cskl
Особенности:
В лесу снег лежит вовсю, и вовсю тает. С высокой степенью вероятности много где проехать просто не получится.
Цель - покататься, посмотреть на красоты и по возможности - наметить относительно проходимые дороги.
Импровизация на местах, изменение маршрута и поиски коротких путей приветствуются.
среда, 1 апреля 2015 г.
Shonin XM Anomaly in YEKATERINBURG
В минувшую субботу прошел сабж. Ссылка на гплюс событие.
Те, кто не в курсе, что это вообще такое, гуглите, смартфонная игра с геопривязкой. По всему миру.
В субботу очередной тур - в Екатеринбурге.
Я принимал участие в составе мобильной группы энлайтов.
Сперва не очень понимал суть - почти полгода не заходил в ингресс, но через час движухи уловил и вспомнил смысл.
Мы - энлайты - выиграли в екб.
Расскажу о том, что мне особенно запомнилось и понравилось.
С двух противоборствующих сторон в игре принимало участие почти 400 человек.
Среди четырехсот игроков - множество приехавших сюда именно на эту игру со всех концов страны.
Были группы, задачи которых были на расстоянии десятков, а то и сотен километров от Екатеринбурга, были группы, которые метались по всему екб и группы, не спеша передвигавшиеся в пределах центра.
Необходимая координация всех игроков - с точностью до минуты, гео - с точностью до полусотни метров.
Напоминаю, несколько сотен по большей части незнакомых людей с общей идеей и целью.
Что было сделано для обеспечения такого качества координации? Дальше смесь того, о чем знал точно и о чем примерно догадался.
Нас разбили на группы по 4-8 человек, названия групп - по фонетическому алфавиту ИКАО. Я был в группе Лума. Как я понимаю, первые несколько групп - альфа, браво, чарли - аналитики и небо.
У капитанов шевроны с буквой группы.
Каждый игрок шарит свое местоположение капитану и небу и слушает командную рацию.
Каждый капитан случает рацию операции.
У каждого капитана есть аналитик - небо, который дает ему указания из штаба и пересылает карты с оперативной информацией по задаче.
Задания для мобильных групп выдаются не заранее на всю игру, а за час-полчаса перед отсечками.
Группа аналитиков следит за явными действиями противников и за их перемещениями - косвенно, плюс по донесениям от полевых игроков.
По отзывам организация в Екб - круче питерской и киевской. Сильно запомнились способности и возможности людей по самоорганизации и самоотверженности при выполнении поставленной задачи (велокоманде, а имелась и такая, было реально холодно. Да, я был не в ней).
Оргам - спасибо и респект.
Вывод: мотивация - необходима, но не достаточна. Дисциплина и грамотная организация решает не меньше.
Те, кто не в курсе, что это вообще такое, гуглите, смартфонная игра с геопривязкой. По всему миру.
В субботу очередной тур - в Екатеринбурге.
Я принимал участие в составе мобильной группы энлайтов.
Сперва не очень понимал суть - почти полгода не заходил в ингресс, но через час движухи уловил и вспомнил смысл.
Мы - энлайты - выиграли в екб.
Расскажу о том, что мне особенно запомнилось и понравилось.
С двух противоборствующих сторон в игре принимало участие почти 400 человек.
Среди четырехсот игроков - множество приехавших сюда именно на эту игру со всех концов страны.
Были группы, задачи которых были на расстоянии десятков, а то и сотен километров от Екатеринбурга, были группы, которые метались по всему екб и группы, не спеша передвигавшиеся в пределах центра.
Необходимая координация всех игроков - с точностью до минуты, гео - с точностью до полусотни метров.
Напоминаю, несколько сотен по большей части незнакомых людей с общей идеей и целью.
Что было сделано для обеспечения такого качества координации? Дальше смесь того, о чем знал точно и о чем примерно догадался.
Нас разбили на группы по 4-8 человек, названия групп - по фонетическому алфавиту ИКАО. Я был в группе Лума. Как я понимаю, первые несколько групп - альфа, браво, чарли - аналитики и небо.
У капитанов шевроны с буквой группы.
Каждый игрок шарит свое местоположение капитану и небу и слушает командную рацию.
Каждый капитан случает рацию операции.
У каждого капитана есть аналитик - небо, который дает ему указания из штаба и пересылает карты с оперативной информацией по задаче.
Задания для мобильных групп выдаются не заранее на всю игру, а за час-полчаса перед отсечками.
Группа аналитиков следит за явными действиями противников и за их перемещениями - косвенно, плюс по донесениям от полевых игроков.
По отзывам организация в Екб - круче питерской и киевской. Сильно запомнились способности и возможности людей по самоорганизации и самоотверженности при выполнении поставленной задачи (велокоманде, а имелась и такая, было реально холодно. Да, я был не в ней).
Оргам - спасибо и респект.
Вывод: мотивация - необходима, но не достаточна. Дисциплина и грамотная организация решает не меньше.
Урок 5. Слайд 257-258
Поехали:
Слайд 257
Один из наших бета тестеров являлся брокером. В те дни брокеры были все равно, что Олимпийские атлеты среди пользователей телефона. Они совершали сделки по телефону. Они совершали множество звонков и могли работать по одному соединению, удерживая другое. В пиковой нагрузке они могли принимать множество звонков, ставить их на удержание и брать заказы так быстро, как могли.
Брокеры любили нашу систему. Вместо жонглирования телефонными трубками, с одной на плече, другой в руке и третьей на столе, у них был один телефон, который мог жонглировать десятью соединениями. Оденьте гарнитуру и работайте весь день, не напрягая шею, пытаясь записывать, пока говорите по телефону.
С сожалению, в тяжелые дни, иногда некоторые из наших телефонов ломались. Затем ломались другие. И третьи. Затем первый телефон перезагружался, возвращался на линию, но снова зависал после нескольких минут разговоров. Такое могло продолжаться час или больше.
Слайд 258
Наконец, мы выяснили, в чем проблема. Вот простая диаграмма состояний. У вас есть возможность удерживать 10 звонков. Ваш телефон обычно находится в режиме ожидания. Затем телефон звонит, вы берете трубку, телефон переходит в состояние на линии, либо вы не берете трубку и через некоторое время звонящий тоже кладет трубку.
Если вы соединились, то у вас есть возможность говорить некоторое время и повесить трубку. Тогда телефон также переходит в режим ожидания. Или вы могли бы поставить вызов на удержание. Когда вы это делаете, мы берем данные звона и помещаем их в стек.
Слайд 257
Один из наших бета тестеров являлся брокером. В те дни брокеры были все равно, что Олимпийские атлеты среди пользователей телефона. Они совершали сделки по телефону. Они совершали множество звонков и могли работать по одному соединению, удерживая другое. В пиковой нагрузке они могли принимать множество звонков, ставить их на удержание и брать заказы так быстро, как могли.
Брокеры любили нашу систему. Вместо жонглирования телефонными трубками, с одной на плече, другой в руке и третьей на столе, у них был один телефон, который мог жонглировать десятью соединениями. Оденьте гарнитуру и работайте весь день, не напрягая шею, пытаясь записывать, пока говорите по телефону.
С сожалению, в тяжелые дни, иногда некоторые из наших телефонов ломались. Затем ломались другие. И третьи. Затем первый телефон перезагружался, возвращался на линию, но снова зависал после нескольких минут разговоров. Такое могло продолжаться час или больше.
Слайд 258
Наконец, мы выяснили, в чем проблема. Вот простая диаграмма состояний. У вас есть возможность удерживать 10 звонков. Ваш телефон обычно находится в режиме ожидания. Затем телефон звонит, вы берете трубку, телефон переходит в состояние на линии, либо вы не берете трубку и через некоторое время звонящий тоже кладет трубку.
Если вы соединились, то у вас есть возможность говорить некоторое время и повесить трубку. Тогда телефон также переходит в режим ожидания. Или вы могли бы поставить вызов на удержание. Когда вы это делаете, мы берем данные звона и помещаем их в стек.
Подписаться на:
Сообщения (Atom)




























