Habr.com

Syndicate content Хабр
Все публикации подряд на Хабре
Updated: 1 hour 10 min ago

[Перевод] Никто пока не знает, как работать с ИИ

Thu, 07/24/2025 - 20:05

Будущее разработки ПО, возможно, станет похожим на джаз. Каждый импровизирует, никто не смотрит на ноты.

На прошлой неделе я выпустил Protocollie. Сделал его за 4 дня, используя языки, которых не знаю, и даже не касаясь кода напрямую. Люди без конца спрашивают: «Как это удалось?» Но я даже не уверен, что получится повторить то же самое второй раз.

Мы все придумываем этот процесс на ходу.

Читать далее

AI-генератор сайтов на ChatGPT и Next.js 15: Создаем SEO-оптимизированные страницы с нуля (аналог v0)

Thu, 07/24/2025 - 19:57

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

На практике это сводится к простому циклу: вы отправляете промпт в ChatGPT, получаете в ответ конфигурационный файл, загружаете его в приложение и одной командой сборки создаёте готовые, стилизованные страницы. Всё это уже настроено в стартовом шаблоне, включая авторизацию и многоязычный AI-чат.

Или используйте полную автоматизацию так же как в v0, но с прицелом под крупные корпоративные интеграции.

Читать далее

Как начинающему тестировщику выстраивать коммуникацию с командой

Thu, 07/24/2025 - 19:36

Когда начинаешь карьеру в тестировании, кажется, что главное — это баги, тест-кейсы и чек-листы. Но очень быстро становится понятно: технических знаний недостаточно. 

Меня зовут Диана, я начинающий тестировщик в Naumen. Работаю в группе проектного тестирования: тестирую доработки, связываю требования с реализацией, отслеживаю баги и участвую в коммуникации между аналитиками, разработчиками и другими тестировщиками. За год в профессии я поняла: даже если ты очень внимателен, без умения правильно задать вопрос, донести проблему или уточнить требование — будет сложно.

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

Читать далее

[Перевод] Тестируем веб приложение на Go

Thu, 07/24/2025 - 19:30

Тестирование — важнейший аспект разработки программного обеспечения, особенно для веб‑приложений. В Go тестирование встроено в язык и предоставляет мощные инструменты для написания и выполнения тестов. В этой статье мы рассмотрим поток веб-приложения на Go, как писать модульные тесты для каждого слоя приложения.

Читать далее

Почему инжиниринг — это больше, чем проектирование

Thu, 07/24/2025 - 19:01

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

Читать далее

Как мы научили PostgreSQL автоматически создавать партиции: опыт Nexign Nord

Thu, 07/24/2025 - 18:55

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

Читать далее

Интернет против капчи: есть ли будущее у тестов вроде «найдите все картинки с велосипедами»?

Thu, 07/24/2025 - 18:53

Капчи, которые должны «отделять» людей от ботов, стали настоящей головной болью для пользователей. Порой приходится не выбирать светофор или «зебру», а решать сложные головоломки или математические примеры, многие из которых ставят в тупик — а вот боты, кажется, щёлкают их как орешки. Мы в beeline cloud решили разобраться в теме.

Читать далее

Были тысячи способов управлять проектами, но наши тимлиды выбрали эти

Thu, 07/24/2025 - 18:33

«Я не боюсь того, кто изучает 10 000 различных способов управления. Я боюсь того, кто изучает один 10 000 раз». Выбрали по одному самому «смертоносному» инструменту планирования и управления, и объяснили почему.

Читать далее

Геймификация в e-commerce: как превратить игры в прибыль

Thu, 07/24/2025 - 18:25

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

В этой статье аналитик CleverPumpkin Алёна Сорокина расскажет про уже привычные и набирающие популярность виды геймификации. А еще о том, с какими сложностями можно столкнуться и как интегрировать игры в маркетинговую стратегию.

Читать далее

ИИ на подъёме: восхождение к пику ожиданий и первые уроки в реальном бизнесе

Thu, 07/24/2025 - 18:24

Где мы все? Судя по классическому циклу зрелости, Large Language Models (LLM) уверенно маршируют к вершине «Пика завышенных ожиданий». Энтузиазм бьёт ключом: каждый день — новые анонсы и инвестиции. Как руководитель отдела инновационных проектов в «Первой Грузовой компании», я вижу этот ажиотаж и сам погружен в изучение потенциала LLM для нашей отрасли. Иллюзия всесильности ИИ сейчас сильна как никогда. Мы сейчас явно находимся на пике завышенных ожиданий.

Читать далее

Как создать модели машин в TinkerCAD: инструкции и руководства

Thu, 07/24/2025 - 18:21

На уроках в Pixel мы используем программу для моделирования TinkerCAD для обучения детей 6–9 лет созданию 3Д-моделей и для погружения учащихся в основы блочного программирования. Потенциал среды впечатляет, при этом ребятам нравится выполнять различные проекты, как индивидуальные, так и групповые, поэтому сегодня решили поделиться подборкой руководств по созданию 3Д-моделей машин.

Предусмотрели расширенные и продвинутые инструкции, с которыми поможет справиться планомерное движение от простого к сложному: в таком порядке построена публикация. 

Читать далее

Школа программирования для детей в городе Мытищи

Thu, 07/24/2025 - 18:09

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

Читать далее

Livepatching для ядра Linux на x86 и RISC-V: как это работает

Thu, 07/24/2025 - 18:08

Продолжаем разбираться в работе лайвпатчей для ядра Linux. В примере из первой части этой статьи мы загрузили лайвпатч и он каким-то магическим образом настроил все так, чтобы ядро Linux использовало не свою функцию nf_tproxy_laddr4(), а ее исправленный вариант.

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

В этой части статьи будет и несколько вопросов-заданий для читателя. Ответы и подсказки — в конце.

Читать далее

Разработка браузерного расширения: путь от идеи до публикации в web store

Thu, 07/24/2025 - 18:04

Разработка браузерного расширения началась с простой идеи: упростить поиск по закладкам и открытым вкладкам, а также попробовать свои силы в создании проекта с элементами монетизации. В этой статье я расскажу, как за две недели прошёл путь от прототипа до публикации в Chrome Web Store и Firefox Add-ons, какие технологии использовал и с какими трудностями столкнулся. Надеюсь, мой опыт вдохновит других разработчиков попробовать свои силы в создании подобных проектов. Полный код проекта доступен на GitHub.

Читать далее

Сколько зарабатывает стадион

Thu, 07/24/2025 - 18:01

Знаете, насколько российский клуб заинтересован продавать билеты? Почти ни насколько, можно смело забить на них болт — смотрите структуру заработков.

Вот для примера КХЛ, которая далеко позади футбола по прибылям, чтобы показать на пальцах, сколько зарабатывают клуб и стадион.

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

Поэтому давайте разберёмся, как же зарабатывают стадион и клуб.

Эти сущности часто неразлучны, как Бойль с Мариоттом. В России всего два-три футбольных клуба, которые реально владеют своими стадионами. Это, например, «Открытие Арена» у Спартака или «Краснодар» Галицкого, который вообще частный. Все остальные, по сути, просто арендуют площадки.

Читать далее

Velleman HPS40 — компактный осциллограф из 2002 года

Thu, 07/24/2025 - 18:01

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

Читать далее

Протеиновая лихорадка: как пищепром делает величайший скам 2020-ых

Thu, 07/24/2025 - 17:38

Ты не ты, когда голоден, — гласила реклама. Теперь ты не ты, когда веришь, что батончик с глицерином и изолятом — это забота о себе. О том, как из спортзалов США пришла мода на протеиновую еду, и почему это очередной великий обман.

Читать далее

Тесты не лгут — прислушивайтесь к ним. Часть 1

Thu, 07/24/2025 - 17:23

(Статья — результат со вместной работы с Максимом Степановым)

Когда начинаешь писать тесты к коду, иногда возникает ощущение, что пытаешься расчесать запутанные волосы, и чем больше дёргаешь, тем больше узлов находишь. Это полезный сигнал, к которому стоит прислушиваться: плохая тестируемость подсказывает, что у кода есть изъяны в архитектуре. 

Связанный код, который сложно поддерживать и расширять, сложно и тестировать. Как сказал Боб Мартин

«Тестируемый код — синоним разъединённого кода»

А значит, тестируемость может быть маркером хорошей архитектуры. Именно это мы и попробуем здесь продемонстрировать.

Мы напишем тесты для примитивного скрипта на Python, который проверяет IP пользователя, определяет их регион и сообщает текущую погоду в регионе. Нас будет интересовать, как эти тесты заставят нас изменить код. Они, как расчёска, помогут нам методично разобрать проблемные места, чтобы код (как и волосы) стал гладким и послушным. Полный пример доступен здесь, каждый основной шаг находится в отдельной ветке.

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

Читать далее

Пишем агента на Kotlin: KOSMOS

Thu, 07/24/2025 - 17:08

Интернет завален реализациями на Питоне, но иногда удобнее разбираться с технологиями на своём основном языке. Для мен;я это Kotlin.

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

Статья обещает соблюдать два принципа, упрощающих восприятие:

‣ Движение от частного к общему, потому что легче воспринимать примеры, чем абстракцию.
‣ Быстрая обратная связь, как с REPL.

Агента реализуем так, чтобы легко было заменить лежащую в основе LLM. Посмотрим, как отличается работа при использовании REST API в сравнении с SDK, пощупаем Гигачат и Anthropic.

Ах да,

Луч — мультитул разработчика электроники, версия 2

Thu, 07/24/2025 - 17:04

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

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

Читать далее

Who's online

There are currently 1 user and 1 guest online.