Cool the Heat with Cool C++


Details
The meeting will take place in Modiin. The space is courtesy of SHELL-TECH - Technological Hub. The event is generously sponsored by Final.
The program for the evening:
18:30 - Informal networking and mingling
19:00 - News and updates, Adi Shavit
19:20 - My shift proposal, or: how to make an addition to the C++ standard, Dan Raviv
19:50 - When securing C++ code use C++ solutions, Yair Friedman
20:20 - break
20:30 - Understanding Optimizers: Helping the Compiler Help You, Nir Friedman
Final (http://www.final.co.il) is a leading algorithmic trading company located in Israel.
Algo-trading is a growing and evolving domain which presents unique scientific and technological challenges. Final develops trading algorithms based on mathematical models, statistics and machine learning.
The company is located in Herzeliya and employs more than 100 people, chiefly in its R&D group. A major part of our development is done in C++ and we are always looking for talented engineers to join our R&D group.
:: :: :: :: :: :: :: :: ::
My shift proposal, or: how to make an addition to the C++ standard
The talk would just be about a personal experience of getting small proposal accepted to the C++ standard, and what the process entails. Aimed at anyone thinking about making his own proposal and contribution to the C++ standard, or just anyone who's isn't familiar with the process and is curious about it.
Dan Raviv
I've been a programmer for about 20 years, most of them in C++, with a focus on algorithms. I'm Co-Founder at Sound Radix where we make innovative audio processing tools for professionals working with sound. I like evil bugs for the satisfaction of squashing them after an interesting investigation.
:: :: :: :: :: :: :: :: ::
When securing C++ code use C++ solutions
Many times when searching for vulnerabilities and solutions you see C/C++ clumped together as a single language and advocating the same solution for both languages. In practice however, C++ language is very different than C and provides solutions which are much better than the C solutions. I this presentation I present some of the most common sources of vulnerabilities: Buffer overflow, Integer overflow, memory initialization, memory allocation and deallocation, formatted strings, resource leaking and the way C++ attitude should be used to eliminate these problems.
Yair Friedman
Yair is a secure software professional at Intel Jerusalem. He is also modern C++ evangelist and have been coding in C++ for 27 years. Yair is also a Monty Python fan and always expects the Spanish inquisition.
:: :: :: :: :: :: :: :: ::
Understanding Optimizers: Helping the Compiler Help You
Optimizing compilers can seem rather fickle: sometimes they do something very sophisticated that surprises us, other times they fail to perform an optimization we assumed they would. By understanding the limits on their knowledge, and the constraints in their output, we can much more reliably predict when certain kinds of optimizations can occur. This, in turn, allows our designs to be informed by being friendly to the optimizer.
This talk will discuss concepts fundamental to understanding optimization such as the role of static types, basic blocks, and correctness of emitted code. It will also go through many examples: where inlining does and doesn't occur and why, const propagation, branch pruning, utilizing inferred information/values, the roles of const and value vs reference semantics, etc. Recent, specific improvements in inter-procedural optimizations starting with gcc 7 will be mentioned. It will also show how to help the compiler: writing code in different ways which encourages different optimization strategies.
Nir Friedman
After completing a PhD in physics, Nir started working in C++ doing low latency and high frequency trading. He's interested in the challenges of writing robust code at scale, and highly configurable code that minimizes performance trade-offs.

Cool the Heat with Cool C++