Published Sep 3, 2019

Episode 38: Interview James Noble

James Noble delves into the evolving landscape of software development, stressing the strategic edge of component reuse, integrating diverse architectural concerns, and embracing postmodern programming for flexibility and agility. Explore how these concepts fulfill the visions of computing pioneers and adapt to modern engineering needs.
Episode Highlights
Software Engineering Radio - the podcast for professional software developers logo

Popular Clips

Episode Highlights

  • Diverse Concerns

    James Noble emphasizes the importance of integrating diverse concerns in software design, arguing against a singular approach. He draws parallels to postmodernism, suggesting that just as there is no single grand narrative in philosophy, there should not be one dominant way to design software. Instead, each concern, whether it's security, performance, or functionality, should be respected and considered in decision-making.

    What you somehow have to do is treat each of those things with the same respect and then listen to how all these concerns, small stories, little bits in your program, listen to the things they're saying and watch out about the way when you come to make a decision, the way in which these little stories push and pull against each other.

    ---

    Noble also highlights the importance of using the right tools for the right tasks, rather than sticking to one tool for everything, as this can limit creativity and effectiveness 1 2.

       

    Localized Decisions

    Localized decision-making in software design is crucial, according to Noble, as it allows teams to tailor their approaches based on specific contexts and dynamics. He argues that decisions should be made locally, considering the unique needs and expertise of the team, rather than enforcing a one-size-fits-all solution. This approach acknowledges the situatedness of developers and the influence of team dynamics on tool selection and design choices.

    The only viable way we have making these decisions about how we organize things have to be made locally.

    ---

    Noble also touches on the concept of postmodern programming, where past and present coexist, allowing developers to draw from a rich history of resources and ideas 3 4.

Related Episodes