Episode 102: The Essence of Microservices (and Agile) with Scott Shaw

scottshawTony and Craig are at YOW! Conference and in the hallway ambush Scott Shaw, the Director of Technology (Australia) at ThoughtWorks and talk about the state of microservices and Agile:

  • Scott’s YOW! talk “Avoiding Speedbumps on the Road to Microservices
  • Microservices are just a different way to build applications that get away from monoliths
  • Beth Skurrie, Evan Bottcher, Jon Eaves case study at YOW! – “The Odyssey – From Monoliths to Microservices at realestate.com.au
  • Essentials for microservices include Domain Driven Design, security and identity and change management
  • Simon Brown talk at YOW! – “Agility and the Essence of Software Architecture
  • Cloud and infrastructure as code has changed the way we look at applications and have allowed microservices
  • The essence of Agile is the team taking ownership of the business success of whatever it is they are building and keeping that ownership over the longer term
  • Microservices take advantage of Conway’s Law – the teams closest to the systems should own them or change your structure to mimic the systems you want to look after
  • There should be no difference between maintenance and evolution – it is all one of the thing that goes towards the success of the business
  • Adrian Cockcroft defines microservices as “a service-oriented architecture composed of loosely coupled elements that have bounded contexts”
  • Microservices should be no bigger than a concept that fits in your head
  • Sam Newman book “Building Microservices
  • Agile approaches that are evolving include Docker and functional programming languages (especially Scala, Clojure and Go), the importance of craftsmanship and skills
  • Defending the Free Internet
  • ThoughtWorks Technology Radar
  • Microservices in a Nutshell by Martin Fowler and James Lewis

TheAgileRevolution-102 (28 minutes)

Episode 101: The Lean Mindset with Mary and Tom Poppendieck

craig-poppendieckCraig catches up with two luminaries in the Agile and Lean space, Mary and Tom Poppendieck at YOW! Conference to talk about agile, lean, rapid feedback, culture and leadership. The discussion points include:

  • Making the link between lean and software development and discovering that waterfall makes no sense
  • The origins of the first book: Lean Software Development: An Agile Toolkit
  • Agile is not lean in software development, Agile is lean in a delivery organisation
  • How long does it take you to put a single line of code into Production?
  • The manifestation of lean really kicked off in 2010 with both the rise of DevOps and the Lean Startup
  • Delivery organisations versus engineering organisations and the journey of Agile
  • Agile has not well addressed delivering the right stuff, solving the right problem and the architecture of rapid deployment
  • Only two goals at ING: Deliver every two weeks and don’t crash production, resulted in rapid feedback loops
  • “The Penguin and the Leviathan: How Cooperation Triumphs over Self-Interest” by Yochai Benkler
  • Latest book: The Lean Mindset: Ask the Right Questions 
  • Create centres of good culture and let people find it, to survive in a competitive environment you need to do something different
  • Goal is to create an environment where people enjoy the challenge of developing software
  • The critical resource to be managed is not capital but the passion and energy of bright and creative people
  • People don’t resist change, they resist being changed
  • Build a change platform, not a change program
  • YOW! 2014 talk – The Scaling Dilemma
  • The military model – leaders have strategic awareness two levels down and situational awareness one level up and the concept of working leaders

TheAgileRevolution-101 (43 minutes)

Episode 97: 3 Things, 3 Letters (Git, CTO, MBA) with Peter Bell

PeterBellAt YOW! Conference, Craig has a chat with Peter Bell, a contract member of the GitHub training team, co-founder of CTO School and the founder of the Startup CTO Summit series and they talk about approaches to learning Git, building better CTO’s and digital literacy for MBA’s.

  • YOW! 2014 talk “How To Undo Almost Anything with Git
  • Balance the appropriate batch size for communicating with your team the work you have completed versus the appropriate batch size for if you mess up you can easily go back – this is typically 2-10 lines of code to the local repository
  • Most teams just need a master branch that is always releasable and all work done on feature branches that are merged into master
  • training.github.com – training options and a number of great resources
  • Learning Git – not easy to learn on the job, balance of basic how to use Git versus a deeper understanding of how and why it works to avoid messing things up
  • CTO Summits run across the world – help people who lead engineering teams to build better software and build software better
  • CTO School started in New York but now runs around the world as a not-for-profit and has built a CTO network
  • CTO’s deal with the same high level decisions around technology that most of us do, but overlapping with how to build better product and how to build a better engineering team brand that the best technologists would want to to work for
  • Don Reinertsen wrote the best book on how Agile works “The Principles of Product Development Flow” – but it is not very accessible
  • Colombia University Graduate School of Business – teaching MBA and EMBA students how to learn about digital literacy and big data which is really how to hire and manage developers when you are not one which is the best nuggets from Agile and Lean that are accessible for a business audience
  • GitHub – create the repository and make your team collaborators – if you cannot understand the gist of the commit messages you have a problem
  • For the business, business leaders can learn a lot from basic Kanban, user stories, doing the riskiest thing first, using tools like SBE to create meaningful specifications

TheAgileRevolution-97 (31 minutes)

Episode 96: YOW! 2014 Brisbane Vox Pop

YOW_2014_logo-pngClearing out the backlog, Craig and Tony roam the corridors at YOW! 2014 in Brisbane and talk to attendees and old friends and colleagues. Despite Tony’s fetish with pineapples and the fact it took 96 episodes to get a mention of ISO-9126 they talk to:

TheAgileRevolution-96 (28 minutes)

Episode 95: User Story Mapping (Something Something) with Jeff Patton

JeffPattonAfter chasing him across the east coast of Australia, Craig sits down with Jeff Patton at YOW! Conference in Sydney. Along the way they fail to remember the subtitle of Jeff’s “User Story Mapping” book and talk about:

  • Art school dropout to software developer to early Extreme Programming
  • Extreme Programming Explained” by Kent Beck (and we agree the first edition was the better version!)
  • One of the secrets to success is having a great relationship with customers
  • Early Agile colleagues included Eric Evans (“Domain-Driven Design“), Joshua Kerievsky (“Refactoring to Patterns” and Industrial Logic), Rob Mee (Pivotal Labs)
  • The product decisions on what to build matter most
  • YOW! Talk “User Story Mapping: Discover the Whole Story
  • Story Mapping addressed the problem of losing sight of the big picture when building very small things
  • Larry Constantine and Lucy Lockwood “Software For Use” – task modelling was the inspiration for Story Mapping
  • Impact Mapping was inspired by Effect Mapping
  • There is no way to build a story map and not stand in the shoes of someone using your product
  • They were initially called “stories” not “user stories”, because of the way we use them – it’s not a change in the way we write documents, its a change in the way we work
  • As a… I want… So that… is just a conversation starter, and they need titles!
  • Dependencies in story mapping – the map helps you see in slices, using stories helps you build the thing you need now
  • Passionate Product Owner course
  • The hope of the User Story Mapping book is that people think differently about stories
  • Your job in software development is not to build more crap faster, your job is to change the world
  • Jez Humble “Lean Enterprise” – output and impact
  • What we do now builds on an Agile foundation – but it is more than Agile – we are missing an umbrella term for product centricity
  • Raccoon! – Jeff likes it, but it doesn’t work in mountain states as they knock over garbage cans!

    TheAgileRevolution-95 (43 minutes)

Episode 91: Coding The Architecture with Simon Brown

SimonBrownCraig and Tony talk to Simon Brown at the YOW! 2014 conference in Brisbane. SImon is the author of “Software Architecture for Developers”, creator of the C4 software architecture model and Structurizr. We tracked him down after his talk to talk about:

  • YOW! 2014 talk “Agility and the Essence of Software Architecture
  • Create a software guidebook as opposed to big upfront documentation
  • Tony is an old BA apparently… Explains a lot 🙂
  • If you can’t sketch out your architecture, you don’t understand it
  • C4 model was created after observations many archtecture drawings don’t make sense
  • Tony shows his age again by referencing Mr. Squiggle (video)
  • A tiny percentage of architects understand UML – do you teach them UML or teach them something simple?
  • Structurizr replaces drawing boxes in Visio or OmniGraffle, creates the C4 model from Java code and keeps it up to date, other implementations for C# have also been created
  • Suggest updating the diagrams at the end of every storycard
  • C4 starts at system context level, opens up to containers, zooms down to components inside containers and then down to the class level
  • Use the model to understand your microservices strategy versus monoliths (article by Rob Annett)
  • C4 is a drill down per system, does not have much to offer enterprise architects – can add an extra enterprise architecture layer if you wish
  • ArchiMate allows Enterprise Architects to model processes
  • We need Enterprise Architects but architects need to be involved in the day to day architecture including code (REA have a delivery engineering team that they spoke about at YOW!)
  • Roy Osherove’s Elastic Leadership – starting point is one architect but then get more people involved
  • Ask your team what an Architect does and you will probably get conflicting answers, it is a not well defined role
  • System Architect and Tech Lead are essentially the same thing

TheAgileRevolution-91 (28 minutes)

Episode 82: The Heckle Revolution

name_col_sq_200Craig joins Darren Rogan, Ben Morgan and Leigh Appel in a special cross over episode with the Hack && Heckle Podcast to talk Agile and preview the upcoming YOW! conference that will be covered by both podcasts.

This episode has been released simulatenously as 088 The Heckle Revolution by Hack && Heckle.

Discussion points included:

TheAgileRevolution-82 (39 minutes)