Pull to refresh
68
0.2
Игорь @lexore

Infrastructure Engineer

Send message

Как содержать пароли. Мой сетап

Level of difficultyMedium
Reading time7 min
Views55K

Я долго собирал информацию о том, как организовать свои аккаунты. Как сделать доступ к ним достаточно надёжным и стойким к утере девайсов. 

Меня интересовало, как я могу залогиниться туда, где многофакторная авторизация через телефон, в случае потери телефона. 

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

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

Читать далее
Total votes 69: ↑69 and ↓0+69
Comments184

Теория игр за 15 минут

Level of difficultyEasy
Reading time15 min
Views60K

Многие из вас, я уверен, слышали о теории игр в какой-то момент своей жизни. Если вы хотите выглядеть умным и произвести впечатление на свою девушку — просто упомяните «игру с нулевой суммой» или «эволюционную стратегию», и ваши шансы отвести её домой сегодня вечером только что подскочили на 50%. Или вы можете использовать теорию игр, чтобы принимать решения в инвестировании своих денег (чтобы их полностью потерять и разориться) или, например решая, на какой девушке жениться (что также очень вероятно вас разорит). Как видите, это очень полезная теория.

Чтобы казаться умным - достаточно выучить эти пару выражений, но чтобы на самом деле что-то понимать - придется разобраться. Оказывается, это не так уж сложно и довольно интересно. Давайте посмотрим.

Читать далее
Total votes 92: ↑89 and ↓3+103
Comments30

Применение APDEX в нагрузочном тестировании

Level of difficultyMedium
Reading time7 min
Views1.6K

При автоматизации нагрузочных тестов специалисты рано или поздно приходят к мысли о том, как сравнивать результаты проводимых тестов. И не только сравнивать, но и демонстрировать результаты команде и бизнесу. Часто сравнение результатов нагрузочных тестов напоминает игру «найди 10 отличий» на почти одинаковых картинках. И если для специалистов в тестировании производительности это не проблема, то для коллег, не погруженных в теорию, это может стать таковой. Тут необходим какой-то простой и наглядный индикатор, который легко позволит определить — показатели стали лучше или хуже в процессе работы над проектом.

Меня зовут Олег, я инженер по исследованию производительности в SimbirSoft. Для обобщения результатов тестов я предлагаю рассмотреть использование индекса APDEX (Application Performance inDEX).

? Считаем APDEX
Total votes 3: ↑3 and ↓0+3
Comments0

Добро пожаловать в нагрузочное тестирование! Вы поседеете через полгода

Level of difficultyEasy
Reading time11 min
Views14K

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

Когда только переходишь в нагрузку, выясняется, что кругом всегда пожар, нет времени для чашки чая с молоком, а весь процесс нужно держать в зубах и двумя руками. Знаний всегда недостаточно: я не знаю другой специальности в IT, где так часто и кардинально меняется стек и требуемый набор навыков.

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

Далее можно узнать чуть больше обо всех ужасах.

Узнать об ужасах больше
Total votes 21: ↑19 and ↓2+23
Comments3

Bitwarden в действии: Автоматизация смены ключей и паролей для AWS

Level of difficultyEasy
Reading time10 min
Views6.4K

В мире, где каждая учетная запись требует от нас еще одного пароля, и каждый облачный сервис, такой как AWS, зависит от надежности этих ключей, менеджеры паролей вроде Bitwarden выступают как спасители. Они не просто хранят наши ключи и пароли, но и делают их управление значительно удобнее. Однако, даже с таким мощным инструментом, как Bitwarden, мы сталкиваемся с ограничением: он не способен автоматически обновлять и менять используемые в облачных сервисах ключи и пароли. Итак, что делать, когда ручное обновление ключей и паролей становится скучной и малоэффективной задачей? В этой статье мы исследуем, как можно объединить удобство использования Bitwarden с эффективными методами автоматизации для управления учетными данными AWS. Представьте себе – больше нет монотонного ввода паролей и обновлений ключей вручную. Но для этого придется немного постараться.

Что ж, начнем...
Total votes 7: ↑7 and ↓0+7
Comments30

Как изучать китайский язык / 怎样学习汉语? Пошаговая инструкция

Level of difficultyEasy
Reading time2 min
Views62K

Не секрет, что китайский язык считается сложным для носителей европейских языков. Но сам язык как ни странно не очень сложный. В нем, например, существительные и прилагательные не изменяются по родам, числам и падежам, а глаголы не спрягаются. Сложность составляют письменность и определенный уровень культурной изоляции.

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

И как же?
Total votes 22: ↑13 and ↓9+8
Comments39

Большой гайд по планированию. Как впихнуть в сутки 40 часов и оставить время на личную жизнь?

Level of difficultyEasy
Reading time8 min
Views81K

Всем привет, на связи команда Skill Vortex!

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

Перед ним стояла задача – каким-то чудом совместить стажировку на полную ставку, учебу в ВУЗе, изучение иностранного языка и личную жизнь.

История показалась нам довольно интересной, поэтому на ее основе мы решили написать подобие руководства по планированию и оптимизации времени.

В этой статье:

Чуть подробнее про историю

Начинаем первичную обработку: утечки, приоритезация и пожелания

Составляем нормальное расписание: 7 основных принципов

Ищем недостатки в получившемся

Еще пара универсальных советов

Заключение и полезные ссылки

Читать далее
Total votes 27: ↑19 and ↓8+22
Comments114

Fooocus v2 — бесплатный Midjourney у вас на компьютере. Подробная инструкция по установке и использованию нейросети

Level of difficultyEasy
Reading time10 min
Views255K

Друзья, всем привет! Сегодня я хочу рассказать вам про самую простую и доступную для понимания нейросеть, которая создает изображения по вашему текстовому описанию. Она называется Fooocus и основана на знаменитой Stable Diffusion XL. Это идеальное решение в качестве вашей первой нейросети, и необходимый инструмент для любого дизайнера или контент мейкера.

Внутри много тяжелых изображений.

Читать далее
Total votes 90: ↑87 and ↓3+114
Comments216

Всё что нужно знать про ECS

Reading time30 min
Views85K

Привет, Хабр! В этой статье я расскажу всё, что знаю про Entity-Component-System и попытаюсь развеять различные предубеждения об этом подходе. Здесь вы найдете много слов о преимуществах и недостатках ECS, об особенностях этого подхода, о том как с ним подружиться, о потенциальных граблях, о полезных практиках, а также в отдельном разделе коротко посмотрим на ECS фреймворки для Unity/C#.

Окунуться в мир ECS
Total votes 35: ↑34 and ↓1+36
Comments24

Парадокс видеоигрового «Вархаммера», или Почему стоит уважать Games Workshop

Level of difficultyEasy
Reading time11 min
Views16K
image

Каждый геймер в какой-то момент фантазировал на тему видеоигровой интерпретации своей любимой франшизы фильмов или необычного спин-оффа в уже существующей игровой вселенной. Со вселенными, мир и персонажей которых ты полюбил, и хитросплетения лора коих ты выучил наизусть, хочется соприкоснуться хоть в какой-нибудь новой оболочке, не засматривая и переигрывая до дыр старые тайтлы. Вот поэтому Hogwarts Legacy стала одной из главных игр года в плане популярности и выручки, для Half-Life 2 до сих пор делают моды, а ремейк первого «Котора» ждут затаив дыхание.

И где-то в стороне от этих ждущих по крупицам новый контент фанатов каких-нибудь Gears of War или «Гарри Поттера» заседают гордые ценители вселенной Warhammer, которые играют одновременно в свежевышедшие арена-шутер и RTS, скачивают дополнения для идейного наследника Left 4 Dead и магического американского футбола, потирают руки в предвкушении RPG от самих создателей серии Pathfinder и новой части экшена Space Marine. Как так получилось и какие плюсы и последствия для игроков от такой «раздачи» лицензии на вселенную «мрачной тьмы далёкого будущего»?
Читать дальше →
Total votes 33: ↑31 and ↓2+43
Comments35

Альтернативные клиенты для мессенджеров. Стоит ли вообще обращать на них внимание?

Level of difficultyEasy
Reading time5 min
Views15K

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

Короткий обзор альтернативных клиентов для популярных мессенджеров. Попытки разобраться. Что стоит ставить. Субъективная оценка. Ничего более.

В чулан
Total votes 5: ↑4 and ↓1+3
Comments23

Создаем свой VPN с защищенным от блокировок протоколом AmneziaWG, или WireGuard на максималках

Reading time5 min
Views163K


Всем привет! Возможно уже совсем скоро разные новостные и  IT-ресурсы будут подчищать информацию о способах обхода блокировок. А пока этого не случилось, запасаемся полезными гайдами и разворачиваем свои собственные VPN с защищенными от блокировок протоколами. Расскажу как это сделать, как изменилась Amnezia и как мы защитили WireGuard от блокировок.

Читать далее
Total votes 91: ↑89 and ↓2+111
Comments123

Что я понял на первой работе программистом / Мои советы Junior-разработчикам

Reading time8 min
Views69K

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

Материал будет полезен тем, кто ищет первую работу или не так давно её нашёл. Примеры будут из области Python Backend, но наблюдения универсальны и спокойно перекладываются на другую область. Поехали!

Читать далее
Total votes 27: ↑16 and ↓11+8
Comments49

Сколько стоит ваш Wi-Fi?

Level of difficultyEasy
Reading time5 min
Views45K

А вы задумывались когда нибудь, сколько стоит разгадать пароль вашего Wi-Fi? Понятно, что все прекрасно помнят, что с увеличением длины парольной фразы - увеличивается сложность и при достаточной длине, перебор занимает ХХХХ - лет.

Давайте разберемся - сколько это стоит...
Total votes 58: ↑56 and ↓2+71
Comments184

Лучше быть, чем казаться. 10 шагов, чтобы стать «вкусным» кандидатом на собеседовании

Level of difficultyEasy
Reading time8 min
Views61K

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

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

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

Читать далее
Total votes 55: ↑35 and ↓20+21
Comments87

Просто добавь команд: как реализовать диалоговый Телеграм бот на основе шаблона

Level of difficultyEasy
Reading time17 min
Views13K

В предыдущей статье я рассказала, как быстро создать инфраструктуру для диалогового бота на основе Yandex Serverless Functions и базы данных YDB. В качестве примера использовался примитивный бот, реализованный в моём репозитории ydb_serverless_telegram_bot.

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

/start
Total votes 6: ↑5 and ↓1+5
Comments0

Разворачиваем веб-приложение в Kubernetes с нуля

Level of difficultyEasy
Reading time31 min
Views41K

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

Всё это время для простоты разработки и отладки компоненты приложения запускались локально через Docker Compose. Но как развернуть такое приложение в настоящем продакшн-окружении? Как обеспечить горизонтальное масштабирование? Как раскатывать новые релизы без простоя? 

В этой статье мы разберёмся, как разворачивать многокомпонентное веб-приложение в кластере Kubernetes на примере его локальной реализации — minikube. Мы поднимем виртуальный кластер прямо на рабочем ноутбуке, разберёмся с основными сущностями Kubernetes, запустим и соединим между собой компоненты демо-приложения и обсудим, какие ещё возможности Kubernetes пригодятся нам в суровом энтерпрайзе. Если вы занимаетесь разработкой и слышали о Kubernetes, но ещё не имели возможности пощупать его руками — добро пожаловать под кат!

Скорее к YAML-инженерии
Total votes 38: ↑38 and ↓0+38
Comments10

System Design для самых маленьких. Reference к интервью

Level of difficultyEasy
Reading time5 min
Views20K

Эта статья-инструкция по построению высоконагруженных распределенных систем. Описанный подход может быть полезен как reference при подготовке к интервью по system design в FAANG и не только.

Читать далее
Total votes 15: ↑13 and ↓2+15
Comments3

IO_URING. Часть 1. Введение

Reading time13 min
Views31K

Всем привет! Наверное, многие уже слышали о новом интерфейсе ядра Linux — io_uring. Это новый способ работы с асинхронным I/O (и не только) в Linux. Кстати, новый он не только из-за даты выхода в свет, но и в плане подходов, которые предлагает разработчику.

Заинтересовало? Более подробно разберемся под катом.

Читать далее
Total votes 29: ↑28 and ↓1+35
Comments37

9 упражнений для тех, кто весь день за компом

Reading time4 min
Views78K

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

Читать далее
Total votes 62: ↑58 and ↓4+63
Comments27

Information

Rating
2,396-th
Registered
Activity

Specialization

DevOps, Site Reliability Engineer (SRE)