Обновить

Разработка

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

Карьерный потолок в IT: почему я перестал стремиться в менеджмент и начал делать свой продукт

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

Каждый разработчик в начале пути видит перед собой ясную лестницу: Junior → Middle → Senior. Рост компетенций сопровождается ощутимым ростом зарплаты, и это даёт мощный заряд мотивации. Но что происходит, когда вы достигаете уровня Senior? Зарплата упирается в «стеклянный потолок», задачи становятся однотипными, а привычный драйв исчезает.

Читать далее

Нескучное программирование.История концептов

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

История концептов в C++ – один из самых показательных примеров того, как язык развивается не линейно, а через десятилетия экспериментов, откатов и переосмыслений. Первые идеи, которые мы сегодня называем концептами, появились ещё в конце 1990-х, когда стало очевидно, что шаблоны C++ имеют колоссальную выразительность, но практически не дают средств для описания намерений программиста. Шаблон можно было инстанцировать почти с любым типом, но ошибка проявлялась либо в виде километров сообщений компилятора, либо в виде неожиданного поведения в рантайме. Уже тогда Страуструп сформулировал проблему как «отсутствие контрактов для шаблонов», когда программист знает, что от типа требуется оператор + или ==, но язык этого не выражает.

Ранние предложения концептов были чрезвычайно амбициозными и стремились описывать не только синтаксис, но и семантику. Например, концепт EqualityComparable должен был означать не просто наличие operator==, но и выполнение математических свойств эквивалентности: рефлексивности, симметричности и транзитивности. Аналогично, концепты для упорядоченных типов предполагали строгую слабую упорядоченность, а для итераторов корректное поведение при многократном проходе. Это отражало академический взгляд на обобщённое программирование, сильно вдохновленный функциональными языками и работами Степанова.

Читать далее

Счастливые автобусные билеты. Магия чисел для советских школьников

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

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

Очень меня интересовали эти самые билетики! Я их коллекционировал. На даче у меня был специальный дерматиновый красивый полупрозрачный конверт (от старых фломастеров), в котором я хранил все свои билеты. Номера автобусных билетов состояли из шести цифр, и я отдельно выделял те, у которых сумма первых трёх цифр была равна сумме трёх последних. Конечно, самыми ценными были бы те билеты, у которых все цифры одинаковые...

Читать далее

Очень странные дела или подключаем YDB в AWS NoSQL Workbench

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

При работе с Yandex Database (YDB) часто возникает потребность в удобном визуальном инструменте для работы с данными. AWS NoSQL Workbench — популярное приложение для моделирования и тестирования NoSQL баз можно использовать и с YDB благодаря DynamoDB-совместимому Document API.

Читать далее

Легкий способ развить свой TG-Канал. Как развивать личный бренд и зачем он IT-шнику?

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

Девять месяцев назад я начал вести свой канал t.me/siliconchannel. Писал статьи для Хабра на свою профессиональную тему - Go-разработку - и задумался: а могут ли эти статьи и вложенный в них труд приносить кратно больше пользы и мне, и Хабру? В итоге это привело к блогу на 4000 подписчиков с 0 рублей вложений.

Читать далее

Изнанка бэкапов YDB: что остаётся за кадром

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

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

Читать далее

Kawai-Focus 2.1: переезд на новый стек

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

В данной статье я попытаюсь переписать часть приложения Kawai-Focus на стек: FastAPI + Vue.js + Tauri + Ionic. Также я соберу приложение только с экраном «Таймеры» под Linux в AppImage, которое подойдёт для большинства Linux-дистрибутивов. Реализация одного экрана не будет слишком долгим процессом, а финальная сборка приложения позволит оценить сложность и удобство полного цикла разработки.

Эта cтатья не будет подробным гайдом, так как размер переписанного кода и его описание слишком велики для одной статьи. Однако я покажу часть кода проекта и расскажу о выбранном стеке, а также о трудностях и преимуществах, с которыми я столкнулся в процессе переписывания проекта. Я буду использовать часть кода старого проекта, который не касается Kivy и KivyMD, поэтому его душа не умрёт, а обновится.

Заваривайте чай, доставайте вкусняшки — пора «старый стек превращать в удобрение для новых помидор»! 🍅

Читать далее

Паттерн Newtype и Deref-coercion в Rust

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

Как отличить строку «имя» от строки «e-mail»? К примеру, чтобы не ошибиться в передаче в функцию. На помощь приходит паттерн Newtype, но его не очень удобно использовать. В статье разберем как добавить удобства.

Читать далее

JavaScript: заметка об Anchor Positioning API

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

Привет, друзья!

В этой небольшой статье мы вместе с вами немного пощупаем новый Web API - Anchor Positioning.

Anchor Positioning API предоставляет новые возможности для связывания элементов между собой. Одни элементы являются якорями (якорными, anchor elements), другие - позиционируемыми относительно якорей (закрепленными, anchor-positioned elements). Размер и положение позиционируемого элемента может определяться размером и положением якорного элемента.

Кроме того, с помощью CSS можно:

определять альтернативные позиции закрепленного элемента, которые будут применяться браузером, например, при выходе такого элемента за пределы экрана

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

На сегодняшний день этот API поддерживается всеми основными браузерами (в Safari пока только в качестве экспериментальной возможности).

Читать далее

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

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

Заходишь на Хабр.Карьеру, открываешь вакансии системных аналитиков, а в требованиях всё как обычно: построение информационных систем, понимание архитектуры, ТЗ, BPMN, базовый SQL. Нигде ни слова о знании GPT или умении промптить. Формально профессия как будто не изменилась. 

Тем временем в свежем отчёте OpenAI о корпоративном применении ИИ опубликовали статистику: использование ChatGPT в корпоративной среде за год выросло в 8 раз, а объём запросов от одного человека — в среднем на 30%.

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

Читать далее

Лоботомия нейросети: удалил 7 слоёв из LLM — она стала на 30% быстрее

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

Эксперимент по хирургическому удалению слоёв из языковой модели

Современные LLM переобучены — многие слои делают одно и то же. Я проверил эту гипотезу на практике: взял TinyLlama (1.1B параметров, 22 слоя) и измерил, как удаление каждого слоя влияет на perplexity.

Результаты:
• Удаление 1 среднего слоя: +10% скорость, -4% качество
• Удаление 7 «безопасных» слоёв: +32% скорость, -2.5% качество
• Удаление первого слоя: модель полностью ломается

Неожиданно: Layer 2 важнее Layer 0 (perplexity +6.67 vs +3.92 при удалении).

Статья с кодом на PyTorch, графиками и практическими рекомендациями — какие слои можно удалять для ускорения инференса.

Читать далее

Эволюция морали: чему биология может научить разработчиков AGI

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

Современные подходы к безопасности ИИ часто сводятся к внешним запретам и попыткам заставить системы выглядеть «этичными». Однако системный анализ и опыт биологической эволюции указывают на то, что подобные методы прямого ограничения могут оказаться неэффективными при масштабировании систем до уровня искусственного интеллекта общего назначения (AGI).

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

Читать далее

Нечеловек, который изменил всё: как эффективно работать с ИИ, на примере создания схем бизнес-процессов в BPMN

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

Отношение к ИИ, как к помощнику, у многих людей напоминает отношение суровых сибирских лесорубов к японской лесопилке из старого анекдота. Лесорубы совали в неё всё более толстые брёвна — и машина со всем справлялась. Тогда в неё засунули железный лом. Этого лесопилка уже не пережила. А лесорубы сделали вывод: ничего-то эта заморская техника не может.

С ИИ часто происходит то же самое. Либо «сделай всё и сразу», либо «ну нет, слабоват ты пока для серьёзных задач». А что если ИИ способен решить вашу задачу пусть не полностью, но процентов так на 80–90? И вы сами в этой сфере тоже несовершенны? Но области ваших ошибок с ИИ не совпадают! Что если, грамотно объединив с ним усилия, можно получить результат, близкий к 100% успеха?

Примерно так, как в фильме Moneyball (Человек, который изменил всё). Там три узкоспециализированных (а потому по отдельности посредственных) игрока, играя слаженно, смогли превзойти на поле одного игрока-суперзвезду. Который, разумеется, стоил в разы дороже их троих вместе взятых.

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

Читать далее

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

AI убила бизнес Tailwind CSS. Компания сократила 75% разработчиков

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

Парадокс эпохи: фреймворк на пике популярности, трафик и установки растут, но доходы упали в пять раз, и компания оказалась на грани разорения — ещё чуть-чуть, и не хватило бы денег на зарплаты.

Читать далее

Оптимизация и запуск нейронных сетей на React Native: кейс с травой

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

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

В этой статье поговорим о том, что получилось: от выбора моделей до их оптимизации и интеграции в React Native, а также поделюсь своим открытым кодом запуска, обучения и экспортом моделей нейронных сетей в ONNX, и ссылками на датасеты и проекты с нейронными сетями для растений.

Читать далее

Кто умнее: программист, или берёзовое полено?

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

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

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

Уж точно, не программисты

Что сделала с моим nextjs сайтом React2Shell уязвимость

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

Что сделала уязвимость react2shell c моим сайтом на nextjs 15, как мне удалось понять, что это именно она и что я предпринял чтобы снизить риски.

Читать далее

Переосмысление Kubernetes в 2026 году: разбор моего «простого» стека

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

Любой «более простой» инструмент DevOps — это просто Kubernetes в темных очках.

Я — Саша Краснов, СТО «Штурвала». Недавно я наткнулся на волшебную статью о Kubernetes, и просто не смог справиться с желанием перевести ее. Мой собственный опыт знакомства с Kubernetes был другим, но путь был похожим: от отрицания и «зачем же так сложно» до восторга от элегантных решений в отдельных контроллерах. Даже архаичные винтажные части, вроде API группы “”, встречающиеся тут и там, больше не раздражают, а вызывают любопытство археолога. Кубер — он сложный, но это не просто так.

Читать далее

Python: Почему строки в if-else — это плохо, переходим на Enum

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

Бывало такое: сидишь час над багом, перебираешь функции, а в итоге выясняется, что ты просто опечатался в одном слове? В одном месте статус заказа был "shipped", а в другом — "shiped" с одной «p».

Python промолчал, потому что для него это просто две разные строки. А для тебя это — потерянный вечер. Сегодня разберем, как модуль enum избавляет от этой боли и делает код в разы чище.

Читать далее

Нейро-дайджест: ключевые события мира AI за 1-ю неделю января 2026

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

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

Неделя выдалась насыщенной: китайцы выкатили MiniMax-M2.1 для кодинга и агентных задач, новая мультимодальная опенсорс LTX-2 и обновлённый Qwen-Image-2512. ИИ для документаций, озвучка текста в браузере и штрафы за нейро-видео.

Всё самое важное — в одном месте. Поехали!

Читать дайджест →