Как стать автором
Поиск
Написать публикацию
Обновить
1159.81

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

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

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

.NET Digest #8

Время на прочтение4 мин
Количество просмотров3K

Добро пожаловать на восьмой выпуск нашего дайджеста, посвящённого новостям и событиям в мире .NET! В этот раз мы расскажем про уже ожидаемые .NET 10 preview 4 и 5, новую команду dotnet run app.cs и множество интересных статей. Команда PVS-Studio рада представить вам подборку самых интересных и полезных материалов. Поехали!

Читать далее

Валидация данных в Go с go-playground/validator: полное руководство

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

Валидация входных данных — критически важная часть любого приложения. Без неё ваше приложение подвержено:

— паникам и ошибкам из-за неожиданных nil или невалидных значений,
— некорректной работе бизнес-логики при обработке невалидных данных,
— уязвимостям безопасности (SQL-инъекции, XSS и др.),
— сложностям в отладке из-за непредсказуемого поведения.

Рассмотрим типичный подход к валидации без специализированных библиотек...

Читать далее

Python в enterprise-разработке: почему популярность ЯП распространилась и на корпоративный сектор. Часть 2

Время на прочтение14 мин
Количество просмотров3K

Всем привет! Это Леша Жиряков. На прошлой неделе мы начали разбирать, почему Python стал настолько востребован для создания корпоративных программных решений. Сегодня продолжим тему — поговорим об управлении зависимостями, асинхронном программировании в корпоративной среде, тестировании, корпоративной безопасности и других ключевых моментах. Заодно обсудим перспективы Python в enterprise-разработке. Приступим!

Читать далее

Приложение на Go шаг за шагом. Часть 3: форматирование и обёртывание ответов JSON

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

Привет! Я Владислав Попов, автор курса «Go-разработчик с нуля» в Яндекс Практикуме. В серии статей я хочу помочь начинающим разработчикам упорядочить знания и написать приложение на Go с нуля: мы вместе пройдём каждый шаг и создадим API для получения информации о книгах и управления ими. 

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

Читать далее

Steroids — ещё один фронтенд фреймворк на базе React?

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

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

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

Читать далее

Архитектурные принципы

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

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

Итак, без долгих предисловий:

Читать далее

“Разработчики тупят” — а может, просто задачи дурацкие?

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

Если вы хоть раз были на стороне бизнеса, наверняка слышали (или говорили):

Сколько можно делать такую простую штуку?; Они что, не понимают, как это важно?

Но тут надо смотреть шире...

Читать далее

Каналы(channels) в Go

Время на прочтение15 мин
Количество просмотров4.8K

Каналы — инструмент для передачи данных между горутинами. Это фундаментальная концепция, на которой строится вся модель параллелизма в языке, и одна из ключевых особенностей, которая делает Go уникальным среди современных языков программирования. За внешней простотой синтаксиса ch <- value и <-ch скрывается сложная реализация, которая включает в себя кольцевые буферы, системы очередей, механизмы блокировки и тесную интеграцию с планировщиком горутин. В этой статье разберем их внутреннее устройство на уровне runtime и рассмотрим паттерны использования.

Читать далее

Надежное программирование — часть 3. Финал (2019)

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

Немного рассуждений о языках программирования (ЯП) с уклоном на надежное и безопасное программирование.

Статья не публиковалась ранее, хотя была написана в 2019г, теперь можно смотреть как некую ретроспективу. Чем и воспользуюсь, вставляя замечания о былом по тексту (тег Upd).

Но тормозит развитие серии, ибо вышли уже 3 части и несколько переводов в тему: 

Читать далее

Как я пишу код быстрее

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

Вечный вопрос разработчика: как писать код быстрее, не превращая его в поддерживаемый кошмар? Дедлайны давят, требования растут, а перфекционизм подсказывает: «Ещё рефакторинг!»

Автор годами искал баланс между скоростью и качеством в разработке ПО и вывел практические правила. Делимся опытом: черновики вместо идеала, борьба с отвлечениями, маленькие патчи и другие навыки, реально ускоряющие работу.

Готовы ускориться?

Что делать вайбкодеру после 07/07

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

Итак, Cursor поменял тарифы.

Как они в действительности работают — это всё ещё загадка, потому что они указали примерное количество запросов, на которые можно рассчитывать, но почему-то каждый день это немного обновляется. То есть даже если ты попал на лимит, то на следующий день у тебя добавится ещё немного запросов. Но прозрачности тут нет

Кто не в курсе - раньше было 500 запросов за $20, что честно и понятно. Потом вдруг стал полный безлимит за $20, а затем Anysphere (разработчики Cursor) резко сказали, что якобы безлимит они давали только на режим авто (а там модель самая дешёвая), а в от на другие модели есть какие-то лимиты, но какие - не уточнили, пока коммьнити не разозлилось. В итоге оказалось, что за те же деньги сейчас можно себе позволит в 1.5-2 раза меньше, при этом появились тарифы за 60 и 200 usd.

Читать далее

Поведение разных моделей при вайбкодинге

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

Это стоит обсудить на фоне прошлого того, как Cursor попытался сделать хитрый финт, чтобы собрать кучу денег с подписчиков, но у него не получилось.
По сути, у нас не так-то много качественных вариантов.

Читать далее

Как AI-агенты помогут достроить вашу Вавилонскую Башню

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

Попробовал я тут на днях Codex от OpenAI. Его релиз состоялся 16 мая 2025 года, т.е. два месяца назад.

Это AI-агент, который подключается к вашему репозиторию (пока поддерживается только github) и подготавливает пулл реквест согласно той задаче, которую вы ему поставите в текстовом виде. Работает он в собственном окружении ("на своей виртуалке") и вы можете видеть в режиме реального времени, как он выкачивает проект и сканирует его посредством консольных команд. Затем он вносит правки и прогоняет тесты. После этого вы видите дифф изменений как в гите и можете проводить ревью.

Представьте, что теперь у вас есть джун, который умеет кодить на любом языке, быстро въезжает в проект, обладает широкой "насмотренностью" и доступен 24/7.

Читать далее

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

Explyt 4.0: агентский режим и генерация тестов по исполнению

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров994

Всем привет! В Питере вместе с летней жарой случился релиз Explyt 4.0 c крутыми фичами для написания кода, тестирования и дебаггинга: агентским режимом Explyt Agent и генерацией тестов по исполнению Generate Tests from Execution.

Поддержка Testcontainers и не только

Телеграфируем кодом Морзе через Java Stream API (часть 1 из 2)

Уровень сложностиСредний
Время на прочтение38 мин
Количество просмотров4.1K

Азбука Морзе — один из самых старых, но не уходящих на заслуженный отдых телекоммуникационных стандартов. Почему бы не объединить ее с Java? Это статья о технологиях, отстоящих друг от друга более чем на полтора столетия. Мы познакомимся с кодом Морзе, с подкапотной частью Java Stream API, и на живом примере соберем все это в одно кроссплатформенное приложение на Java.

Вперед, в прошлое!

Внедрение зависимостей (DI) через библиотеку Tsyringe

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

Привет, Хабр! Меня зовут Роман Мельник, я фронтенд-разработчик во «ВКонтакте для Бизнеса». Наша команда создаёт инструменты, которые помогают владельцам сообществ управлять и развивать свои проекты. Сегодня я расскажу про Dependency Injection (DI) через библиотеку Tsyringe.

Почему это важно? Крупные проекты сталкиваются со следующими проблемами: разрастающимся глобальным стором, сложностями тестирования, масштабирования и переиспользования кода. Внедрение зависимостей помогает решить эти вопросы, делая код гибким и управляемым. На практике это выглядит гораздо интереснее. Давайте разберёмся!

Начнём с архитектурных принципов и паттернов.

Читать далее

Гранулярное погружение в атаки на кэш в ARMv8. Разбираем типы атак и митигации

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

Привет! Без лишнего: в статье расскажу про атаки на кэш-память в процессорах семейства ARMv8. Подробно изучил их для совершенствования безопасности KasperskyOS: познакомлю с теорией и практикой, механизмами работы и способами митигации. Также кратко расскажу, как мы тестировали каждый способ атаки на KasperskyOS, какие из них оказались неприменимы, какие могут представлять угрозу и как микроядро с подобными угрозами справляется. Если интересно гранулярно погрузиться в типологию атак на кэш — добро пожаловать!

Читать далее

Агенты и Агентная Экономика

Время на прочтение10 мин
Количество просмотров1.4K

Большой Дайджест Недели. 14.07.25

Минимум новостей, максимум инсайтов.

=> Коммент на космические зарплаты Цукерберга для ИИ-инженеров

=> Битва вайб-кодеров, но-кодеров, лоу-кодеров и программистов только разгорается

=> На Poly Market ставка всего 26%, что GPT-5 появится в июле. Проголосуйте и вы, узнаем что думает по этому поводу Хабр.

=> Настоящая ценность LLM это архитектура агентов..."будет много багов, но не бросайте, думаю, эта штука останется."

Читать далее

Vibe Coding: Заглянем под капот Claude Code. Часть 1

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

В этой статье мы погрузимся во внутреннее устройство Claude Code - агента для помощи в разработке от Anthropic. Мы проанализируем его с точки зрения архитектуры, рассмотрим доступные инструменты и разберем системные промпты, которые определяют его поведение.

Читать далее

От React всё так же веет безумием, но все об этом молчат

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

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

Так что вот она полноценная статья, ещё больше той, из которой она родилась. Здесь я подробно опишу все проблемы React и поясню, почему это может не быть виной разработчиков.

Читать далее

Вклад авторов