Forwarded from GDG Tashkent (Sarvinoz Maksudova 🌾)
⚡️Осторожно: розыгрыш билетов!
💡Startup Weekend - это пре-акселетраторская программа, которая помогает участникам запустить свой стартап за 3 дня. В течение 54 часов участники смогут собрать команду, получить необходимые знания и инструменты для разработки своего стартапа.
❗️Именно этот Startup Weekend будет Women Edition и в нем могут участвовать исключительно девушки.
🥁Для наших подписчиков мы разыгрываем 5 билетов.
Условия просты (только девушкам):
✅подписаться на нашу страницу (@gdgtashkent )
✅ подписаться на страницу (@swtashkent)
✅отметить 3 друзей под этим постом
📝написать #startupmustgoon в комментариях
🔍 Конкурс проходит в Инстаграмме
🔥Не упустите эту возможность! Возможно именно вы станете обладателем заветного билета.
🎫 Билеты будут разыграны 18 мая в 21:00.
@gdgtashkent
💡Startup Weekend - это пре-акселетраторская программа, которая помогает участникам запустить свой стартап за 3 дня. В течение 54 часов участники смогут собрать команду, получить необходимые знания и инструменты для разработки своего стартапа.
❗️Именно этот Startup Weekend будет Women Edition и в нем могут участвовать исключительно девушки.
🥁Для наших подписчиков мы разыгрываем 5 билетов.
Условия просты (только девушкам):
✅подписаться на нашу страницу (@gdgtashkent )
✅ подписаться на страницу (@swtashkent)
✅отметить 3 друзей под этим постом
📝написать #startupmustgoon в комментариях
🔍 Конкурс проходит в Инстаграмме
🔥Не упустите эту возможность! Возможно именно вы станете обладателем заветного билета.
🎫 Билеты будут разыграны 18 мая в 21:00.
@gdgtashkent
Forwarded from Agile Uzbekistan news (Наталья Ни | Узбекистан)
Собираемся на тусовку @AgileUzbekistanCom и @Productcommunityuz!
🔥🔥🔥🔥🔥
24 мая в баре Gravity с 19:30 состоится встреча проджектов и продактов в Узбекистане!
Зачем?
Встреча организовывается для нетворкинга: приходи, знакомься и расширяй свою сеть нетворкинга в IT сфере!
Для регистрации требуется заполнить форму по ссылке и оплатить 100.000 сум.
Оплата по карте: 8600530412286489 до 22 мая (Скрин о переводе @ni_nataly)
В стоимость входит на выбор боул или бургер из меню (либо боул, либо бургер).
Вход строго по списку, проверяться будет на входе в Gravity.
До встречи на весенней встрече проджектов и продактов в баре Gravity!
🔥🔥🔥🔥🔥
24 мая в баре Gravity с 19:30 состоится встреча проджектов и продактов в Узбекистане!
Зачем?
Встреча организовывается для нетворкинга: приходи, знакомься и расширяй свою сеть нетворкинга в IT сфере!
Для регистрации требуется заполнить форму по ссылке и оплатить 100.000 сум.
Оплата по карте: 8600530412286489 до 22 мая (Скрин о переводе @ni_nataly)
В стоимость входит на выбор боул или бургер из меню (либо боул, либо бургер).
Вход строго по списку, проверяться будет на входе в Gravity.
До встречи на весенней встрече проджектов и продактов в баре Gravity!
Forwarded from Никита Палагин
Meetup: Обеспечение качества vs тестирование
20 мая 16:00 в IT Park Tashkent состоится митап на тему "Обеспечение качества vs тестирование". В ходе мероприятии поговорим об обеспечении качества и чем оно отличается от тестирования.
Спикером мероприятия выступит Мария Палагина - эксперт в области обеспечения качества, которая поделится своим опытом и знаниями.
Участие бесплатное, однако необходима предварительная регистрация.
Адрес: IT Park Tashklent
Регистрируйтесь по ссылке: https://forms.gle/cpeMe38K6s2RwvTFA
20 мая 16:00 в IT Park Tashkent состоится митап на тему "Обеспечение качества vs тестирование". В ходе мероприятии поговорим об обеспечении качества и чем оно отличается от тестирования.
Спикером мероприятия выступит Мария Палагина - эксперт в области обеспечения качества, которая поделится своим опытом и знаниями.
Участие бесплатное, однако необходима предварительная регистрация.
Адрес: IT Park Tashklent
Регистрируйтесь по ссылке: https://forms.gle/cpeMe38K6s2RwvTFA
Опубликовал мини-книгу "60 антипаттернов для С++ программиста". Приятного чтения.
Всё одновременно в шутку и серьёзно. Как бы глупо ни смотрелся вредный совет, он не выдуман, а подсмотрен в реальном мире программирования.
Ещё скоро выйдет расширенный бумажный вариант. Но это уже другая история.
---
EN: "60 terrible tips for a C++ developer".
Всё одновременно в шутку и серьёзно. Как бы глупо ни смотрелся вредный совет, он не выдуман, а подсмотрен в реальном мире программирования.
Ещё скоро выйдет расширенный бумажный вариант. Но это уже другая история.
---
EN: "60 terrible tips for a C++ developer".
🔥7❤1👍1
Forwarded from PVS-Studio: поиск ошибок в С/С++, С# и Java
Всего за 8 минут проект собрал в 13 раз больше заявленной суммы на инвестиционной площадке KickStarter. Обзоры их продукта собирают миллионы просмотров на англоязычном YouTube. Только в их каталоге вы найдете легендарную олдскульную игру по мотивам мультфильма «Ну погоди!».
Представляем вашему вниманию интервью с разработчиками Flipper Zero! https://pvs-studio.ru/ru/blog/posts/1075/
Представляем вашему вниманию интервью с разработчиками Flipper Zero! https://pvs-studio.ru/ru/blog/posts/1075/
PVS-Studio
Интервью с разработчиками мультитула для хакеров и пентестеров Flipper Zero
Flipper Zero — карманный мультитул для гиков, сокровище для пентестеров, ваш собственный кибер-зверёк. Возможности девайса ограничиваются только вашим воображением и сноровкой.
Forwarded from PVS-Studio: поиск ошибок в С/С++, С# и Java
Команда PVS-Studio подготовила для вас необычный конкурс!
Связан он с вашими эпичными или мемными фейлами при написании кода. Это тот случай, когда за ошибку вы получите не нагоняй от тимлида, а крутой подарок!
Все подробности по ссылке https://habr.com/ru/companies/pvs-studio/articles/775388/
Связан он с вашими эпичными или мемными фейлами при написании кода. Это тот случай, когда за ошибку вы получите не нагоняй от тимлида, а крутой подарок!
Все подробности по ссылке https://habr.com/ru/companies/pvs-studio/articles/775388/
Хабр
Конкурс для C++ программистов и их любимых багов
Привет всем крутым C и С++ разработчикам! Команда PVS-Studio на связи. Новый год не за горами, поэтому мы подготовили вам новый конкурс с призами! Все мы люди, всем свойственно ошибаться. Обычно за...
🔥1
Forwarded from PVS-Studio: поиск ошибок в С/С++, С# и Java
Тук-тук… А мы с новостями! Да еще с какими!
Рады сообщить, что совсем скоро вас ждет интересный вебинар. Мы расскажем, как с помощью статического анализатора кода PVS-Studio избежать ошибки на проде и постоянные задержки релиза.
Вебинар пройдет 1 февраля в 14:00 📌
Зарегистрироваться можно по ссылке - https://pvs-studio.ru/ru/webinar/
Ждём вас! 😉
Рады сообщить, что совсем скоро вас ждет интересный вебинар. Мы расскажем, как с помощью статического анализатора кода PVS-Studio избежать ошибки на проде и постоянные задержки релиза.
Вебинар пройдет 1 февраля в 14:00 📌
Зарегистрироваться можно по ссылке - https://pvs-studio.ru/ru/webinar/
Ждём вас! 😉
🔥3
Решил переиспользовать старый канал, посвящённый мероприятиям программистов. Буду размещать здесь свои наблюдения из мира программирования, багов, языка C++ и качества кода. А чтобы быть в курсе предстоящих конференций, приглашаю посетить специализированный раздел нашего сайта Мероприятия для программистов.
👍2
Подал заявку на конференцию SafeCode, посвящённую инструментами и практике безопасной разработки. В ходе демонстрационного доклада программный комитет усомнился, что ошибка использования memset, действительно была найдена нами в LLVM :). Не верится, что разработчики компилятора, могут местами аргументы функции перепутать. Могут. Сейчас нашёл старую публикацию и соответствующий commit с правкой бага. Вставлю в презентацию в качестве proof-а :)
Даже высококвалифицированные разработчики не застрахованы от простых ошибок и опечаток.
Даже высококвалифицированные разработчики не застрахованы от простых ошибок и опечаток.
🔥5👍2
Не люблю макросы по разным причинам. Одна из них, что они сильно разрывают восприятие программы. Вот хороший пример сейчас встретил в проекте DPDK: по отдельности код смотрится нормально, а вместе фигня получается :)
Блок кода из юнит-тестов – вроде OK.
Макрос MAX_NUM тоже на первый взгляд нормальный.
Однако, при подстановке получаем: 1 << 20 / 2. Приоритет операции деления выше, чем сдвига. Получаем: 1 << 10. Каждый из циклов перебирает не 1048576 варианта, а только 1024. Итого, тест проверяет только одну миллионную часть от того, что должен :)
На ревью такое заметить можно, но сложно. Нужно явно посмотреть, во что макрос раскрывается и ещё в голове подстановку сделать.
Спасибо PVS-Studio за предупреждение V634. Но лучше не макросы, а константные переменные использовать или constexpr в C++.
Блок кода из юнит-тестов – вроде OK.
Макрос MAX_NUM тоже на первый взгляд нормальный.
Однако, при подстановке получаем: 1 << 20 / 2. Приоритет операции деления выше, чем сдвига. Получаем: 1 << 10. Каждый из циклов перебирает не 1048576 варианта, а только 1024. Итого, тест проверяет только одну миллионную часть от того, что должен :)
На ревью такое заметить можно, но сложно. Нужно явно посмотреть, во что макрос раскрывается и ещё в голове подстановку сделать.
Спасибо PVS-Studio за предупреждение V634. Но лучше не макросы, а константные переменные использовать или constexpr в C++.
👍1
Бестиарий программирования
1 << 20 / 2
Вчера немного поспешил с числами.
(1 << (20 / 2)) * (1 << (20 / 2)) = 1024 * 1024 = 1048576
((1 << 20) / 2) * ((1 << 20) / 2) = 524288 * 524288 = 274877906944
274877906944/1048576 = 262144
Так что перебирается не в миллион раз меньше комбинаций, а 250 тысяч :)
Впрочем, суть ошибки это не меняет. Кстати, если её исправить, возможно проявится другая проблема с тестов. Вернее, выяснится, что он работает слишком медленно и его надо переделывать.
(1 << (20 / 2)) * (1 << (20 / 2)) = 1024 * 1024 = 1048576
((1 << 20) / 2) * ((1 << 20) / 2) = 524288 * 524288 = 274877906944
274877906944/1048576 = 262144
Так что перебирается не в миллион раз меньше комбинаций, а 250 тысяч :)
Впрочем, суть ошибки это не меняет. Кстати, если её исправить, возможно проявится другая проблема с тестов. Вернее, выяснится, что он работает слишком медленно и его надо переделывать.
🔥1
Выложили подкаст, в котором я недавно участвовал. Приятного всем прослушивания и спасибо организаторам.
P.S. Если кто-то делает подкасты/вебинары программисткой направленности, то знайте, команда PVS-Studio всегда открыта к сотрудничеству.
P.S. Если кто-то делает подкасты/вебинары программисткой направленности, то знайте, команда PVS-Studio всегда открыта к сотрудничеству.
Forwarded from PVS-Studio: поиск ошибок в С/С++, С# и Java
В новом выпуске обсудили, с чего начиналась разработка статического анализатора PVS-Studio и как работает команда сегодня.
Приятного просмотра!
Послушать подкаст можно здесь.
Please open Telegram to view this post
VIEW IN TELEGRAM
VK Видео
Статический анализ кода / Виды анализа и диагностики / Поиск кадров в регионах
В гостях у «Битовых масок» — Андрей Карпов и Юрий Минаев из PVS-Studio. В новом выпуске инженеры рассказывают о том, с чего начиналась разработка статического анализатора PVS-Studio и как работает команда сегодня. Как устроен статический анализ и в чем главные…
Годы идут, а ошибки затирания приватных данных по прежнему прекрасно себя чувствуют и процветают. Очередное гнездо я встретил в DPDK. Суть в том, что если после memset буфер памяти не используется, то и заполнять его не обязательно. Компиляторы удаляют вызов memset. Нужно использовать memset_s, RtlSecureZeroMemory или их аналогии. Подробнее: V597, CWE-14.
👍3😱1
Если попросить программиста назвать типовые ошибки, то скорее всего он назовёт неинициализированные переменные, деление на 0, разыменование нулевого указателя. Но насколько то, что сразу приходит в голову, в действительности часто можно встретить к коде? Чего больше: ошибок выхода за границу массива или опечаток вида if (A == A)? Интересные наблюдения за миром ошибок ждут вас в моём докладе "Ошибки в коде: ожидания и реальность".
👍1
https://vk.com/video-11805870_456239336
Это Юрий Минаев, архитектор C++-анализатора PVS-Studio, и его доклад на C++ Zero Cost Conf 2024. Юрий рассмотрел семантику языка с точки зрения статического анализатора или фронтенда компилятора.
Это Юрий Минаев, архитектор C++-анализатора PVS-Studio, и его доклад на C++ Zero Cost Conf 2024. Юрий рассмотрел семантику языка с точки зрения статического анализатора или фронтенда компилятора.
VK Видео
Семантика для кремниевых мозгов | Юрий Минаев, PVS-Studio
Это Юрий Минаев, архитектор C++-анализатора PVS-Studio, и его доклад на C++ Zero Cost Conf 2024. Юрий рассмотрел семантику языка с точки зрения статического анализатора или фронтенда компилятора. --------------------- 🎁Попробовать PVS-Studio бесплатно в…
1 апреля 2024 года введён в действие новый ГОСТ Р 71207–2024 "Статический анализ программного обеспечения". Если в ГОСТ Р 56939–2016 говорится о необходимости использования статического анализа при разработке безопасного программного обеспечения (РБПО), то ГОСТ Р 71207–2024 уточняет, что именно это означает.
Информация в ГОСТ очень плотная, и её тяжело сразу воспринять, если вы ранее не имели дело со статическим анализом кода и РБПО. Поэтому я подготовил и провёл цикл из 5 вебинаров, где разобрал различные аспекты ГОСТ и примерами пояснил некоторых термины.
Информация в ГОСТ очень плотная, и её тяжело сразу воспринять, если вы ранее не имели дело со статическим анализом кода и РБПО. Поэтому я подготовил и провёл цикл из 5 вебинаров, где разобрал различные аспекты ГОСТ и примерами пояснил некоторых термины.
Хабр
ГОСТ Р 71207–2024 глазами разработчика статических анализаторов кода
1 апреля 2024 года введён в действие новый ГОСТ "Статический анализ программного обеспечения". Если в ГОСТ Р 56939–2016 говорится о необходимости использования статического анализа при...
👍3
Мы учим анализатор PVS-Studio искать не только универсальные ошибки, но и связанные с использованием распространённых библиотек. Например, в рамках поддержки из GameDev индустрии, мы реализуем специализированные диагностики для Unity и Unreal Engine.
Более того, появляются не только диагностики для поиска багов, но и для микрооптимизаций. Мы честно не называем это оптимизацией потому, что у статического анализатора недостаточно информации, как часто выполняются различные участки кода. Для оптимизации следует использовать профайлеры.
Тем не менее, определённый выигрыш можно получить. Пример такой диагностики V4006. Помогает сократить количество математических операций, выполняемых над матрицами, векторами и т.д.
Если заинтересовались попробовать PVS-Studio, то промокод progtales позволяет получить триальную версию сразу на месяц.
Более того, появляются не только диагностики для поиска багов, но и для микрооптимизаций. Мы честно не называем это оптимизацией потому, что у статического анализатора недостаточно информации, как часто выполняются различные участки кода. Для оптимизации следует использовать профайлеры.
Тем не менее, определённый выигрыш можно получить. Пример такой диагностики V4006. Помогает сократить количество математических операций, выполняемых над матрицами, векторами и т.д.
Если заинтересовались попробовать PVS-Studio, то промокод progtales позволяет получить триальную версию сразу на месяц.
👍4