Pull to refresh
3
0.5

WEB-программист, сетевой администратор

Send message

Почему я использую doc-as-a-code

Level of difficultyMedium
Reading time12 min
Views13K

В этой статье я постараюсь рассказать и показать, почему я использую подход doc-as-a-code, как помогает git системному аналитику и зачем это всё.

Читать далее

Крошечный веб-сервер на ESP32

Reading time12 min
Views15K

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

В качестве примера наш веб-сервер будет управлять парой светодиодов, в соответствии с представленной схемой. Соответственно, на плате ESP у нас будет размещен веб-сервер, с кнопками включения диодов.

Читать далее

Я 6 лет в IT. Вместо меня повысили коллегу, который гуглил, как проверить API-запрос. Что я сделал

Level of difficultyEasy
Reading time7 min
Views228K

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

Читать далее

Объектное хранилище S3: практическое руководство без лишних слов

Level of difficultyEasy
Reading time4 min
Views10K

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

Меня зовут Станислав Погоржельский, я технологический евангелист VK Cloud, и в том числе в рамках своей работы рассказываю про наши облачные и on-prem решения. В этой статье мне захотелось поделиться, как именно объектное хранилище S3 помогает решать реальные задачи.

Читать далее

Postman скрипт для обновления токена авторизации

Level of difficultyEasy
Reading time4 min
Views5.3K

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

В какой-то момент мне это надоело, и я задумался как это дело автоматизировать. Узнал, что можно написать Pre-request скрипт для коллекции в постмане, который будет выполняться перед каждым запросом, а уже в этом скрипте делать запрос токена авторизации.

С какими сложностями мне пришлось столкнуться... Ну во первых пришлось немного полазить в доке постмана, но там только поверхностно описано, не смог найти как сделать запрос. Гуглёж вопросов других бедолаг мне тоже не особо помог, т.к. там были немного другие кейсы.

Мне неожиданно помогла локально запущенная лама, которая мощно сходу дала мне хорошую подсказку, как сделать в скрипте постмана запрос с телом urlencoded и сохранить из него ответ в переменные. Чем я собственно и хотел поделиться.

Итак исходное положение. Имеем некую коллекцию запросов в постмане и все креды для авторизации сохранённые в переменных.

У нас есть запрос Auth, который получает токен авторизации.

Читать далее

Базовый набор тимлида: от каких убеждений стоит отказаться, чтобы команда тебя не возненавидела

Reading time5 min
Views37K

Привет! Меня зовут Артем Валевич, последние три года я тимлид в AGIMA. За это время я составил для себя что-то вроде тимлидского кодекса — список небольших правил и принципов, которые помогают мне в работе. Правила эти я вывел разными способами: что-то установил опытным путем, что-то подсказали старшие коллеги, что-то вычитал в статьях и книгах.

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

Читать далее

Угон аккаунтов в Telegram: схемы, о которых все должны знать

Reading time21 min
Views141K

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

Читать

Конспект по архитектуре ПО и System Design

Level of difficultyMedium
Reading time1 min
Views37K

Это компиляция основных знаний по проектированию архитектуры ПО, которые мне удалось собрать. Конспект доступен по ссылке на Miro-доску.

Можно сказать, что это взгляд на System Design с точки зрения фронтенд-разработчика, который пытается разобраться в теме.

Читать статью целиком

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

Level of difficultyEasy
Reading time5 min
Views18K

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

Но и в сфере «лицензионной» продукции произошли значительные изменения. В 2017 году Nintendo определила новое направление для развития портативных развлечений. Затем на рынок вышла Valve и показала, что любимые игры из Steam можно брать с собой в дорогу. А рядом с Nintendo и Valve появилась целая индустрия портативных консолей из Китая, которые из дешёвых устройств для продажи в киосках превратились в огромный рынок с множеством производителей и моделей на любой вкус и кошелёк.

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

Читать далее

Перестаньте использовать JWT для сессий

Reading time10 min
Views27K

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

Читать далее

Книга «PostgreSQL 17 изнутри»: заглянем под капот слона

Level of difficultyEasy
Reading time3 min
Views6.1K

Компания Postgres Professional выпустила обновленную книгу Егора Рогова «PostgreSQL 17 изнутри», которая станет настольной для тех, кто хочет понимать, как устроена СУБД. От многоверсионности до типов индексов – все, что нужно для эффективной работы и оптимизации, теперь под рукой.

Читать обзор книги

Open-source инструменты для визуализации данных

Level of difficultyEasy
Reading time5 min
Views10K

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

Читать далее

Глава 5: API-аутентификация, часть 2 (OAuth)

Level of difficultyEasy
Reading time7 min
Views8.1K

В Главе 4 мы упомянули, что большинство веб-сайтов используют имя пользователя и пароль для аутентификации учетных данных. Мы также обсудили, что повторное использование этих учетных данных для доступа к API небезопасно, поэтому API часто требуют другой набор учетных данных, нежели те, которые используются для входа на веб-сайт. Распространенным примером являются ключи API. В этой главе мы рассмотрим другое решение — открытую авторизацию (OAuth), которая становится наиболее широко используемой схемой аутентификации в Интернете.

Читать далее

Notion – это офисный плен! Объясняю, как выбраться с помощью Obsidian

Level of difficultyEasy
Reading time6 min
Views38K

Полгода назад Notion ушёл из России, оставив многих пользователей без удобного инструмента для работы и ведения заметок. Использовать VPN? Не вариант — продуктивность сразу падает. Я тоже столкнулся с этой проблемой, но вместо того, чтобы искать обходные пути, я решил найти достойную замену.

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

Читать далее

Как DNS работает через TLS: DNS-over-TLS на практике

Level of difficultyHard
Reading time12 min
Views14K

Защита DNS при помощи TLS позволяет скрыть состав DNS-трафика, который обычно передаётся в открытом виде. Соединения DNS-over-TLS не так распространены, как DNS-over-HTTPS, но зато могут прозрачно применяться не только для доступа к резолверам, но и на авторитативных серверах. Посмотрим, вооружившись консольными утилитами, как всё это работает на практике.

Читать далее

Аннотации типов в Python: коротко о главном

Level of difficultyEasy
Reading time9 min
Views10K

Привет, Хабр!

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

Аннотации сами по себе не заставляют Python проверять типы во время выполнения, но их можно использовать вместе с инструментами статического анализа. В первую очередь мы будем работать с mypy — популярным инструментом, который выявляет ошибки до запуска программы.

Читать далее

Пошаговое руководство для начинающих по разработке SPA на Laravel и Vue.js

Level of difficultyEasy
Reading time9 min
Views7.8K

Привет, Хабр. На связи Артем, Laravel-разработчик, и я написал инструкцию для начинающих разработчиков по созданию полноценного локального приложения с бэкендом на Laravel и фронтендом на Vue.js. 

Одностраничные приложения стали стандартом для создания динамичных и быстрых пользовательских интерфейсов. Одним из популярных стеков для разработки SPA является сочетание Laravel и Vue.js.

Пошагово разберу, как настроить среду разработки, создать API на Laravel, реализовать динамический интерфейс с использованием Vue.js и связать эти две части в единое приложение. 

После прочтения статьи вы сможете развернуть свое собственное SPA и использовать его как основу для реализации своих идей по функционалу. Этот пример станет отличной отправной точкой для создания более сложных проектов.

Читать далее

Переключение контекста — главный убийца продуктивности разработчика

Level of difficultyEasy
Reading time11 min
Views19K

Новый перевод от команды Spring АйО расскажет вам о том, почему так вредно отвлекать разработчиков от их работы и как избежать большого убытка для компании из-за прерывания рабочего процесса сотрудников.

Читать далее

Глубокое Погружение в Работу с Таймерами в React

Level of difficultyEasy
Reading time3 min
Views3.3K

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

Читать далее

Information

Rating
3,535-th
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity