#CoreHardBy

C++ CoreHard Summer 2016 Сonference
June 18, Korpus 8, Minsk

C++ CoreHard Summer 2016 Conf is a conference dedicated to C++ and related technologies.

The organizer of the conference is CoreHard.by community that unites not only C++ engineers, but also the ones who are interested in low-level development in C and assembler, programming of controllers, internet of things, highload server solutions and in any kind of “hardcore” development.

We’ll talk about quality assurance for C++ projects, discuss new features of C++ which were planned but were not released in C++ 17 standard. We'll discuss tips and tricks of multithreading programming and lock-free containers together with the author of Concurrent Data Structures library. We’ll dive deep into C++ Abstract Syntax Tree features and talk once again about generic programming and writing safe code for C++. And for dessert we’ll look at the trends of Internet of Things. Maxim Khizhinsky (St.Petersburg) and Anton Bikineev (Moscow) are joining us.

It’s free to take part in the conference thanks to our sponsors.

Speakers

Schedule

  • 11:00 - 11:10

    Opening

  • 11:10 - 11:50

    Quality assurance for large C ++ projects

    Anton Naumovich

    Modern software development is a much more complex process than just regular coding. This process incudes such practices and artifacts as code reviews, continuous integration, unit testing, static code analysis, code coverage, coding standards etc. We will discuss how to integrate these process into your development cycle and what tools can be used for that in C++ universe.

  • 12:00 - 12:40

    Writing good std::future<C++>

    Anton Bikineev

    In this talk Anton will touch major language changes that will not make their way to C++ Standard 17 but remaining in technical specifications, will wait for their merge into the next (C++19 or C++20) seeing the light in some compilers.

  • 12:40 - 13:40

    Coffe Break

  • 13:40 - 14:20

    Concurrent associative containers

    Maxim Khizhinsky

    We will take a look at the implementation of both lock-free and fine-grained lock-based set/map: hash tables, trees. We will find out what in STL may be implemented in lock-free manner and what may not. “Underwater rocks” of lock-free algorithms and how to neutralize them.

  • 14:30 - 15:30

    Development and testing of Internet of things. Industry trends

    Anton Semenchenko

    The talk covers the following questions: how business trends of mobile development and Internet of things will affect technical trends of development and quality assurance. What are the possible difficulties, what skills will be necessary and what types of testing will become more popular, and what tools will become actual. Numerous examples of projects from our country that you can take part in here in Belarus and Russia, here and now.

  • 11:00 - 11:10

    Opening

  • 11:10 - 11:50

    Multithreading tips and tricks

    Maxim Lyskov

    C++ memory models: Ordnung muss sein. Why “undercooked” thread may terminate the application and how to avoid this: recipies from masters of threads. How to come to the conclusion of shared resource usage and how to avoid side effects. The overview of multithreaded development tooling.

  • 12:00 - 12:40

    clang-tidy: a journey inside C++ Abstract Syntax Tree

    Yury Yafimachau

    clang library family provides wides possibilities to implement various tools based on parsing and analysis of Abstract Syntax Tree (AST). Particularly, clang authors released a tool called clang-tidy, a powerful static code analyzer. The talk covers a way to make use of this tool in the process of C++ development and how to enrich this tool with your own checks. On a side note, we will take a deep look into C++ AST.

  • 12:40 - 13:40

    Coffe Break

  • 13:40 - 14:20

    Generic programming in C++ or how to make your life easier via suffering

    Sergey Gomon

    Generic programming is a development approach where the algorithm gets written without specifying concrete data types. Using this approach, one can dramatically increase the ratio of code reuse. In C++ this is achieved via template mechanism. The talk covers several possibilities that C++ presents. Real-world examples are given and we will take a look on how they can simplify our development life.

  • 14:30 - 15:30

    Theory and practice of safe programming in C++

    Artem Lapitski

    C++ gives too much freedom and power to the engineer who is in charge for the development. It’s easy to write code, but it’s complicated to debug and analyze crash reports. This power may be used by the wrong side: a malefactor may interrupt into your application flow and corrupt user’s data. The talk covers most popular vulnerabilities and errors in the application nowadays: from where they come from and how to get rid of them in C++ code.

Organizers

  • Corehard.by
  • DPI Solutions
  • Wargaming
  • EPAM
  • korpus8.by

Partners

  • DPI Solutions
  • LogicNow
  • EPAM
  • Wargaming
  • eventspace.by
  • JetBrains
  • C++ Siberia

Infopartners

  • dev.by
  • IT-academy
  • IBA Institute
  • comaqa.by
  • itstep.by
  • gamedev.by
  • javaday.by
  • conf.cocoaheads.by/