Обычное утро 2027 года

Ну что же, доброе утро. Сегодня… Хмм… 23 сентября 2027 года. Надо бы посмотреть, какие на сегодня планы. О, сегодня же день рождения моего двоюродного племянника! Надо бы поздравить его. Интересно… Мы не виделись с ним уже три года. Даже не могу точно вспомнить, как он выглядит. Ну да ладно, это не проблема. Нельзя помнить всех и всё - вполне достаточно пары воспоминаний и дежурного набора слов.

Вежливость и память - наше всё. Опорная точка для здравого рассудка человека, который не может существовать в социальном вакууме. Об этом свидетельствует социальный проект “Third Life”, который был запущен пять лет назад, сразу после Второй Мировой Криптовойны, которая стоила человечеству миллионы сожженных вместе с мозгами нейроимплантов. Потери были так велики, что на освободившихся от обслуживания мощностях было решено запустить ИИ симуляторы восьмого поколения, которые, обработав полностью всю информацию о деятельности человека в сети, создавали его виртуальный образ, который мог почти полноценно участвовать в его социальной жизни.

Предыстория одного мага

Небольшая предыстория мага Традиции Эвтанатос для тех, кому это может быть интересно. Орфография и построение предложений может местами страдать, так как тест является компиляцией телеграмм переписки. Итак…

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

В семье и вокруг всё тоже складывалось не лучшим образом. Отец был алкоголиком и часто по пьяни бил его, мать и младшую сестру. Мать была молчаливой страдалицей, и пыталась наставить Джеффри на путь христианского смирения. Он смирялся, но религиозные соображения проходили мимо, несмотря на наличие креста - Джеффри не мог понять, почему Бог хочет, чтобы вечерами его бил смрадный тупой боров.

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

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

Антипаттерны для поиска соискателей

Оригинал поста на хабре

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

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

Система для работы с чарниками для ролевых игр

Оригинал поста на хабре

Сегодня пятница, так что самое время предаться нашим весёлым странным страстям. Надеюсь, что здесь найдётся аудитория, которая при словосочетании “ролевые игры” представляет себе нечто отличное от девки с плёткой в латексе… Если вы именно о ней и подумали, то дальше читать вам, скорее всего, будет неинтересно.

На самом деле речь идёт про это:

Автоматизированное тестирование ботов для Telegram

Оригинал поста на хабре

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

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

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

Конечно, можно зарегистрировать дополнительного бота для тестирования, но это вариант кривой и некрасивый. Обращение ко внешнему апи во время тестов, заглушка, которая не даст общаться с ботом кому попало, ограничение на скорость отправки сообщений раз в секунду… Если слать сообщение раз в секунду, то граф из каких-то 60 вершин будет тестироваться уже больше минуты! И я уже не говорю о том, что у нас нет никакой возможности смоделировать возросшую нагрузку на бота, при которой он упрётся в ограничение в 30 сообщений в секунду… В общем, я понял, что опять придётся делать что-то своё.

Сложно о простом - ESLint в команде

Оригинал поста на хабре

Маленькое введение. Скорее всего этот пост будет интересен только тем, кто знает, что такое ESLint, но всё же сделаю небольшую вводную - а то сам сильно расстраиваюсь, когда открываю публикацию, и она начинается словами “уже 10 лет мы используем ххх, о котором вы конечно же знаете, а написать мы решили про xxx.yyy, что никто никогда не делал, но наверняка это очень круто”.

Итак, ESLint это крутой инструмент, который позволяет проводить анализ качества вашего кода, написанного на любом выбранном стандарте JavaScript. Он приводит код к более-менее единому стилю, помогает избежать глупых ошибок, умеет автоматически исправлять многие из найденных проблем и отлично интегрируется со многими инструментами разработки (привет, Jetbrains, мы любим вас!). Кстати, он, как и другие линтеры, не обязывает вас к одному какому-то конкретному стилю. Наоборот - вы можете выбрать что-то из лучших практик и доработать по своему усмотрению!

Безоблачное мобильное приложение — жизнь без Google Play

Оригинал поста на хабре

Чуть раньше мы с вами думали про то, какие есть альтернативы Google Play, и как можно обходить разные способы блокировки на мобильных приложениях при помощи Google Compression Proxy и тора. Сегодня хочется поговорить о том, можно ли запустить и поддерживать полноценное мобильное приложение на Android без помощи какой либо обязательной внешней инфраструктуры. Рассказывать буду на примере всё того же приложения для просмотра рутрекера. Оно ничем особо не примечательно, но очень наглядно.

Экзамен для будущих «русских хакеров» в Московском Политехе

Оригинал поста на хабре

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

Покемоны замерзли. Как реальная реальность влияет на дополненную и на мобильные приложения в целом

Оригинал поста на хабре

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

Как на самом деле пишут софт в 2016 году

Оригинал поста на хабре

Многие годы софтварные компании скрывали от нас это. Читайте скорее, пока не удалили, и распространяйте как можно шире.

Вы до сих пор думаете, что огромные корпорации обладают большим штатом разработчиков, которые пишут им программный код руками? Наивно. На дворе 2016 год, и правила полностью изменились. Сейчас легко доступны чудовищные вычислительные мощности, о которых 10 лет назад нельзя было и заикнуться. Ваш телефон мощнее, чем вычислительные модули, которые ставили на космические корабли. А человеческое время стоит страшно дорого - в особенности время квалифицированных программистов, которыми, словно пчёлами, якобы набиты офисы технологических гигантов.