Все подряд публикации с habr.com
Почему разработка через тестирование (TDD) не приводит к плохому коду
Только вот если…
Мне не верится, что я до сих пор пишу такие вещи, но что поделать. Разработка и реализация кода, управляемого тестами (TDD), хороша ровно настолько, насколько хороши решения по проектированию и имплементации, принятые в этом коде. Точно так же, как и код, который разрабатывается не через тестирование.
Вот один ложный аргумент, который я хочу опровергнуть: используя TDD, вы никогда не сможете обобщить код.
Как провести нагрузочное тестирование БД PostgreSQL и ничего не забыть
При нагрузочном тестировании баз данных Tantor Postgres или других на базе PostgreSQL с использованием стандартного инструмента pgbench отсутствие фиксации деталей окружения (таких как конфигурация СУБД, характеристики сервера, версии ПО) часто приводит к нерепрезентативным результатам и необходимости повторных тестов. В статье рассматривается разработанный автором инструмент pg_perfbench, который призван решить эту проблему.
Как я мог уйти в разработку, не ушёл и ничуть не пожалел. А потом разработка пришла ко мне сама…
Привет, Хабр. Меня зовут Иван Фитискин, я senior-QA-инженер в Профи.ру. Работаю здесь уже семь лет, а пришёл сразу после университета — и сразу на должность тестировщика. Это с самого начала было моё: я люблю глубоко разбираться в процессах и докапываться до деталей. Это, наверное, больше соответствует моей личности.
Но я всё равно остаюсь рядом с разработкой. Делюсь наблюдениями, как размываются грани профессии. Ну и немного ностальгирую.
В России протестируют информационную систему для борьбы с киберпреступностью
С июня 2025 года и до конца февраля 2026-го в России будет проходить экспериментальный проект по повышению оперативности взаимодействия между государственными структурами, банками и телеком-операторами для борьбы с киберпреступностью. Соответствующее распоряжение правительства уже подписано.
Главная задача пилотного проекта — разработать действенный механизм взаимодействия между различными государственными и частными организациями, а также обеспечить обмен информацией для предотвращения преступлений, которые совершаются с использованием современных информационных технологий и средств коммуникации.
Как я запустил Яндекс.Дзен с нуля и вышел на миллион показов за месяц
Я два года веду блог "Упал, поднялся", а бизнес-истории размещал на VC, Habr, Smart-lab, ЖЖ, а когда-то еще и на Пикабу.
Я делал неуверенные попытки раньше — у меня были выложены пара видосов, штук 5 статей. Даже накопилось откуда-то 20 подписчиков.
В Москве идет Datafest 2025
Примерно через каждый день проходит то или иное событие в Москве в даты с 25 мая по 2 июня 2025 года. Видимо, мероприятия от организаторов Data Fusion не одноразовое, и что-то подобное планируется проводить ежегодно, поэтому интересно посмотреть программу данного фестиваля.
Чтение на выходные: «Anime World. От “Покемонов” до “Тетради смерти”: как менялся мир японской анимации» Криса Стакманна
Любители аниме, ликуйте. Принесли в качестве рекомендации очередной шедевр, хотя вы наверняка уже могли его видеть. Качественное чтение с хронологией мира японской анимации, как и обещано в заголовке, лаконичные главы и привкус ностальгии — вот главное о книге. Ощутить это можно, даже просто прочитав введение и пару-тройку глав.
Архитектурные принципы Spring Security. Часть вторая
Команда Spring АйО перевела и адаптировала доклад Даниэля Гарнье-Муару “Spring Security Architecture Principles”, в котором на наглядных примерах рассказывается, как пользоваться возможностями Spring Security, не запутываясь на каждом шагу и не зарабатывая себе головную боль.
Доклад публикуется тремя частями. В первой части было рассказано об основных подходах к созданию цепочек фильтров, а также разработан простейший фильтр. Во второй части мы расскажем об Authentication объектах и продемонстрируем, как разработать специализированный фильтр для обеспечения доступа программы-робота к основному приложению.
Чек-лист для тестирования требований
В этой статье хочу поделиться, как мы с коллегами на проекте выстроили процесс по тестированию требований.
Предыстория
У нас двухнедельные спринты, в рамках которых с определённой периодичностью проходят груминги, на которых мы не только приоритизируем задачи, но и разбираем аналитику. Происходит это так: на регулярных встречах собирается вся команда, аналитики презентуют нам новую фичу/задачу, а мы задаём вопросы. Если все вопросы решены, либо что-то можно быстро уточнить/устранить, то команда двигает эту задачу в статус «Готово к разработке». И мы командой тестировщиков определили, что во время грумингов презентация аналитики происходит быстро, мы не успеваем параллельно читать и слушать пояснения, а также придумывать на ходу вопросы. Нужен был процесс по тестированию требований.
За несколько итераций проведённых 1-to-1 я выяснила, что нам было бы удобно построить это следующим образом: разделиться на подкоманды согласно функционалу, который мы реализуем, и до…
Пятничная Игра Линуса
Как мы сделали веселую викторину про Линуса с токсичным AI-агентом и зачем такое вообще нужно в образовании.
Автоматизация проверки стиля кода с помощью KtLint в Android проекте
Современная разработка программного обеспечения требует не только написания функционального кода, но и обеспечения его качества, надежности и безопасности.
Для обеспечения этого во многих командах по-прежнему существует Code Review. По моему мнению в 90% случаев это абсолютно бесполезная трата времени и сил разработчиков команды. Code Review это рудимент, который изжил себя. Я не утверждаю, что Code Review должен исчезнуть - принцип и подход должны измениться.
Ручная организация Code Review ведет к деградации продуктивности и взаимоотношений внутри команды. Очень часто Code Review превращается в способ самоутверждения, эмоциональной разрядке одного из участников команды за счет других. Комментарии часто бывают противоречивыми и контр продуктивными.
Как этого избежать?
Ответ – полностью автоматизировать этот процесс.
Одним из ключевых инструментов для достижения этой цели является статистический анализ кода - метод автоматизированной…
Российские учёные смогли с помощью ИИ предсказать успеваемость студентов по их соцсетям
Группа российских учёных из НИУ ВШЭ, Сколтеха и ТГУ представила способ прогнозирования успеваемости студентов на базе анализа их активности во «ВКонтакте» при помощи искусственного интеллекта. Результаты исследования опубликованы в научном издании IEEE Access.
Учёные проанализировали данные о подписках на различные VK-сообщества 4445 студентов с открытыми профилями. Затем они распределили тематику сообществ на категории, оценили сложность текстов, которые читают студенты, и эмоциональную окраску контента. Для каждого студента исследователи сформировали цифровой профиль, отражающий его предпочтения и интересы, и при помощи нейросетей попытались определить взаимозависимость между онлайн-активностью и успехами в учёбе.
Selectel проведет митап для тимлидов про ZBP и найм сотрудников
Привет, Хабр! 5 июня в 18:50 проведем TeamLead MeetUp — мероприятие для тимлидов от тимлидов. В центре внимания — горячие вопросы: поговорим, как изменять и улучшать процессы в команде, обсудим найм и zero bug policy. Опытом поделятся такие же руководители и лиды, как и вы. А очных участников ждет общение без камер и афтепати на крыше после докладов.
Дизайн в эпоху однообразия: рамки, ограничения и чувства
В последние годы интерфейсы цифровых продуктов стали почти одинаковыми — похожие цвета, шрифты, компоненты и навигация. Это не случайность, а результат множества ограничений: от личных предпочтений дизайнеров до технологических трендов и ожиданий пользователей. В этой статье мы разберёмся, почему стандартизация так важна и даже полезна.
Хакатон Samsung IT Academy Hack 2025: обзор задачи от VK Tech
С ростом объема генерируемых данных повышаются требования к компетенции ИТ-специалистов в части работы с Big Data и решениями для их сбора, обработки и хранения. Это общий тренд, который по мере цифровизации бизнеса только набирает обороты.
В соответствии с этим вектором IT Академия Samsung в апреле 2025 года провела уже второй хакатон IT Academy Hack 2025. VK Tech стал индустриальным партнером и предоставил инфраструктуру для студентов, а также подготовил одну из двух задач, которую студенты решали в рамках хакатона.
Меня зовут Павел Кутаков, я эксперт-архитектор команды VK Tech в направлении Data Services. В этой статье расскажу об актуальных решениях для работы с данными, а также о задаче и подходах, которые можно было применить для ее решения.
Как использовать японские подходы в IT. Часть 6: покажи и расскажи
Больные одной болезнью симпатизируют друг другу. Несчастные понимают друг друга.
Японская пословица.
(こんにちは) Конничива! Меня зовут Виктор, я менеджер проектов в Selectel. Это шестая часть цикла о применении TPS/TBP (Toyota Production System/Toyota Business Practice) на практике в IT. Каким бы крутым специалистом вы ни были, одного этого недостаточно — нужно еще и уметь показывать ход своих мыслей. Но как это сделать так, чтобы вас поняли все? Рассказываю под катом!
Обзор интерактивной выставки «Спорт будущего в настоящем» в Государственном музее спорта
Как я уже говорил, я буду продолжать рассказывать о киберспорте и смежных видах спора. Внезапно я узнал о выставке, посвящённой молодым видам спорта, в Государственном музее спорта. Поскольку выставка была связана не только с компьютерным спортом, но и с другими вида спорта: спортивное программирование, гонки дронов, лазертаг.
Интерактивная выставка «Спорт будущего в настоящем» посвящена новым, развивающимся видам спорта. Она демонстрировала, что происходит во время соревнований в каждой дисциплине, и предоставляет посетителям возможность попробовать каждый вид спорта самостоятельно. Выставка работала до 1 мая 2025 года. Поэтому представляю её обзор. Приятного чтения!
Ритейл, который смог: как Walmart и Amazon экономят и зарабатывают с помощью ИИ
ИИ в ритейле уже меняет правила игры. Пока одни пишут стратегии, Walmart и Amazon давно считают прибыль с ИИ-решений. Разобрали их кейсы — как технологии напрямую влияют на рост выручки, и где не удалось избежать фейлов.
Почему гражданам запретили покупать USDT за рубли и доллары
C 26 мая 2025 года вступают в силу расширенные требования ЦБ к иностранным цифровым правам (ИЦП), в результате чего физлицам запрещено покупать USDT и другие стейблкоины.
USDT — популярный и надёжный стейблкоин. В нём удобно производить расчёты, переводить деньги друзьям, рассчитываться за услуги, покупать товары.
Но центробанки хотят навязать гражданам свои цифровые валюты с полным отказом от анонимности, с автоматической уплатой налогов и удобной конфискацией средств в случае необходимости.
Функции и методы в Go
Go — язык, который ценится за простоту и чёткость. Однако даже при минимальном синтаксисе здесь есть нюансы. Особенно это касается работы с функциями и методами. В этой статье хочу поделиться личными наблюдениями и выводами по нескольким ключевым темам: выбор типа получателя, использование именованных параметров результата, распространённые ошибки при возврате nil, проблемы с файлами в качестве входных данных и поведение defer
.
ps. Обложку нейронка сгенерировала. Очень странно, но мне понравилось.
Многозадачности больше не существует. Зачем снова становиться однозадачным
Привет, Хабр! Я Настя, редактор YouGile — мы делаем систему управления проектами. Когда-то мы выяснили, что первыми закрываются компании, где ставится много задач. Теперь поговорим, реально ли работать над несколькими задачами одновременно и что об этом говорят исследования.
Как знакомиться на IT-конференциях без неловкостей: гид по нетворкингу для разработчиков
На конференции приходят за знаниями, а уходят — с контактами. Или не уходят — потому что ни с кем не заговорили. В этой статье — понятный гайд: зачем разработчику нетворкинг, как не чувствовать себя неловко и что делать, чтобы разговор продолжился и после мероприятия.
Эволюция Angular с колокольни UI-Kit-разработчика
На этой неделе команда Angular отметила значимый юбилей в истории развития своего фреймворка — 20-ю мажорную версию! Лучше повода не найти, чтобы удариться в ностальгические воспоминания про путь развития Angular за последние 5 лет — за десять последних мажорных версий.
Предлагаю нестандартный подход к изучению темы. Возьмем непопулярную точку зрения: мой многолетний опыт разработки огромной коллекции библиотек с компонентами под Angular — продукт под названием Taiga UI. В статье мы опустим многие заезженные фичи каждой мажорной версии Angular и сфокусируемся на кажущихся мелочах, которые стали значимыми шагами в истории развития нашего семейства библиотек. Я постараюсь на время статьи дать примерить шкуру разработчика Angular UI Kit!
Исследование: к концу 2025 года ИИ будет потреблять больше энергии, чем майнинг биткоина
На искусственный интеллект к концу года будет приходиться почти половина всей электроэнергии, которую потребляют центры обработки данных по всему миру. ИИ, таким образом, превзойдёт по энергопотреблению майнинг биткоинов. Такой прогноз сделал исследователь Алекс де Врис-Гао из Амстердамского свободного университета.
Де Врис-Гао подсчитал, что в прошлом году оборудование для ИИ потребило столько же электроэнергии, сколько все Нидерланды. По его прогнозам, к концу 2025 года эта цифра вырастет до уровня потребления Великобритании, а общий спрос на электроэнергию для ИИ достигнет 23 ГВт.
Мониторинг. Когда очень хочется. Порабощаем холодильные контроллеры EliWell
Продолжаем делать свою систему мониторинга и управления холодильного оборудования.
Сегодня у нас на столе ( и в наших шкафах) контроллер EliWell ID Plus974.
Фронтенд и бэкенд больше не будут общаться как прежде: создаём конструктор сценариев на базе Backend Driven UI
Цикл продуктовой разработки часто напоминает весы: с одной стороны, системное проектирование, подбор основополагающих инструментов, масштабные рефакторинги. С другой — совокупность локальных решений, принимаемых для точечных улучшений в системе. И самое сложное тут: соблюдать баланс. Как понять, когда имеет смысл вмешаться «хирургически», а когда — предпочесть вместо конкретной проблемы решить (или предотвратить) целый класс проблем?
Иногда нащупать границу между «масштабом» и «целесообразностью» получается почти что случайно. Однажды мы в Сравни подступились к переделке чата в нашем мобильном приложении, и на старте расценивали задачу как «ещё один рядовой продуктовый кейс». Но планы по модификации фичи быстро переросли в создание универсального инструмента: конструктора сценариев на базе Backend Driven UI.
В итоге мы не просто заменили чат более удобной альтернативой, а в целом научились гибко…
Activation Lock на Mac в корпоративной среде: инструкция по выживанию
Всем привет! Меня зовут Эрик, я инженер технической поддержки в компании Ринго. В этой статье поговорим об Activation Lock и как грамотно выстроить работу с корпоративными MacBook.
Представьте, что вы ИТ-администратор, и однажды в вашем парке появляются несколько новеньких MacBook, внезапно превратившихся в тыкву. Точнее, в элегантные серебристые кирпичи без пользы. Что случилось? Скорее всего, сработала Activation Lock (блокировка активации) – фирменный механизм Apple, способный как защитить данные, так и изрядно потрепать нервы ИТ-отделу. Поэтому подробно разберем, как работает Activation Lock на Mac, что изменилось в последних версиях macOS и инструментах управления, чем рискуют компании без MDM и как избежать превращения корпоративных ноутбуков в дорогостоящие кирпичи.
SmartCaptcha Yandex на iOS: инструкция по внедрению
Привет! Меня зовут Александр, я iOS-разработчик в IT-компании SimbirSoft. В этой статье я расскажу, как интегрировать Yandex SmartCaptcha в iOS-приложение — от подготовки до решения возможных трудностей.
Настройка Yandex SmartCaptcha на первый взгляд может показаться простой задачей, но на практике она требует внимательности, точной настройки и понимания архитектуры приложения. Я поделюсь личным опытом внедрения этого инструмента, объясню, какие нюансы стоит учесть, а также как избежать ошибок.
Материал предназначен для iOS-разработчиков, у которых уже есть базовые знания мобильной разработки, и кто хочет быстро и корректно внедрить капчу от Яндекса в свое iOS-приложение.
РПшники тоже ошибаются
Руководитель проекта — это по факту главный человек на проекте. Да, в любой проектной команде есть архитекторы, тимлиды, инженеры, менеджеры по продажам, но по факту все они несут свои проблемы и идеи к проектному менеджеру и с ним решают, что делать дальше. Именно в руках РП находятся все нити управления проектом и он как паук ими управляет. И, конечно, проектный менеджер тоже может ошибаться.
В рамках этой статьи мы поговорим об ошибках, которые могут допустить РП на проектах, связанных с информационной безопасностью. Конечно, проекты в области ИБ могут быть аналогичны проектам в любых других отраслях, например проект по внедрению межсетевого экрана будет не сильно отличаться от аналогичного проекта по внедрению коммутатора ядра или маршрутизатора. Но, как правило, в проектах ИБ имеются специфичные моменты, которые необходимо учитывать при управлении этим проектом.
Категоричность в публичных постах и личном общении — быть помягче или не надо?
5 лет назад я завела блог в запрещённой социальной сети и уже через месяц лишилась трети подписчиков. Как сказали сбежавшие:
— Ксения, вы крайне категоричны в высказываниях. Это давит.
Тогда я вела блог по клиентскому сервису без полутонов. В моём мире сервис был качественным в больших компаниях и раздражающим в маленьких. Последних я мечтала «перевоспитать».
Прошло немного времени до того, как бережно закупленные подписчики стали бежать от меня как кошки с корабля. На второй сотне отбывающих я забила тревогу и начала писать им в личку: мол, помогите разобраться — что не так?
Люди откликались охотно: приятно ткнуть меня палочкой также, как я их своими безапелляционными утверждениями. Как мантру они повторяли причину бегства: я категорична в любых суждениях о сервисе, а они — собственники малых бизнесов — не могут соответствовать им.
Вместо того, чтобы мотивировать людей меняться, я заставляла их ощущать себя неудачниками. Пост…