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

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

Демократизация разработки приложений с помощью таких инструментов, как Bubble.io, похожа на раздачу всем электроинструментов: это революционно, пока кто-нибудь не забудет про защитные очки. В условиях стремительной сборки приложений citizen-разработчиками безопасность часто становится жертвой этой революции low-code. Давайте разберёмся, как благонамеренные создатели случайно создают цифровые минные поля и, что самое важное, как их обезвреживать. Армагеддон аутентификации Представьте, что вы оставили входную дверь незапертой, потому что «район кажется спокойным». Это слабая аутентификация в приложениях Bubble....

25 июня 2025 06:00 · 3 минуты · 610 слов · Maxim Zhirnov
Почему вам следует время от времени избегать использования фреймворков и библиотек: Руководство для бунтаря

Почему вам следует время от времени избегать использования фреймворков и библиотек: Руководство для бунтаря

Признаюсь честно: однажды я построил рабочий API, используя только основные модули Node.js. Когда коллеги это увидели, их реакции варьировались от «Ты просто маньяк!» до «Погоди… это и правда работает?». Спойлер: всё работало. Хотя такие фреймворки, как Express или NestJS, — это замечательная страховка, иногда только отказ от них помогает понять, как всё работает на самом деле. Скрытые издержки удобства фреймворков Потеря производительности Фреймворки включают в себя всё, что только можно представить....

24 июня 2025 06:00 · 3 минуты · 499 слов · Maxim Zhirnov
Создание распределенного хранилища сеансов в Go: Когда ваши сеансы нуждаются в переносе

Создание распределенного хранилища сеансов в Go: Когда ваши сеансы нуждаются в переносе

Представьте: пользователь входит в систему, берёт цифровую корзину для покупок, и внезапно его перенаправляют на другой сервер, который ничего не знает о его сеансе. Это похоже на попытку продолжить путешествие после того, как кто-то поменял вашу машину в середине пути. Давайте построим распределённую систему сеансов, которая не допустит брошенных корзин или выхода пользователей из системы! Почему сеансы выходят из-под контроля в распределённых системах Традиционное хранилище сеансов обладает всеми навыками координации, как у малышей, играющих в футбол — все гонятся за одним мячом....

16 июня 2025 14:00 · 4 минуты · 694 слова · Maxim Zhirnov
Укрощение Firefox: Путешествие разработчика в веб-расширения

Укрощение Firefox: Путешествие разработчика в веб-расширения

Представьте: вы смотрите видео с кошками на любимом сайте, и вдруг — БАМ! — появляется безумная идея. А что, если бы Firefox мог приносить кофе, пока вы смотрите видео? Хотя наши веб-расширения пока не могут доставлять кофеин, они могут превратить ваш браузер в швейцарский армейский нож для повышения продуктивности. Давайте создадим немного магии для браузера! Анатомия веб-расширения Каждое великое расширение начинается с трёх основных компонентов: manifest.json (ДНК расширения). Контент-скрипты (шептуны DOM)....

12 июня 2025 14:00 · 3 минуты · 484 слова · Maxim Zhirnov
Django против Flask: Веб-разборка на Python с кодом, кофе и долей драматизма

Django против Flask: Веб-разборка на Python с кодом, кофе и долей драматизма

Представьте: вы стоите на распутье для разработчиков. На одном пути — Django, размахивающий своим знаменем «батарейки в комплекте». На другом — Flask, небрежно прислонившийся к указателю «микрофреймворк». Куда пойти? Возьмите свой любимый напиток с кофеином и давайте препарируем этих титанов веб-разработки на Python с хирургической точностью (и, может быть, парой папиных шуток). Претенденты: философия фреймворков Django — это чересчур подготовленный друг, который берёт с собой походную плитку на пикник. Появившись в 2005 году для работы со сроками выпуска газет, это фреймворк, который говорит: «Зачем создавать панель администратора, когда я уже испёк её для тебя?...

2 мая 2025 14:00 · 3 минуты · 557 слов · Maxim Zhirnov