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

Встреча будет проходить в рамках программы CoLaboratory, вечером 24 мая, в нашем московском офисе. На этот раз мы решили поделиться со всеми желающими опытом применения статического анализа и организации тестирования производительности программ. О чем и расскажут наши эксперты Никита Какуев и Николай Дьяконов — весьма увлеченные своим делом личности.

У Никиты, который, по его словам, «немного увлекается процессом разработки в широком смысле», есть интересное хобби — он экспериментирует со статическим анализом. В качестве основного инструмента использует Clang Static Analyzer.

Собственно, Никита начал увлекаться статическим анализом задолго до того, как пришел к нам, так что опыт у него немалый. Однако, в «Лаборатории Касперского» он научился применять Clang Static Analyzer на действительно больших проектах, которые собираются из кучи маленьких. И этот человек собирается поделиться своим опытом. Ну и попутно расскажет про варнинги компилятора — как их настраивать, как ими управлять, и, главное, как заставить работать на программиста.

Николай тоже имеет интересное хобби — он увлекается тестами производительности программ. И расскажет он о граблях. Вернее, не совсем так. Он расскажет о том, как грамотно подходить к организации тестирования производительности и о тех граблях, на которые мы уже наступили в процессе своих экспериментов. Дело в том, что на самом деле, такой информации не очень много. Про оптимизацию кода в C++ — много. Про оптимизацию приложений — при желании можно найти. А вот про организацию регулярного перформанс-тестирования — почти нельзя.

image
Грабли. Прямого отношения к C++ разработке не имеют.

Уникальность его ситуации заключается в том, что, с одной стороны, он всегда занимался C++ программированием, а с другой — сейчас работает в группе анализа и контроля производительности. То есть, можно сказать, сделал хобби своей работой. Так вот, начав заниматься контролем производительности, он узнал немало нового. И с тех пор жаждет поведать остальным С++ программистам истину, чтобы они относились к оптимизации кода более комплексно и глобально. И чтобы еще в процессе написания понимали, что на что влияет и как оно это делает.

В качестве модератора мероприятия выступит Евгений Буштырев.

Программа встречи:
  • 18:30 – 19:00 – Регистрация участников.
  • 19:00 – 19:10 – Приветственные слова.
  • 19:10 – 20:10 – Статический анализ в C++. Никита Какуев.
  • 20:10 – 20:30 – Кофе-брейк.
  • 20:30 – 21:00 – Основы перформанс-тестирования. Николай Дьяконов.
  • 21:00 – 21:20 – Q&A-сессия.
  • 21:20 – Завершение встречи.


Зарегистрироваться для участия можно вот тут.

В будущем мы планируем проводить подобные встречи с C++ разработчиками на регулярной основе. Причем, если у вас есть темы, которые вам было бы интересно обсудить на следующих встречах, то будем рады если вы поделитесь ими здесь в комментариях или же лично, на форуме.
Поделиться с друзьями
-->

Комментарии (29)


  1. darkAlert
    19.05.2016 23:35
    +3

    Люди, пожалуйста, не говорите плохо о C++, я испытываю моральные страдания когда это происходит.


    1. darkAlert
      19.05.2016 23:41
      +2

      но я приду!


    1. Kaspersky_Lab
      20.05.2016 10:54

      У нас и в мыслях не было говорить плохо о C++.


  1. kloppspb
    20.05.2016 00:10
    -10

    > Ну просто потому, что это самый простой из известных нам методов создания программного обеспечения.
    Вы действительно полагаете, что после подобной глупости стоит читать?
    А, да, «лопата».


    1. LifeKILLED
      20.05.2016 10:52
      +1

      Юмор бывает разный: пошлый, грубый, тонкий, а ещё бывает тонкий и ироничный. Не показалась смешной эта статья, ничего страшного, на Хабре есть много других :)

      (а мне понравилась зарисовка, так и представил себе грустных поэтов объектно-ориентированного кода, блуждающих между столиками с кофе и беседующих друг с другом о смысле бытия)


    1. JDTamerlan
      24.05.2016 11:35

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


  1. MooNDeaR
    20.05.2016 04:42

    >"… а с другой — сейчас работает в группе анализа и контроля производительности"

    Теперь я знаю кто виноват в том, что каспер жрет просто непозволительное количество ресурсов компьютера :D

    А вообще, я бы сходил… Да только в Томске я :(


    1. mefisteron
      20.05.2016 09:32

      Я думаю, что запись будет.


      1. Kaspersky_Lab
        20.05.2016 11:08
        +1

        Да, запись будет опубликована в ФБ:
        https://www.facebook.com/kaspercareer/

        Плюс будет в нашем ютюб-канале.
        https://www.youtube.com/user/KasperskyChannelRU


  1. klirichek
    20.05.2016 07:50

    Пообщайтесь с Яндексом!
    Они ровно так же сперва организовали большую встречу, потом ещё одну — а потом вдруг стало ясно, что это немного не тот формат, и в итоге всё мероприятие переформатировалось в «С++ клуб», который собирается несколько раз в год в офисе Яндекса.


  1. NikitOS9
    20.05.2016 09:10
    -1

    Ken Thompson, один из создателей UNIX и Plan 9, раскрывает секрет успеха C++:

    Stroustrup campaigned for years and years and years, way beyond any sort of technical contributions he made to the language, to get it adopted and used. And he sort of ran all the standards committees with a whip and a chair. And he said “no” to no one. He put every feature in that language that ever existed. It wasn’t cleanly designed—it was just the union of everything that came along. And I think it suffered drastically from that.

    Страуструп затеял многолетнюю кампанию, далеко превосходившую всю его техническую работу над языком, ради того, чтобы язык был принят к использованию. Он типа как укротитель с хлыстом, обошёл все комитеты по стандартам и ни единому не сказал «нет». Он все когда-либо предложенные фичи запихнул в язык. В результате получилось нелепое объединение всего подряд. Мне кажется, язык от такого подхода колоссально пострадал.

    http://shmat-razum.blogspot.ru/2012/01/coders-at-work.html


  1. slonopotamus
    20.05.2016 09:17

    Какого-то одностороннего «общения» хотят ваши C++ программисты.


    1. ilnarb
      20.05.2016 16:41

      Открою секрет, митапы и прочие проводят ради привлечения нужных специалистов в фирму, а уж тему встречи делают как получится.


    1. afiskon
      20.05.2016 16:55

      Ну доклады на митапе — это же просто предлог.


  1. kyb27
    20.05.2016 09:53

    А будет анонс с детальным планом куда идти?


    1. Kaspersky_Lab
      20.05.2016 10:56

      Так на страничке с регистрацией есть адрес и карта. Но на всякий случай — Ленинградское шоссе, д.39А, стр.2 БЦ «Олимпия Парк».


      1. alexiv1965
        20.05.2016 12:27

        А можно еще на страничку регистрации написать — как быть тем, кто едет на машине? Там с парковкой вокруг — дело гиблое, а на территорию БЦ — неясно, можно ли въехать?


        1. Kaspersky_Lab
          20.05.2016 12:58

          Дополним страничку. А вам рекомендуем связаться с непосредственным организатором мероприятия, Alexander.Nezhelsky@kaspersky.com, он посоветует как быть.


  1. dkv
    20.05.2016 11:08

    Будет ли запись доступна на youtube?


    1. Kaspersky_Lab
      20.05.2016 11:09

      Да, на https://www.youtube.com/user/KasperskyChannelRU


  1. iSage
    20.05.2016 13:28
    -1

    >наши эксперты Никита Какуев
    Кек, я думал Хиныч в стартапы ушел.


  1. afiskon
    20.05.2016 16:59

    Я тут тоже недавно заинтересовался статическим анализом. Пришел к выводу, что Clang Static Analyzer, к сожалению, является далеко не самым мощным анализатором. Зато он бесплатный и работает везде, это, бесспорно, большой плюс. И если в сочетании с MemorySanitizer то в целом хорошее решение.


    1. 0xd34df00d
      21.05.2016 01:33

      А лучше особо ничего нет.

      Coverity умирает от моего кода (слишком C++14), PVS — несерьезно, всякие cppcheck — тоже несерьезно.


      1. afiskon
        23.05.2016 11:09

        cppcheck — это, бесспорно, несерьезно

        PVS находил у нас в коде очень серьезные ошибки которые другие статические анализаторы, названные выше, не видели. Код, правда, на чистом Си, про C++14 ничего не могу сказать.


        1. 0xd34df00d
          24.05.2016 02:27

          Повезло вам. В моем коде он находил весьма смешные «ошибки» уровня cppcheck в лучшем случае.

          Единственный инструмент, который в моем опыте находил реальные ошибки — clang static analyzer.


  1. M3fist0
    20.05.2016 17:23

    Хорошая идея!
    Еще бы ваши HR отвечали на отклики по вакансиям, да обратную связь давали по тестовым заданиям…


  1. mbait
    22.05.2016 07:54
    +1

    Ну и попутно расскажет про варнинги компилятора — как их настраивать, как ими управлять

    Если под «варнингом» иммется ввиду предупреждение, то звут очень интринующе, потому что -W включает предупреждение, а -Wno- отключает, ещё парочка управляется через -f. Безумно интересно узнать, как ещё их можно настроить.


  1. mantyr
    23.05.2016 18:35

    Будет ли видео со встречи? И если да, то где на него можно подписаться?


  1. vstrange
    23.05.2016 18:35

    А видео с докладом планируете выложить в сеть? Очень хочется послушать доклад