Christmas Special

The Pragmatic Embedded Podcast · 22 Dec 2021 · 39m

What this episode covers

Hosts Jeff Gable and Luca share war stories from their careers in embedded systems, highlighting the pain of manual testing in helicopter avionics, the chaos of managing requirements with Word and Excel in Dropbox for medical devices, and the technical debt of massive #ifdef blocks in legacy machine tool software. They discuss the industry's slow adoption of modern software practices like version control and CI/CD, contrasting embedded development with web development standards. The episode concludes with book recommendations including 'The Phoenix Project' and 'Team Topologies', and reflections on the future of IoT security and agile adoption in hardware.

Mentioned

Companies
MathWorks
Products
NH 90, The Phoenix Project, Team Topologies, Modern Embedded Systems Programming, Test-Driven Development for Embedded C
Chips
Motorola 68K
Tools
Subversion, Simulink, Stateflow, Matlab, CVS, Dropbox, DOORS

Other shows on the same ground, closest first.

  • Embedded.fm · 1h 05m

    53: Being a Grownup Engineer (Repeat)

    Jack Ganssle, author of 'The Art of Designing Embedded Systems' and 'The Embedded Systems Dictionary', argues that embedded software development has failed to adopt true engineering discipline, relying on 'heroics' rather than process. He cites the Toyota unintended acceleration case, where Michael Barr identified 11,000 global variables, as evidence of the catastrophic costs of poor software practices. Ganssle advocates for rigorous requirements gathering, static analysis tools like LDRA and Spark, and metrics-driven benchmarking to reduce debugging time and improve code quality. He contrasts this disciplined approach with the 'hacker' and 'maker' cultures, emphasizing that safety-critical systems require proven processes rather than ad-hoc coding.

  • Embedded.fm · 1h 06m

    191: What, Yogurt!?!

    Hosts Elecia White and Christopher White answer listener emails, covering topics from I2C pitfalls and RTOS choices to advice for students and engineers dealing with legacy code. They discuss the 'March Micro Madness' dev kit tournament, automation in embedded testing, and the challenges of refactoring a 60,000-line monolithic codebase. The episode also includes career advice for undergraduates and a discussion on short stories.

  • Embedded.fm · 1h 03m

    53: Being a Grownup Engineer

    Jack Ganssle, author of 'The Art of Designing Embedded Systems' and long-time embedded industry expert, argues that firmware engineers must adopt disciplined engineering practices rather than relying on 'heroic' hacking. He discusses the necessity of requirements gathering, design reviews, code inspections, and rigorous testing to ensure safety and reliability, citing the Toyota unintended acceleration case as a failure of process. Ganssle advocates for measuring metrics like bug rates and lines of code to benchmark performance, and critiques the misuse of Linux in deeply embedded systems and the confusion between the maker movement and professional engineering.

  • Embedded.fm · 1h 09m

    418: Answer Me These Questions Three

    Hosts Elecia White and Christopher White answer listener questions, discussing the challenges of writing effective quizzes, the importance of patience and structured practice in learning, and the overlooked time spent on tooling in embedded development. They critique the documentation and IDEs of Microchip/Atmel and TI, and explain the technical complexities of dynamic linking and code overlays on ARM Cortex-M processors, referencing their work at Fitbit and TI's BIOS. The episode also touches on the lack of OTA updates for airplane entertainment systems and Christopher White's recent musical video project.

  • Embedded.fm · 1h 00m

    243: Pick a Good One

    Michael Barr, CTO of the Barr Group, discusses the results of their annual survey of embedded systems designers, which gathered 1,703 responses from experienced professionals. He highlights alarming statistics regarding security practices, noting that 22% of engineers working on internet-connected devices do not even list security as a requirement, and many fail to use basic protections like encryption or static analysis. The conversation also explores the industry's persistent reliance on C, the surprising lack of version control and bug tracking among some developers, and the educational gaps that leave hardware-trained engineers unprepared for software quality processes.

The summary, chapters and topics are generated from the episode’s audio by this directory, not written by The Pragmatic Embedded Podcast. The episode itself belongs to its publisher.