Home > Speakers >

Amar Mahmutbegovic

Amar Mahmutbegovic is the co-founder and Head of Engineering at Semblie, where he leads the utilization of modern C++ for firmware development. He is passionate about demonstrating the advantages of C++ to the embedded community through his blog posts and LinkedIn activity. Amar's blog post series "Modern C++ in embedded development" can be accessed on Semblie's website at https://semblie.com/modern-cpp/.

Modern C++ in Embedded Development: Expressive Compile-Time Computation

Available in 3 days, 17 hours and 17 minutes

C++11 made a significant impact on C++, bringing in features such as auto, lambdas, and constexpr. These features modernized language, making it more expressive.

This talk guides embedded developers who dominantly use C for their daily tasks through compile-time evaluation of functions and expressions in C++. It demonstrates language capabilities to generate lookup tables and mathematical signals in compile time while providing expressive abstractions similar to Matlab.

The talk will help embedded developers to better understand modern C++ capabilities, and it will cover the following topics:

  • Constexpr variables, 
  • Constexpr functions, 
  • Operator overloading, 
  • Lambdas, 
  • Templates, 
  • Abbreviated function template. 

The talk aims to demonstrate C++’s compile-time computation capability through a practical example while gradually guiding the audience through the language features needed to build the example.

Go to Session


Live Q&A - Modern C++ in Embedded Development: Expressive Compile-Time Computation

Available in 4 days, 15 hours and 47 minutes

Live Q&A with Amar Mahmutbegovic for the talk titled Modern C++ in Embedded Development: Expressive Compile-Time Computation

Go to Session


Modern C++ in Embedded Development

Status: Available Now

Modern C++ in Embedded Development: Compile-Time Observer Pattern

Despite C remaining the dominant language in embedded development, accounting for up to 65% of embedded projects, the adoption of C++ has grown steadily. With an estimated usage of 20% - 30% in the embedded development field, C++ offers classes, improved type safety, and quality of life features such as range-based for loops, the auto keyword, and lambdas.

Modern C++ provides a range of features that enhance the expressiveness and flexibility of codebases in embedded development while maintaining low binary size and memory usage. This session aims to dispel common misconceptions about C++, such as increased binary size and slow runtime performance, through an example implementation of the observer pattern. Attendees will gain insight into the simple yet effective application of Modern C++ for solving common problems in the embedded domain.

Topics covered in this talk will include:

  • Debunking embedded developers' misconceptions about C++
  • Modern C++ quality of life features: auto, lambdas, and constexpr
  • An introduction to templates and fold expressions
  • Implementing a compile-time observer pattern in C++

Go to Session