ПредисловиеОднажды мне пришлось участвовать в переводе большого старого проекта на новую СУБД. Это заняло несколько месяцев тогда. И этот урок я запомнил на всю жизнь. В проекте повсеместно код приложения был перемешан с кодом SQL-запросов. При этом они во многих местах еще �� генерировались динамически из фрагментов текста. С тех пор я являюсь ярым сторонником отделения SQL-кода от непосредственно кода программы и патологически не перевариваю динамическую генерацию запросов.Мухи - отдельно, ко…
В России в принципе меньше интересного IT, который разрабатывает что-то новое и перспективное, чем "в мире". Оно есть, но на всех не хватит. Многие хотят пилить ядро, применять алгоритмы, исследовать компиляторы, но таких мест единицы и все давно заняты, уходить из них ради вас никто не собирается. Подавляющая часть, особенно в бигтехе - чисто поддержка, латать дыры в чужом говнокоде: разрабы в 2022 поубегали, а бизнес прекращать получать прибыль из этого кода пока не планировал - подде…
JWT, SSO, OAuth, OpenID Connect — названия, знакомые каждому разработчику. В коде токены встречаются повсюду. Кажется, что всё понятно.Но стоит спросить: «Зачем в продакшене нужен JWKS?» или «Чем отличается OAuth2 от OpenID Connect?» — уверенность сразу исчезает. Большинство работает с аутентификацией поверхностно: по шаблону или туториалам, не понимая, что лежит в основе. В этой статье мы разберём, как устроен JWT и его подпись, зачем нужны access и refresh-токены, что такое JWKS и в чём отлич…
Большой системный обзор технологических сдвигов, которые меняют роль фронтенд-разработчикаПривет, Хабр!Фронтенд никогда не был скучной отраслью, но 2025 год стал моментом перелома. Мы наблюдаем не просто появление новых инструментов — меняется сама архитектурная модель веба, роль разработчика и набор навыков, необходимых для работы.Рынок уходит от монолитных SPA и JavaScript-нагромождений. На первый план выходит Server-First, нативные возможности Web Platform и глубокая интеграция AI, который п…
Всем привет, я сооснователь мессенджера Пачка и отвечаю, в том числе, за маркетинговую инфраструктуру. Нам нужно было оперативно увезти наш сайт с Webflow: 500+ страниц, блог и база знаний. При этом возвращать фронтенд-разработку в режим постоянной поддержки сайта мы не хотели. Поэтому рассматривали конструкторы и CMS, но быстро поняли, что это будет работа в минус. Все усилия на переезд лишь вернули бы сайт в рабочее состояние, не дав новых возможностей.В итоге мы решили вести разработку и под…
В этой статье я расскажу, как я для себя понимаю архитектуру десктоп-приложений — и почему в какой-то момент Rust перестал быть «языком, который я когда-нибудь посмотрю», и стал практичным решением.Сразу оговорюсь: это не попытка доказать, что «Electron — зло», а Rust — «спаситель». Это скорее дневник архитектора, который хотел собрать удобный продукт и по дороге несколько раз наступил на грабли. Некоторые грабли были с подогревом.Немного контекста: как мы сюда пришлиМногие разработчики действи…
Привет! Хочу рассказать о своей библиотеке hq-cropper — инструменте для обрезки изображений на чистом TypeScript без единой зависимости.Когда искал cropper для своего проекта, столкнулся с двумя проблемами. Во-первых, большинство популярных решений тянут за собой кучу зависимостей и весят 100+ KB. Во-вторых, мало кто работает с большими изображениями.Решил написать своё решение: лёгкое, без зависимостей, с умным алгоритмом масштабирования.Проблема больших изображенийСитуация: пользователь загру…
A plain text-based spaced repetition system.hashcards A plain text-based spaced repetition system. Features: Plain Text: all your flashcards are stored as plain text files, so you can operate on them with standard tools, write with your editor of choice, and track changes in a VCS. Content Addressable: cards are identified by the hash of their text. This means a card's progress is reset when the card is edited. Low Friction: you create flashcards by typing into a text file, using a li…
Backup automation for self-hosters Zerobyte Powerful backup automation for your remote storageEncrypt, compress, and protect your data with ease Backup management with scheduling and monitoring WarningZerobyte is still in version 0.x.x and is subject to major changes from version to version. I am developing the core features and collecting feedbacks. Expect bugs! Please open issues or feature requests Intro Zerobyte is a backup a…