Любопытная статья «Код стал дешёвым. Софт — нет»
Автор пишет, что Claude Code, Cursor и компания убили стоимость написания кода. Но не стоимость понимания проблемы.
Мы входим в эру «персонального софта» — люди генерируют себе трекеры расходов, Chrome-расширения, фитнес-приложения точно под свои нужды. Не ищут SaaS, который решает 80% задачи — делают свой за вечер. Используют и выбрасывают.
Но есть нюанс. Трекер ломается, когда банк меняет формат CSV. Расширение умирает, когда сайт обновляет вёрстку. Фитнес-приложение разваливается, когда нужен офлайн-режим. Код написать легко — сделать так, чтобы оно работало в реальном мире, всё ещё дорого.
Автор разбирает, почему мы не вступаем в золотую эру SaaS, почему истории про $10k MRR за выходные — чаще маркетинг, чем реальность, и что теперь реально отличает инженера от генератора кода.
📎 https://www.chrisgregori.dev/opinion/code-is-cheap-now-software-isnt
@prog_stuff
Автор пишет, что Claude Code, Cursor и компания убили стоимость написания кода. Но не стоимость понимания проблемы.
Мы входим в эру «персонального софта» — люди генерируют себе трекеры расходов, Chrome-расширения, фитнес-приложения точно под свои нужды. Не ищут SaaS, который решает 80% задачи — делают свой за вечер. Используют и выбрасывают.
Но есть нюанс. Трекер ломается, когда банк меняет формат CSV. Расширение умирает, когда сайт обновляет вёрстку. Фитнес-приложение разваливается, когда нужен офлайн-режим. Код написать легко — сделать так, чтобы оно работало в реальном мире, всё ещё дорого.
Автор разбирает, почему мы не вступаем в золотую эру SaaS, почему истории про $10k MRR за выходные — чаще маркетинг, чем реальность, и что теперь реально отличает инженера от генератора кода.
@prog_stuff
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤1
Laravel-разработчика с 14-летним стажем сократили с работы. Параллельно закрылся фриланс-проект, на котором он сидел 5 лет. Вместо рассылки резюме он за полтора месяца допилил свой MVP до полноценного продукта.
Сейчас проект приносит $3–4,5k в месяц, автор бросил искать работу и занимается только им. Обо всём этом в статье на Tproger.
Длинное интервью, но читается легко — много конкретики про стек, деньги и ошибки.
@prog_stuff
Сейчас проект приносит $3–4,5k в месяц, автор бросил искать работу и занимается только им. Обо всём этом в статье на Tproger.
Длинное интервью, но читается легко — много конкретики про стек, деньги и ошибки.
@prog_stuff
Tproger
Уволили? Отлично. Как разработчик запустил конкурента hh.ru — Hirify.me и начал зарабатывать
История Laravel-разработчика с 14-летним стажем, который после сокращения за полтора месяца создал Hirify.me, вошел в топ-4 рынка вакансий РФ и вышел на доход до $5000 в месяц.
❤5🔥3✍2
Разработчик сделал свой процессор и запустил на нём GIF-плеер. Звучит безумно, но на самом деле это реально — и вот как это работает.
➡️ Что такое FPGA
Обычный процессор (Intel, AMD) — готовая схема, залитая в кремний на заводе. Изменить её нельзя.
FPGA — микросхема из миллионов логических блоков, соединённых сеткой проводников. На каждом пересечении — транзисторный ключ. Когда загружаешь конфигурацию, каждый ключ получает команду «включись» или «выключись» — и это определяет, как блоки соединены между собой.
Ничего не двигается физически — это электрическая перекоммутация. Но в результате микросхема начинает работать как процессор, который описал автор. Не эмуляция, а реальные такты, реальные провода, реальная скорость.
➡️ Что сделал автор
1️⃣ Описал простой RISC-V процессор на SystemVerilog
2️⃣ Загрузил на FPGA-плату — получился работающий CPU @ 25 MHz
3️⃣ Написал на C GIF-декодер (стандартная библиотека не влезла в 32 KB RAM, пришлось писать базовые функции самому)
4️⃣ Запустил — гифка 195×146 px крутится на ~4 FPS
➡️ И зачем это
Красивый пример того, как устроены компьютеры под капотом. От описания логики до картинки на экране — всё в двух репозиториях: сам процессор, плеер для гифок.
@prog_stuff
Обычный процессор (Intel, AMD) — готовая схема, залитая в кремний на заводе. Изменить её нельзя.
FPGA — микросхема из миллионов логических блоков, соединённых сеткой проводников. На каждом пересечении — транзисторный ключ. Когда загружаешь конфигурацию, каждый ключ получает команду «включись» или «выключись» — и это определяет, как блоки соединены между собой.
Ничего не двигается физически — это электрическая перекоммутация. Но в результате микросхема начинает работать как процессор, который описал автор. Не эмуляция, а реальные такты, реальные провода, реальная скорость.
Красивый пример того, как устроены компьютеры под капотом. От описания логики до картинки на экране — всё в двух репозиториях: сам процессор, плеер для гифок.
@prog_stuff
This media is not supported in your browser
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4❤🔥1
Статья о том, почему разработчики устают не от кода, а от всего вокруг него
➡️ Главная мысль
Продуктивность — это не «делать больше», а «решать сложные задачи эффективно». Большинство инженеров тратят ментальную энергию ещё до того, как написали первую строчку кода.
➡️ 7 грехов
1️⃣ Context switching — 23 минуты на возврат в фокус после одного уведомления
2️⃣ Multitasking — оптимизируем время ответа вместо времени решения
3️⃣ Urgency illusion — обсуждаем имена переменных часами, игнорируем архитектурный долг
4️⃣ Parkinson's law — работа растягивается на всё отведённое время
5️⃣ Zeigarnik effect — незакрытые задачи съедают «ментальную RAM» фоном
6️⃣ Decision fatigue — к обеду мозг уже не способен на сложные решения
7️⃣ Brooks's law — больше людей в проекте = медленнее, а не быстрее
Автор предлагает системный подход: батчить коммуникации, агрессивно таймбоксить задачи, автоматизировать мелкие решения (линтеры, шаблоны), делать сложное утром, писать next step перед уходом с работы.
Подробнее в самой статье, тут только кратко суть описал, чтобы вы поняли интересно вам почитать или нет.
📎 https://strategizeyourcareer.com/p/the-7-deadly-sins-of-software-engineers-productivity
@prog_stuff
Продуктивность — это не «делать больше», а «решать сложные задачи эффективно». Большинство инженеров тратят ментальную энергию ещё до того, как написали первую строчку кода.
Автор предлагает системный подход: батчить коммуникации, агрессивно таймбоксить задачи, автоматизировать мелкие решения (линтеры, шаблоны), делать сложное утром, писать next step перед уходом с работы.
Подробнее в самой статье, тут только кратко суть описал, чтобы вы поняли интересно вам почитать или нет.
@prog_stuff
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Разбираем плагины для кодинга с ИИ в VS Code
На Tproger вышла статья о том, чем заменить GitHub Copilot (и почему вообще есть запрос его менять).
Один из вариантов — open source плагины для VS Code по принципу BYOK (Bring Your Own Key). В статье разбирают три варианта — Continue, Cline и Kilo Code. Если коротко, то Continue — для минималистов, Cline — комбайн для работы, Kilo Code — полноценная среда для кодинга с ИИ.
А в самой статье можно узнать нюансы: как настроить любой из плагинов, в чем плюсы и минусы: https://tprg.ru/t1fZ
На Tproger вышла статья о том, чем заменить GitHub Copilot (и почему вообще есть запрос его менять).
Один из вариантов — open source плагины для VS Code по принципу BYOK (Bring Your Own Key). В статье разбирают три варианта — Continue, Cline и Kilo Code. Если коротко, то Continue — для минималистов, Cline — комбайн для работы, Kilo Code — полноценная среда для кодинга с ИИ.
А в самой статье можно узнать нюансы: как настроить любой из плагинов, в чем плюсы и минусы: https://tprg.ru/t1fZ
👌2
Статья на GitHub с 12k+ звёздами о том, почему код становится сложным — и дело не в алгоритмах
Автор вводит понятие «когнитивная нагрузка» — сколько всего разработчику нужно держать в голове, чтобы понять код. И показывает, как мы сами её раздуваем: глубоким наследованием, слоями абстракций, микросервисами ради микросервисов.
Любимый пример: стартап с 5 разработчиками сделал 17 микросервисов и отстал на 10 месяцев. Каждое изменение требовало правок в 4+ местах.
Цитата, которая запомнилась: «A little copying is better than a little dependency» — Rob Pike.
Статья не очень доинная, с примерами кода и конкретными антипаттернами.
📎 https://github.com/zakirullin/cognitive-load
@prog_stuff
Автор вводит понятие «когнитивная нагрузка» — сколько всего разработчику нужно держать в голове, чтобы понять код. И показывает, как мы сами её раздуваем: глубоким наследованием, слоями абстракций, микросервисами ради микросервисов.
Любимый пример: стартап с 5 разработчиками сделал 17 микросервисов и отстал на 10 месяцев. Каждое изменение требовало правок в 4+ местах.
Цитата, которая запомнилась: «A little copying is better than a little dependency» — Rob Pike.
Статья не очень доинная, с примерами кода и конкретными антипаттернами.
@prog_stuff
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
OpenAI рассказала, как обслуживает 800 миллионов пользователей ChatGPT на обычном PostgreSQL — больше миллиона запросов в секунду, без кастомных модификаций.
Архитектура: 1 primary инстанс + ~50 read реплик на Azure-инфраструктуре. Latency на p99 — двузначные миллисекунды. Правда, есть нюанс — write-heavy workloads OpenAI вывела в Azure CosmosDB, а в PostgreSQL оставила read-heavy операции.
Что интересно — они не стали городить сложную систему. Вместо этого взяли стандартный PostgreSQL и выжали из него максимум через базовые практики: connection pooling (PgBouncer) для переиспользования соединений вместо создания новых, query optimization для профилирования и переписывания тяжёлых запросов, strategic indexing — индексы ровно там, где нужны.
Для AI-функций используют расширение
База обслуживает данные пользователей, истории разговоров и API-взаимодействия.
➡️ Главный вывод: PostgreSQL действительно масштабируется до экстремальных нагрузок, если правильно настроить. Не нужно сразу бежать за NewSQL или распределёнными системами — сначала стоит выжать всё из проверенных решений.
Инженеры OpenAI подчёркивают: успех в том, что они фокусировались на best practices, а не на переизобретении колеса. Connection pool, индексы, read реплики — это всё есть в документации PostgreSQL. Просто нужно применить грамотно.
Годный пример того, что правильное разделение нагрузки важнее выбора модной БД. PostgreSQL для чтения + CosmosDB для записи — и никакого шардинга одной базы. Простая архитектура побеждает.
📎 OpenAI Blog, Hacker News
@prog_stuff
Архитектура: 1 primary инстанс + ~50 read реплик на Azure-инфраструктуре. Latency на p99 — двузначные миллисекунды. Правда, есть нюанс — write-heavy workloads OpenAI вывела в Azure CosmosDB, а в PostgreSQL оставила read-heavy операции.
Что интересно — они не стали городить сложную систему. Вместо этого взяли стандартный PostgreSQL и выжали из него максимум через базовые практики: connection pooling (PgBouncer) для переиспользования соединений вместо создания новых, query optimization для профилирования и переписывания тяжёлых запросов, strategic indexing — индексы ровно там, где нужны.
Для AI-функций используют расширение
pgvector — хранят и ищут высокоразмерные векторы (embeddings) для семантического поиска в данных ChatGPT.База обслуживает данные пользователей, истории разговоров и API-взаимодействия.
Инженеры OpenAI подчёркивают: успех в том, что они фокусировались на best practices, а не на переизобретении колеса. Connection pool, индексы, read реплики — это всё есть в документации PostgreSQL. Просто нужно применить грамотно.
Годный пример того, что правильное разделение нагрузки важнее выбора модной БД. PostgreSQL для чтения + CosmosDB для записи — и никакого шардинга одной базы. Простая архитектура побеждает.
@prog_stuff
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤1👍1
Разработчик игры через SSH заметил странное: при вводе одного символа отправляется около 270 пакетов. CPU загружен на 30%, bandwidth — 6,5 Мбит/с. Что происходит?
Разбор через tcpdump показал паттерн: 179 пакетов по 36 байт каждые 20 мс. Причина — функция
Зачем это нужно? Чтобы злоумышленники не могли определить, какие буквы вы вводите, анализируя интервалы между пакетами. SSH отправляет ложные пакеты (SSH2_MSG_PING) для маскировки реального ввода.
Решение: отключить объявление расширения
Результат:
🔘 CPU: 29,90% → 11,64%
🔘 Syscalls: 3,10 с → 0,66 с
🔘 Bandwidth: 6,5 → 3 Мбит/с
Классический компромисс: безопасность против производительности. Для большинства сценариев это незаметно, но для высоконагруженных приложений через SSH — критично.
📎 https://eieio.games/blog/ssh-sends-100-packets-per-keystroke/
@prog_stuff
Разбор через tcpdump показал паттерн: 179 пакетов по 36 байт каждые 20 мс. Причина — функция
obfuscate_keystroke_timing, добавленная в SSH в 2023 году.Зачем это нужно? Чтобы злоумышленники не могли определить, какие буквы вы вводите, анализируя интервалы между пакетами. SSH отправляет ложные пакеты (SSH2_MSG_PING) для маскировки реального ввода.
Решение: отключить объявление расширения
[email protected] на стороне сервера.Результат:
Классический компромисс: безопасность против производительности. Для большинства сценариев это незаметно, но для высоконагруженных приложений через SSH — критично.
@prog_stuff
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥1👍1
Forwarded from Типичный программист
Дашборд — это скучно до того момента, пока к его визуализации не подключат гигантский экран.
Сегодняшняя история о команде, которая превратила обычную статистику посещения фестиваля в генеративное шоу. Их задача звучала как вызов: сделать так, чтобы было невозможно оторвать глаз от дашбордов.
Так они создали интерактивную инсталляцию, где посетители, сами того не зная, становились частью цифрового арт-объекта.
Следующий артефакт представит категорию «Виртуализация». Не пропустите.
Please open Telegram to view this post
VIEW IN TELEGRAM
6 шагов выхода из выгорания — статья от разработчика, который через это прошёл
80% программистов чувствуют себя выгоревшими. Автор — Senior Developer из Берлина — сам прошёл через это: +15 кг за 3 месяца, кожная сыпь от стресса, утренние Red Bull'ы вместо энергии.
Его чеклист:
🔘 Заставь себя отдохнуть — закрой ноутбук, никакого кода на выходных. Технологии не меняются так быстро, как кажется
🔘 Поставь границы — фиксированное время ухода, никаких коммитов ночью. Тебя не уволят — замену искать дороже
🔘 Физическая нагрузка — работает не хуже антидепрессантов, доказано исследованиями
🔘 Верни страсть к коду — попарься с джунами, сходи в технический музей, вспомни зачем начинал
🔘 Набери маленьких побед — не большие фичи, а low-hanging fruit: мелкие баги, тесты, оптимизации
🔘 Смени работу — если после всего выше ничего не изменилось, проблема не в тебе
📎 https://www.theseniordev.com/blog/to-every-developer-close-to-burnout-read-this
@prog_stuff
80% программистов чувствуют себя выгоревшими. Автор — Senior Developer из Берлина — сам прошёл через это: +15 кг за 3 месяца, кожная сыпь от стресса, утренние Red Bull'ы вместо энергии.
Его чеклист:
@prog_stuff
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
«После двух лет вайб-кодинга вернулся к ручному написанию» — тема в топе HackerNews. Тред на 500+ комментов о том, как ИИ-ассистенты влияют на навыки.
Главные мысли из обсуждения:
🔘 "Ты ДОЛЖЕН писать код сам. Да, AI может — но ты студент, код пока несложный. Но ты ДОЛЖЕН писать его сам" — CS-преподаватель
🔘 "No pain no gain работает и для обучения. Борьба с концептами — это и есть суть, а не результат"
🔘 "После нескольких циклов AI-генерации исчезает гордость за владение кодом. Начинаешь проект с энтузиазмом, но после пары итераций с AI..."
🔘 "Я хочу просто строить вещи, мне не нужно 'становиться сильнее'. У меня теперь мех-костюм" — контраргумент
🔘 "Self-taught разработчики всегда имеют слепые пятна. Неделю пишут на JS чтобы сэкономить 5 минут на C или bash"
📎 https://news.ycombinator.com/item?id=46765460
@prog_stuff
Главные мысли из обсуждения:
@prog_stuff
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1