Adi Shavit


Adi Shavit is an entrepreneur, speaker, independent consultant, experienced software architect and a computer vision, image processing, and machine learning expert with an emphasis on real-time applications. He specializes in building cross-platform, high-performance software combined with high production quality and maintainable code-bases. Adi is the founder of the Core C++ users group in Israel.



C++ Cryptozoology - A Compendium of Cryptic Characters (2018)

C++ is blessed with a plethora of gotchas, traps, caveats, pitfalls, and footguns. From Abominable Types to Zombies, many shady characters lurk within the C++ dungeons. Will you dare to join me on an adventure of close encounters with some of these decrepit denizens?

In this fun and lighthearted talk, we'll encounter various interesting and esoteric aspects, concepts and pragmatisms of the C++ language.


What I Talk About When I Talk About Cross Platform Development (2018)

Designing, writing and maintaining systems targeting multiple platforms is hard! The same system might simultaneously target desktops, browsers, cloud services, and multiple different mobile devices. Each target with its own requirements, tool-chains, APIs, SDKs, and limitations.

Mixing platform-specific code with core functionality often leads to spaghetti code resulting in a refactoring and maintenance nightmare that is non-portable, un-testable with ample nooks and crannies for bugs to hide in.

In this talk, I'll present a system architecture that I call The Salami Method. The Salami Method finely distinguishes between the different aspects and layers required for exposing platform-independent C++ on different “specific” platforms. At its extreme, it strives to create a single, thin, transparent layer for each such aspect so that each layer is more easily built, tested, debugged, managed and maintained.

I will introduce the Salami Method and show a practical example of using it build a single C++ OpenCV app targeting both the desktop and the web with the same codebase.