Pull to refresh

От концепции до реализации: история создания AudioBrain или как мы пытались улучшить собственные когнитивные способности

Reading time19 min
Views12K


Как известно случайности не случайны. Год назад появился наш тандем из тридцатилетних семейных дядечек – для реализации идеи, которая недавно воплотилась в нашем первом приложении AudioBrain, доступным под Android и iOS.

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

Немного о нас. Меня зовут Александр, я работаю в отделе маркетинга крупной немецкой фирмы и занимаюсь фронтентом, дизайном и «обслуживанием» наших социальных сетей. Раньше работал сценаристом и геймдизайнером. Мой партнер и друг — Алексей, программист, занимается обслуживанием баз данных («ораклист», как он себя сам называет").

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

Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments7

UnnyWorld: постмортем

Reading time8 min
Views6.3K
После закрытия нашей игры UnnyWorld многие разработчики знакомые просили написать постмортем по игре. Решил поделиться конкретными примерами, коих за время разработки накопилось приличное количество. Будут рассмотренные ошибки, которые мы допустили, постараюсь дать парочку полезных советов.


Total votes 18: ↑16 and ↓2+14
Comments12

Еще одна система частиц. Постмортем

Reading time10 min
Views9.6K
image

В сентябре этого года должна была выйти мобильная игра Titan World от Unstoppable – минского офиса Glu mobile. Проект отменили прямо перед мировым релизом. Но наработки остались, и наиболее интересными из них, с любезного разрешения хэдов студии Dennis Zdonov и Alex Paley, хотелось бы поделиться с общественностью.
Подробности
Total votes 26: ↑25 and ↓1+24
Comments10

Система достижений (achievements) в Linderdaum Puzzle

Reading time5 min
Views6.6K
Не так давно на Хабре поднимался вопрос о проектировании системы достижений для игры. В комментах шло бурное и плодотворное обсуждение различных вариантов. Тогда мы уже тестировали нашу игру, готовились к релизу и поучаствовать в дебатах я не смог. Но увидев топик сразу же подумал: «У нас же есть как раз такая работающая система. Почему бы о ней не рассказать?». Подумал и записал в todo-list. Сегодня настало время рассказать, как это работает в нашем игровом проекте Linderdaum Puzzle.

Читать дальше →
Total votes 10: ↑8 and ↓2+6
Comments3

Постмортем с GGJ-2019: как набить шишек, но всё-таки сделать игру

Reading time6 min
Views3.1K
GGJ-2019 — это проходящий ежегодно, в последние выходные января, глобальный гейм джем. Отличается от других широкой поддержкой (спонсоры, все дела), большим количеством участников, а также тем, что он проходит исключительно в оффлайне. Далее весь опыт, полученный мной на мероприятии, будет описан применительно к площадке ЮУрГУ (Челябинск). Представленные в статье выводы не претендуют на универсальность, но, надеюсь, вы найдете их полезными.
Спойлер алерт: в статье есть список игр-финалистов с мероприятия, некоторые из них вполне играбельны.

Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments3

Post Mortem по масштабному сбою Amazon Kinesis в US-EAST-1 (25 ноября)

Reading time9 min
Views5.6K
Прим. перев.: на прошлой неделе сбой одного из сервисов AWS привёл к проблемам в доступности/корректном функционировании целого ряда облачных услуг этого крупного провайдера. В официальной публикации, оперативно размещённой инженерами интернет-компании, рассказывается о подробностях инцидента, его причинах и — главное — уроках, которые были извлечены из случившегося. Представляем вашему вниманию её перевод.

В этом материале мы хотели бы рассказать подробности о перебоях в обслуживании, случившихся в регионе Northern Virginia (US-EAST-1) 25 ноября 2020.

Amazon Kinesis позволяет в реальном времени собирать, обрабатывать и анализировать потоковые данные. Помимо непосредственного использования клиентами, он задействован в ряде сервисов AWS. Эти сервисы также пострадали от сбоя. Триггером (но не основной причиной) данного события стало относительно небольшое добавление мощностей к сервису, начавшееся в 2:44 утра PST и завершившееся в 3:47.
Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments3

Постмортем: как умудриться совершить 14 ошибок, разработав одну социальную игру

Reading time9 min
Views73K
В феврале 2012 года было принято решение сделать компьютерную игру самостоятельно. Исходя из смешанного опыта, замахиваться на величайшие вершины геймдева я не стал, сконцентрировавшись на достижимых целях: небольшая социальная игра на паре крупнейших российских платформ. Все условия этому способствовали: желание разрабатывать игры, опыт ведения проекта от идеи до релиза и поддержки, знание специфики социалок, опыт работы с инвесторами, хорошие знакомые, у которых всегда можно спросить если и не помощи, то хотя бы совета.

image

Поэтому следующие полтора года разработка прошла все стадии: концепт, поиск постоянных участников команды, разработка альфы, беты, релиз, поддержка — всё это время мы двигали разработку в нужном направлении, так или иначе решили все возникшие проблемы и… Игра «не выстрелила». Да, такое случается, игры не выстреливают гораздо чаще, чем наоборот. После того как я отвлёкся от бесконечных фиксов, планов на развитие, обсуждений с коллегами и прочих сотен неотложных вопросов, отошёл от проекта, послушал умных людей и попросту отдохнул — я понял, что этот опыт можно формализовать и даже поделиться с такими же независимыми разработчиками. Всех таковых, а также просто заинтересованных — жду под кат.

КДПВ: текущее распределение проектов в геймдеве, одна Белоснежка и семь гномов.
Читать дальше →
Total votes 133: ↑127 and ↓6+121
Comments34

Процесс управления инцидентами в Туту.ру

Reading time10 min
Views10K
Для каждой компании рано или поздно актуальной становится тема менеджмента инцидентов. Некоторые уже имеют настроенные и отлаженные процессы, кто-то только начинает свой путь в этом направлении. Сегодня я хочу рассказать о том, как мы в Туту.ру строили процесс обработки «сбоев на бою», и что у нас получилось.


Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments6

Разбор: ООМ на узле Kubernetes

Reading time5 min
Views10K


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


Случай первый


Суббота, 15 июня 2019 г., 17:12

Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments18

Habr postmortem report: на газетку упало

Reading time3 min
Views19K
Конец первого и начало второго месяца лета 2019 года выдались непростыми и ознаменовались несколькими крупными падениями мировых IT-сервисов. Из заметных: два серьёзных инцидента в инфраструктуре CloudFlare (первый — с кривыми руками и халатным отношением к BGP со стороны некоторых ISP из США; второй — с кривым деплоем уже самих CF, повлияло на всех, пользующихся CF, а это многие заметные сервисы) и нестабильная работа инфраструктуры Facebook CDN (повлияло на все продукты FB, включая Instagram и WhatsApp). Под раздачу пришлось попасть и нам, хотя наш outage был куда менее заметен на мировом фоне. Кто-то стал уже приплетать чёрные вертолёты и «суверенные» заговоры, посему выпускаем публичный post mortem нашего инцидента.


Читать дальше →
Total votes 102: ↑99 and ↓3+96
Comments30

Аварии помогают учиться

Reading time14 min
Views13K
За 3 последних года в Контуре случилось больше тысячи инцидентов разной степени эпичности. Причины разные: например, 36% вызвано некачественным релизом, а 14% — работами по обслуживанию железа в дата-центре. Откуда статистика? После каждого инцидента пишется отчёт — постмортем. Их пишут дежурные инженеры, которые отреагировали на уведомление об аварии и первыми начали разбираться в ее причинах. Постмортемы анализируются, выявляются и устраняются причины инцидентов, чтобы в дальнейшем подобные инциденты не возникали. Но так было не всегда.

Алексей Кирпичников (BeeVee) с 2008 года программировал в Яндекс. Пробки, работал над спортивными спецпроектами, был тимлидом команды бэкенда Яндекс.Такси. С 2014 года занимается DevOps и инфраструктурой в Контуре — разрабатывает инструменты, которые облегчают жизнь разработчиков из продуктовых команд. Идея писать и анализировать постмортемы появилась пять лет назад, и за это время постмортемы обросли шаблонами, глоссарием, памятками, скриншотами и аналитикой. Но не это самое сложное — труднее было преодолеть инертность, страхи и непонимание смысла отчетов об инцидентах среди инженеров. Что в итоге получилось и какую непоправимую пользу может нанести «диванная аналитика» — в расшифровке доклада Алексея.


Обратите внимание — под ножки стола разной длины подложены книжки «Метрики», «Тесты» и «Деплой».
Total votes 40: ↑37 and ↓3+34
Comments3

Как приоритеты pod'ов в Kubernetes стали причиной простоя в Grafana Labs

Reading time5 min
Views8.4K
Прим. перев.: Представляем вашему вниманию технические подробности о причинах недавнего простоя в работе облачного сервиса, обслуживаемого создателями Grafana. Это классический пример того, как новая и, казалось бы, исключительно полезная возможность, призванная улучшить качество инфраструктуры… может навредить, если не предусмотреть многочисленные нюансы её применения в реалиях production. Замечательно, когда появляются такие материалы, позволяющие учиться не только на своих ошибках. Подробности — в переводе этого текста от вице-президента по продукту из Grafana Labs.



В пятницу, 19 июля, сервис Hosted Prometheus в Grafana Cloud перестал функционировать примерно на 30 минут. Приношу извинения всем клиентам, пострадавшим от сбоя. Наша задача — предоставлять нужные инструменты для мониторинга, и мы понимаем, что их недоступность усложняет вашу жизнь. Мы крайне серьезно относимся к этому инциденту. В этой заметке объясняется, что произошло, как мы на это отреагировали и что делаем для того, чтобы подобное больше не повторялось.
Читать дальше →
Total votes 31: ↑31 and ↓0+31
Comments2

Постмортем инцидентов для начинающих

Reading time3 min
Views8.1K

image
Фото с сайта Unsplash.com


Успешные постмортемы без поиска виноватых помогают учиться на инцидентах, чтобы не допускать подобных ошибок в будущем.


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

Читать дальше →
Total votes 12: ↑11 and ↓1+10
Comments2

Postmortem, или как разобрать инцидент и ни с кем не разругаться (ну… или почти ни с кем)

Level of difficultyEasy
Reading time6 min
Views8.9K

Цель Postmortem'a - исследовать некую новую, неочевидную или неожиданную ситуацию или ошибку, с которыми вы / компания не хотите сталкиваться снова. Рассмотрение инцидента, или проблемы для того, чтобы понять, что всё-таки произошло, и предотвратить это в будущем, ну, или по крайней мере научиться раньше обнаруживать, минимизировать ущерб и пр.

К делу
Total votes 27: ↑24 and ↓3+21
Comments1

4 часа недоступности: постмортем падения Dodo IS

Reading time16 min
Views28K

Вечером пятницы 23 сентября, в самое «горячее» время для Додо Пиццы, развалилась платформа Dodo IS. Приём заказов превратился в тыкву, клиенты и пиццерии 4 часа испытывали проблемы. Это было наше самое крупное падение с 2018-го года как в техническом плане, так и по недополученной выручке.

Особенная боль — то, что мы упали в прайм-тайм. Наш бизнес устроен циклично и зависит от сезона: осенью заказов больше, чем летом, а по вечерам пятницы больше в несколько раз, чем в утром вторника. Обычно пик заказов приходится на вечер пятницы (с 16 до 20 по Москве). Это время — самое напряженное для системы и самое ценное для бизнеса.

У Dodo IS произошёл каскадный сбой и мы долго не могли реанимировать систему. В этой статье делимся постмортемом инцидента: разберём причины, опишем действия по устранению и расскажем о действиях, которые позволят избежать таких падений в будущем.

Читать далее
Total votes 161: ↑159 and ↓2+157
Comments106

Риск-менеджмент: Инцидент, post-mortem, плановые работы и Support card

Reading time13 min
Views3.8K

Меня зовут Илья Вазем, я отвечаю за всю инфраструктуру в СберМегаМаркете. Сегодня мы поговорим о наболевшем для любой команды разработки — об инцидентах. Я расскажу о том, как мы пытаемся с ними справляться и сводить возможность их появления к минимуму. А по ссылке можно посмотреть видео с моего доклада на DevOps Conf. 

СберМегаМаркет, наш маркетплейс, — высоконагруженная онлайн-платформа, где более 8 000 продавцов и более 100 000 заказов в день. Мы хостимся в трех дата-центрах, у нас 250 микросервисов, 2 500 виртуальных машин. Поддерживать такую систему без серьезного подхода к инцидентам невозможно. Итак, что представляет собой этот подход в нашем случае?

Читать далее
Total votes 6: ↑5 and ↓1+4
Comments1

3 истории сбоев Kubernetes в production: anti-affinity, graceful shutdown, webhook

Reading time8 min
Views14K

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

Как известно, учиться на чужом опыте дешевле, а посему — пусть эти истории помогут быть готовыми к возможным неожиданностям. Кстати, большая и регулярно обновляемая подборка ссылок на такие «failure stories» публикуется на этом сайте (по данным из этого Git-репозитория).
Читать дальше →
Total votes 37: ↑37 and ↓0+37
Comments12

Топ факапов Циан

Reading time6 min
Views18K


Всем добра! 

Меня зовут Никита, я тимлид команды инженеров Циан. Одной из моих обязанностей в компании является снижение количества инцидентов, связанных с инфраструктурой на проде, до нуля.
То, о чем пойдет речь далее, принесло нам много боли, и цель этой статьи — не дать другим людям повторить наших ошибок или хотя бы минимизировать их влияние. 
Читать дальше →
Total votes 44: ↑42 and ↓2+40
Comments13

Проблемы с DNS в Kubernetes. Публичный постмортем

Reading time4 min
Views4.5K
Прим. перев.: это перевод публичного постмортема из инженерного блога компании Preply. В нем описывается проблема с conntrack в Kubernetes-кластере, которая привела к частичному простою некоторых сервисов продакшна.

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

image

Это не DNS
Не может быть что это DNS
Это был DNS

Читать дальше →
Total votes 6: ↑5 and ↓1+4
Comments10
1