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

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

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

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

Как правильно вызывать CUDA

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

Вероятно, вам уже попадались подобные руководства по CUDA: хрестоматийный пример «Hello World», в котором перемешан код для ЦП и графического процессора. Всё это сложено в один гетерогенный файл с исходниками на CUDA C++, а для запуска ядра применяется синтаксис NVCC с тройными угловыми скобками <<<>>>, который уже стал культовым:

Читать далее

Новости

Кем вы себя видите через 5 лет?

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

Ещё полгода назад были слышны жаркие дискуссии о том, сможет ли ИИ заменить разработчиков или нет. Незаметно, эта дискуссия сместилась в сторону того, какая именно роль отводится разработчикам в будущем.

Читать далее

С монолита на микросервисы: проблемы, решения, практические рекомендации

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

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

Микросервисы обещают решение. Гибкость. Масштабируемость. Независимые команды. Быстрые релизы. Звучит идеально. Но дорога к этой цели усеяна ловушками. Я видел проекты, которые провалились, потратив миллионы. Они просто поменяли один большой клубок проблем на десятки маленьких.

Читать далее

Хватит тестировать на «кошках»! Разворачиваем циничный API на FastAPI за 5 минут для реальных AQA-задач

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

Привет, Хабр! Меня зовут Ваня, и я AQA-инженер. Как и многие из вас, я занимаюсь обучением будущих покорителей Postman и Pytest. И, как многие из вас, я столкнулся с проблемой: все существующие тестовые API — невыносимо скучные.

Todo-листы, интернет-магазины с товарами Item 1, Item 2, API для управления книгами... Серьезно? После пятого GET /todos начинаешь сомневаться не только в своей карьере, но и в смысле бытия. Данные в них стерильны, как операционная, а сценарии предсказуемы, как сюжет российского сериала.

Моим ученикам было скучно. Мне было скучно. Я понял, что нужен свой API. С блэкджеком и... ну, вы поняли. С API, который будет не просто функциональным, но и забавным. Который захочется «потыкать» просто ради того, чтобы увидеть очередной перл в ответе сервера.

Так родился «Cynical Circle API» — API для тех, кто понял жизнь и устал от ванильных примеров.

(Так выглядит наша интерактивная документация. Уже интригует, не правда ли?)

Читать далее

20 частых антипаттернов в React и как их исправить: кратко, понятно, без мифов

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

20 частых антипаттернов в React и как их исправить. Разбираем ошибки с хуками, состоянием, мемоизацией и структурой компонентов: когда не нужен useEffect, зачем useCallback, почему не хранить производные значения в state. Минимальные примеры, чёткие принципы, практичные альтернативы.

Читать далее

История одного выгорания

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

Когда‑то у меня была мечта. Влететь в новую профессию, стать разработчиком, перейти на удаленку, работать мозгами. Я получала задачу, и не понимала, как к ней подступиться. Искала решение, натыкалась на ошибки, и рано или поздно, шаг за шагом выходила на нужный результат. Чувствовала удовлетворение, от того что «смогла». Чувствовала, что расту и развиваюсь. Задачи усложнялись, проекты усложнялись. Получала новую задачу, где ничего непонятно, скатывалась в неуверенность в себе. Разбиралась с ней, и взлетала вверх. Как американские гонки, только вместо рельсов — самооценка, вместо поезда — синдром самозванца. Но всегда был кайф. Чем сложнее вначале, тем сильнее кайф от успеха в конце.

Когда‑то мне хотелось показать, как много и быстро я успеваю делать. Сравнивала себя с коллегами. Понимала, что работаю нисколько не хуже. Иногда делаю таски быстрее. Знаю ответы на вопросы. Испытывала особый трепет, когда после отчета о проделанной работе слышала от начальника что‑то в духе «уже сделала? как быстро!»

Когда‑то мне хотелось роста в знаниях и зарплате. Я ходила на конференции, изучала новые технологии, чтобы показать, что хочу развиваться. Мои желания заметили: получила перевод на другой проект. Получила запись в трудовой о том, что уже не младший разработчик, а разработчик. Увеличение зарплаты было таким смешным, что даже не покрывало инфляцию. Считай, его не было. Но я говорила себе, что работаю на перспективу и рано или поздно всё будет. Когда я почувствую, что заслужила больше денег, я попрошу об этом.

Читать далее

net/netip в Go 1.25

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

Привет, Хабр!

Go ценят за предсказуемость и простые решения в стандартной библиотеке, а в сервисах чаще всего упираемся в IP, разбор host:port, CIDR и сериализацию. Сегодня это удобно закрывается стандартным net/netip: компактные value-типы, корректный парсинг адресов и портов, работа с зонами, проверка принадлежности сетям и быстрые операции без лишних аллокаций. В статье рассмотрим этот пакет подробнее.

Читать далее

Кто убил интеллект? Расследование деградации ChatGPT, Claude, Gemini и других LLM

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

Всем привет! Недавно я вновь сменил свою основную LLM-модель. Долгое время пользовался Claude, потом перешел на ChatGPT, затем на Gemini, и вот я опять оплатил Claude и снова отменил подписку. Почему? Потому что Gemini, который поначалу казался невероятно мощным, в какой-то момент просто перестал справляться с моими основными задачами, а до этого так же сделал Claude и ChatGPT. Они стали лениться, игнорировать части промпта и выдавать поверхностные ответы.

Читать далее

Про IT в 2025 году

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

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

Если вы работаете в ИТ или думаете туда пойти (а может, даже отдать туда своих детей), в этой статье разберём, что сейчас происходит на рынке, и как это отразится на зарплатах, требованиях и шансах устроиться на работу.

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

Дальше — больше

Мошенники на LinkedIn

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

На LinkedIn мне, как, думаю, и многим из вас, часто пишут. Чаще всего, это бывают либо рекрутеры низшего уровня, которые особо не вдаются в детали моей специализации и спамят просто "на удачу". Либо, это те, кто пытается предложить мне услуги, которые, ха-ха, я и сам предоставляю (всяческое R&D).

Первым делом, эти ребята, конечно, просят добавить их в контакты. Чаще всего, я на это никак не реагирую, чтобы не тратить время. Но иногда, я захожу глянуть профиль, особенно, если указано, что это, возможно, мой настоящий коллега-разработчик или какой-то иной живой человек. В этот раз, мне написал некий Гильермо, из Бразилии. В профиле написано - DevOps, а девопсов я уважаю, поэтому и жамкнул на "добавить в контакты".

Что было дальше

Топ AI-моделей для генерации кода: Claude, ChatGPT, Qwen — сравниваем гигантов

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

Когда машины пишут лучше нас — звучит как сюжет научной фантастики, но уже сегодня нейросети стали реальностью миллионов кодеров по всему миру. Сегодня мы не просто учим алгоритмы понимать код, а доверяем им писать его за нас.

Всё чаще ИИ даёт советы, которые оказываются лучше, чем изначальная задумка. Claude, ChatGPT, Qwen — эти модели уже не просто угадывают следующее слово, а демонстрируют понимание логики, стиля и даже контекста проекта. Они объясняют свои решения, исправляют баги, пишут тесты и даже помогают новичкам (и не только) разобраться в чужом коде.

Но кто из них действительно выигрывает в скорости, точности и глубине понимания? Кто понимает код от и до, а кто путается уже в середине? И главное — можно ли доверять коду, написанному нейросетью? 

Пора разобраться. Сравниваем трёх гигантов современного AI-программирования: Claude от Anthropic, ChatGPT от OpenAI и Qwen от Alibaba Cloud — в реальных сценариях, которые знакомы каждому разработчику.  

Приятного прочтения!  

Читать далее

Простыми словами для начинающих Unity-разработчиков учим принципы KISS, DRY, YAGNI и BDUF через аналогии из жизни

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

Большинство статей о принципах разработки написаны сложным языком и отпугивают новичков. В этом материале KISS, DRY, YAGNI и BDUF объясняются через бытовые аналогии с примерами на Unity C#. Плюс рассказываем, когда эти принципы стоит нарушать.

Читать далее

GIMP Script-Fu ООП. Векторы

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

Библиотека функций к Script-fu

Когда то, очень давно, считалось что графические редакторы делятся на растровые и векторные. К векторным относились Coreldraw Adobe Illustrator Inkscape и работали они не с отдельными пикселами изображений, а с элементами называемыми векторами, которые можно превращать, с помощью манипуляций в дуги различной формы, называемыми кривыми Безье. К растровым же относились Photoshop Paint и тот же GIMP. В этих редакторах отсутствовала какая либо геометрия и изображения представляли собой наборы отдельных точек - пикселов. Но время не стоит на месте и элементы растрового редактирования проникали в редакторы, которые считались векторными и наоборот, элементы векторных редакторов переносились в растровые графические редакторы. Примером тому является GIMP.

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

Читать далее

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

Как развернуть SonarQube в Linux: пошаговая инструкция

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

В современной разработке все чаще предъявляются высокие требования к качеству кода и неукоснительному следованию стандартам качества кода в командах. Обеспечение качества кода, а также решение многих других задач, связанных с разработкой и поддержанием «чистого» кода, берёт на себя популярный инструмент анализа — SonarQube.

Меня зовут Николай, я 1С-разработчик в SimbirSoft и в этой статье хочу подробно рассказать о процессе установки и настройки SonarQube в ОС Linux.

Читать далее

Как мы сделали AI-агента и пользуемся им на практике

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

Привет, Хабр! В последнем обновлении Explyt мы добавили AI-агента для написания кода. В этой статье расскажем, что он умеет и как мы сами его используем.

Пару месяцев назад в нашем плагине не было AI‑агента, а был только ассистент для генерации тестов. И пока агент не появился, в работе мы использовали другие известные плагины. Лично мне очень нравился Copilot, из‑за своего минималистичного интерфейса и контроля за контекстом. Однако фичи копайлота в первую очередь доезжали до VSCode, а пользователю IntelliJ IDEA приходилось дожидаться их месяцами. Поэтому для прототипирования и скаффолдинга, написания бойлерплейтного кода с помощью AI‑агентов мне приходилось переключаться между любимой средой разработки и IntelliJ, что было несколько неудобно.

С появлением своего AI‑агента пошло легче: можно было нажаловаться тимлиду Серёже, который затем осознанно и вдумчиво хакал очередной юзкейс. Со временем отладили настолько, что использовать внешние инструменты не приходится, свой стал работать достаточно хорошо. Дальше покажем, что он может, расскажем о приятных фишках, которые мы сделали для себя, чуть‑чуть о реальном опыте работы с ассистентом.

Читать далее

Структуры данных для frontend-разработчиков с реальными примерами

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

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

Мы, Тимофей Соломенников и Руслан Мирзоев, разработчики онлайн-кинотеатра PREMIER, хотим поделиться своим опытом и на реальных примерах показать, что даёт правильное использование структур данных.

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

Читать далее

Гайд по использованию Spring GraphQL. Часть 2

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

Привет, Хабр!

Меня зовут Дмитрий, я бэкенд-разработчик в SENSE и последние 10 лет пишу серверную часть на Java. Эта статья — продолжение первой части гайда по Spring GraphQL, где мы с нуля подняли проект и подключили GraphQL к Spring Boot.

Теперь углубимся в разработку полноценного API: создадим более сложную схему с вложенными типами и связями между ними, реализуем запросы с фильтрацией, добавим мутации для изменения данных и затронем важные аспекты производительности.

Поехали!

Читать далее

Koda: AI-помощник разработчика – бесплатно, без VPN, с поддержкой русского языка

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

Индустрия ИИ переживает рекордный бум: каждую неделю появляются новые модели, а заголовки пестрят новостями о многомиллионных контрактах и громких переходах звёздных исследователей. Прорывы происходят на всех уровнях: от чипов и инфраструктуры (NVIDIA и др.) до моделей и инструментов вроде Cursor или Windsurf.

Но у российских разработчиков выбор заметно ýже: ограничения, VPN, трудности с оплатой. Мы решили это изменить и создали Koda — AI-помощника, который доступен бесплатно и без VPN, работает с современными моделями и привычными функциями: автодополнение кода, чат, поиск по документации и коду проекта, а также агентный режим!

Читать далее

Собери Svelte 5 в своей голове

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

Даже если вы никогда не заглядывали «под капот» фреймворков, Svelte 5 — отличный повод это сделать. Вместо сухих теорий мы шаг за шагом разберём, как привычный HTML-подобный код Svelte превращается в быстрый JavaScript, способный работать без лишнего балласта. Автор статьи, Тан Ли Хау из сообщества Svelte, показывает этот процесс на простых примерах, так что вы сможете буквально «скомпилировать» Svelte у себя в голове и понять, что на самом деле делает ваш код.

Читать далее

Go 1.25: свежий релиз принес умные контейнеры и экспериментальный сборщик мусора

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

12 августа команда Go представила новую версию языка — Go 1.25. Релиз получился не самым крупным по количеству изменений в языке (их вообще нет), но принес несколько интересных улучшений в рантайме и инструментах, которые стоит обсудить.

Как разработчик, работающий в основном с микросервисами, я особенно обратил внимание на несколько ключевых нововведений. Давайте разберем основные измененения.

Читать далее

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