В погоне за неизведанным: как ML-модель вредоносы искать училась

Всем привет! С вами Ксения Наумова. В Positive Technologies я исследую вредоносный сетевой трафик и совершенствую инструменты его анализа в экспертном центре безопасности. Недавно перед нами встала задача — создать ML-модель для обнаружения вредоносного ПО в сети. Причем распознавать она должна была не только уже ранее детектированное нами вредоносное ПО, но и совсем новые угрозы, которые появляются в большом количестве ежедневно. В качестве первого эксперимента решили сделать модель для работы с трафиком, который передается по протоколу HTTP, поскольку наши продукты успешно расшифровывают TLS-сессии, а внутри них частенько можно найти много интересного. В статье я подробно расскажу, как мы обучали модель, и поделюсь информацией о допущенных ошибках.
Читать далееБолее быстрые хеш-таблицы: претенденты на место SwissTable

24 ноября 2021 года на сайте ArXiv.org была опубликована научная статья «Крошечные указатели» (Tiny Pointers) с описанием новой структуры данных — «крошечных» указателей, которые указывают путь к фрагменту хранимых данных и занимают меньше памяти, чем традиционные указатели.
Осенью 2021 года эту статью заметил Андрей Крапивин (Andrew Krapivin), студент Ратгерского университета в Нью-Джерси, и не придал ей особого значения, пишет Quanta Magazine, журнал о последних достижениях в математике (перевод статьи на Хабре). Только через два года он нашёл время, чтобы внимательно ознакомиться с материалом. И понял, насколько это прорывное изобретение, если применить его для оптимизации хеш-таблиц.
Данная тема уже упоминалась на Хабре, но заслуживает более подробного обсуждения.
Читать дальше →
Нейросети и реален ли сильный ИИ: большая проблема, о которой мало говорят

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

В 2ГИС мы знаем: лучшие продукты создаются вместе с пользователями. Уже почти 7 лет наше комьюнити помогает нам дополнять и актуализировать справочник. Мы называем этих людей спецагентами — они уточняют информацию, пишут отзывы, добавляют фотографии и делают 2ГИС удобнее для миллионов пользователей.
И мы захотели вовлечь ещё больше людей в развитие продукта. Так появился новый краудсорсинговый инструмент — Telegram-бот, который мотивирует пользователей добавлять фото к местам и организациям. Запуск показал, как правильно выстроенный краудсорс может решать бизнес-задачи, масштабироваться и вовлекать пользователей. Этот кейс будет полезен продакт-менеджерам и маркетологам, которые ищут новые способы роста и взаимодействия с аудиторией.
Читать далееО своём PET проекте при трудоустройстве

Всем привет! Меня зовут Алексей, и я работаю Java?разработчиком с 2018 года. В свободное от работы время я три года разрабатывал свой PET?проект. В статье расскажу, как трудился над этим проектом и почему в итоге всё бросил. А ещё поделюсь мнением о том, помогают ли PET?проекты в поиске работы. Спойлер — не особо.Также эта статья может быть полезна тем, кто хочет написать свой первый PET?проект, и тем, кто пилит свой проект слишком долго, но не знает, стоит ли его бросить.
Поиск идеи проекта
Было это в 2019 году, я тогда уже год работал Java?разработчиком в аутсорс компании и решил сделать крутой проект в свободное от работы время, чтобы свои знания в Spring прокачать и, глядишь, стартап стрельнет он при трудоустройстве поможет.
Какую же идею выбрать? Хотелось прям что?то одно сделать и потом этот проект развивать, а не делать кучу проектов?«набросков».
[Перевод] Четыре основных подхода к созданию моделей рассуждений (Reasoning LLMs)

Описаны ключевых методологии создания Reasoning LLM: масштабирование во время инференса, чистое обучение с подкреплением, комбинация SFT + RL и дистилляция.
Это практическое руководство поможет выбрать оптимальную стратегию разработки, опираясь на имеющиеся ресурсы.
Читать далееАльянс RISC-V подвёл итоги первого этапа программы DEVBOARDS: проект победителя

В мае 2024-го года стартовала программа предоставления раннего доступа к архитектуре RISC-V DEVBOARS, целью которой было продвижение отечественных микроконтроллерных решений в различные индустриальные сегменты рынка, образовательную среду и даже в комьюнити энтузиастов. На первом этапе программы участники использовали решение от компании АО “Микрон” - микроконтроллер MIK32 АМУР (К1948ВК018) на базе отладочной платы MIK32, наделавшей много шума в последнее время. И в этой статье мы с вами рассмотрим проекты, которые были отмечены высокими оценками жюри и что из этого всего вышло. Поехали!
Читать далееОт простого к сложному: эволюция дизайн-токенов в проекте

Привет, Хабр! Я Артём Бурунов, ведущий UI/UX-дизайнер в команде Platform V UI Kit в СберТехе. Наше решение позволяет легко создавать интерфейсы любого уровня сложности: от сайтов до корпоративных приложений. Мы развиваем библиотеку UI-компонентов, которые обеспечивают гибкость, доступность и масштабируемость сложных веб-интерфейсов.
Один из главных элементов, с которым мы работаем, — это система дизайн-токенов. Сегодня я расскажу, что это такое, зачем нужно, и поделюсь примером, как может развиваться структура дизайн-токенов с ростом бизнеса. На примере вымышленного ИT-стартапа разберём, как организовать дизайн-токены для проектов разного масштаба. Выясним, как, начиная с простого набора, построить систему, которая будет развиваться и при этом останется понятной для команды.
Материал будет полезен специалистам, которые используют систему дизайн-токенов в своих проектах и задумываются о её развитии.
Читать далееОткрываем instruct-версию YandexGPT 5 Lite

Недавно мы выложили в открытый доступ pretrain-версию модели YandexGPT 5 Lite, обученную нами с помощью технологий Яндекса и без применения каких-либо сторонних моделей. За прошедший месяц в сообществе её скачали более 15 тысяч раз, на её основе создали больше десятка квантизованных моделей и даже дообучили instruct-версии.
Тем не менее мы видим большой интерес к instruct-версии Яндекса, поэтому сегодня выкладываем её в открытый доступ. В том числе — в совместимом с llama.cpp формате, о чём нас просили на Хабре. Кроме того, мы обновили лицензионное соглашение для обеих моделей так, чтобы применять её стало возможно в ещё большем числе проектов, в том числе во многих коммерческих проектах.
Для тех, кто хотел бы попробовать новую модель онлайн, она также доступна для выбора в Чате с Алисой и через API в Yandex Cloud.
Читать далееКак я набрал миллион подписчиков на Ютубе. История одного преподавателя

Привет. Вы меня никогда раньше не видели. Как и один миллион человек, которые регулярно смотрят видео на Простой экономике – канале, который я начал вести пять лет назад. Эти пять лет я жил две жизни.
Одна, где я анонимный автор, который создает ролики по экономике для сотен тысяч зрителей. А другая, где я работаю преподавателем в российском вузе и обучаю экономике будущих оперативников подразделений экономической безопасности и противодействия коррупции.
Сегодня, когда со второй жизнью покончено, я наконец, могу рассказать, вам как я придумал канал-миллионник, и почему скрывал свою личность.
Правда, этот текст не только обо мне. Он о каждом из вас. О том, как можно добиться всего, о чем ты мечтал за пять лет упорной работы и веры в себя.
Меня зовут Николай Мячин, и у меня есть для вас удивительная история.
Читать далееМаск купил твиттер у Илона, а также гиблификация всей страны

Самые интересные новости финансов и технологий в России и мире за неделю: новые AI-модели от OpenAI и Google, арест Мошковича, IPO Jetlend, VK делает замену Телеграму, запрет рекламы в Инстаграме, премии беременным школьницам, банкротство 23andMe, приглашение в секретный Signal-чат топ-руководства США, а также возвращение Игромира и Comic Con.
Читать далее[Перевод] Полное руководство по контрпродуктивности разработчиков

Продуктивные разработчики тратят больше времени и энергии на деятельность с высокой отдачей. Контрпродуктивные разработчики тратят больше времени и энергии на деятельность с низкой или отрицательной отдачей. Этот перекос часто лишь в незначительной степени поддается контролю (а иногда и полностью выходит из-под их контроля). Это объясняет, почему одни и те же разработчики в разных условиях могут быть гораздо более (или менее) продуктивными.
Читать далееЧто такое lsFusion: взгляд со стороны

Эта статья – небольшой обзор продуктов компании lsFusion и того предалагает пользователям компания lsFusion. Взялся я за него после того, как в статьях «Почему я не люблю 1С» и «Стоит ли идти в 1С программисты в 2025 году» упомянул эту систему как одну из возможных альтернатив 1С. На тот момент я только читал о том, что есть такая система как lsFusion на Хабре, из любопытства заходил на их сайт и просматривал в поиске дополнительную информацию. Тогда я ее упомянул только как «одну из систем» в перечне альтернатив, так как сами они явно позиционируют себя как учетная система.
Далее уже в комментариях я увидел большой тред, где сравнивали 1С и lsFusion. Мне стал интересен автор комментариев, оказалось, что это работник lsFusion. Я с ним связался, чтобы самому лучше понять, что же это за программный продукт. Получил ответы на многие собственные вопросы, изучил ближе саму систему. И теперь хочу поделиться тем, что узнал, чтобы помочь людям, которые находятся в поиске альтернативы 1С.
Читать далее[Перевод] Все знают, какие приложения установлены у вас в телефоне

Ещё несколько лет назад любое приложение, установленное на устройство с Android, могло без разрешений видеть все остальные приложения.
В 2022 году, с выпуском Android 11, Google удалила этот доступ для разработчиков приложений. Согласно новой политике видимости пакетов, приложения должны видеть другие приложения только в том случае, если те необходимы для их базовой функциональности. Кроме того, разработчики должны явным образом объявлять эти приложения в обязательном для всех приложений Android файле конфигурации AndroidManifest.xml.
В крайних случаях, например, для диспетчеров файлов, браузеров и антивирусов Google предоставляет исключение в виде разрешения QUERY_ALL_PACKAGES, которое позволяет видеть все установленные приложения.
На своём основном телефоне я не пользуюсь Android, но у меня есть запасной, и мне стало очень любопытно, какие приложения индийских компаний содержат проверки других установленных мной приложений.
Я скачал несколько десятков пришедших мне в голову приложений и начал изучать их файлы манифестов. Они ведь наверняка будут уважать мою конфиденциальность и запрашивать только те приложения, которые необходимы для их базовой функциональности?
Читать далееRogue — оживляем код версии 1981 года

Игра Rogue знаменита не только тем что породила и вдохновила огромное количество "потомков" - от визуально схожих Moria и NetHack до графически продвинутых вроде DIablo. Знаменита она ещё и тем что является одной из самых сложных игр для прохождения (в этом классе она гораздо интеллектуальнее чем Flappy Bird). Не уверен что вы найдете даже по форумам человека который скажет что проходил её (не читеря с файлами сохранения). А может такие есть среди вас?
Я заметил что современная опенсорсная версия (например доступная в пакетах для разных Linux и BSD) отличается от той, например, что была портирована коммерчески под ДОС где-то в 80е. Заметно отличаются монстры - чуть ли не со 2 уровня уже можно напороться на Ледяного Монстра который не только лишает подвижности но ещё и активно дамажит. Как будто и без того сложная игра стала ещё сложнее!
Дело в том что ранний код Rogue изначально не был доступен публично - кроме того авторы опенсорсной версии хотели избежать возможных нарушений прав (т.к. существовали уже коммерческие порты).
Чтобы разобраться я решил скомпилировать и запустить одну из самых старых доступных версий - посмотреть отличия - и вообще как что устроено. Здесь я расскажу о возникших мелких проблемах (любопытно м.б. для программистов на С) - и возможностях этой самой оживлённой версии (её я выложил на гитхаб - каждый может взять и погонять).
ошибки компиляции, падения при выполненииLissen: как я красивый плеер для аудиокниг писал
Я слушаю аудиокниги с 2014 года. За это время я перепробовал много разных сервисов: и с моделью “по подписке”, и те, что продают каждую конкретную книгу.
Ни один из сервисов меня не устраивал полностью, поэтому однажды я собрал всю свою коллекцию купленных книг и перенёс их на домашний сервер, где развернул Audiobookshelf.
У него был и есть потрясающе красивый неофициальный iOS-клиент, которым я пользовался какое-то время. Осенью 2024 года Google наконец показала Pixel 9 и я решил, что пора попробовать Android
С большим сожалением я обнаружил, что мне сложно использовать официальное мобильное приложение для Audiobookshelf, других тогда не было, а возвращаться к популярным стриминговым площадкам мне не хотелось.
Так родилась идея написать Lissen — красивый, минималистичный и удобный клиент для Audiobookshelf.
Сегодня я расскажу про разработку, релиз и опыт использования приложения, которое я писал для себя.
Читать дальше →Бинарный формат вместо текста

Как быстро, без боли и страданий организовать хранение структурированных данных в бинарном формате. А затем и их передачу при необходимости. А потом, немного подумав, ещё их обнаружение в «замусоренном» потоке.
Читать далееНаладонные компьютеры: как это было и чем это стало?

Помните времена, когда смартфоны еще не казались естественным продолжением руки, а интернет выглядел необязательной диковинкой и «жил» в карманах гиковатых парней, то и дело утыкавшихся в странные гаджеты с экраном и стилусом?
Да, сегодня речь пойдет о КПК — карманных персональных компьютерах, которые в 90-х и 2000-х годах были символом технологического (а порой и финансового) превосходства обладателя. Задолго до App Store и Google Play КПК пытались быть всем и сразу: записной книжкой, медиаплеером, навигатором, устройством для серфинга в интернете и игр.
Но теперь на смену архаичным «кирпичикам» пришли тонкие, мощные и удобные мобильные телефоны. Поэтому присаживайтесь поудобнее – сегодня мы будем предаваться ностальгии.
Читать далееНФТ к документации: Своя игра

Думаю, вы часто наблюдали ситуацию, когда на проекте вроде бы и аналитиков достаточно, и документация ведётся в строгом соответствии с принятыми правилами, но самое главное в ней не найдёшь — либо этого вообще нет, либо изощрённо размазано по всем разделам.
В рамках статьи хотелось бы затронуть тему нефункциональных требований к самой документации и поговорить о том, какую документацию, мы считаем качественной.
Как создать ИИ Телеграм-бот с векторной памятью на Qdrant
Идея создания этого пет-проекта возникла из желания написать собственного ИИ-агента. Я сформулировал для себя минимальные технические требования: агент должен иметь несколько состояний, уметь запускать тулзы и использовать RAG для поиска ответов на вопросы.
В итоге возникла идея написать персонального телеграм-ИИ-бота, который умеет запоминать нужную мне информацию, и когда мне надо — я могу его спросить, что он запомнил. Что-то вроде блокнота, только это будет ИИ-блокнот, который умеет отвечать на вопросы. В дополнение я решил добавить в него функцию, чтобы он мог запускать команды на сервере — причём команды, описанные человеческим языком, он будет переводить в команды для терминала.
Изначально я думал использовать LangChain. Очень хороший инструмент — позволяет подключать векторные базы данных, использовать различные LLM как для инференса, так и для эмбеддинга, а также описывать логику работы агента через граф состояний. Можно вызывать уже готовые тулзы. В целом, на первый взгляд всё выглядит удобно и просто, особенно когда смотришь типовые и несложные примеры.
Но, покопавшись немного глубже, мне показалось, что затраты на изучение этого фреймворка не оправдывают себя. Проще напрямую вызывать LLM, эмбеддинги и Qdrant через REST API. А логику работы агента описать в коде через enum, описывающий состояния, и делать match по этим состояниям.
К тому же LangChain изначально написан на Python. Я хотел бы писать на Rust, а использовать Rust-версию LangChain — сомнительное удовольствие, которое обычно упирается в самый неподходящий момент: что-то ещё не было переписано на Rust.
Читать далееРазбираем паттерны конкурентности

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

Жил-был типичный фрилансер и цифровой кочевник. Он привык встраивать работу в жизнь, не привязываясь ни к какой локации.
Работа всегда была при нем – в отелях, поездах, аэропортах, на ступенях собора святого Петра в Женеве и у трапа самолета в Ницце.
Однако множество вакансий с преимуществами офисного формата не давали нашему цифровому кочевнику покоя. Все они наперебой зазывали к себе под лозунгом: «У нас есть кофе и печеньки», будто исписанные мелом рекламные штендеры у дверей кафе.
И в конце концов его разобрал интерес: что там за печеньки, на которые люди меняют свою свободу?
Дисклеймер: в статье описан собирательный образ опенспейса. Любые совпадения с реальными IT-компаниями случайны.
Читать далееSQL HowTo: работаем с массивами (Advent of Code 2024, Day 23: LAN Party)

В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.
Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать.
Применяем простые операции над массивами, чтобы определить связность графов.
Читать далееПро плоскостопие

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

Я пришёл из будущего, чтобы ускорить развитие ИИ. В этой статье я поделюсь тем, что я помню о будущем и зачем меня послали в прошлое.
Дисклеймер №1 (написанный для того, чтобы не попасть в психиатрическую лечебницу или в лабораторию для опытов): Данная статья является работой для конкурса (спецпроекта) «Будущее здесь» на Хабре.
Дисклеймер №2: Однако, как известно, в каждой шутке есть только доля шутки. А какова доля в данной статье пусть каждый решает сам. Надеюсь, это будет не только интересно, но и полезно.
Узнать будущееНедельный геймдев: #219 — 30 марта, 2025

Из новостей: Ubisoft объявила о реструктуризации, издание Game Informer возобновило работу, Ведьмак 4 выйдет не раньше 2028 года, Maya 2026.
Из интересностей: про создаине ULTRAKILL, сколько вишлистов можно получить от Steam Next Fest, как Playstack сделал ставку на Balatro, 2 эпизода про создание Dwarf Fortress.
Читать далееCI/CD для чайников — разберитесь, и начните наконец-то автоматизировать рутину в разработке. Часть1. Введение

Всем привет. Наверняка каждый, кто так или иначе связан с IT сферой, слышал модную аббревиатуру CI/CD. Везде мы слышим про необходимость ее использования, преимущества автоматизации процессов и т.д.
В вакансиях все чаще требуется опыт работы с одним из инструментов в этой инфраструктуре – Jenkins, Travis, AWS, Gitlab CI/CD.
??Я предлагаю вам посмотреть на этот процесс, глазами простого разработчика. Чем ему может помочь автоматизация. Что в конечно итоге скрывается под этой аббревиатурой, и как уже начать получать дивиденды в своей ежедневной рабочей практике.
Первые шаги
Мы рассмотрим внедрение инструментов автоматизации в приложение, построенное на базе React. В целом разберем именно основные подходы и моменты, на которые стоит обратить внимание в самом начале.
В целом, это будет актуально для любого стека.
Чаще всего я использую для хранения кодовой базы и групповой работе над проектами Gitlab. Очень кстати, что эта площадка предоставляет инструментарий CI/CD.
Я пытался пару лет подступиться к этому вопросу. Стильно, модно, молодежно. Да, дает кучу преимуществ. Но все попытки переварить официальную документацию, заканчивались неудачей. А видео уроки или материалы в общем доступе – чаще всего давали рецепт автоматизации какого-то конкретного кейса, который либо частично, либо полностью отличался от моего приложения.
Мне не хватало именно взгляда на основные шаги – что, зачем и как мы делаем. А уже потом реализации практических задач.
CI – continuous integration
Что же скрывается за термином "непрерывной интеграция". Когда мы работаем над созданием программного продукта – в одиночку, или в рамках команды, мы стараемся добавить в наш проект, несколько строк кода. Новый функционал, исправление или доработки. Суть не особо важна. В конечно счете – либо появляется новый код, либо появляются изменения в старом. И нам нужно убедиться, что эти новые изменения, не содержат ошибок, которые могут вызвать проблемы или неработоспособность приложения. ??
Читать далее«Кручусь сам собой, прицелиться не могу»: что не так с геймпадами PS и как их спасать

Привет, Хабр! Меня зовут Дима, я занимаюсь ремонтом цифровой техники, а в свободное время делюсь интересными кейсами в блоге МТС. В прошлый раз писал о превращении iPhone 11 в «iPhone 14 Pro», а сегодня расскажу о популярной проблеме со стиками на консолях PlayStation. Самое яркое ее проявление — это когда персонаж в игре начинает сам собой перемещаться или крутиться, и ты ничего не можешь с этим сделать. Сейчас у меня в ремонте одновременно несколько геймпадов с похожими симптомами — что у них за вирус и как их спасать, как раз и расскажу дальше.
Читать далееРоссийское железо и софт: что в реестре, что на полках, и есть ли из чего выбрать?

Сейчас многие заказчики оказались в такой ситуации, когда приходится «изучать рынок заново»: за последние несколько лет на российском рынке появилась уйма новых брендов, о качестве продукции которых можно только догадываться. У представителей компаний, попадающих под закон о КИИ, задача еще сложнее: нужно выбрать не просто условный «российский бренд», а продукцию из реестров Минпромторга – таких как ТОРП, ЕРРРП или же Реестр российского ПО, если речь идет о софте.
О том, как сейчас «выглядит» рынок мы расспросили наших экспертов по различным категориям оборудования.
Дмитрий Петров, руководитель отдела продуктового менеджмента ГК X-Com
Цель нашего государства – наладить российское производство, причем взамен не только ушедшим вендорам, но и всем иностранным, обеспечивая наш суверенитет. Если говорить о направлениях, которые делают в этом успехи, то весь офисный сегмент уже можно заменить – компьютеры, ноутбуки, мониторы, и прочее оборудование, необходимое корпоративным и государственным заказчикам. В потребительском сегменте, где ключевую роль играет цена и отсутствует регуляторная составляющая всё больше становятся заметны российские торговые марки.
Но все же есть проблемные направления, такие как принтеры и периферия. Например, производитель клавиатуры в России пока всего один.
Также, в России пока трудно найти hi-end решения в области СХД, но массовый сегмент уже полностью заменим.
Петр Есилевский, руководитель направления PRO-AV отдела продуктового менеджмента ГК X-Com
На данный момент уже есть примерно десяток «реестровых» производителей PRO-AV оборудования, также в списке российского ПО уже появились программные продукты, равно как и программно-аппаратные решения. При этом большинство оборудования конечно, производится на базе китайских комплектующих. Таким образом. Фактически наиболее локализованными являются продукты, которые позиционируют себя на рынке облачных решений: благодаря «софтовой» части, разработанной в России, они наиболее подходит под понятие «российский».
Читать далееСоздание калькулятора в Minecraft

Как компьютер складывает числа? Я постараюсь ответить на этот вопрос. Покажу схемы калькулятора. Расскажу о внутреннем устройстве. А также, перенесу схемы в Minecraft
Читать далееПередача пароля по интернету: что безопаснее — хэширование или TLS?

В этой статье мы рассмотрим, какие методы передачи пароля через интернет наиболее безопасны. Хэширование паролей или протокол TLS — что выбрать для защиты данных? Разберемся, как работают эти технологии и какие риски скрываются за каждой из них.
Читать полностьюУчимся рефакторить код на примере багов в TDengine, часть 3: плата за лень
Проверяя код проекта TDengine с помощью PVS-Studio, можно встретить код с запахом, канонические ошибки и опечатки. Многое из этого можно избежать, если изначально аккуратно оформлять код, делать логику простой и избегать макросов. Давайте рассмотрим некоторые фрагменты кода и подумаем, как можно провести его рефакторинг так, чтобы багам просто не было там места.
В этот раз поговорим про написание кода методом Copy-Paste. С одной стороны, программисты знают, что копирование кода с последующей его модификацией провоцирует ошибки и опечатки. С другой — набирать каждый раз фрагмент кода, похожий на уже написанный, скучно и непродуктивно. Здесь важно соблюдать некий баланс, который сложно сформулировать и понимание которого приходит с опытом.
Читать дальше →Дизайн за 5 минут. Дайджест марта 2025

Привет, Хабр! Заканчиваем март традиционным дайджестом из мира дизайна. С вами снова Андрей Герасимов, продуктовый дизайнер Garage Eight, и семь новостей, которые зацепили мое внимание:
1. 3D-объекты в веб-сервисе Signs от Hello Monday
2. Редизайн настроек Android 16
3. Статья об удобных формах от Nielsen Norman
4. Дизайн промостраницы «Лахта-центра» от Студии Лебедева
5. Необычный скролл на сайте gufram
6. Shots — инструмент для демонстрации дизайнов на мокапах
7. Кастомизированные велосипеды от Canyon
IT-рынок труда в 2024 году: ситуация, тенденции и прогноз на 2025

Каждый год мы проводим исследования рынка труда, в том числе, конечно, сферы IT. Недавно закончили анализировать 2024 год и решили поделиться результатами с Хабром.
Мы выяснили, кому в IT зарплаты подняли, а кому — нет, кто получил больше ожидаемого, а кто — меньше, как меняется конкуренция сотрудников разного уровня, что с удалёнкой, какие вакансии и языки наиболее популярны. А также, как ситуация выглядит со стороны работодателей: как произошёл дефицит кадров при перенасыщённости рынка и что с этим делать, какие успехи и неудачи переживает бизнес, станут ли в следующем году нанимать больше или меньше, а также, что вообще ждёт IT-отрасль в 2025 году.
Узнать про IT-рынок трудаМесто Product Marketing Manager в продуктовой команде

В современных ИТ?компаниях продукт — это ключевой актив, который определяет успех бизнеса. Однако создание успешного продукта требует не только технического мастерства и глубокого понимания потребностей пользователей, но и эффективной коммуникации с рынком. Именно здесь на первый план выходит роль Product Marketing Manager (PMM).
В этой статье мы разберем, какую функцию выполняет PMM в продуктовой команде, почему эта роль так важна и как она взаимодействует с другими участниками процесса.
Читать далее