TGViewer
Channel Public Channel
feelin

feelin

@feelindev

Разработка, чистый код, AI, безопасность — и ещё миллион тем для холиваров.

Авторский канал Валерия Филатова, Developer Advocate и Project Lead в PVS-Studio.

По вопросам: @feeeeelin
Subscribers
47
Photos
90
Videos
3
Links
168

Showing posts older than #121 · Back to latest

Older Posts 20 shown
Post #119 68
А тут подкаст со мной вышел 😎
  • ❤ 1
  • 🍓 1
Post #118 251
🥰 Чистый код не прячет ошибок

Написал статью о том, как недостаточная чистота кода влияет на количество ошибок, которое прячется в нём.

Довольно сильно заинтересовался этой темой, когда смотрел на код разных open source проектов.

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

Читать:
-
на русском
-
на английском

🎤 feelin
  • 🔥 2
  • ❤ 1
  • 🍓 1
  • 🦄 1
Post #116 118
👍 Не только камень

Я на протяжении последнего года использую Obsidian как систему для ведения заметок. Довольно удобная штука для того, чтобы структурировать свои записи определённым образом. Раньше, кстати, немного использовал Notion, но его ограничения меня раздражали, а для Obsidian можно хоть расширения под свои цели писать :)

Да и стандартных возможностей тоже много. Например, удобные ссылки между заметками, граф, отображающий связи между всеми заметками, а ещё ежедневные заметки, а Obsidian ещё и автоматически открывает сегодняшнюю заметку при открытии приложения.

Была одна проблема: бесплатно его нельзя было использовать в коммерческих целях. Поэтому увидеть иконку с фиолетовым камешком на своей рабочей машине не представлялось возможным долгое время (видели бы вы глаза некоторых людей, когда они подходили что-то спросить, а у меня на экране сырой Markdown открыт в Visual Studio Code), поскольку уже долгое время есть проблема с меджународными платежами и купить себе подписку на Pro версию было не очень возможно.

Однако недавно Obsidian поменял лицензию и его бесплатную версию теперь можно использовать в том числе для коммерчеких целей. Хорошая новость для пользователей Obsidian, которые могли быть озадачены той же проблемой, что и я, а также для тех, кто до сих пор не нашёл удобную бесплатную альтернативу Notion для работы :)

P. S. Дайте знать, если подобная тема интересна, могу подкинуть пару-тройку разных плагинов и тем, которые сам активно использую

🎤 feelin
Obsidian Obsidian - Sharpen your thinking The free and flexible app for your private thoughts.
  • ❤ 2
  • 🤯 1
  • 🍓 1
Post #115 99
🧐 Продолжение альманаха

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

Читать:
- на русском
- на английском

P. S. Первая часть была
здесь.

🎤 feelin
  • 🔥 2
  • 🥰 1
  • 🍓 1
Post #114 101
Скоро выйдет кое-что интересное со моим участием 🙃
  • 🔥 6
  • 🍓 1
Post #113 110
🤯 Распределённая сборка в Unreal Engine

В Unreal Engine 5.5 появилась классная фича - возможность распределённой сборки проекта. Мы проводили некоторые эксперименты с этой штукой, чтобы посмотреть, как она работает, а также проверили, работает ли наш анализатор при её использовании. И результат оказался положительным! Помимо самой распределённой сборки с помощью Horde, Epic Games добавили Unreal Build Accelerator, виртуализирующий используемые инструменты на машинах-агентах.

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

В тексте ниже полная инструкция об использовании Unreal Horde для распределённой сборки Unreal Engine проектов, а также об использовании статического анализатора с помощью Unreal Build Accelerator.

Читать:
- на русском
- на английском

P. S. Обложка - отсылка на Агента Смита из "Матрицы", но когда я её увидел в готовом состоянии, понял, что также она напоминает образы участников группы Linkin Park из недавнего клипа на песню Two Faced.

🎤 feelin
Хабр Распределённая сборка Unreal Engine проектов с помощью Horde и UBA Распараллелить сборку большого проекта на несколько компьютеров? Легко! Разбираемся, как использовать Unreal Horde — новый инструмент внутри Unreal Engine 5.5. В том числе мы посмотрим, как с его...
  • 🦄 1
Post #111 92
🫡 Рецепты регулярного статического анализа

В последнем релизе PVS-Studio мы добавили одну очень классную фичу - анализ модифицированных файлов. Данный режим является полноценной альтернативой режиму инкрементального анализа и работает несколько другим образом.

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

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

Текст по ссылке ниже описывает наиболее полезные способы применения регулярного статического анализа. Более того, для каждого из этих способов представлены конкретные рецепты приготовления при использовании анализаторов PVS-Studio.

Читать:
- на русском
- на английском

🎤 feelin
Хабр Рецепты для регулярного статического анализа кода Статический анализ важно проводить регулярно, но что делать, если анализ всего проекта занимает много времени? В статье отвечаем на этот вопрос и делимся рецептами для конкретных ситуаций. Статический...
  • 🔥 1
  • 🦄 1
Post #110 115
Текст
В этом году довелось написать довольно много технических текстов. Процесс производства многих из них был довольно тяжёлым, но при этом интересным и даже приятным с профессиональной точки зрения. Теперь по порядку...

Проверил Keycloak с помощью статического анализа и рассказал об интересных ошибках. Именно этот проект выбран не просто так. Он множество раз использовался нашей Eureka Team при разработке всяких проектов в вебе. Это довольно удобный инструмент для реализации полноценной oauth2 авторизации, в том числе с использованием различных сторонних аккаунтов. От того и было интересно поковыряться во внутренностях этого проекта.

Чистый код - дар или проклятие. Две статьи с рассуждениями о том, насколько Чистый Код полезен, а также о том, чем он может навредить. Главная тема родилась из дискуссии Дядюшки Боба с Кейси Муратори, в которой подробно разбирался вопрос того, как чистый код и чистая архитектура влияют на производительность. Собственно, первая часть является выжимкой этой дискуссии с моими комментариями. Во второй части я пообщался со своими коллегами - разработчиками PVS-Studio - и вместе мы попробовали ответить на все те вопросы, которые были поставлены в этой самой дискусии.

История C и C++. Первая часть большого текста о том, как языки C и C++ родились, какой путь прошли, чтобы стать такими, какими мы их сегодня знаем. Первая часть повествует о том, как языки появились, как началась стандартизация языка C, а также о некоторых изменениях C++, которые успели произойти до начала официальной сертификации языка. Вторая часть тоже не заставит себя долго ждать, следите за обновлениями ;)

ГОСТи пришли. Написал довольно подробный текст о прошлогоднем стандарте ГОСТ Р 71207-2024, регулирующем использование статических анализаторов при разработке безопасного программного обеспечения (надеюсь, вы загибали пальцы по количеству моих выступлений и текстов об этой теме). В 9 минутах чтения все основные положения стандарта с конкретными примерами: как делать нужно, а как не стоит.

Некоторые изменения продукта. Небольшие заметки о том, какие обновления мы выпускаем в PVS-Studio также посетили список публикаций 2024 года. Например, в одной статье я рассказывал о том, как разработчики инструмента контроля качества кода SonarQube изменили свой API в новой версии, из-за чего наш плагин для этого инструмента превратился сразу в два плагина. А в конце года мы закончили работу над интеграцией отчётов анализаторов PVS-Studio в интерфейс просмотра отчётов статических анализаторов CodeChecker. В статье по этому поводу рассказал о том, что это за инструмент, а также о том, как его использовать с анализаторами PVS-Studio.

Итого
Продуктивный год выдался, однако я обещал некоторые планы на следующий. Ну, сделаем так... Итоги того года уже не уместились в одно сообщение. Сделаем так, чтобы в начале 2026 я написал вдвое больше о сделанном в этом году.

Всем продуктивного года!

🎤 feelin
  • 🔥 1
Post #109 94
👋 Welcome, 2025!

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

Отучил две* группы студентов
За прошедший год закончились плановые занятия у моей группы по Python в учебном заведении, где я преподаю в свободное от работы время. Посмотрели с ребятами и девчонками на великий и ужасный Python, его возможности, научились его использовать в веб-разработке и других задачах. Звёздочка в названии пункта указывает на то, что некоторые студенты из двух моих групп повторялись.

Доклады
В прошедшем году мои доклады вышли на несколько другой уровень. Успел порассказывать всякое разное на довольно больших конференциях. Например, на крупнейшем в России форуме об информационной безопасности SOC Forum 2024 рассказывал про то, как нужно использовать статический анализ кода при разработке безопасного программного обеспечения, исходя из свежих регулирующих документов. Другой доклад о том, как добиться регулярности и результата от статического анализа с помощью его внедрения в DevOps, был рассказан на конференции Merge в Технопарке Сколково.

Помимо этого, не забудем и про родной город. Пусть, в Туле меня в этом году было не так много, но всё же было! В июне успел выступить с докладом в Intensa IT Garage о том, как я учу студентов. А осенью продуктивно пообщались с Жанной, Артёмом, Ваней, Ромой и слушателями о популярных языках программирования, карьере и судьбе новичков в индустрии.

В онлайне тоже были интересные штуки. Например, с коллегой провели демонстрацию разрабатываемого нами и командой больших профессионалов продукта, показав возможности при его использовании в сфере разработки безопасного программного обеспечения, а ближе к концу года рассказал доклад об этой теме в формате фирменных вебинаров PVS-Studio.
  • 👍 1
Post #108 97
С новым оборотом, земляне!
  • ❤ 4
Post #107 115
😱 Доклад про страшные аббревиатуры

На прошлой неделе (19 декабря) проводил вебинар, на котором рассказывал доклад о том, как нужно использовать статический анализ в процессе разработоки безопасного обеспечения.

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

Запись можно посмотреть по ссылке.

@feelindev
PVS-Studio Использование статических анализаторов кода при разработке безопасного ПО В апреле 2024 года вышел ГОСТ Р 71207-2024, посвящённый разработке безопасного программного обеспечения, а точнее использованию статических анализаторов в этом процессе. В данном вебинаре разобрали, что этот стандарт регулирует, а также то, что нужно изменить…
  • ☃ 3
Post #106 90
🤩 Прыжок в опенсорс

Неделю (+-) назад выпустил вот такую статью. В ней про то, как анализатор PVS-Studio интегрируется в интерфейс для использования статических анализаторов с открытым исходным кодом CodeChecker.

Инструмент довольно интересный, а написан на Python. Для добавления формата нашего анализатора был открыт Pull Request с добавлением необходимой функциональности.

Попробовать работу инструмента с нашим анализатором можно уже сейчас, если собрать библиотеку CodeChecker'а из репозитория. Релиз в пакетном менеджере pip состоится уже в начале нового 2025 года с версией 6.25.0.

@feelindev
Хабр CodeChecker — контроль качества кода с использованием PVS-Studio CodeChecker — довольно популярный Open Source инструмент контроля качества кода для Linux и macOS. В этой небольшой заметке расскажем о том, как его использовать вместе с анализатором PVS-Studio....
  • 👏 3
Post #105 109
👨‍💻 Merge, нет блин Conflict

Пусть уже и декабрь, продолжаю рассказывать про поездки ноября :)
(ну а что поделать, если фоточки появляются так долго)

16 ноября был спикером на конференции Merge Skolkovo 2024. В этот раз доклад был про всякое страшное (или не очень) из DevOps. На удивление, было много людей, которым действительно было интересно (как мне показалось) послушать бубнение в микрофон о том, что статический анализ точно нужен в CI/CD пайплайне.

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

@feelindev
  • 👏 3
Post #104 110
😎 Безопасность превыше всего

Продолжаю рассказывать про всякое интересное за прошедший месяц.

7 ноября был спикером на международном форуме по информационной безопасности SOC Forum 2024. Рассказывал про правильное использование статического анализа в процессе разработки безопасного программного обеспечения.

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

Посмотреть запись доклада можно по этой ссылке.

@feelindev
  • 🔥 3
Post #103 100
🧐 Мартин пишет новый «Чистый код»

Как-то упустил эту новость в августе, видимо потому что был занят написанием этой и этой статьи по теме «Чистый код vs Производительность». Из-за этой темы, вероятно, будет второе издание легенды.

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

Без иронии скажу, что интересно почитать некоторое переосмысление Мартином чистого кода спустя столько лет, которые он провел в качестве амбассадора этого явления.

@feelindev
  • 🌚 1
Post #102 101
🏋️‍♀️ Я сказала: "Стартуем!"

Начну некоторую серию постов с ретроспективой прошедшего месяца. Так вышло, что много где успел побывать.

17 ноября участвовал в тульской локальной конференции "Старт в IT". Меня пригласили поучаствовать как спикера в дискуссию о языках программирования и их выборе при старте профессиональной карьеры в IT-индустрии. Довольно интересный экспириенс, поскольку не так часто участвовал в таких групповых форматах, больше привык стоять на сцене в одиночку. Было похоже на интересный подкаст, только проходил он вживую.

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

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

@feelindev
  • 🥰 3
Post #101 94
😲 С -> C++

Начитавшись всяких интересных книжек, написал статью о том, как появлялись и развивались языки C и C++. В первой части поговорим о событиях, людях, явлениях с 1969 по 1990 год: появление C и C With Classes, K&R C, почему C++ стал так называться, что не так с множественным наследованием и многое другое.

Читать:
- на русском
- на английском
  • ✍ 2
  • 🦄 1
Post #100 111

Forwarded from Intensa.People / Тула

DevBattle на конференции для будущих айтишников

17 ноября на конференции «Старт в IT» руководитель отдела разработки Intensa Иван Шишкин вместе с другими разработчиками «поспорят» о лучшем языке программирования в лектории библиотеки «Октавы».

4 разработчика, 4 языка программирования. Каждый расскажет про свой и почему он хорош. А вы сделаете выбор.

Итак, на баттле встретятся:
🐼Иван Шишкин, руководитель отдела разработки Intensa (PHP)
🐢Роман Гаранин, тимлид frontend-разработки Intensa (JS)
🦀Валерий Филатов, Developer Advocate в PVS-Studio (Phyton)
🐋Артем Кошко, Lead .NET Developer, предприниматель (C#)

Модератор — совладелец компании Intensa Жанна Трофимова.

💥Все подробности и описание активностей в ТГ-канале «Включайся в IT»

📍Дата: 17 ноября
✔️Начало DevBattle: 14:00
♻️Место: лекторий библиотеки кластера «Октава», Центральный переулок,18

Регистрация по ссылке
Участие бесплатно
  • 🔥 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →