# Modern Embedded Systems Programming with Miro Samek

- Show: [The Pragmatic Embedded Podcast](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast)
- Published: 2022-01-18
- Length: 56m
- Page: https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2022-01-18-modern-embedded-systems-programming-with-miro-samek
- Listen: https://agileembeddedpodcast.com/episodes/modern-embedded-miro-samek-5Q5DQgut

## Summary

Miro Samek, founder and CEO of Quantum Leaps, explains why traditional embedded architectures like superloops and RTOS lead to 'spaghetti code' and concurrency bugs, advocating instead for event-driven active objects and hierarchical state machines. He details how this approach eliminates race conditions and mutexes by enforcing a 'no sharing' principle, thereby improving testability and development velocity. Samek also discusses the importance of using lightweight modeling tools to generate code from state diagrams, ensuring the model remains the source of truth in an agile workflow.

## Chapters

- [0:01](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2022-01-18-modern-embedded-systems-programming-with-miro-samek#t=1) Introduction and Guest Background
- [7:10](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2022-01-18-modern-embedded-systems-programming-with-miro-samek#t=430) The Problem with Superloops and RTOS
- [12:22](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2022-01-18-modern-embedded-systems-programming-with-miro-samek#t=742) Concurrency Hazards and Priority Inversion
- [17:06](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2022-01-18-modern-embedded-systems-programming-with-miro-samek#t=1026) Experience at GE and Spaghetti Code
- [22:21](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2022-01-18-modern-embedded-systems-programming-with-miro-samek#t=1341) Active Object Design Pattern
- [38:06](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2022-01-18-modern-embedded-systems-programming-with-miro-samek#t=2286) State Machines and Context Management
- [43:08](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2022-01-18-modern-embedded-systems-programming-with-miro-samek#t=2588) Modeling and Code Generation
- [50:20](https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2022-01-18-modern-embedded-systems-programming-with-miro-samek#t=3020) Agile vs. Waterfall and Conclusion

## Topics

- [Embedded firmware](https://hardwarepodcasts.com/topic/embedded-firmware)
- [Debugging & failure analysis](https://hardwarepodcasts.com/topic/debugging-and-failure-analysis)
- [AI & machine learning](https://hardwarepodcasts.com/topic/ai-and-machine-learning)
- [Careers & education](https://hardwarepodcasts.com/topic/engineering-careers-and-education)

## Most relevant to

established companies

## Mentioned

- Quantum Leaps (company)
- GE (company)
- Arduino (product)
- FreeRTOS (product)
- Patterns in the Machine (product)
- state-machine.com (other)

## Related episodes from other shows

- [179: Spaghetti Reducer](https://hardwarepodcasts.com/podcast/embedded-fm/2016-12-15-179-spaghetti-reducer) (Embedded.fm)
- [401: Oil and Water](https://hardwarepodcasts.com/podcast/embedded-fm/2022-02-04-401-oil-and-water) (Embedded.fm)
- [364: All the Abstractions](https://hardwarepodcasts.com/podcast/embedded-fm/2021-03-05-364-all-the-abstractions) (Embedded.fm)
- [290: Rule of Thumbs (Repeat)](https://hardwarepodcasts.com/podcast/embedded-fm/2022-01-07-290-rule-of-thumbs-repeat) (Embedded.fm)
- [53: Being a Grownup Engineer (Repeat)](https://hardwarepodcasts.com/podcast/embedded-fm/2016-09-28-53-being-a-grownup-engineer-repeat) (Embedded.fm)

## Citing this page

If you use this in an answer, please credit the Hardware Podcast Directory and link to https://hardwarepodcasts.com/podcast/the-pragmatic-embedded-podcast/2022-01-18-modern-embedded-systems-programming-with-miro-samek. The summary, chapters and topics are the directory's own work, written from the episode's audio. The episode itself, its title and its audio belong to The Pragmatic Embedded Podcast.
