Обновить
1024K+

Программирование *

Искусство создания компьютерных программ

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

Вас заменит ИИ? Нет. И вот одна причина, которую не получится обойти

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

После «апокалипсиса SaaS» рынок впал в лихорадку. Инвесторы решили, что программное обеспечение стало практически бесплатным товаром и 90% программистов можно уволить.

Это одно из предсказуемых заблуждений, вызванных непониманием природы разработки ПО. Да, правила игры изменились, и SaaS больше не будет таким, каким был. Но ИИ его не уничтожит и не заменит разработчиков приложений.

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

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

Однако потребность в инфраструктуре — лишь одна причина, по которой ИИ не перевернёт нынешние практики разработки ПО. Другая — в том, что он не способен воплотить один незадокументированный фундаментальный инженерный принцип.

Позвольте объяснить.

Читать далее

Как 30 лет боли в интеграции привели нас к собственной платформе

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

Привет Хабр!

Меня зовут Дмитрий Гаврин, я заместитель директора департамента «Цифровые решения» компании «Диасофт». Есть тип совещаний, которые я узнаю с первой секунды по интонации приглашения. Когда директор проекта пишет «зайди, поговорим по цифрам» - это не про то, что кто-то перевыполнил план. Это про интеграцию. Почти всегда про нее.

Читать далее

Пока другие выбирают архитектуру, поиск по коду в GitVerse уже работает

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

Поиск по коду — одна из тех функций, ценность которых ощущается мгновенно. Она либо есть и экономит часы, либо её нет — и ты начинаешь открывать файлы вручную, клонировать репозиторий, запускать find или средства своей IDE и вспоминать «где же это было».
Мы добавили в GitVerse поиск по коду в репозиториях. и сделали это быстро. Не потому что «срезали углы», а потому что опирались на инструмент, который десятилетиями решает задачу поиска по коду внутри Git: git grep. Пока другие поднимают тяжёлые поисковые платформы, возводят кластеры, строят индексаторы, мы выбрали простое и проверенное решение, которое работает прямо сейчас.

Читать далее

Как можно писать логи

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

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

Предлагаю детально разобраться, как именно можно писать логи в этой статье.

Читать далее

Как я собрал statusline для Claude Code с мониторингом VPS за одну сессию

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

Три VPS, MCP SSH, сессии по 10-15 часов. Каждый раз одно и то же: сколько контекста съедено? Пора /compact? Какой сервер под нагрузкой? Ни один из существующих statusline это не показывал. Собрал свой — за одну сессию в claude.ai.

Вот как это выглядит в реальной рабочей сессии:

Читать далее

От слов к числам: как компьютер узнаёт, о чём текст

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

Как заставить компьютер понимать текст? Мы взяли 500 новостей и с помощью алгоритма автоматически разложили их по категориям: спорт, политика, развлечения. Результат: 99% совпадения с ручной разметкой!

В статье объясняю, как работают векторные представления слов и как работает кластеризация

Читать далее

Он создал “шпионский спутник” из открытых данных. Через день ему написал Palantir

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

Вы когда-нибудь задумывались, каково это – смотреть на мир с высоты птичьего полёта? Не в метафорическом смысле, а в самом прямом, технологическом. Чтобы в одной вкладке браузера можно было переключиться с аниме-стилизации улиц Токио на тепловизионный сканер Лондона, кликнуть по спутнику на орбите и увидеть его траекторию в реальном времени, а затем наложить на трёхмерную модель города поток с дорожной камеры наблюдения. Билавал Сидху не просто задался этим вопросом – он собрал такой инструмент за выходные.

WorldView – это не просто демо. Это высказывание. Бывший сотрудник Google, стоявший у истоков создания фотограмметрических 3D-моделей городов, взял ту самую инфраструктуру, которую помогал строить шесть лет, и скрестил её с данными в реальном времени: 7000 самолётов над головой, 180 спутников на реальных орбитах, частицы дорожного трафика из OpenStreetMap.

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

Читать далее

Как я писал сервис авторизации на Rust…

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

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

С первого взгляда звучит легко, но на деле не всё так однозначно.

Читать далее

Нативный код в .NET-библиотеке и как его готовить

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

Дорогие гости, прошу, присаживайтесь. Сегодня в меню: DllImport по-домашнему, рагу из C# и C++, запечёные в NuGet-пакете x64 и ARM. Также будет предложена закуска в виде истории о безумствах ИИ. Bon appetit!

Читать далее

Как я перестал бояться Claude Code и научил его не ломать мои проекты

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

Знакомая ситуация: просишь Claude Code добавить авторизацию — он переписывает половину проекта. Просишь поправить одну функцию — получаешь удалённые тесты и новую зависимость, о которой не просил. За час строишь рабочий прототип, а потом три часа разгребаешь то, что Claude наворотил при «улучшении».

Я Python-бэкенд разработчик, веду свою компанию CREATMAN и кожу в основном один. У меня нет роскоши держать QA-инженера, который будет ловить регрессии после каждого промпта. Мне нужно, чтобы AI-агент помогал быстрее шипить, а не создавал новые проблемы.

После нескольких недель исследования — чтения доков, обсуждений на Reddit, разбора чужих сетапов — я собрал конфигурацию, которая реально работает. Собрал всё в открытый репозиторий с готовыми файлами: claude-code-antiregression-setup. В этой статье — что именно и почему.

Читать далее

RAG: как Филин Палыч-реранкер навел порядок в цифровом королевстве

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

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

В мире IT это называют «галлюцинациями», а лечат их с помощью RAG (Retrieval-Augmented Generation). Если просто: это способ дать модели «шпаргалку» из ваших документов, чтобы она не гадала, а опиралась на факты.

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

Читать далее

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

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

Бывший директор ИИ в Tesla не пишет код руками с декабря. Заменил 6 приложений для умного дома одним агентом в WhatsApp. Запускает ИИ-эксперименты на ночь
— и результаты удивляют даже его самого. Разбираю главные тезисы из свежего интервью подкасту No Priors

Читать далее

Процессор в вашем компьютере угадывает будущее. И ошибается в 5% случаев

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

В прошлую пятницу я объяснял джуну, почему его код на отсортированном массиве работает в шесть раз быстрее, чем на неотсортированном. Тот же массив, тот же алгоритм, и те же данные. Просто в другом порядке. Джун смотрел на меня как на сумасшедшего и, честно говоря, я его понимаю.

Потому что ответ звучит безумно: процессор внутри вашего ноутбука постоянно пытается предсказать будущее. Буквально. Он гадает, какая ветка if выполнится ещё до того, как условие будет вычислено. И на отсортированных данных ему угадывать проще.

Ну, давайте разбираться.

Читать далее

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

Мы переписали наш парсер WASM с Rust на TypeScript — и он ускорился в три раза

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

Мы создали парсер openui‑lang на Rust и скомпилировали его в WASM. Логика была здравой: Rust быстрый, WASM в браузере даёт скорость, близкую к нативной, а наш парсер — разумно сложный, многоэтапный конвейер. Почему бы не захотеть его на Rust?

Но оказалось, мы оптимизировали не то, что нужно.

Читать далее

Как определить выпуклость многоугольника на C: от геометрии к коду

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

На первый взгляд задача определения выпуклости многоугольника кажется геометрически сложной.
Но на практике всё сводится к простой идее — достаточно последовательно пройти по вершинам и определить направление поворота.

В этой статье разберём, почему именно три точки позволяют определить поворот, откуда берётся формула через векторное произведение и как всё это аккуратно реализовать на C.

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

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

Читать далее

OpenAI Codex на двух устройствах: как синхронизировать сессии без боли

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

Я работаю с OpenAI Codex в двух режимах. Дома — за мощным ПК с двумя экранами и в поездках на дачу/отдых/по работе — с ноутбука

И довольно быстро столкнулся с неожиданной проблемой:
контекст, сессии и история Codex не синхронизируются между устройствами. OpenAI этого просто не предусмотрели!

Ниже история о том, как я решил данную проблему.

Читать далее

Развиваем проект: добавляем новые возможности в десктопное приложение

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

Наше приложение получилось достаточно удобным, но давайте сделаем его ещё функциональнее. В предыдущей части мы заложили основу: работа с JSON, CRUD-операции и базовый интерфейс. Теперь пришло время добавить те самые «плюшки», которые превращают учебный проект в полноценный инструмент.
Мы добавим четыре важные функции:

Читать далее

Вспоминаем что такое CRUD на примере десктопного менеджера на Python

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

Многие новички, которые только начинают свою карьеру в программировании, не совсем понимают что такое CRUD. CRUD (Create, Read, Update, Delete) — термин, исходя из обычного перевода (Создавать, читать, обновлять, удалять), обозначает четыре базовые операции для управления данными в системах. Я хочу, попытаться, объяснить на простом примере что же это такое и как с ним можно работать.

Сегодня мы напишем классический десктопный менеджер задач с графическим интерфейсом. Это отличный способ изучить и закрепить:

Читать далее

Топ 12 агентов для генерации кода: Cursor, Copilot, Claude Code…

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

Как и ИИ-модели, инструменты, базирующиеся на них, также не стоят на месте. Вспомним Cursor, OpenClaw, Claude Code и так далее. 

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

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

Читать далее

Локальная LLM для кодинга за 12 минут: LM Studio, Kilo Code и четыре бесплатных облачных варианта

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

Показываю, как запустить локальную LLM и подключить её к IDE за 15 минут, а также четыре бесплатных облачных альтернативы.

Локальный вариант: LM Studio + Qwen3-Coder + Kilo Code. Работает офлайн, без подписки и лимитов на запросы.

Облачные варианты: Kilo Code со своими бесплатными моделями, Qwen Code с 1 000 запросов в день, OpenCode с ротируемыми open source free моделями и OpenAI Codex — пока бесплатный для Free-аккаунтов.

Читать далее