Совсем скоро пройдет IT’s Tinkoff CTF для ИТ-специалистов. У нас уже готов сайт, где вы можете узнать подробности и зарегистрироваться, но это еще не все. Для тех, кто пока не знаком с таким форматом соревнований, мы подготовили эту статью. В ней мы расскажем, что такое CTF, и разберем тестовое задание. Если вы любите интересные задачи, приглашаем под кат.
Developer
Настраиваем Android-девайс для анализа трафика приложений
Периодически у меня возникает необходимость анализа мобильных приложений под Android. И каждый раз наибольшей проблемой является настройка перенаправления трафика мобильного приложения на прокси-сервер BurpSuite так, чтобы в нем отображались все запросы приложения.
Данная заметка предназначена для систематизации в едином источнике методов обхода ограничений по перенаправлению трафика. Вопросы обхода детектирования Root, SSL pinning-a и прочих механизмов безопасности не будут рассмотрены в рамках данной заметки.
Для настройки нам понадобятся: BurpSuite, ADB, apktool, jarsigner, Android-девайс (или эмулятор).
Tinkoff CTF 2024: разбор демозадания
В апреле пройдет второй Tinkoff CTF для ИТ-специалистов. В этой статье мы рассказываем о соревновании и разбираем одно из демозаданий CTF. Статья поможет лучше подготовиться, даже если вы никогда не участвовали в подобных мероприятиях.
Если хочется узнать больше деталей, заходите на сайт: там мы рассказываем подробности и можно будет зарегистрироваться.
Если вы любите интересные задачи, приглашаем под кат.
Чек-лист: что нужно было делать до того, как запускать микросервисы в prod
Эта статья содержит краткую выжимку из моего собственного опыта и опыта моих коллег, с которыми мне днями и ночами доводилось разгребать инциденты. И многих инцидентов не возникло бы никогда, если бы всеми любимые микросервисы были написаны хотя бы немного аккуратнее.
К сожалению, некоторые невысокие программисты всерьёз полагают, что Dockerfile с какой-нибудь вообще любой командой внутри — это уже сам по себе микросервис и его можно деплоить хоть сейчас. Докеры крутятся, лавешка мутится. Такой подход оборачивается проблемами начиная с падения производительности, невозможностью отладки и отказами обслуживания и заканчивая кошмарным сном под названием Data Inconsistency.
Если вы ощущаете, что пришло время запустить ещё одну аппку в Kubernetes/ECS/whatever, то мне есть чем вам возразить.
English version is also available.
Автоматизация тестирования микросервисов: плюсы и минусы тестов на Go
Микросервисы можно тестировать по-разному. У каждого подхода есть свои плюсы и минусы, поэтому, чтобы выбрать свой путь и избежать на нём «граблей», лучше всего учиться на чужом опыте. А ещё лучше — на конкретных примерах.
Я занимаюсь тестированием в Ozon и хочу рассказать про нашу инфраструктуру, автоматизацию тестирования и инструменты, которые мы для этого применяем. Покажу, какие распространенные ошибки есть в интеграционном тестировании в Golang. Поделюсь качествами хорошего теста, которые мы для себя определили, нашими подходами и методами подготовки данных для тестов.
Видео моего выступления на конференции Golang Live 2020 можно посмотреть здесь.
Как развитие алгоритмов сжатия остановилось 20 лет назад, или о новом конкурсе на 200 тысяч евро
В октябре прошлого года я опубликовал статью «О талантах, деньгах и алгоритмах сжатия данных», где с юмором описал, как «изобретают» новые алгоритмы сжатия люди, не имеющие достаточно навыков для реализации своих идей. А заодно рассказал про существующие конкурсы по новым алгоритмам, в том числе двигавшийся тогда к завершению конкурс алгоритмов сжатия с призовым фондом 50 тысяч евро.
Пост набрал 206 «плюсов», вышел на 2 место топа недели и вызвал оживленную дискуссию, в которой мне больше всего понравился комментарий: «Коммерческого интереса эффективность по сжатию алгоритмов сжатия без потерь сегодня не представляет, в силу отсутствия принципиально более эффективных алгоритмов. Деньги сегодня — в сжатии аудио-видео. И там и алгоритмы другие. Тема сжатия без потерь удобна именно лёгкостью верификации алгоритма, и не слегка устарела. Лет на 20.»
Поскольку я сам уже 20 лет в области сжатия видео, с ее бурным развитием мне спорить сложно. А вот что сжатие без потерь развиваться перестало… Хотя логика тут понятна каждому. Я до сих пор пользуюсь ZIP, все мои друзья пользуются ZIP с 1989 года — значит, ничего нового не появляется. Так ведь? Похоже рассуждают сторонники плоской земли. ))) Я не видел, знакомые не видели, и даже некоторые авторитеты утверждают, значит, это так!
О том, как Intel просили меня не прекращать читать курс по сжатию, ибо людей нет новые алгоритмы делать, я в прошлый раз писал. Но тут и Huawei в ту же дуду дует! Вместо того, чтобы раздать призы
Развивались ли алгоритмы сжатия без потерь в последние 20 лет? Чем закончился прошлый конкурс и на сколько опередили baseline? Сколько денег получили русские таланты, а сколько зарубежные? И есть ли вообще жизнь
Кому интересно — добро пожаловать под кат!
Как выучить английский язык самостоятельно. Шотландские наркоманы, провальные собеседования, подкасты и греки
Тема изучения английского вызывает недоумение. С одной стороны, действенные рецепты крайне просты и доступны каждому. С другой стороны, информационное поле до отказа набито стереотипами, мнениями, обещаниями и другими видами шума. По удаленности этих сторон друг от друга она может сравниться, наверное, только с темой похудения (хотя науке решение этой проблемы прекрасно известно).
Когда-то давно я вышел из школы, так же как и большинство соотечественников, совершенно не зная английский. Сейчас я свободно им владею, постоянно пользуюсь и это сильно помогло мне в жизни. Дорога между этими двумя точками была совсем не оптимальной, так же как дорога многих людей вокруг меня. Поэтому хочу поделиться своим разнообразным опытом изучения английского, опытом моих знакомых, за которыми я наблюдал последние 15 лет, а также дать простые рекомендации и инструменты для начинающих и продолжающих.
Все английские времена в одной простой схеме
В своё время я сам здорово намучился с английскими временами. Совершенно не получалось понять, как они формируются. Когда наконец удалось вызубрить все правила, самые простые существующие между временами закономерности всё равно оставались для меня неочевидными.
Как это часто бывает, по-настоящему понимаешь какую-то тему, только когда начинаешь рассказывать о ней другим («метод Фейнмана»). Несколько друзей, позавидовав моим «успехам», попросили помочь разобраться с английским. Тут и обнаружилось, что хотя я уже успешно использую английский в повседневной работе, обучать ему кого-то ещё — это совершенно отдельный навык.
Первоначальная идея. Сначала разъяснить все английские времена за один присест удавалось, надёргав различных идей из интернета: обрывки чьих-то схем, начинали склеиваться в свою схему и обрастать собственными легендами, а применение времён почти всегда было проще пояснить, используя хрестоматийную «систему английских времен с точки зрения употребления глагола “to vodka”». С каждой новой импровизированной лекцией, схема и нарратив продолжали меняться. «Ученики» попадались с различным базовым уровнем, что позволило понять, откуда нужно начинать плясать, чтобы урок был понятен всем, кто хоть раз слышал что-то про глаголы have и be. Когда счёт обученных уже пошёл на десятки, я решил оформить идею в более стройную лекцию. От первых попыток преподавания английских времён, до этого момента прошло пять лет. За это время было обучено ещё пару сотен человек. Обучено — по приколу. Денег за эти уроки я не брал.
[Личный опыт] Аргентина — лучшая страна в мире. Почему сюда нужно ехать
Кирилл Маковеев, российский журналист и (теперь) предприниматель, который 6 лет живет в Аргентине, поговорил с нами об особенностях этой страны, информация о которой в Сети устаревает каждые несколько месяцев. Снег раз в 50 лет, бесплатная медицина и вузы для туристов, идеология перонизма, уникальный испанский и причины вечной гиперинфляции.
Получится разговор о плюсах и… плюсах жизни в этой стране. Минусов на этот раз почти не будет!
Но если рядовой житель Земли боится восстания нейросетей и тотальной слежки за информацией, то у разработчика страхи совсем другие. Новые технологии — новые вызовы. Как со всем этим работать? Пользоваться только хорошо известными наработками профессионалов? Или искать иные пути?
Мы за второй подход. И эта коллекция — как раз о необычных путях и хитростях в современной разработке. Читай, учись — и не бойся инноваций.
SQLite — не игрушка
Рассказываю, почему SQLite отлично подойдет вам в повседневной работе. И неважно, разработчик вы, аналитик, тестировщик, админ или продакт-менеджер.
Как освоить Vim?
Я со всей уверенностью могу заявить о том, что Vim позволил мне повысить эффективность в деле написания программ. Работать стало удобнее (ниже я расскажу об этом более подробно). Я никому не хочу навязывать Vim, но очень рекомендую освоить этот редактор всем, кто занимается программированием, работает в сфере Data Science, в общем — тем, кто так или иначе пишет и редактирует некий код.
Если вам очень хочется узнать о том, стоит ли вам использовать Vim, и о том, кто и для чего им реально пользуется — взгляните на этот материал (кстати, не позвольте его названию, «Не пользуйтесь Vim», ввести себя в заблуждение). Ещё можете посмотреть это видео, которое, кстати, подготовил сам Люк Смит.
А теперь, учитывая всё вышесказанное, предлагаю поговорить о том, что такое, на самом деле, Vim!
«Как научиться думать»: три базовых момента
Очевидно, что учат этому далеко не везде. Как минимум, делают акцент не на этом навыке, а на отдельных методах и дисциплинах. Хотя, для занятий последними, да и для принятия решений на работе и в быту, базовая «ментальная гигиена» точно не повредит. Поговорим о ней в нашем материале и обсудим «матчасть», гибкую «оптику» и вспомогательные инструменты.
Лучшее в мире видео-объяснение нейронных сетей, глубокого обучения, градиентного спуска и обратного распространения
Видео от 3Blue1Brown отличаются поразительной понятностью и лаконичностью. Делать конспект видеоуроков по нейронным сетям у меня не получилось, ибо это была бы просто раскадровка, да и особая магия динамики именно видео непросто передать.
Из комментариев к прошлым публикациям мне стало понятно, что есть большое количество людей, кто не знает про канал, поэтому хочу поделиться четырьмя видео (+ русские субтитры и дубляж) и сэкономить время школьникам, родителям и учителям, чтобы они могли иметь быстрый доступ к самому интересному и качественному объяснению одной из самых важных тем современности.
Гидропоника. Выращиваем сверхострый чили и заставляем всех его есть
Полтора килограмма термоядерного Тринидадского Скорпиона я в итоге собрал с одного куста на гидропонике.
У меня было много довольно странных хобби. Некоторые приводили к странным эффектам, вроде массового домашнего производства домашнего порошка для посудомойки. В список к этому странному ряду я решил добавить еще один пункт. Теперь я развлекаюсь еще и с гидропоникой. Причем эффект получился еще более адовый, чем я ожидал.
Тема чудовищно огромная, охватить ее за один пост вряд ли получится, поэтому я постараюсь ограничиться описанием принципа, почему это вообще работает и дать максимально исчерпывающий мануал, чтобы каждый смог из желудей и спичек повторить мой эксперимент. В самом начале будет много теории. Можете ее проскочить и сразу перейти к нужным покупкам, а вернуться к ней позже.
Сегодня в меню
- Что такое гидропоника и почему она гораздо проще, чем почва с червячками
- Никаких дорогих бутылочек. Мешаем компоненты по три рубля за ведро
- Питание растения как алгоритм
- Как быстро собрать прототип гидропонной установки
- Что такое capsicum chinense и как выжить при дегустации
Детальный разбор структуры зарплат IT-специалистов в Кремниевой Долине
О чем пойдет речь
В рамках пятничного безумия, давайте представим, что у Вас волшебным образом появилось разрешение на работу в США, и Вы уже готовы после завтрака телепортироваться в самый центр Маунтин-Вью, чтобы моментально найти работу в крупной IT-компании и начать зарабатывать свой первый взнос на дом в Кремниевой Долине. Но прежде, давайте попробуем разобраться из чего состоит заработная плата разработчика программного обеспечения, что обычно включено в социальный пакет IT-специалиста, и какие дополнительные льготы получают сотрудники крупных технологических компаний в США. Все эти знания пригодятся Вам, чтобы продать себя дороже, жить комфортнее и быстрее заработать на сарайчик в пригороде Сан-Франциско.
Если Вам проще воспринимать информацию на слух или в режиме видео-ролика, то специально для Вас готово 28-минутное видео с тайм-кодами в комментариях.
Три главных компонента
Итак, инженер по разработке программного обеспечения в США — профессия довольно
престижная. Конечно, это не анестезиологи, не хирурги, не ортодонты, не дантисты, не терапевты, не педиатры, и даже не пилоты, которые по официальной статистике министерства труда США зарабатывают куда больше разработчиков. Но ведь зона ответственности и риски у последних гораздо выше.
Так вот, в первую очередь нужно понимать, что сумма, которую заплатит Вам работодатель
формируется из трех компонентов:
- Сash — это деньги, которые Вы получаете непосредственно на карточку два раза в
месяц (или же их присылают Вам бумажным чеком, который потом можно либо обналичить, либо положить на Ваш банковский счет. - Non-cash — это акции в различных вариациях: RSA, RSU, PSU, PSA или ESPP.
- Benefits — все косвенные затраты работодателя на Вас, с которых Вы также имеете
выгоду.
Когда речь заходит о зарплате, тут принято говорить о сумме за год до уплаты налогов. Эта сумма называется Total Compensation (TC) и включает в себя Cash и Non-cash компоненты.
Скрипт выборки российских облигаций по параметрам
Работа скрипта по поиску облигаций на Московской бирже
Так как сервисов по поиску российских облигаций много, но ни один из них не имеет достаточной гибкости и простоты и поэтому на работу с ними тратится достаточно много времени. Исходя из этого и решил разработать собственный скрипт для поиска облигаций.
Сделал это на Node.js с выводом полученных результатов в локальный html файл с интерактивной таблицей от Google Charts (а в случае, если JavaScript отключен в браузере, что например происходит при открытии этого html файла из мессенджера на iPhone, то отображается статическая версия таблицы, также сгенерированная скриптом).
Производительность Raspberry Pi: добавляем ZRAM и изменяем параметры ядра
После установки Raspberry Pi в свою домашнюю серверную я заметил, что в моменты дефицита оперативной памяти она становилась очень невосприимчивой и даже подвисала. Чтобы решить эту проблему, я добавил ZRAM и внёс несколько изменений в параметры ядра.
Про фразовые глаголы
Почему это так легко и понятно? Потому что в раннем детстве мы глубоко усвоили значения русских приставок и с тех пор оперируем ими легко и бессознательно. Так же легко и бессознательно 7-8-летние английские дети оперируют частицами во фразовых глаголах, на ходу сочиняют новые фразовые глаголы, которых нет ни в одном словаре.
Безответственные преподаватели рекомендуют значения фразовых глаголов «просто запоминать», не пытаясь понять их внутреннюю логику. Это порочная практика: фразовых глаголов только самых распространённых – тысячи. «Выучить» их принципиально невозможно. Вот, скажем, let – это «позволять, пускать». А фразовый глагол «let in on» означает «посвящать в тайну». Запомнить такое способен только человек, который понимает переносные значения частиц, образующих фразовые глаголы.
Если правильно усвоить эти переносные значения, можно начать понимать даже такие фразовые глаголы, с которыми сталкиваешься впервые. Знание нескольких принципов освобождает от необходимости знания многих фактов.
Полная энергетическая автономия или как выжить с солнечными батареями в глубинке (часть 2. практическая)
Реальная солнечная автономка для конечного пользователя состоит из потраченных денег, проб, монтажа устройств и обучения домочадцев пользоваться электричеством экономно. Причем, на последний пункт стоит обратить внимание особо, поскольку автономка предполагает совершенно особый подход к расходу энергии и даже перестройке привычных действий.
Information
- Rating
- Does not participate
- Registered
- Activity