Создаем свою простую C++ библиотеку с документацией, CMake и блекджеком
Каждому разработчику знакома ситуация, когда один и тот же кусок кода приходится таскать из проекта в проект. Тогда почему бы не превратить свои идеи и наработки в удобный и доступный формат?
Ведь создавая свою библиотеку, вы не только прокачаете портфолио и структурируете код, но и выразите себя творчески. Плюс, сможете поделиться плодами своего труда с другими.
А чтобы облегчить вам эту задачу, держите крутой туториал, который можно использовать как шпаргалку для создания собственных либ и других проектов.
#cpp
@tproger
Читайте также в VK, Max и Дзен
Каждому разработчику знакома ситуация, когда один и тот же кусок кода приходится таскать из проекта в проект. Тогда почему бы не превратить свои идеи и наработки в удобный и доступный формат?
Ведь создавая свою библиотеку, вы не только прокачаете портфолио и структурируете код, но и выразите себя творчески. Плюс, сможете поделиться плодами своего труда с другими.
А чтобы облегчить вам эту задачу, держите крутой туториал, который можно использовать как шпаргалку для создания собственных либ и других проектов.
#cpp
@tproger
Читайте также в VK, Max и Дзен
😁25🔥16☃3🤔2👌2⚡1😍1🍌1💋1😭1🫡1
Как автоматизировать ревью документации
Чтобы не проверять однотипные документы вручную, можно отдать рутину AI-агенту. Так сделали ребята из этой статьи. Их инструмент встраивается в Jira, сам ходит в Confluence и за 26 секунд выдает детальный отчет. Как им удалось подружить LLM с корпоративными стандартами — читайте в кейсе.
@tproger
Читайте также в VK, Max и Дзен
Чтобы не проверять однотипные документы вручную, можно отдать рутину AI-агенту. Так сделали ребята из этой статьи. Их инструмент встраивается в Jira, сам ходит в Confluence и за 26 секунд выдает детальный отчет. Как им удалось подружить LLM с корпоративными стандартами — читайте в кейсе.
@tproger
Читайте также в VK, Max и Дзен
👎15👍8❤4❤🔥3👏2💊2💯1🍌1🍓1😴1🎅1
Типичный программист
Ну как вы тут? Есть чем похвастаться? Последний раз мы хвастались в феврале. У вас наверняка появились поводы для гордости. Кидайте их в комментарии! @tproger Читайте также в VK, Max и Дзен
Пора хвастаться!
В прошлом выпуске вы рассказали о сервисе для поиска работы, мониторинга, приложение для вишлистов, таск-трекер для Telegram и no-code конструктор. А чем похвастаетесь в этот раз?
Пишите в комментарии.
@tproger
Читайте также в VK, Max и Дзен
В прошлом выпуске вы рассказали о сервисе для поиска работы, мониторинга, приложение для вишлистов, таск-трекер для Telegram и no-code конструктор. А чем похвастаетесь в этот раз?
Пишите в комментарии.
@tproger
Читайте также в VK, Max и Дзен
❤5👍5🔥1💔1
Forwarded from Веб-страница
Dembrandt: извлекаем дизайн-системы сайтов одной командой
Open-source инструмент Dembrandt анализирует любой сайт и вытаскивает токены дизайна: цвета, шрифты, отступы, тени, радиусы, состояния кнопок и даже брейкпоинты. Выводит в JSON по стандарту W3C, делая пригодным для использования с Figma, Tailwind или Storybook.
Инструкция по использованию и установке по ссылке: https://www.dembrandt.com
#инструменты
@tproger_web
Читайте также в VK и Max
Open-source инструмент Dembrandt анализирует любой сайт и вытаскивает токены дизайна: цвета, шрифты, отступы, тени, радиусы, состояния кнопок и даже брейкпоинты. Выводит в JSON по стандарту W3C, делая пригодным для использования с Figma, Tailwind или Storybook.
Инструкция по использованию и установке по ссылке: https://www.dembrandt.com
#инструменты
@tproger_web
Читайте также в VK и Max
👍19❤5🔥3🤯2😭1😨1🙉1
Топ-10 техник масштабирования баз данных
Сохраняем👍
Индексация: Создавайте индексы на часто запрашиваемых столбцах, чтобы ускорить извлечение данных.
Вертикальное масштабирование: Увеличивайте мощность базы данных, добавляя больше CPU, оперативной памяти или хранилища, чтобы справляться с повышенной нагрузкой.
Кэширование: Храните часто запрашиваемые данные в памяти, чтобы снизить нагрузку на базу данных и улучшить время отклика.
Шардинг: Разделяйте данные на независимые фрагменты и распределяйте их между несколькими серверами, что позволяет горизонтально масштабировать базу данных и повышать производительность.
Репликация: Создавайте несколько копий базы данных на разных серверах, чтобы распределять запросы на чтение между репликами и повышать доступность.
Оптимизация запросов: Улучшайте SQL-запросы, исключайте ресурсоемкие операции и эффективно используйте индексы, чтобы ускорить выполнение запросов и снизить нагрузку на базу данных.
Пулинг соединений: Уменьшайте расходы на открытие и закрытие соединений с базой данных, переиспользуя существующие подключения, что повышает производительность при высокой нагрузке.
Вертикальное разделение: Разделяйте большие таблицы на более мелкие части, каждая из которых содержит подмножество столбцов оригинальной таблицы, что упрощает управление и улучшает производительность.
Денормализация: Храните данные в избыточном, но организованном формате, чтобы минимизировать сложные объединения и ускорить запросы, ориентированные на чтение.
Материализованные представления: Предварительно вычисляйте и сохраняйте результаты сложных запросов в отдельных таблицах, чтобы избегать дорогостоящего пересчета, снижая нагрузку на базу данных и ускоряя время отклика.
Сохраняем
Please open Telegram to view this post
VIEW IN TELEGRAM
👍38💔4😍2⚡1🤯1😱1
Startups.RIP: мертвые YC стартапы — живые идеи
Нашёл для вас базу 1700+ YC-проектов с 2005, которые провалились или ушли в закат. Для каждого есть пост-мортем, объяснение почему рухнуло, и готовый план перезапуска на 2026 tech.
Внутри глубокий разбор, playbook на Claude/Cursor/Lovable, tech-spec. Возможно, именно тут вы найдёте идею на миллион, которую сможете реализовать и продать сегодня: https://startups.rip/
@tproger
Читайте также в VK, Max и Дзен
Нашёл для вас базу 1700+ YC-проектов с 2005, которые провалились или ушли в закат. Для каждого есть пост-мортем, объяснение почему рухнуло, и готовый план перезапуска на 2026 tech.
Внутри глубокий разбор, playbook на Claude/Cursor/Lovable, tech-spec. Возможно, именно тут вы найдёте идею на миллион, которую сможете реализовать и продать сегодня: https://startups.rip/
@tproger
Читайте также в VK, Max и Дзен
👍19😈2😴2🤩1🌚1😭1🎃1
OrbStack: быстрый и простой способ запуска контейнеров на Mac
Забудьте про медленный Docker Desktop, который жрёт батарею и CPU. OrbStack — это суперлёгкая замена: контейнеры стартуют за секунды, Linux-машины в 1 минуту, при этом всё нативно для Apple Silicon.
Что умеет:
— Docker drop-in: compose, build, networking, bind mounts — как родное.
— 15 дистров Linux (Ubuntu, Debian), SSH/VS Code remote.
— Rosetta x86 эмуляция, VirtioFS файлы, IPv6/VPN без проблем.
Инструмент бесплатен для личного пользования, а коммерческая версия стоит адекватных денег.
#инструменты #docker
@tproger
Читайте также в VK, Max и Дзен
Забудьте про медленный Docker Desktop, который жрёт батарею и CPU. OrbStack — это суперлёгкая замена: контейнеры стартуют за секунды, Linux-машины в 1 минуту, при этом всё нативно для Apple Silicon.
Что умеет:
— Docker drop-in: compose, build, networking, bind mounts — как родное.
— 15 дистров Linux (Ubuntu, Debian), SSH/VS Code remote.
— Rosetta x86 эмуляция, VirtioFS файлы, IPv6/VPN без проблем.
Инструмент бесплатен для личного пользования, а коммерческая версия стоит адекватных денег.
#инструменты #docker
@tproger
Читайте также в VK, Max и Дзен
❤16🫡4👏2💘2❤🔥1🔥1😎1
This media is not supported in your browser
VIEW IN TELEGRAM
Каким был интернет 2000-х 👨🦳
Современные юзеры привыкли к быстрой загрузке и безлимиту. Но олды помнят, как это — смотреть, как картинка появляется на экране по частям и тщательно рассчитывать каждый мегабайт, чтобы не остаться без интернета.
Скорость 56 кбит/с была роскошью, а «выйти в сеть» превращалось в ритуал: отключить телефон, запустить модем и посвятить этому весь вечер. Мы сохраняли страницы на диск, читали письма и тексты офлайн, чтобы не тратить драгоценные минуты, знали коды вроде *17#.
У нас на сайте лежит годный лонгрид по цифровой эпохе того времени. Так что, если хотите свести олдскулы или узнать больше об этих временах — велком. Вдруг пригодится 😒
Современные юзеры привыкли к быстрой загрузке и безлимиту. Но олды помнят, как это — смотреть, как картинка появляется на экране по частям и тщательно рассчитывать каждый мегабайт, чтобы не остаться без интернета.
Скорость 56 кбит/с была роскошью, а «выйти в сеть» превращалось в ритуал: отключить телефон, запустить модем и посвятить этому весь вечер. Мы сохраняли страницы на диск, читали письма и тексты офлайн, чтобы не тратить драгоценные минуты, знали коды вроде *17#.
У нас на сайте лежит годный лонгрид по цифровой эпохе того времени. Так что, если хотите свести олдскулы или узнать больше об этих временах — велком. Вдруг пригодится 😒
Please open Telegram to view this post
VIEW IN TELEGRAM
❤32😭17😢4👍3🕊2🎉1🐳1💋1😈1😨1🤗1
Forwarded from GameDev: разработка игр
This media is not supported in your browser
VIEW IN TELEGRAM
Просто оставлю это здесь и дам ссылку где можно поиграть: https://eyebrow-tetris.sanderdesnaijer.com
@make_game (теперь в VK и Max)
@make_game (теперь в VK и Max)
😁42❤3👍2😈2🤷♂1👎1🔥1🤪1💊1
Попасть в ИТ сегодня проще, чем когда‑либо, но при этом сложнее задержаться
Все из-за нейросетей, которые снижают порог входа, но также маскируют отсутствие фундамента. Можно сдать тестовое, нагенерировать код, объяснить решение красивыми словами от ИИ, но при этом не понять ни строчки.
В индустрии этот феномен назвали «когнитивным долгом». За него придется расплачиваться через полгода-год, когда без глубокого понимания архитектуры, логики и критического мышления вы упрётесь в потолок.
У нас на сайте вышел разбор этого явления. В статье автор разбирает, что происходит с мышлением, когда ИИ из инструмента превращается в костыль. Заглядывайте, чтобы понять, не попались ли вы в эту нейросетевую ловушку.
@tproger
Читайте также в VK, Max и Дзен
Все из-за нейросетей, которые снижают порог входа, но также маскируют отсутствие фундамента. Можно сдать тестовое, нагенерировать код, объяснить решение красивыми словами от ИИ, но при этом не понять ни строчки.
В индустрии этот феномен назвали «когнитивным долгом». За него придется расплачиваться через полгода-год, когда без глубокого понимания архитектуры, логики и критического мышления вы упрётесь в потолок.
У нас на сайте вышел разбор этого явления. В статье автор разбирает, что происходит с мышлением, когда ИИ из инструмента превращается в костыль. Заглядывайте, чтобы понять, не попались ли вы в эту нейросетевую ловушку.
@tproger
Читайте также в VK, Max и Дзен
😁30👍10❤5🤪3💯2💊2🍌1👨💻1🗿1😘1🤷1
Почему вам стоит добавить LLM‑as‑a‑Judge в пайплайн автоматического тестирования и как это сделать
Если вы читаете эту статью, значит, уже понимаете, зачем нужны автотесты и какую роль они играют в разработке LLM‑ассистентов и агентов. В таких проектах тестирование важнее классического: ответы недетерминированы, а задачи специфичны — от сбора бенчмарков до сравнения сгенерированных ответов с эталонными.
Здесь вы узнаете, почему стоит внедрить гибридный автоматизированный пайплайн, сочетающий сравнение векторов и подход LLM‑as‑a‑Judge, и как выстроить его так, чтобы ручная разметка оставалась только стартовым этапом, а не постоянной нагрузкой на команду.
#llm #ml
@tproger
Читайте также в VK, Max и Дзен
Если вы читаете эту статью, значит, уже понимаете, зачем нужны автотесты и какую роль они играют в разработке LLM‑ассистентов и агентов. В таких проектах тестирование важнее классического: ответы недетерминированы, а задачи специфичны — от сбора бенчмарков до сравнения сгенерированных ответов с эталонными.
Здесь вы узнаете, почему стоит внедрить гибридный автоматизированный пайплайн, сочетающий сравнение векторов и подход LLM‑as‑a‑Judge, и как выстроить его так, чтобы ручная разметка оставалась только стартовым этапом, а не постоянной нагрузкой на команду.
#llm #ml
@tproger
Читайте также в VK, Max и Дзен
👎12💊4🎅3🤷♂1❤1😁1😱1😨1🤝1🤪1🤷1
Можно ли нанять сеньора за 200к и почему эйчар приводит не тех?
На первый вопрос есть короткий ответ — «нет». Если наймете, то напишите нам, мы погрустим вместе с этим сеньором...
А вот на второй вопрос одним словом не отделаешься. Поэтому держите статью от директора HR-департамента, вот он рассказывает:
— как один 15-минутный созвон техлида с рекрутером экономит от 500к для компании;
— почему идеальный по резюме кандидат проваливается, а интроверта нанимают;
— как бороться с ИИ-суфлерами.
Разбираемся в рассинхроне: https://tprg.ru/NIhO
@tproger
Читайте также в VK, Max и Дзен
На первый вопрос есть короткий ответ — «нет». Если наймете, то напишите нам, мы погрустим вместе с этим сеньором...
А вот на второй вопрос одним словом не отделаешься. Поэтому держите статью от директора HR-департамента, вот он рассказывает:
— как один 15-минутный созвон техлида с рекрутером экономит от 500к для компании;
— почему идеальный по резюме кандидат проваливается, а интроверта нанимают;
— как бороться с ИИ-суфлерами.
Разбираемся в рассинхроне: https://tprg.ru/NIhO
@tproger
Читайте также в VK, Max и Дзен
❤8🔥5☃3🎉3💔3🙉2🥰1💯1🤝1🆒1💘1
Детальный обзор полей Галуа
«Попросите Якоби или Гаусса публично высказать своё мнение — не о истинности, а о важности этих теорем. Позже, я надеюсь, найдутся люди, которым будет выгодно разобраться во всём этом хаосе.»
Этими словами Эварист Галуа завершал письмо своему другу Огюсту Шевалье за два дня до смерти от ран на дуэли в 21 год. Ни Якоби, ни Гаусс так и не разобрались в его работах, но спустя 15 лет Жозеф Лиувилль их опубликовал и они легли в основу современной алгебры, став известными как теория Галуа. В этой статье разберём одну из её частей — поля Галуа, которые сегодня широко применяются в криптографии и избыточном кодировании даже на уровне специализированных расширений Intel и AMD.
@tproger
Читайте также в VK, Max и Дзен
«Попросите Якоби или Гаусса публично высказать своё мнение — не о истинности, а о важности этих теорем. Позже, я надеюсь, найдутся люди, которым будет выгодно разобраться во всём этом хаосе.»
Этими словами Эварист Галуа завершал письмо своему другу Огюсту Шевалье за два дня до смерти от ран на дуэли в 21 год. Ни Якоби, ни Гаусс так и не разобрались в его работах, но спустя 15 лет Жозеф Лиувилль их опубликовал и они легли в основу современной алгебры, став известными как теория Галуа. В этой статье разберём одну из её частей — поля Галуа, которые сегодня широко применяются в криптографии и избыточном кодировании даже на уровне специализированных расширений Intel и AMD.
@tproger
Читайте также в VK, Max и Дзен
👍30❤3☃3🕊2🤨2❤🔥1😁1🌭1😭1👻1💘1
Пакет с 97 млн загрузок крал ключи при каждом запуске Python — и это не кликбейт
В популярном LiteLLM, который используют как единый шлюз к сотне LLM, нашли стилер. Версии 1.82.7 и 1.82.8 уже удалены из PyPI, но они успели разойтись — и вредоносный код не требовал даже импорта библиотеки.
Достаточно было установить пакет. В версии 1.82.8 скрипт срабатывал при каждом старте интерпретатора, собирал SSH-ключи, токены AWS, GCP, Azure, переменные окружения и отправлял на поддельный домен. Обнаружили атаку случайно: баг в стилере устроил fork-бомбу, съел всю память и привлёк внимание.
Это не единичный случай. Группировка TeamPCP за последние дни скомпрометировала уже несколько инструментов разработки, и паттерн везде один — захват аккаунта мейнтейнера и публикация вредоносной версии в реестр.
Если в ваших проектах или CI/CD был
Подробности в материале.
#новости
В популярном LiteLLM, который используют как единый шлюз к сотне LLM, нашли стилер. Версии 1.82.7 и 1.82.8 уже удалены из PyPI, но они успели разойтись — и вредоносный код не требовал даже импорта библиотеки.
Достаточно было установить пакет. В версии 1.82.8 скрипт срабатывал при каждом старте интерпретатора, собирал SSH-ключи, токены AWS, GCP, Azure, переменные окружения и отправлял на поддельный домен. Обнаружили атаку случайно: баг в стилере устроил fork-бомбу, съел всю память и привлёк внимание.
Это не единичный случай. Группировка TeamPCP за последние дни скомпрометировала уже несколько инструментов разработки, и паттерн везде один — захват аккаунта мейнтейнера и публикация вредоносной версии в реестр.
Если в ваших проектах или CI/CD был
pip install litellm без фиксации версии, стоит проверить, не подтянулся ли скомпрометированный пакет. Ирония в том, что LiteLLM как раз и предназначен для хранения API-ключей к нейросетям.Подробности в материале.
#новости
😐34😁21🤯8😱3🤷♂2🆒2❤🔥1❤1🔥1🎃1🗿1
Как Google повышала знания работников в кабинках туалета
На фоне большого роста Google в 2006 году столкнулась с огромным количеством багов. Чтобы справиться с этим, инженеры решили подойти к задаче нестандартно.
В шутку было предложено обучать сотрудников прямо в туалетах — месте, где внимание пусть ненадолго, но точно сосредоточено. Так и появился Tech on the Toilet (TotT) — одностраничные листовки с качественным техническим контентом по тестированию.
Реакции на это были смешанные: одни благодарили за знания, другие просили оставить их в покое. Но концепция сработала и разрослась — теперь TotT охватывает темы от чистого кода до веба и ML.
Отличный пример как креатив может сделать рутинные процессы эффективнее🧻
#факты
@tproger
Читайте также в VK, Max и Дзен
На фоне большого роста Google в 2006 году столкнулась с огромным количеством багов. Чтобы справиться с этим, инженеры решили подойти к задаче нестандартно.
В шутку было предложено обучать сотрудников прямо в туалетах — месте, где внимание пусть ненадолго, но точно сосредоточено. Так и появился Tech on the Toilet (TotT) — одностраничные листовки с качественным техническим контентом по тестированию.
Реакции на это были смешанные: одни благодарили за знания, другие просили оставить их в покое. Но концепция сработала и разрослась — теперь TotT охватывает темы от чистого кода до веба и ML.
Отличный пример как креатив может сделать рутинные процессы эффективнее🧻
#факты
@tproger
Читайте также в VK, Max и Дзен
❤38😁16✍11❤🔥2💯2🤨2🍓2🍾2👍1💘1😘1
Forwarded from Точка входа в программирование
Процессор в вашем компьютере угадывает будущее. И ошибается в 5% случаев
Мы знаем, что код на отсортированном массиве работает быстрее, чем на неотсортированном. Тот же массив, тот же алгоритм, и те же данные. Просто в другом порядке. Всё потому, что процессор постоянно пытается предсказать будущее. Буквально. Он гадает, какая ветка
Давайте вместе разберёмся, как это работает:
https://habr.com/ru/articles/1013098/
@prog_point (теперь ещё в VK и Max)
Мы знаем, что код на отсортированном массиве работает быстрее, чем на неотсортированном. Тот же массив, тот же алгоритм, и те же данные. Просто в другом порядке. Всё потому, что процессор постоянно пытается предсказать будущее. Буквально. Он гадает, какая ветка
if выполнится ещё до того, как условие будет вычислено. И на отсортированных данных ему угадывать проще.Давайте вместе разберёмся, как это работает:
https://habr.com/ru/articles/1013098/
@prog_point (теперь ещё в VK и Max)
🔥15👏7🗿6💯5🤨4🤓3❤🔥2😐2🎃1💅1🙉1
И снова пора хвастаться!
В прошлом выпуске вы рассказали:
— о проекте для планирования учёбы,
— решении np-hard для сортировки контейнеров в стеках,
— аналоге Skype,
— платформе для подготовки к фронтенд-собесам,
— приложении для путешествий,
— цифровом мозге для obsidian и не только.
Теперь расскажите, как успехи с развитием этих проектов? А те, кто ещё не хвастался, не стесняйтесь и пишите о своих проектах в комментариях.
@tproger
Читайте также в VK, Max и Дзен
В прошлом выпуске вы рассказали:
— о проекте для планирования учёбы,
— решении np-hard для сортировки контейнеров в стеках,
— аналоге Skype,
— платформе для подготовки к фронтенд-собесам,
— приложении для путешествий,
— цифровом мозге для obsidian и не только.
Теперь расскажите, как успехи с развитием этих проектов? А те, кто ещё не хвастался, не стесняйтесь и пишите о своих проектах в комментариях.
@tproger
Читайте также в VK, Max и Дзен
🍓3💘3✍2👍2🙏2💔2🗿2👌1😴1🤓1🎅1