Code & Optimism

Shane Delamore

All problems are solvable with enough knowledge -- and software is the most powerful knowledge tool ever invented. Code & Optimism is a show focused on solving problems faster with software. I created this series to discuss topics related to my passion of accelerating our ability to solve problems with software. In this show I'll dive into everything from practical tips to philosophical musings about optimism, solving problems and this wonderful tool called software and how we can become ever better at software engineering. Who is it for? Any Software Engineer that wants to level up, particularly in the roles of tech-leads and architectsAny Visionary, CEO or product-leader tackling challenging problems with software About me, your host, Shane Brinkman-Davis Delamore: I write programming languages (e.g. CaffeineScript) and app creation platforms (e.g. ArtSuite) and in my day job (GenUI.com) I help visionaries maximize their impact through software. AI use notes: I use Discript and sometimes use their voice-fill tech to touch up small portions of my recording. I also use image generators (like MidJourney) for cover and example images. I'll also use ChatGpt for ideation and idea refinement, but the ideas are all mine. Further, I don't read from a script when I do the recording. Hosted on Acast. See acast.com/privacy for more information.

Episodes

  1. 10/11/2024

    Organic Modular Design

    Most software teams are drowning in complexity—but with your help, we can change that story. In my latest episode of Code and Optimism, I share a little-known secret: modular design, when done right, isn’t just for architects or the early stages of a project. It’s something every developer should be doing every day. I call it Organic Modular Design—a real-world approach where modules grow naturally as the code evolves. Here’s the kicker: if we’re not constantly maximizing modularity—from the project’s inception through the very last code edit—our project’s complexity will spiral out of control. But it doesn’t have to be this way. With a few key principles, we can stop the chaos and keep our codebase healthy and scalable. The payoff? Logarithmic complexity scaling instead of the quadratic-scaling mess that kills most projects. Curious? This episode might just change the way you code forever. As always, I don't claim to have all the answers. Anyone who says they do is either a fool or is selling something. For my part, I'm always trying to learn how to solve problems faster with software, and I'd love to learn with you. Send some feedback my way. Let's talk! Timestamps00:00 Introduction to Modular Design 00:55 Organic Modular Design (OMD) 02:12 The Modular Life Cycle 02:49 DRY Principle and Function Modules 04:43 File and Folder Modules 07:46 Encapsulation and Interface 17:07 Packaging Modules 23:58 Conclusion and Key Takeaways Tool RecommendationsMonorepo tooling: @art-suite/monorepoRelated EpisodesE12: Complexity Fighting Super Powers https://youtu.be/cj81OhXpQCUE13: The 5 Essential Elements of Modular Software Design https://youtu.be/V_mOC8I86icRelated Blog post:The 5 Essential Elements of Modular Software Design https://medium.com/@shanebdavis/the-5-essential-elements-of-modular-software-design-6b333918e543 Hosted on Acast. See acast.com/privacy for more information.

    Organic Modular Design
  2. 08/10/2024

    Modular Testing

    Why You Should Stop Doing Unit and Integration Testing - Embrace Modular Testing Instead! In this episode, I challenge conventional testing methods and present a new approach—modular testing. I argue against traditional unit, integration, and system end-to-end testing, highlighting their inefficiencies and complexities. Instead, I introduce modular testing, where the focus is on testing only the external API of a module. This method aligns with good modular design principles and significantly reduces test maintenance effort. By testing just the API, the process becomes simpler, more agile, and scalable. I provide insights into the five essential elements of modular design and discuss how modular testing can enhance overall software quality while keeping testing efforts manageable. 00:00 Introduction to Automated Testing01:03 Standard Testing - A Review01:43 Unit Testing03:06 Integration Testing04:57 System Testing06:59 Modular Testing08:25 Modular Design Recap12:11 Benefits of Modular Testing16:30 Modular Testing IS Unit Testing, but better...18:40 Modular Testing IS Integration Testing, but better...22:46 System Testing? It's Modules All the Way Down...24:23 Conclusion and Final Thoughts25:48 Outro Related C&O Episodes: E12 - Get Complexity-Fighting Super Powers with Modules https://youtu.be/cj81OhXpQCUE13 - The 5 Essential Elements of Modular Software Design https://youtu.be/V_mOC8I86ic Hosted on Acast. See acast.com/privacy for more information.

    Modular Testing

About

All problems are solvable with enough knowledge -- and software is the most powerful knowledge tool ever invented. Code & Optimism is a show focused on solving problems faster with software. I created this series to discuss topics related to my passion of accelerating our ability to solve problems with software. In this show I'll dive into everything from practical tips to philosophical musings about optimism, solving problems and this wonderful tool called software and how we can become ever better at software engineering. Who is it for? Any Software Engineer that wants to level up, particularly in the roles of tech-leads and architectsAny Visionary, CEO or product-leader tackling challenging problems with software About me, your host, Shane Brinkman-Davis Delamore: I write programming languages (e.g. CaffeineScript) and app creation platforms (e.g. ArtSuite) and in my day job (GenUI.com) I help visionaries maximize their impact through software. AI use notes: I use Discript and sometimes use their voice-fill tech to touch up small portions of my recording. I also use image generators (like MidJourney) for cover and example images. I'll also use ChatGpt for ideation and idea refinement, but the ideas are all mine. Further, I don't read from a script when I do the recording. Hosted on Acast. See acast.com/privacy for more information.