• Magic is Bad

  • Oct 16 2024
  • Length: 42 mins
  • Podcast

  • Summary

  • The Dangers of Magic in Software Abstractions

    In this episode of the Agile Embedded Podcast, hosts Jeff Gable and Luca Ingianni discuss the pitfalls of relying on 'magic' in software development, particularly in tooling, build systems, and frameworks. They illuminate how seemingly helpful abstractions can become burdensome when they obscure necessary complexities or become hard to debug. Through various examples, including comparisons of Arduino and CMake, they explore what makes a good abstraction versus a bad one. The conversation also delves into the importance of composability, testability, and the real-world impact of overly simplistic or 'magical' solutions in long-term projects. The episode wraps up with practical advice for selecting and designing more effective coding abstractions to mitigate risks.

    00:00 Introduction and Episode Theme
    00:19 The Problem with Magic in Programming
    02:54 Examples of Good and Bad Abstractions
    04:45 Frameworks and Tools: Arduino vs. CMake
    08:10 Vendor-Supplied Tools and Their Pitfalls
    13:05 Characteristics of Good Abstractions
    29:04 Testing and Abstractions
    37:10 Final Thoughts and Contact Information

    You can find Jeff at https://jeffgable.com.
    You can find Luca at https://luca.engineer.

    Want to join the agile Embedded Slack? Click here

    Show More Show Less

What listeners say about Magic is Bad

Average Customer Ratings

Reviews - Please select the tabs below to change the source of reviews.

In the spirit of reconciliation, Audible acknowledges the Traditional Custodians of country throughout Australia and their connections to land, sea and community. We pay our respect to their elders past and present and extend that respect to all Aboriginal and Torres Strait Islander peoples today.