Я на протяжении последнего года использую Obsidian как систему для ведения заметок. Довольно удобная штука для того, чтобы структурировать свои записи определённым образом. Раньше, кстати, немного использовал Notion, но его ограничения меня раздражали, а для Obsidian можно хоть расширения под свои цели писать :)
Да и стандартных возможностей тоже много. Например, удобные ссылки между заметками, граф, отображающий связи между всеми заметками, а ещё ежедневные заметки, а Obsidian ещё и автоматически открывает сегодняшнюю заметку при открытии приложения.
Была одна проблема: бесплатно его нельзя было использовать в коммерческих целях. Поэтому увидеть иконку с фиолетовым камешком на своей рабочей машине не представлялось возможным долгое время (видели бы вы глаза некоторых людей, когда они подходили что-то спросить, а у меня на экране сырой Markdown открыт в Visual Studio Code), поскольку уже долгое время есть проблема с меджународными платежами и купить себе подписку на Pro версию было не очень возможно.
Однако недавно Obsidian поменял лицензию и его бесплатную версию теперь можно использовать в том числе для коммерчеких целей. Хорошая новость для пользователей Obsidian, которые могли быть озадачены той же проблемой, что и я, а также для тех, кто до сих пор не нашёл удобную бесплатную альтернативу Notion для работы :)
Please open Telegram to view this post
VIEW IN TELEGRAM
Obsidian
Obsidian - Sharpen your thinking
The free and flexible app for your private thoughts.
❤2🤯1🍓1
Написал статью о том, как недостаточная чистота кода влияет на количество ошибок, которое прячется в нём.
Довольно сильно заинтересовался этой темой, когда смотрел на код разных open source проектов.
В статье смотрим на практические примеры из реально существующих проектов (никакой синтетики), делаем выводы и находим способы решения.
Читать:
- на русском
- на английском
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2❤1🍓1🦄1
Forwarded from PVS-Studio: поиск ошибок в коде
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🍓1
В прошедшую пятницу выпустил новую статью. В этот раз вернулся к любимому у нас в PVS-Studio формату проверок open source проектов. Несколько лет никто из наших ребят и девчонок не трогал PowerShell, поэтому настало время его просканить и посмотреть, чего там интересного.
Несмотря на то, что я не ожидал чего-то прям супер выделяющегося, я такого всё-таки нашёл. Кроме прям-таки стандартных багов, которые можно встретить где угодно, тут нашлись и штуки с некорректным поведением флагов, и прям настолько гениально написанный код, что я записал это как новую концепцию в программной инженерии.
Читать:
- на русском
- на английском
P. S. У меня забэкложился целый список всяких интересностей, которые произошли за последнее время. Поэтому начинаем марафон постов обо всём и вся :)
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
Инновационные технические решения и баги в исходном коде PowerShell
PowerShell — известный инструмент от Microsoft. Но какие секреты сможет найти статический анализатор в его исходном коде? Посмотрим в этой статье. PowerShell — это инструмент автоматизации от...
🔥3🍓1🦄1
Посмотрите на довольные лица людей вокруг меня на этом фото. Они терпели меня больше года, пока учились на курсе "Веб-разработка на Python", а неделю назад защитили дипломные проекты.
За год работы мы изучили много всякого. Не сказал бы, что это достаточное количество, чтобы быть востребованным на рынке специалистом, но это хороший старт при достаточной мотивации двигаться и развиваться дальше.
Я же как специалист в работе преподавателя нашёл множество всякого интересного: тут и софты можно было подпрокачать, и менеджерские скиллы подразвить, и научиться работать с материалом, и много-много всякого другого.
Ребятам удачи, надеюсь, что потраченное время приведёт к желаемому результату - работе в нашей родной айтишечке.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5🍓1👾1
В прошедшие выходные я отменил отдых, потому что была более важное событие - конференция Heisenbug Spring 2025. Конференция посвящена тестированию, но это не единственная тематика на самом деле :)
За два дня удалось сделать много всякого разного: и пообщаться с большим количеством разных интересных людей, и походить на доклады (хоть и совсем немножко), и послушать музыки на афтерпати (спасибо Ozon, что добавили в треклист Rammstein
А на фото я с единственным и неповторимым Андреем Коняевым. Утро второго дня началось с невероятно интересного доклада про математику
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3🍓1
Тула! Увидимся на митапе про статический анализ, на котором подробно обсудим следующие вопросы:
— Что такое статический анализ и какие ошибки он помогает находить?
— Что такое Static Application Security Testing (SAST)?
— Почему статический анализ нужно выполнять регулярно?
— Какие требования к статическому анализу по российским стандартам?
— Практические аспекты внедрения и автоматизации
Где?
Лекторий общества "Знание" на 4-м этаже творческого индустриального кластера "Октава"
Когда?
17 апреля в 19:00
Регистрация по ссылке.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4🍓1
В эту субботу выступаю на Merge Tatarstan 2025 в Иннополисе. Буду рассказывать про то, как нужно готовить регулярный статический анализ в своём докладе Регулярный статический анализ. Не только полезно, но и необходимо.
Please open Telegram to view this post
VIEW IN TELEGRAM
🍓1
Forwarded from Профессиональная ИТ-конференция Синтез | Merge
DevOps-секция на Merge в Татарстане
Что, если ваши метрики обманывают вас? Как выбрать идеальный язык для DevOps? Почему автоматизация иногда создаёт больше проблем, чем решает?
На секции DevOps вас ждут ведущие эксперты и актуальные темы:
🔹 Владимир Гурьянов (Флант) — «Prometheus. Что есть реальность?»
Как избежать ловушек «ложных» метрик и правильно интерпретировать данные систем мониторинга.
🔹 Константин Аристов (Скала^р) — «Как выглядят DevOps-практики за пределами разработки ПО»
Что происходит, когда DevOps выходит за рамки IT и применяется в реальном производстве?
🔹 Алиса Кириченко (Лаборатория Числитель) — «Эволюция RBAC в Kubernetes: от ванили в мультикластер»
Как правильно управлять доступами в Kubernetes и не терять контроль.
🔹 Лев Немировский (ПСБ) — «Как выбрать правильный язык для DevOps-задач: от скриптов к инженерным решениям»
Bash, Python, Go, Ruby — что выбрать и когда? Практические кейсы и инженерный подход.
🔹 Валерий Филатов (PVS-Studio) — «Регулярный статический анализ: не только полезно, но и необходимо»
Почему статический анализ кода — must-have в современных проектах.
🔹 Евгений Харченко (Райффайзен Банк) — «CI/CD для Python-приложений: от версионирования до миграций»
Как правильно организовать пайплайн и не сломать продакшен.
🔹 Александр Татаринцев (Промсвязьбанк) — «Мания перевозки инфраструктуры: зачем все куда-то переезжают?»
Почему компании так часто меняют инфраструктуру, и всегда ли это оправдано? Разбор реальных кейсов переезда ПО, неожиданных проблем и ключевых выводов.
💡 Для кого? Разработчики, DevOps-инженеры, архитекторы, тимлиды и все, кто строит и поддерживает инфраструктуру.
📅 25-26 апреля | Иннополис
🎟 Купить билет
🔗 Программа
Будет интересно и полезно! 🚀
Что, если ваши метрики обманывают вас? Как выбрать идеальный язык для DevOps? Почему автоматизация иногда создаёт больше проблем, чем решает?
На секции DevOps вас ждут ведущие эксперты и актуальные темы:
🔹 Владимир Гурьянов (Флант) — «Prometheus. Что есть реальность?»
Как избежать ловушек «ложных» метрик и правильно интерпретировать данные систем мониторинга.
🔹 Константин Аристов (Скала^р) — «Как выглядят DevOps-практики за пределами разработки ПО»
Что происходит, когда DevOps выходит за рамки IT и применяется в реальном производстве?
🔹 Алиса Кириченко (Лаборатория Числитель) — «Эволюция RBAC в Kubernetes: от ванили в мультикластер»
Как правильно управлять доступами в Kubernetes и не терять контроль.
🔹 Лев Немировский (ПСБ) — «Как выбрать правильный язык для DevOps-задач: от скриптов к инженерным решениям»
Bash, Python, Go, Ruby — что выбрать и когда? Практические кейсы и инженерный подход.
🔹 Валерий Филатов (PVS-Studio) — «Регулярный статический анализ: не только полезно, но и необходимо»
Почему статический анализ кода — must-have в современных проектах.
🔹 Евгений Харченко (Райффайзен Банк) — «CI/CD для Python-приложений: от версионирования до миграций»
Как правильно организовать пайплайн и не сломать продакшен.
🔹 Александр Татаринцев (Промсвязьбанк) — «Мания перевозки инфраструктуры: зачем все куда-то переезжают?»
Почему компании так часто меняют инфраструктуру, и всегда ли это оправдано? Разбор реальных кейсов переезда ПО, неожиданных проблем и ключевых выводов.
💡 Для кого? Разработчики, DevOps-инженеры, архитекторы, тимлиды и все, кто строит и поддерживает инфраструктуру.
📅 25-26 апреля | Иннополис
🎟 Купить билет
🔗 Программа
Будет интересно и полезно! 🚀
🍓1
Forwarded from PVS-Studio: поиск ошибок в коде
Media is too big
VIEW IN TELEGRAM
Что такое "сигнатурный анализ"? Разбираемся в видео! 👍
Чтобы больше понять тему с новым стандартом ГОСТ Р 71207-2024 предлагаем скачать мини-книгу по ссылке🔗
#видео #PVS_Studio
Чтобы больше понять тему с новым стандартом ГОСТ Р 71207-2024 предлагаем скачать мини-книгу по ссылке
#видео #PVS_Studio
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3🍓1
Следующая часть из цикла статей про историю языков. В этот раз смотрим на то, как жил и живёт C#: версии языка, .NET, Unity, MAUI, Windows Presentation Foundation (WPF), Blazor.
Честно сказать, статья была трудной в плане написания, и в итоге вышла довольно объёмной (Хабр показывает 19 минут чтения). Но даже при таком объёме, естественно, подборка событий в истории языка остаётся субъективной и не охватывает каких-то пунктов, поэтому буду рад вашим дополнениям в комментариях здесь или на Хабре.
Читать:
- на русском
- на английском
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3🍓1
🤩 Сан Франциско в Татарстане
На прошедших выходных был спикерм на конференции (об этом чуть позже тоже напишу), которая проходила в Иннополисе. Об этом месте до этой поездки знал немного, да и вообще думал, что это просто относительно новый университет.
Оказалось, что всё намного интереснее. Иннополис - это технологичный город, в котором живут и работают айтишники. Здесь есть довольно большой список компаний, чьи офисы представлены в местном технопарке, а для работников этих компаний есть специальные условия пребывания в городе.
Технологичность этого места заметна с первых минут: доставку еды осуществляют беспилотные роверы Яндекса, а по городу курсирует беспилотное такси, здания выглядят монументально и интересно задизайнены, а вечером приобретают красочную подсветку.
Интересно также было пообщаться с местными жителями. Они довольно часто говорили о том, что в городе тихо, спокойно и безопасно, потому что за этим действительно тщательно следят. Из минусов в таких диалогах отмечали то, что условия для сотрудников компаний из местного технопарка действительно приятные, но для простых людей всё не так просто, например цена за аренду квартиры в городе будет в несколько раз больше, а также довольно удалённое расположение (до Казани на такси мы ехали в среднем полчаса).
Валерий Костин, основатель IT-конференции Merge недавно выпускал на Хабре статью о том, чем и как живёт Иннополис, там больше по теме и это довольно интересно почитать.
🎤 feelin
На прошедших выходных был спикерм на конференции (об этом чуть позже тоже напишу), которая проходила в Иннополисе. Об этом месте до этой поездки знал немного, да и вообще думал, что это просто относительно новый университет.
Оказалось, что всё намного интереснее. Иннополис - это технологичный город, в котором живут и работают айтишники. Здесь есть довольно большой список компаний, чьи офисы представлены в местном технопарке, а для работников этих компаний есть специальные условия пребывания в городе.
Технологичность этого места заметна с первых минут: доставку еды осуществляют беспилотные роверы Яндекса, а по городу курсирует беспилотное такси, здания выглядят монументально и интересно задизайнены, а вечером приобретают красочную подсветку.
Интересно также было пообщаться с местными жителями. Они довольно часто говорили о том, что в городе тихо, спокойно и безопасно, потому что за этим действительно тщательно следят. Из минусов в таких диалогах отмечали то, что условия для сотрудников компаний из местного технопарка действительно приятные, но для простых людей всё не так просто, например цена за аренду квартиры в городе будет в несколько раз больше, а также довольно удалённое расположение (до Казани на такси мы ехали в среднем полчаса).
Валерий Костин, основатель IT-конференции Merge недавно выпускал на Хабре статью о том, чем и как живёт Иннополис, там больше по теме и это довольно интересно почитать.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2🍓1
Заголовок ни капли не преувеличивает важности произошедшего события. Сегодня Microsoft официально прекратили поддержку Skype.
Штука поистине легендарная. Это одна из первых платформ, которая предоставила возможность осуществлять бесплатные звонки через интернет, а потом в Skype и вовсе появились видеозвонки.
Я впервые использовал Skype для поигрулек с друзьями в далёком 2011. Помимо этого Skype за неимением альтернатив был удобным средством общения с близкими, которые территориально находились далеко.
Однако помимо легендарности стоит сказать и о том, что причиной смерти сервиса стало его моральное устаревание. Помню, меня как-то позвали созвониться в Skype в те времена, когда все вокруг уже пользовались Discord, и было понятно, насколько Skype стар. Непонятные длиннющие ID в профиле вместо никнеймов, постаревший не очень понятный интерфейс. А самое главное, что владельцы в лице Microsoft всячески пытались сделать Skype частью своей бизнес экосистемы, как будто и не поняв, чего именно они от него хотят (ИМХО).
Press F to pay respect.
Please open Telegram to view this post
VIEW IN TELEGRAM
🍓1🫡1
Ребята из Хабра опубликовали шортлисты номинаций конкурса технических статей "Технотекст" этого года. В этом посте хочу поделиться текстами моих коллег из PVS-Studio, которые попали в финальную выборку своих номинаций.
Программирование: std::array в С++ быстрее массива в С. Иногда
На самом деле эта статья - часть большого цикла, в котором Антон сравнивает
std:array и встроенные массивы в C++. Мы в компании прозвали этот цикл "Массивной трилогией". Довольно интересные тексты, хоть и умеренная техножесть :)- Ненавижу, _____, C++ массивы
- std::array в С++ не медленнее массива в С
- std::array в С++ быстрее массива в С. Иногда
Программирование: О том, как легкомысленное использование полиморфных аллокаторов может испортить вам жизнь
Статья, в которой Гриша рассказывает о том, как полиморфные аллокаторы могут навредить вашему коду. Если предыдущую статью я назвал умеренной техножестью, то здесь можем избавиться от слова "умеренная" :)
О том, как легкомысленное использование полиморфных аллокаторов может испортить вам жизнь
Информационная безопасность: Поиск потенциальных уязвимостей в коде, часть 1: теория
Ну и текст из номинации "Информационная безопасность". В своей статье Костя рассказывает о том, как работает поиск потенциальных уязвимостей с помощью статических анализаторов. В первой части теория, а во второй практика.
- Поиск потенциальных уязвимостей в коде, часть 1: теория
- Поиск потенциальных уязвимостей в коде, часть 2: практика
Please open Telegram to view this post
VIEW IN TELEGRAM
🍓1
😍 Посмотрите, какая красота!
Вышла первая бета-версия Python 3.14, в которой завезли целый список различных изменений. Возможно, про какие-нибудь ещё поговорим позже, но про одно прям-таки не могу молчать :)
Завезли PEP 750 - шаблонные строки. По сути своей штука до боли знакома: если не копать в подробности, то это та же самая f-строка, которая позволяет подставлять значения в строку по определённому образцу:
Зачем, казалось бы, ещё одна реализация f-строк? А дьявол кроется в деталях! На самом деле разница между f-строками и шаблонными строками состоит в том, какой тип мы получаем в результате выполнения: при вычислении значения f-строки мы в итоге получим готовую строку, а при вычислении шаблонной строки - объект класса
Смысл сей магии в том, что теперь в языке появилась собственная гибкая обработка строк, позволившая делать проверки безопасности (привет, taint-анализ), колдовать с веб-шаблонами и всякое подобное.
Например, мы можем доставать из шаблонной строки её части, а также конкретные интерполированные значения:
Также есть возможность достать из такой строки изначально подставленное значение:
Помимо этого, шаблонные строки поддерживают мини-язык format specification (поле
🎤 feelin про #Python
Вышла первая бета-версия Python 3.14, в которой завезли целый список различных изменений. Возможно, про какие-нибудь ещё поговорим позже, но про одно прям-таки не могу молчать :)
Завезли PEP 750 - шаблонные строки. По сути своей штука до боли знакома: если не копать в подробности, то это та же самая f-строка, которая позволяет подставлять значения в строку по определённому образцу:
name = "World"
template = t"Hello {name}"
print(template) # Hello World
Зачем, казалось бы, ещё одна реализация f-строк? А дьявол кроется в деталях! На самом деле разница между f-строками и шаблонными строками состоит в том, какой тип мы получаем в результате выполнения: при вычислении значения f-строки мы в итоге получим готовую строку, а при вычислении шаблонной строки - объект класса
Template (лежит в string.templatelib), с которым далее мы можем творить всякие интересности.Смысл сей магии в том, что теперь в языке появилась собственная гибкая обработка строк, позволившая делать проверки безопасности (привет, taint-анализ), колдовать с веб-шаблонами и всякое подобное.
Например, мы можем доставать из шаблонной строки её части, а также конкретные интерполированные значения:
name = "World"
template = t"Hello {name}"
assert template.strings[0] == "Hello "
assert template.interpolations[0].value == "World"
Также есть возможность достать из такой строки изначально подставленное значение:
name = "World"
template = t"Hello {name}"
assert template.interpolations[0].expression == "name"
Помимо этого, шаблонные строки поддерживают мини-язык format specification (поле
format_spec типа Template).Please open Telegram to view this post
VIEW IN TELEGRAM
🤩1🍓1
В эту среду провели совместный вебинар с Семёном Кашиным из Inseq. Пообщались на тему регулярного статического анализа, а также вообще того, как должен выглядеть конвейер безопасной разработки.
В ролике о том, как правильно добиваться регулярности статического анализа, о требованиях к регулярности по российским стандартам, а также разбор всяких интересностей, которые нашёл анализатор в известном проекте от Microsoft.
Welcome!
Please open Telegram to view this post
VIEW IN TELEGRAM
PVS-Studio
Регулярный статический анализ по ГОСТу
Разобрали часть требований стандартов 56939-2024 и 71207-2024 в части регулярного статического анализа, объяснили, как выстроить этот самый регулярный статический анализ в рамках РБПО, автоматизировать его через системы CI и значительно ускорить пайплайн…
🔥1🍓1
👽 Надеваем шапочки из фольги!
Выпустил статью с разбором разного интересного, что нашлось в исходном коде проекта, написанного не абы где, а в NASA! Проект написан на Java (небольшой спойлер к следующей статье), и содержит много как ошибок, так и просто забавностей.
Читать:
- на русском
- на английском
🎤 feelin
Выпустил статью с разбором разного интересного, что нашлось в исходном коде проекта, написанного не абы где, а в NASA! Проект написан на Java (небольшой спойлер к следующей статье), и содержит много как ошибок, так и просто забавностей.
Читать:
- на русском
- на английском
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
Как NASA ошиблись в исходном коде планеты
Баги в коде — явление нередкое, но сегодня мы исследуем не просто ошибки, а настоящие космические баги! Что скрывает проект, созданный в недрах NASA? Готовьте свои шапочки из фольги! WorldWind Java —...
🤯2🍓1