Обновить
512K+

Веб-разработка *

Делаем веб лучше

395,52
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Вы не знаете CSS. Мои вопросы о CSS с ответами. Версия 2026 года

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели5.7K

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

В прошлом месяце я опубликовал статью с вопросами о HTML. Неожиданно для меня, она понравилась многим и стала одной из самых популярных за последнее время. Раз так получилось, то почему бы не сделать то же самое про CSS? Вот я и пришёл со своими вопросами и, конечно, ответами.

Моя цель — это развлечь вас. Хотя вопросы связаны с практикой, на них не так просто ответить. Если вы не сможете ответить на большинство, то ничего страшного. Но, возможно, они покажутся вам легкотнёй.

Давайте посмотрим, что я вам подготовил.

Читать далее

Новости

Как я собирал AI-агентную команду для реального бизнеса, а не ассистента в чате

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели5.2K

Большинство демо AI-агентов выглядят одинаково: есть чат, пользователь пишет задачу, модель красиво отвечает. Для презентации этого достаточно. Для реального бизнеса - нет.

Читать далее

Веб-портфолио с управлением жестами через камеру: полевой дневник

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели6.2K

Я продуктовый дизайнер. И мне захотелось поэкспериментировать: можно ли уже сейчас сделать полноценное управление сайтом с помощью жестов. Да и ИИшки уже стали достаточно мощными. Так родился этот эксперимент. Для контента взял свое портфолио.

Получилось вот что. Страница встречает полем из частиц. Разрешаешь камеру, и частицы собираются в твоё объёмное отражение. Разделы висят вокруг силуэта и открываются рукой: наводишь палец, пункт заполняется и раскрывается. Текст листается щипком, фотографии берутся в кулак и растягиваются двумя руками. Дизайн при этом намеренно тихий: монохром, костяная типографика на чёрном, единственный цвет живёт внутри 3D-формы. Вся выразительность отдана взаимодействию.

Дальше — грабли по порядку наступания.

Читать далее

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

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели5.2K

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

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

Итак. У тебя есть гениальная идея гениального сервиса. Ты обсудил её с ИИ, ИИ выдал код и сулит деньги рекой. Осталась мелочь: этот код пока живёт и, вероятно, работает только на твоём ноутбуке. А надо, чтобы в интернете.

Читать далее

РКН заблокировал CDN интернет-магазина. Партизанское решение через Яндекс CDN за 150 рублей (InSales)

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели5.4K

Что делать, если системный CDN вашей e-commerce платформы внезапно попал под блокировки, саппорт не помогает, а корзина и галерея на сайте умерли? Рассказываю реальный кейс, как с помощью Яндекс CDN за 150 рублей в месяц, пары сниппетов и MutationObserver удалось ускорить загрузку ядра сайта в сотни раз и вернуть интернет-магазин к жизни. Честный разбор костылей, граблей и результатов в цифрах.

Читать далее

Пишу консольные приложения на iPad с помощью AI-агент и удалённого VPS

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели5.1K

Консольное приложение - не самая очевидная вещь для разработки на планшете. Ни полноценного терминала, ни файловой системы, к которой привыкли на десктопе, ни нормальной многозадачности - так было ещё пару лет назад. Но если вынести сам процесс исполнения кода на удалённый Linux-сервер, а iPad превратить в тонкий клиент для управления AI-агентом и просмотра результата, картина меняется полностью. Ниже - рабочий процесс, который у меня сложился для разработки CLI-инструментов на Python: VPS + AI Coding Agent (Claude Code) в tmux + Remote IDE как единая точка входа, всё на iPad со Stage Manager. Для такого цикла нужно немного: SSH-доступ к серверу, где крутится агент, и способ параллельно смотреть на файлы и на diff, не теряя сессию агента при переключении между окнами. Дальше - как это выглядит по шагам.

Читать далее

Виртуальные Scroll-контейнеры

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели9.2K

Всем привет, на этот раз хочу провести обзор инструмента ng-virtual-scroll-view.

В предыдущей статье я делал обзор на универсальные виртуализированнные списки, которые "под капотом" использовали одноосевой виртуальный scroll-контейнер. Из проекта ng-virtual-list решил вырастить ещё один инструмент, двухосевой виртуальный scroll-контейнер ng-virtual-scroll-view. Инструмент также поддерживает версии Angular с 14 по 22.

С API и примерами использования можно ознакомиться в документации.

Читать далее

Эволюция, а не революция: релиз Elixir 1.20 и почему он вас заинтересует

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели9.7K

В мире разработки программного обеспечения редко можно увидеть, как зрелый, динамический язык добавляет мощную, статическую систему типов без ущерба для своей философии и существующего кода. 3 июня 2026 года команда Elixir сделала именно это, выпустив версию 1.20. Главное нововведение — постепенная типизация (gradual typing), которая обещает найти в вашем коде «верифицированные баги» (verified bugs — ошибки, гарантированно ведущие к падению в рантайме) без необходимости писать аннотации типов.

Но почему это должно волновать вас, если вы пишете на Python, Java или Go? Команда Elixir поставила перед собой цель, которую многие считают «святым граалем». На практике сочетание всех трёх свойств почти не встречается.

И я считаю, что это отличный повод присмотреться к Elixir, даже если вы никогда не писали на нём ни строчки. Зрелый и интересный язык, работающий на виртуальной машине Erlang (BEAM) и исповедующий функциональную парадигму. Он известен своей отказоустойчивостью и конкурентностью, но, увы, остается малоизвестным языком, и я надеюсь что эта статья заставит вас заинтересоваться Elixir.

Читать далее

TAMA-90: тамагочи из 90-х своими руками на JavaScript

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели9.3K

До момента, когда я сел писать эту статью, я вообще не понимал, что такое тамагочи. Нет, не в смысле «никогда не слышал» — конечно, слышал и видел (не вживую, через экран). Где-то на уровне культурного шума это слово всплывало регулярно в американских фильмах или сериалах, где герой с придыханием вспоминает игрушку детства и рассказывает, как ему это нравилось. Ярче всего у меня в памяти отпечаталась сцена из знаменитого детективного сериала «Менталист»: Патрик Джейн с неизменной полуулыбкой вручает коллеге тамагочи, и тот, взрослый серьёзный мужик (не очень серьёзный на вид, но в момент моего просмотра все взрослые люди серьёзные), вдруг расплывается: «О боже, у меня в детстве такой был! Я их обожал! Как ты узнал!» и т. д.

Раньше я реагировал на такие моменты как на упоминание Game Boy или Dendy: «ну да, старая штука, скорее всего, что-то похожее на Game Boy, который мне был понятен на то время», и я думал: «кому-то дорога как воспоминание, но мне-то чего с того, игрушка есть игрушка». Но сейчас в какой-то момент мне стало понятно, что если об этой игрушке говорят до сих пор, если она пережила три десятилетия и кучу переосмыслений — значит, там внутри что-то большее, и надо посмотреть, что это и как работает.

Так я и сделал. И для начала — немного истории, потому что без неё нет смысла вспоминать и описывать старые вещи (всё, что больше 10 лет назад, уже старое, поэтому, надеюсь, без обид xd).

Читать далее

Товароучёт + Честный Знак: как написать свое ПО для работы с маркировкой настольных игр

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели12K

«Честный Знак» накрывает всех: как не платить по несколько тысяч рублей в месяц за готовые облачные решения, если у вас небольшие тиражи. Рассказываю, как я написал (а точнее навайбкодил) собственное веб-приложение на Python/Flask для учета товаров и автоматизации работы с КМ (кодами маркировки), чтобы упростить складской учет и не сойти с ума от бюрократии.

Читать далее

Как Яндекс.Навигатор может вести водителей в никуда или в туда, но не туда

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели28K

Приветствую, Хабр!

В этой статье хочу описать практический кейс, который выглядит не как единичная ошибка на карте, а как системная проблема в работе навигационного сервиса от Яндекса. Речь идет о маршрутах в городе Дербент, где одна из дорог была перекрыта еще в марте 2026 года в связи с ремонтными работами (строительство сегмента центральной набережной города). Сейчас уже 23 июня 2026 года, прошло почти 4 месяца, но навигатор продолжает строить маршруты так, как будто проблемы не существует.

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

Читать далее

Новая версия языка разметки текстов Markvan

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели16K

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

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

Узнать про альтернативный способ разметки

Умный планировщик питания на холодильнике с drag-and-drop, автосохранением сессий и вкусным и полезным продуктовым меню

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели14K

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

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

Читать далее

Ближайшие события

Конвейер из 10 агентов без строчки кода: три промпта, 40 минут и прогон при зале

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели12K

Недавно я вёл урок по прототипированию сервисов в Cursor. На рабочую часть ушло максимум 40 минут: 15–20 минут я рассказывал, 20–25 минут мы работали. Из этого времени сам Cursor чистыми отработал минут десять, остальное я говорил, копировал промпты и показывал на экране. На выходе получился репозиторий с прототипом редакционного конвейера для новостного сайта: оркестратор на 10 шагов, 10 ролей‑субагентов, 8 файлов правил, канон артефактов прогона. И тут же, при зале, мы прогнали цепочку целиком: от сырых источников до готового черновика новости и вердикта авто‑судьи. Прикладного кода: ноль строк. Каталога src/ в проекте нет вообще.

Сразу сниму ожидание магии. Мы не собирали работающий сервис: ни бэкенда, ни планировщика, ни деплоя. Прогон исполнили агенты Cursor по правилам, а не какая‑то запущенная система. Целью было показать практику: алгоритм будущей системы можно целиком проработать на уровне правил, до того как написана первая строка кода.

Читать далее

От стримов к вебсокетам: как я боролся с буферизацией и наконец победил

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели8.9K

Привет. Меня зовут Николай Пискунов, я руководитель направления Big Data и эксперт курса Cloud DevSecOps по безопасной разработке от Академии вАЙТИ Beeline Cloud. Продолжаю цикл статей о клиенте для облачного сервиса Ollama. В первой части я рассказал о начале работы над клиентом и оставил пасхалку про сломанный стриминг. Во второй мы переехали с PostgreSQL на MongoDB, добавили анализ проектов с уважением к .gitignore и оптимизировали фронтенд.

Читать далее

Мне было лень учиться, и я навайбкодил себе платформу для обучения

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели9.9K

Всё началось с прокрастинации. Готовился к собеседованиям: SQL, git, брокеры сообщений, Django, алгоритмы. Открывал статьи, читал полтора абзаца и через десять минут обнаруживал себя где угодно, только не за материалом. К третьему заходу стало ясно: в формате «читать и запоминать» это в меня не лезет.

Дальше сработала классика прокрастинации: не хочется решать задачу, строй инструмент для неё. Не хочется зубрить SQL, значит нужен тренажёр для SQL. Короткая теория, задачи прямо в браузере, повторение по расписанию. Вместо подготовки к собеседованиям я строил платформу для подготовки к собеседованиям.

Спойлер: план провалился, учиться всё равно пришлось. Но по дороге вышло кое-что интереснее самого тренажёра, про это и статья.

Смотреть, что вышло

RUINSWORLD: Возвращение невозможной игры-предупреждения

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели5.9K

Все эти годы пафосные программисты говорили мне что это совершенно точно невозможно осуществить на только ноде, в браузере и на ts. А я сделяль.

Невозможная игра‑предостережение некоторое время назад была все‑таки дописана в первой играбельной минимальной версии, и вот можно уже тыкать и умирать https://ruinsworld.online/. Не забывайте пить воду, есть, охотиться. От ранений, отравлений и жажды начинает сильно качать. У вас есть союзники — это предки Роботов‑Собутыльников... На самом деле это все рюшечки, а технически решение интересно тем, что это реально эффективно работающая реализация шовного открытого мира и шутера в нем, в бро, только исключительно на ноде и ts. Писал пять лет ручками, такое уже не модно нынче. Мир сейчас развернут на всего 9 локаций (и это число тоже может быть 25 вполне), но одной переменной его можно развернуть в четыре или девять, двадцать пять копий‑процессов по столько локаций — зависит только от мощностей. Вот у меня одно ядро и поэтому только один процесс, один кластер‑биом мира. Больше копий сервера — образуют замкнутую на себя сетку практически никак не связанных «частей мира», между которыми клиенты несущие много своего состояния могут свободно перемещаться. Нагрузка практически не прирастает, только незначительно при подключении новых игроков. Ну вот это и есть, что мы, по сути, построили стабильную модель открытого мира любой величины.

Читать далее

Один комментарий на Хабре — и ещё один пакет для Django Admin

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели6.5K

Недавно я опубликовал на Хабре статью о небольшом пакете django-scroll-to-top, который добавляет кнопку «Наверх» в проекты на Django. Сам пакет решает довольно локальную задачу, но обсуждение под статьёй оказалось интереснее, чем я ожидал.

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

Один из комментариев заставил меня посмотреть на эту проблему немного под другим углом. В результате вместо долгого спора появился ещё один небольшой open-source-пакет — теперь уже для сворачивания групп приложений в боковой панели Django Admin.

Читать далее

Миграция с Flutter Web на Jaspr: наш опыт

Время на прочтение8 мин
Охват и читатели8.8K

Уже несколько лет мы занимаемся развитием клиентского приложения на Flutter: начинали с мобильных платформ, когда веб и десктоп вышли в бету – портировали его и на эти платформы. Последние два года PWA крутится в проде и в некоторых регионах является самой популярной платформой для нашего приложения.

Недавно мы попробовали мигрировать наше приложение с Flutter Web на Jaspr – под катом расскажем о том, почему мы это сделали, с какими трудностями столкнулись и какие выводы сделали.

Да кто такой этот Jaspr?!

GPT-5.6: передовой интеллект, который растёт вместе с вашими амбициями

Уровень сложностиПростой
Время на прочтение16 мин
Охват и читатели22K

Мы запускаем семейство моделей GPT-5.6 в общий доступ после ограниченного предварительного тестирования: наш новый флагман Sol, сбалансированную модель для повседневной работы Terra и Luna — нашу самую экономичную модель.

GPT-5.6 Sol задаёт новый стандарт одновременно в интеллекте и эффективности: модель показывает лучшие в своём классе результаты в программировании, работе со знаниями, кибербезопасности и науке, превосходя предыдущие и конкурирующие передовые модели при меньшем числе токенов и более низкой расчётной стоимости. В итоге пользователи получают более высокую отдачу на каждый потраченный доллар: больше успешно выполненной работы за тот же бюджет или сопоставимые результаты при меньших общих затратах. Мы также представляем новый способ ускорить самые сложные задачи: ultra — наш режим максимальных возможностей, который координирует несколько агентов в параллельных рабочих потоках, чтобы быстрее завершать комплексные проекты. Более уверенное использование компьютера и более точное дизайнерское чутьё делают GPT-5.6 Sol нашим самым отточенным партнёром на сегодняшний день: модель помогает проверять, дорабатывать и выдавать готовые к использованию результаты.

Читать далее
1
23 ...