No items found.

Easy Agile Podcast Ep.20 The importance of the Team Retrospective

Listen on
Subscribe to our newsletter

"It was great chatting to Caitlin about the importance of the Team Retrospective in creating a high performing cross-functional team" - Chloe Hall

In this episode, I was joined by Caitlin Mackie - Content Marketing Coordinator at Easy Agile.

In this episode, we spoke about;

  • Looking at the team retrospective as a tool for risk mitigation rather than just another agile ceremony
  • The importance of doing the retrospective on a regular cycle
  • Why you should celebrate the wins?
  • Taking the action items from your team retrospective to your team sprint planning
  • Timeboxing the retrospective
  • Creating a psychologically safe environment for your team retrospective

I hope you enjoy today's episode as much as I did recording it.

Transcript

Chloe Hall:

Hi, everyone. Welcome to the Easy Agile Podcast. I'm Chloe, Marketing Coordinator at Easy Agile, and I'll be your host for today's episode. Before we begin, we'd like to acknowledge the traditional custodians of the land from which I am recording today, the Wodi Wodi people of the Dharawal Speaking nation and pay our respects to elders past, present, and emerging. We extend that same respect to all Aboriginal and to Strait Islander peoples who are tuning in today. So today, we have a bit of a different episode for you. I'm going to be talking with Easy Agile's very own Content Marketing Coordinator, Caitlin Mackie. Caitlin is the Product Owner* of our Brand and Conversions Team*. Now this team is a cross-functional team who have only been together for roughly six months. And within their first few months, as a team, mind you they also had two brand new employees, they worked on a company rebrand.

Chloe Hall:

A new team, a huge task, the possibility of the team being high performing was unlikely at this point in time. So, the team was too new to have already formed that trust, strong relationships, and psychological safety, but somehow they came together and managed to work together, creating a flow of continuous improvement and ship this rebrand. So, I've brought for you today Caitlin onto the podcast to discuss the team's secret for success. Welcome to the podcast, Caitlin.

Caitlin Mackie:

Thanks, Chloe. It's a bit different sitting on this side. I'm used to being in your shoes. I feel [inaudible 00:01:45]. I feel uncomfortable. [inaudible 00:01:46].

Chloe Hall:

Yeah. It's my first time hosting as well, so very strange. Isn't it? How are you feeling today?

Caitlin Mackie:

Yeah. Good. I'm excited. I'm excited to chat about our experience coming together as a cross-functional Agile team, and hopefully share some of the things that worked for us with our listeners.

Chloe Hall:

Yes, I know myself, and I'm sure our audience is very excited to hear what your team's secret to success was. Did you want to start off by telling us what was this big secret that really helped you work together as a team?

Caitlin Mackie:

That's a great question, Chloe. And that's a big question. I'm not sure if there's one key thing, I suppose, it is that ultimate secret source or that one thing that led to the success. I'm sure we all want to hear what that is. I would also love to know if there's just this one key ingredient, but I think something for us, and probably one of the most memorable things that really worked for us, and there was a lot for us to benefit from doing this, was actually doing our retrospectives. So that's probably the first thing that comes to mind when it comes to what led to our success.

Chloe Hall:

Okay. Yeah. In the beginning, why did you start doing the retrospectives?

Caitlin Mackie:

So, we were a new forming team, like you mentioned before, and we seen retrospectives as another Agile ceremony, and we saw other teams doing it and they were having a lot of success from it, so we became to jump on that bandwagon. And I think with being a new forming team, there are so many things that come into play. So, you're trying to figure each other out, how we all like to work and communicate with each other, all of that. And we were the first ever team dedicated to owning and improving our website. And we also knew it was likely that we'd be responsible for designing and launching a rebrand.

Caitlin Mackie:

So when you try and stitch all of that together, and then consider all those elements, we knew that we needed to reserve some time to be able to quickly iterate and call out what works and what doesn't. And what we did understand is that retrospectives are a great opportunity for the whole team to get together and uncover any problematic issues and have an open discussion aimed at really identifying room for improvement, or calling out what's working well, so we can continue to do that. So, I think retros allowed us to understand where we can have the most impact and how to be a really effective cross-functional Agile team.

Chloe Hall:

Wow. That is already so insightful. Yeah, it sounds like the retrospectives really helped you to gain that momentum into finding who your team is, becoming a well-working, high-performing cross-functional team. So, how often were you doing the retro? Were you doing this on a regular cycle, or was it just, "Okay. We have a problem. Some blockers have come up, we need to do a retro"?

Caitlin Mackie:

Yeah. I think initially retro, we kind of viewed retros as this thing where like, "Oh, we've done a few sprints now. We should probably do a retro and just reflect on how those few sprints went." It was kind of like this thing. It was always back of our mind. And we knew we needed to do it, but weren't really sure about the cadence and the way to go about it. So now, we do retros on a Friday morning, which is the last day of our weekly sprint. And then we jump into sprint planning after that. So after bio break as well, so let the team digest everything we talked about in retrospectives. And then we come into sprint planning with all the topics that we're discussed, and we will have a really nice, fresh perspective.

Chloe Hall:

Yeah.

Caitlin Mackie:

So, I think this works really well for us because everything is happening in a timely manner. We've just had a discussion about the best things that happened in the sprint or what worked really well, so you want to make sure you can practice the same behavior in the following, and vice versa for the improvements that you want to make. So, that list of action items that come out of a retrospective provide a really nice contact, context, sorry. And you have them all in mind during sprint planning.

Caitlin Mackie:

So for example, in the previous sprint, it might have come up that you underestimated your story points or there wasn't enough detail on your user stories. So, with each story or task that you are bringing into the sprint, you're then asking the question, is everyone happy with the level of detail? What are we missing? Or we've only story pointed this or two, is it more likely to be a five? So, everything is really fresh in your mind, and I definitely think that helps create momentum. When you've got the whole team working to figure out how you can be more effective with every sprint.

Chloe Hall:

That's such a great point that you just made Caitlin. And I love how going from doing the team retrospective, that you actually can take those action items and go into your sprint and put them into place straight away. It's really good. Otherwise, I feel like if you do the sprint retrospective on the Friday, and you're like, "Okay, these are our action items," get to Monday sprint planning and you're just thinking of the weekend. That [inaudible 00:07:20]

Caitlin Mackie:

Yeah, a hundred percent. Yeah. They're super fresher mind for everyone. So, it might not work for every team, but we find it works really well for us, because we're being really deliberate with how we approach sprint planning.

Chloe Hall:

Yeah. And then with that, I could see how doing the retro, how it could easily go over time, but then your team has sprint planning scheduled after. So, it's like you can't go over time. How have you managed to kind of time box that retrospective?

Caitlin Mackie:

Yeah, that's a really, really good question. And it is on purpose as well that they are scheduled closely together. Som as mentioned above, the discussion you've had in the retrospectives provides a nice momentum going to the sprint planning, but it does mean we have to watch the clock. And initially, this can be quite awkward, because you want to make sure that everyone feels heard and that everybody has the same opportunity to contribute. And I think this responsibility falls on the scrum master, or the product owner, or whoever's facilitating the retrospective to call it out and make sure everyone has the chance to be heard. You'll naturally have people tell the longer story or add a lot of extra context before getting to the point. And then you'll have others that will be a lot more direct. And I'm a lot like the latter. I struggle to get to the point, which doesn't work well when you're trying to time box a retrospective, right?

Chloe Hall:

And I can relate, same personality.

Caitlin Mackie:

Yes. So with this, I think it really comes down to communicating the expectation and the priority from the get go. With our team and with any team, you will want to figure out who you can perform really well and continually improve to exceed expectations and be better and learn and grow together. And I think if you all share that same mindset going into the retrospective and acknowledging that it's a safe


space to have difficult conversations. And as long as you're communicating with empathy, the team knows that it's never anything personal, and it's all in the best interest of the team. And that then helps the less direct communicators, like myself, address their point more concisely and really forces them to be more deliberate and succinct with their communication style.

Caitlin Mackie:

And that's really key to being able to stick to that time box, I think. And it does take practice, because it comes down to creating that psychological safety in your team. But once that's there, it's so much easier to call out when someone's going down a windy track, and bring the focus back and sort of say, "I hear you, what's the action item?" And just become a lot more deliberate.

Chloe Hall:

Wow. I couldn't even imagine like how hard it would be, with the personalities that yourself and I have, just trying to be so direct and get rid of all the fluffy stuff. I mean, look at what it's done to form such an amazing team that we have. So, you mentioned that aspect of psychological safety before. And how do you think being in a new cross-functional team... Only six months together, you had those new employees, do you think you were able to create a psychological safety space at any point?

Caitlin Mackie:

That's another fantastic question. And I feel like, honestly, it would be best to have a team discussion around this. It'd be interesting to hear everybody's perspectives around what contributes to that element of psychological safety and if everybody feels the same. So, I can't speak for the team, but my personal opinion on this or personal experience is that creating an environment of psychological safety really comes down to a mutual trust and respect. And at the end of the day, we all share the same goal. So, we all really, really respect what each other brings to the table and understand how all of these moving parts that we are working on individually all come together to achieve the goal. So, when we're having these open discussions in retros, or not even in retros, just communicating in general really, it's clear that we're asking questions in the best interest of the team and individual motives never come into play, or people aren't just offering their opinion when it's unwarranted or providing feedback, or being overly critical when they weren't asked to do so.

Caitlin Mackie:

So, none of those toxic behaviors happen, because we all respect that whatever piece of work is in question or the topic of discussion, the person owning that work, at the end of the day, is the expert. And we trust them, and we don't doubt each other for a second. And I think the other half of that is that we're also really lucky that if something doesn't go as we planned, we're all there to pick each other up and go again. So, this ties quite nicely into actually one of our values at Easy Agile is commit as a team. And this is all about acknowledging that we grow and succeed when we do it together, and to look after one another and engage with authenticity and courage. Som I may be biased, but I wholeheartedly believe that our team completely embraces that. And there's just such an admiration for what we all bring to the table, and I think that's really key to creating the psychological safety.

Chloe Hall:

I love that your team is really embracing our value, commit as a team and putting it into place, because that's what we're all about at Easy Agile, and it's just so great to see it as well. I think the other thing that


I wanted to address was... So again, during this cross functional team, and you've got design and dev, how do you think retros assisted you in allowing to work out what design and dev needed from each other?

Caitlin Mackie:

For sure. So, for some extra context for our listeners as well, so in our team, we've got two developers, Haley and David, and a designer, Matt and myself, who's in the marketing. So, we're very much a cross-functional little mini team. So, we all have the same goal and that same focus, but we also are all working on these little individual components that we then stitch together. So,, I think... We doing retros regularly. What we were able to identify was a really effective design and development cycle. So, we figured out a rhythm for what one another needed at certain points. For example, something we discovered really early was making sure that we didn't bring design and dev work into the same sprint. We needed to have a completely finished design file before dev starts working on it. And that might sound really obvious, but initially we thought, "Oh, well, if you have a half finished design file, dev can start working on that. And by the time that's done, the rest of the design file will be done."

Caitlin Mackie:

But what we failed to acknowledge is that by doing that, we weren't leaving enough capacity to iterate or address any issues or incorporate feedback on the first part of that design file, or if dev started working on it and design then gets told, "Oh, this part right here, it's not possible," so the designer is back working on the first part. And it just creates a lot of these roadblocks. So in retros, this came up and we were able to raise it and understand that what design needed from dev and what dev needed from design in order to make sure we weren't blockers for each other. And the action item out of the retro is that we all agreed that a design file had to be completely finished before dev picks up the work.

Chloe Hall:

I think it's so great that you were able to identify these blockers early on. Do you think like doing the retro on a weekly reoccurring basis was able to bring up those blockers quickly, or do you think it wouldn't have made a difference?

Caitlin Mackie:

No, definitely. I, a hundred percent, think that retros allowed us to address the blockers in a way more timely and effective manner. And we kind of touched on that before, but yeah, retros let you address the blockers, unpack them, understand why they're happening and what we need to do to make sure they don't happen again. So, for sure.

Chloe Hall:

Yeah. Yeah. I guess I want to talk a little bit now about the wins, the very exciting part of the retro, the part that we all love. So, how important do you think the wins are within the retro?

Caitlin Mackie:

So important. So, so, so important. It's like, when you achieve something epic as a team, you have to call it out. Celebrate all the wins, big, small. Some weeks will be better than others, but embrace that glass half full mentality. And there's always something to be proud of and celebrate, so call it out amongst


each other, share it with the whole company, publicly recognize it. Yeah, I think it's so important to embrace the wins. It just sort of creates a really positive atmosphere when you're in the team, makes everybody feel heard and recognized for their really positive contribution that they're making. And I think a big thing here as well is that if you've achieved something epic as a team, it's helpful for other teams to hear that as well, right? You figured out a cool new way to do something, share it. If it helped you as a team, it's most likely going to help another team.

Caitlin Mackie:

So I think celebrating the wins isn't even just reserved for work stuff either, right? If somebody's doing something amazing outside of work or hit a personal goal, get behind it.

Chloe Hall:

Yeah.

Caitlin Mackie:

To celebrate all the wins always.

Chloe Hall:

Yeah. And I think it's so good how you mentioned that it's vital to celebrate the wins of someone's personal life as well, because at the end of the day, we're all human beings. Yes,, we come to work, but we do have that personal element. And knowing what someone's like outside of work as well is an element to creating that psychological safe space and team bonding, which is so vital to having a good team at the end of the day. Yeah.

Caitlin Mackie:

Yeah, a hundred percent. Yeah, you hit the nail in the head with that. We talked about psychological safety before, and I definitely think incorporating that, acknowledging that, yeah, we are ourselves at work, but we also have a whole other life outside of that too, so just being mindful of that and just cheering each other on all the time. That's what we got to do, be each other's biggest cheerleaders.

Chloe Hall:

Yeah, exactly. That's the real key to success. Isn't it?

Caitlin Mackie:

Yeah, that's it. That's the key.

Chloe Hall:

So, you've been working really well as a new cross functional, high performing Agile team. How do you think... What is your future process for retros?

Caitlin Mackie:

We will for sure continue to do them weekly. It's part of the Agile manifesto, but we want to focus on responding to change, and I think retros really allow us to do that. It's beneficial and really valuable for


the team. And when you can set the team up for success, you're going to see that positive impact that has across the organization as a whole. So yeah, we've found a nice cadence and a rhythm that works for us. So, if it ain't broke, don't fix it.

Chloe Hall:

Yeah.

Caitlin Mackie:

Is that what they say? Is that the saying?

Chloe Hall:

I don't know. I think so, but let's just go with it. [inaudible 00:19:02], don't fix it.

Caitlin Mackie:

There we go. Yeah.

Chloe Hall:

You can quote Caitlin Mackie on that one.

Caitlin Mackie:

Quote me on that.

Chloe Hall:

Okay, Caitlin. Well, there's just one final thing that I want to address today. I thought end of the podcast, let's just have a little bit of fun, and we're going to do a little snippet of Caitlin's hot tip. So, for the audience listening, I want you to think of something that they can take away from this episode, an action item that they can start doing within their teams today. Take it away.

Caitlin Mackie:

Okay. Okay. All right. I would say always have the retrospective. Don't skip it. Even if there's minimal items to discuss, new things will always come up. And you have to regularly provide ways for the team to share their thoughts. And I'll leave you with, always promote positive dialogue and show value and appreciation for team ideas and each other. That's my-

Chloe Hall:

I love that.

Caitlin Mackie:

That's my hot tip.

Chloe Hall:


Thanks, Caitlin. Thanks for sharing. I really like how you said always promote positive dialogue. I think that is so great. Yeah. Well, thanks, Caitlin. Thanks for jumping on the podcast today and-

Caitlin Mackie:

Thanks, Chloe.

Chloe Hall:

Yeah. Sharing your team's experience with retrospectives and new cross functional team. It's been really nice hearing from you, and there's so much that our audience can take away from what you've shared with us today. And I hope that we've truly inspired everybody listening to get out there and implement the team retrospective on a regular basis. So, yeah, thank you.

Caitlin Mackie:

Thank you so much, Chloe. Thanks for having me. It was fun, fun to be on this side. And I hope everyone enjoys this episode.

Chloe Hall:

Thanks, Caitlin.

Caitlin Mackie:

Thanks. Bye.

Related Episodes

  • Podcast

    Easy Agile Podcast Ep.12 Observations on Observability

    On this episode of The Easy Agile Podcast, tune in to hear developers Angad, Jared, Jess and Jordan, as they share their thoughts on observability.  

    Wollongong has a thriving and supportive tech community and in this episode we have brought together some of our locally based Developers from Siligong Valley for a round table chat on all things observability.

    💥 What is observability?
    💥 How can you improve observability?
    💥 What's the end goal?

    Angad Sethi

    "This was a great episode to be a part of! Jess and Jordan shared some really interesting points on the newest tech buzzword - observability""

    Be sure to subscribe, enjoy the episode 🎧

    Transcript

    Jared Kells:

    Welcome everybody to the Easy Agile podcast. My name's Jared Kells, and I'm a developer here at Easy Agile. Before we begin, Easy Agile would like to acknowledge the traditional custodians of the land from which we broadcast today, the Wodiwodi people of the Dharawal nation, and pay our respects to elders past, present and emerging, and extend that same respect to any aboriginal people listening with us today.

    Jared Kells:

    So today's podcast is a bit of a technical one. It says on my run sheet here that we're here to talk about some hot topics for engineers in the IT sector. How exciting that we've got a couple of primarily front end engineers and Angad and I are going to share some front end technical stuff and Jess and Jordan are going to be talking a bit about observability. So we'll start by introductions. So I'll pass it over to Jess.

    Jess Belliveau:

    Cool. Thanks Jared. Thanks for having me one as well. So yeah, my name's Jess Belliveau. I work for Apptio as an infrastructure engineer. Yeah, Jordan?

    Jordan Simonovski:

    I'm Jordan Simonovski. I work as a systems engineer in the observability team at Atlassian. I'm a bit of a jack of all trades, tech wise. But yeah, working on building out some pretty beefy systems to handle all of our data at Atlassian at the moment. So, that's fun.

    Angad Sethi:

    Hello everyone. I'm Angad. I'm working for Easy Agile as a software dev. Nothing fancy like you guys.

    Jared Kells:

    Nothing fancy!

    Jess Belliveau:

    Don't sell yourself short.

    Jared Kells:

    Yeah, I'll say. Yeah, so my name's Jared, and yeah, senior developer at Easy Agile, working on our apps. So mainly, I work on programs and road maps. And yeah, they're front end JavaScript heavy apps. So that's where our experience is. I've heard about this thing called observability, which I think is just logs and stuff, right?

    Jess Belliveau:

    Yeah, yeah. That's it, we'll wrap up!

    Jared Kells:

    Podcast over! Tell us about observability.

    Jess Belliveau:

    Yeah okay, I'll, yeah. Well, I thought first I'd do a little thing of why observability, why we talk about this and sort of for people listening, how we got here. We had a little chat before we started recording to try and feel out something that might interest a broader audience that maybe people don't know a lot about. And there's a lot of movements in the broad IT scope, I guess, that you could talk about. There's so many different things now that are just blowing up. Observability is something that's been a hot topic for a couple of years now. And it's something that's a core part of my job and Jordan's job as well. So it's something easy for us to talk about and it's something that you can give an introduction to without getting too technical. So we don't want to get down. This is something that you can go really deep into the weeds, so we picked it as something that hopefully we can explain to you both at a level that might interest the people at home listening as well.

    Jess Belliveau:

    Jordan and I figured out these four bullet points that we wanted to cover, and maybe I can do the little overview of that, and then I can make Jordan cover the first bullet point, just throw him straight under the bus.

    Jordan Simonovski:

    Okay!

    Jess Belliveau:

    So we thought we'd try and describe to you, first of all, what is observability. Because that's a pretty, the term doesn't give you much of what it is. It gives you a little hint, but it'll be good to base line set what are we talking about when we say what is observability. And then why would a development team want observability? Why would a company want observability? Sort of high level, what sort of benefits you get out of it and who may need it, which is a big thing. You can get caught up in these industry hot buzz words and commit to stuff that you might not need, or that sort of stuff.

    Jared Kells:

    Yep.

    Jordan Simonovski:

    Yep.

    Jess Belliveau:

    We thought we'd talk about some easy wins that you get with observability. So some of the real basic stuff you can try and get, and what advantages you get from it. And then we just thought because we're no going to try and get too deep, we could just give a few pointers to some websites and some YouTube talks for further reading that people want to do, and go from there. So yeah, Jordan you want to-

    Jared Kells:

    Sounds good.

    Jess Belliveau:

    Yeah. I hopefully, hopefully. We'll see how this goes! And I guess if you guys have questions as well, that's something we should, if there's stuff that you think we don't cover or that you want to know more, ask away.

    Jordan Simonovski:

    I guess to start with observability, it's a topic I get really excited about, because as someone that's been involved in the dev ops and SRE space for so long, observability's come along and promises to close the loop or close a feedback loop on software delivery. And it feels like it's something we don't really have at the moment. And I get that observability maybe sounds new and shiny, but I think the term itself exists to maybe differentiate itself from what's currently out there. A lot of us working in tech know about monitoring and the loading and things like that. And I think they serve their own purpose and they're not in any way obsolete either. Things like traditional monitoring tools. But observability's come along as a way to understand, I think, the overwhelmingly complex systems that we're building at the moment. A lot of companies are probably moving towards some kind of complicated distributed systems architecture, microservices, other buzz words.

    Jordan Simonovski:

    But even for things like a traditional kind of monolith. Observability really serves to help us ask new questions from our systems. So the way it tends to get explained is monitoring exits for our known unknowns. With seniority comes the ability to predict, almost, in what way your systems will fail. So you'll know. The longer you're in the industry, you know this, like a Java server fails in x, y, z amount of ways, so we should probably monitor our JVM heap, or whatever it is.

    Jared Kells:

    I was going to say that!

    Jordan Simonovski:

    I'll try not to get too much into-

    Jared Kells:

    Runs out of memory!

    Jordan Simonovski:

    Yeah. So that's something that you're expecting to fail at some point. And that's something that you can consider a known unknown. But then, the promise of observability is that we should be shipping enough data to be able to ask new questions. So the way it tends to get talked about, you see, it's an unknown unknown of our system, that we want to find out about and ask new questions from. And that's where I think observability gets introduced, to answer these questions. Is that a good enough answer? You want me to go any further into detail about this stuff? I can talk all day about this.

    Jared Kells:

    Is it like a [crosstalk 00:08:05]. So just to repeat it back to you, see if I've understood. Is it kind of like if I've got a, traditionally with a Java app, I might log memories. It's because I know JVM's run out of memory and that's a thing that I monitor, but observability is more broad, like going almost over the top with what you monitor and log so that you can-

    Jordan Simonovski:

    Yeah. And I wouldn't necessarily say it's going over the top. I think it's maybe adding a bit more context to your data. So if any of you have worked with traces before, observability is very similar to the way traces work and just builds on top of the premise of traces, I guess. So you're creating these events, and these events are different transactions that could be happening in your applications, usually submitting some kind of request. And with that request, you can add a whole bunch of context to it. You can add which server this might be running on, which time zone. All of these additional and all the exciters. You can throw in user agency into there if you want to. The idea of observability is that you're not necessarily constrained by high cardinality data. High cardinality data being data sets that can change quite largely, in terms of the kinds of data they represent, or the combinations of data sets that you could have.

    Jordan Simonovski:

    So if you want shipping metrics on something, on a per user basis and you want to look at how different users are affected by things, that would be considered a high cardinality metric. And a lot of the time it's not something that traditional monitoring companies or metric providers can really give you as a service. That's where you'll start paying insanely huge bills on things like Datadog or whatever it is, because they're now being considered new metrics. Whereas observability, we try and store our data and query it in a way that we can store pretty vast data sets and say, "Cool. We have errors coming from these kinds of users." And you can start to build up correlations on certain things there. You can find out that users from a particular time zone or a particular device would only be experiencing that error. And from there, you can start building up, I think, better ways of understanding how a particular change might have broken things. Or some particular edge cases that you otherwise couldn't pick up on with something like CPU or memory monitoring.

    Angad Sethi:

    Would it be fair to say-

    Jared Kells:

    Yeah. It's [crosstalk 00:11:02].

    Angad Sethi:

    Oh, sorry Jared.

    Jared Kells:

    No you can-

    Angad Sethi:

    Would it be fair to say that, so, observability is basically a set of principles or a way to find the unknown unknowns?

    Jordan Simonovski:

    Yeah.

    Angad Sethi:

    Oh.

    Jess Belliveau:

    And better equip you to find, one of the things I find is a lot of people think, you get caught up in thinking observability is a thing that you can deploy and have and tick a box, but I like your choice of word of it being a set of principles or best practices. It's sort of giving you some guidance around these, having good logging coming out of your application. So structured logs. So you're always getting the same log format that you can look at. Tracing, which Jordan talked a little bit about. So giving you that ability to follow how a user is interacting with all the different microservices and possibly seeing where things are going wrong, and metrics as well. So the good thing with metrics is we're turning things a bit around and trying to make an application, instead of doing, and I don't want to get too technical, black box monitoring, where we're on the outside, trying to peer in with probes and checks like that. But the idea with metrics is the application is actually emitting these metrics to inform us what state it is in, thereby making it more observable.

    Jess Belliveau:

    Yeah, I like your choice of words there, Angad, that it's like these practices, this sort of guide of where to go, which probably leads into this next point of why would a team want to implement it. If you want to start again, Jordan?

    Jordan Simonovski:

    Yeah, I can start. And I'll give you a bit more time to speak as well, Jess in this one. I won't rant as much.

    Jess Belliveau:

    Oh, I didn't sign up for that!

    Jordan Simonovski:

    I think why teams would want it is because, it really depends on your organization and, I guess, the size of the teams you're working in. Most of the time, I would probably say you don't want to build observability yourself in house. It is something that you can, observability capabilities themselves, you won't achieve it just by buying a thing, like you can't buy dev ops, you can't buy Agile, you can't buy observability either.

    Jared Kells:

    Hang on, hang on. It says on my run sheet to promote Easy Agile, so that sounds like a good segue-

    Jess Belliveau:

    Unless you want to buy it. If you do want to buy Agile, the [crosstalk 00:13:55] in the marketplace.

    Jared Kells:

    Yeah, sorry, sorry, yeah! Go on.

    Jordan Simonovski:

    You can buy tools that make your life a lot easier, and there are a lot of things out there already which do stuff for people and do surface really interesting data that people might want to look at. I think there are a couple of start ups like LightStep and Honeycomb, which give you a really intuitive way of understanding your data in production. But why you would need this kind of stuff is that you want to know the state of your systems at any given point in time, and to build, I guess, good operational hygiene and good production excellence, I guess as Liz Fong-Jones would put it, is you need to be able to close that feedback loop. We have a whole bunch of tools already. So we have CICD systems in place. We have feature flags now, which help us, I guess, decouple deployments from releases. You can deploy code without actually releasing code, and you can actually give that power to your PM's now if you want to, with feature flags, which is great.

    Jordan Simonovski:

    But what you can also do now is completely close this loop, and as you're deploying an application, you can say, "I want to canary this deployment. I want to deploy this to 10% of my users, maybe users who are opted in for Beta releases or something of our application, and you can actually look at how that's performing before you release it to a wider audience. So it does make deployments a lot safer. It does give you a better understanding of how you're affecting users as well. And there are a whole bunch of tools that you can use to determine this stuff as well. So if you're looking at how a lot of companies are doing SRE at the moment, or understanding what reliable looks like for their applications, you have things like SLO's in place as well. And SLO's-

    Jared Kells:

    What's an SLO?

    Jordan Simonovski:

    They're all tied to user experiences. So you're saying, "Can my user perform this particular interaction?" And if you can effectively measure that and know how users are being affected by the changes you're making, you can easily make decisions around whether or not you continue shipping features or if you drop everything and work on reliability to make sure your users aren't affected. So it's this very user centric approach to doing things. I think in terms of closing the loop, observability gives us that data to say, "Yes, this is how users are being affected. This is how, I guess the 99th percentile of our users are fine, but we have 1% who are having adverse issues with our application." And you can really pinpoint stuff from there and say, "Cool. Users with this particular browser or this particular, or where we've deployed this app to," let's say if you have a global deployment of some kind, you've deployed to an island first, because you don't really care what happens to them. You can say, "Oh, we've actually broken stuff for them." And you can roll it back before you impact 100% of your users.

    Jared Kells:

    Yeah. I liked what you said about the test. I forgot the acronym, but actually testing the end user behavior. That's kind of exciting to me, because we have all these metrics that are a bit useless. They're cool, "Oh, it's using 1% CPU like it always is, now I don't really care," but can a user open up the app and drag an issue around? It's like-

    Jess Belliveau:

    Yeah, that's a really great example, right?

    Jared Kells:

    That's what I really care about.

    Jess Belliveau:

    The 1% CPU thing, you could look at a CPU usage graph and see a deployment, and the CPU usage doesn't change. Is everything healthy or not? You don't know, whereas if you're getting that deeper level info of the user interactions, you could be using 1% CPU to serve HTTP500 errors to the 80% of the customer base, sort of thing.

    Angad Sethi:

    How do you do that? The SLO's bit, how do you know a user can log in and drag an issue?

    Jordan Simonovski:

    Yeah. I think that would come with good instrumenting-

    Angad Sethi:

    Good question?

    Jordan Simonovski:

    Yeah, it comes down to actually keeping observability in mind when you are developing new features, the same way you would think about logging a particular thing in your code as you're writing, or writing test for your code, as you're writing code as well. You want to think about how you can instrument something and how you can understand how this particular feature is working in production. Because I think as a lot of Agile and dev ops principles are telling us now is that we do want our applications in production. And as developers, our responsibilities don't end when we deploy something. Our responsibility as a developer ends when we've provided value to the business. And you need a way of understanding that you're actually doing that. And that's where, I guess, you do nee do think about observability with a lot of this stuff, and actually measuring your success metrics. So if you do know that your application is successful if your user can log in and drag stuff around, then that's exactly what you want to measure.

    Jared Kells:

    I think that we have to build-

    Jordan Simonovski:

    Yeah?

    Jared Kells:

    Oh, sorry Jordan.

    Jordan Simonovski:

    No, you go.

    Jared Kells:

    I was just going to say we have to build our apps with integration testing in mind already. So doing browser based tests around new features. So it would be about building features with that and the same thing in mind but for testing and production.

    Jess Belliveau:

    Yeah and the actual how, the actual writing code part, there's this really great project, the open telemetry project, which provides all these sort of API's and SDK's that developers can consume, and it's vendor agnostic. So when you talk about the how, like, "How do I do this? How do I instrument things?" Or, "How do I emit metrics?" They provide all these helpful libraries and includes that you can have, because the last thing you want to do is have to roll this custom solution, because you're then just adding to your technical debt. You're trying to make things easier, but you're then relying on, "Well I need to keep Jared Kells employed, because he wrote our log in engine and no one else knows how it works.

    Jess Belliveau:

    And then the other thing that comes to mind with something like open telemetry as well, and we talked a bit about Datadog. So Datadog is a SaaS vendor that specializes in observability. And you would push your metrics and your logs and your traces to them and they give you a UI to display. If you choose something that's vendor agnostic, let's just use the example of Easy Agile. Let's say they start Datadog and then in six months time, we don't want to use Datadog anymore, we want to use SignalFx or whatever the Splunk one is now.

    Jordan Simonovski:

    I think NorthX.

    Jess Belliveau:

    Yeah. You can change your end point, push your same metrics and all that sort of stuff, maybe with a few little tweaks, but the idea is you don't want to tie in to a single thing.

    Jordan Simonovski:

    Your data structures remain the same.

    Jess Belliveau:

    Yeah. So that you could almost do it seamlessly without the developers knowing. There's even companies in the past that I think have pushed to multiple vendors. So you could be consuming vendor A and then you want to do a proof of concept with vendor B to see what the experience is like and you just push your data there as well.

    Jared Kells:

    Yeah. I think our coupling to Datadog will be I all the dashboards and stuff that we've made. It's not so much the data.

    Jess Belliveau:

    Yeah. That's sort of the big up sell, right. It's how you interact. That's where they want to get their hooks in, is making it easier for you to interpret that data and manipulate it to meet your needs and that sort of stuff.

    Jordan Simonovski:

    Observability suggests dashboards, right?

    Jess Belliveau:

    Yeah, perhaps. You used this term as well, Jordan, "production excellence." And when we talk about who needs observability, I was thinking a bit about that while you were talking. And for me, production excellence, or in Apptio we call it production readiness, operational readiness and that sort of stuff is like we want to deploy something to production like what sort of best practices do we want to have in place before we do that? And I think observability is a real great idea, because it's helping you in the future. You don't know what problems you're going to have down the line, but you're equipping your teams to be able to respond to those problems easily. Whereas, we've all probably been there, we've deployed code of production and we have no observability, we have a huge outage. What went wrong? Well, no one knows, but we know this is the fix, and it's hard to learn from that, or you have to learn from that I guess, and protect the user against future stuff, yeah.

    Jess Belliveau:

    When I think easy wins for observability, the first thing that really comes to mind is this whole idea of structured logging, which is really this idea that your application is you're logging, first of all. Quite important as a baseline starting point, but then you have a structured log format which lets you programmatically pass the logs as well. If you go back in time, maybe logging just looked like plain text with a line, with a timestamp, an error message. Whatever the developer decided to write to the standard out, or to the error file or something like that. Now I think there's a general move to having JSON, an actual formatted blob with that known structure so you can look into it. Tracing's probably not an easy win. That's a little bit harder. You can implement it with open telemetry and libraries and stuff. Requires a bit more understanding of your code base, I guess, and where you want tracing to fire, and that sort of stuff, parsing context through, things like that.

    Jordan Simonovski:

    I think Atlassian, when you probably just want to know that everything is okay. At a fairly superficial level. Maybe you just want to do some kind of up time on a trend. And then as, I guess, your code might get more complex or your product gets a bit more complex, you can start adding things in there. But I think actually knowing or surfacing the things you know might break. Those would probably be your quickest wins.

    Jess Belliveau:

    Well, let's mention some things for further reading. If you want to go get the whole picture of the whole, real observability started to get a lot of movement out of the Google SRE book from a few years ago. The Google SRE stuff covers the whole gamut of their soak reliability engineering practice, and observability is a portion of that, there's some great chapters on that. O'Reilly has an observability book, I think, just dedicated to observability now.

    Jordan Simonovski:

    I think that's still in early release, if people want to google chapters.

    Jess Belliveau:

    The open telemetry stuff, we'll drop a link to that I think that's really handy to know.

    Angad Sethi:

    From [inaudible 00:26:12], which is my perspective, as a developer, say I wanted to introduce cornflake use Datadog at Easy Agile. Not very familiar, I'm not very comfortable with it. I know how to navigate, but what's a quick way for me to get started on introducing observability? Sorry to lock my direct job or at my workplace.

    Jordan Simonovski:

    I would lean, I could be biased here. Jess correct me or give your opinion on this, I would lean heavily towards SLO's for this. And you can have a quick read in the SRE-

    Jess Belliveau:

    What does SLO stand for, Jordan?

    Jordan Simonovski:

    Okay, sorry. Buzz words! SLO is a service level objective, not to be confused with service level agreement. An agreement itself is contractual and you can pay people money if you do breach those. An SLO is something you set in your team and you have a target of reliability, because we are getting to the point where we understand that all systems at any point in time are in some kind of degraded state. And yeah, reliability isn't necessarily binary, it's not unreliable or reliable. Most of the time, it's mostly reliable and this gives us a better shared language, I guess. And you can have a read in the SRE handbook by Google, which is free online, which gives you a pretty good understanding of Datadog.

    Jordan Simonovski:

    I think the last time I used it had a SLO offering. But I think like I was mentioning earlier, you set an SLO on particular functionalities or features of your application. You're saying, "My user can do this 99% of the time," or whatever other reliability target you might want to set. I wouldn't recommend five nines of reliability. You'll probably burn yourself out trying to get there. And you have this target set for yourself. And you know exactly what you're measuring, you're measuring particular types of functionality. And you know when you do breach these, users are being affected. And that's where you can actually start thinking about observability. You can think about, "What other features are we implementing that we can start to measure?" Or, "What user facing things are we implementing that we can start to measure?"

    Jordan Simonovski:

    Other things you could probably look at are, I think they're all covered in the book anyway, data freshness in a way. You want to make sure the data users are being displayed is relatively fresh. You don't want them looking at stale data, so you can look at measuring things like that as well. But you can pretty much break it down into most functionalities of a website. It's no longer like a ping check, that you're just saying, "Yes, HTTP, okay. My application is fine." You're saying, "My users are actually being affected by things not working." And you can start measuring things from there. And that should give you a better understanding, or a better idea, at least, of where to start with what you want to measure and ow you want to measure it. That would be my opinion on where to get started with this if you do want to introduce it.

    Jared Kells:

    We're going to talk a little bit about state and how with some of these, like our very front end heavy applications that we're building, so the applications we build just basically run inside the browser and the traditional state as you would think about it, is just pulling a very simple API that writes some things into the database with some authentication, and that sort of stuff. So in terms of reliability of the services, it's really reliable. Those tiny API's just never have problems, because it's just so simple. And well, they've got plenty of monitoring around it. But all our state is actually, when you say, "Observe the state of the system," for the most part, that's state in a browser. And how do we get observability into that?

    Jess Belliveau:

    A big thing is really, there's not one thing fits all as well. When we talk about the SLO stuff as well, it's understanding what is important to not so much maybe your company but your team as well. If you're delivering this product, what's important to you specifically? So one SLO that might work for me at Apptio probably isn't going to work for Easy Agile. This is really pushing my knowledge, as well, of front end stuff, but when we say we want to observe the state as well, we don't necessarily mean specifically just the state. You could want to understand with each one of those API's when it's firing, what the request response time is for that API firing. So that might be an important metric. So you can start to see if one of those APIs is introducing latency, and so your user experience is degraded. Like, "Hey when we were on release three, when users were interacting with our service here, it would respond in this percentile latency. We've done a release and since then, now we're seeing it's now in this percentile. Have we degraded performance performance?" Users might not be complaining, but that could be something that the team then can look into, add to a sprint. Hey, I'm using Agile terms now. Watch out!

    Jared Kells:

    That's a really good example, Jess. Performance issues for us are typically not an API that's performing poorly. It's something in this very complicated front end application is not running in the same order as it used to, or there's some complex interaction we didn't think of, so it's requesting more data than expected. The APIs are returning. They're never slow, for the most part, but we have performance regressions that we may not know about without seeing them or investigating them. The observability is really at the individual user's browser level. That makes sense? I want to know how long did it take for this particular interaction to happen.

    Jess Belliveau:

    Yeah. I've never done that sort of side of things. As well, the other thing I guess, you could potentially be impacted in as well as then, you're dealing with end user manifestations as well. You could perceive-

    Jared Kells:

    Yeah sure.

    Jess Belliveau:

    ... Greater performance on their laptop or something, or their ISP or that sort of stuff. It'd be really hard to make sure you're not getting noise from that sort of thing as well.

    Jordan Simonovski:

    Yeah. There are tools like Sentry, I guess, which do exist to give you a bit more of an understanding what's happening on your front end. The way Sentry tends to work with JavaScript, is you'll upload a minified map of your JS to Sentry, deploy your code and then if something does break or work in a fairly unexpected way, that tends to get surfaced with Sentry will tell you exactly which line this kind of stuff is happening on, and it's a really cool tool for that company stuff. I don't know if it'd give you the right type of insights, I think, in terms of performance or-

    Jared Kells:

    Yeah, we use a similar tool and it does work for crashes and that sort of thing. And on the observability front, we log actions like state mutations in side the front end, not the actual state change, but just labels that represent that you updated an issue summary or you clicked this button, that sort of thing, and we send those with our crash reports. And it's super helpful having that sort of observability. So I think I know what you guys are talking about. But I'm just [crosstalk 00:35:25], yeah.

    Jess Belliveau:

    Yeah, that's almost like, I guess, a form of tracing. For me and Jordan, when we talk about tracing, we might be thinking about 12 different microservices sitting in AWS that are all interacting, whereas you're more shifting that. That's sort of all stuff in the browser interacting and just having that history of this is what the user did and how they've ended up-

    Jared Kells:

    In that state.

    Jess Belliveau:

    In that state, yeah.

    Jordan Simonovski:

    I guess even if you don't have a lot of microservices, if you're talking about particular, like you're saying for the most part your API requests are fine but sometimes you have particularly large payloads-

    Jared Kells:

    We actually have to monitor, I don't know, maybe you can help with this, we actually should be monitoring maybe who we're integrating with. It's actually much more likely that we'll have a performance issue on a Xero API rather than... We don't see it, the browser sees it as well, which is-

    Jordan Simonovski:

    Yeah, and tracing does solve all of those regressions for you. Most tracing libraries, like if you're running Node apps or whatever on your backend. I can just tell you about Node, because I probably have the most experience writing Node stuff. You pretty much just drop in Didi trace, which is a Datadog library for tracing into your backend and your hook itself into all of, I think, the common libraries that you'll tend to work with, I think. Like if you're working for express or for a lot of just HADP libraries, as well as a few AWS services, it will kind of hook itself into that. And you can actually pinpoint. It will kind of show you on this pretty cool service map exactly which services you're interacting with and where you might be experiencing a regression. And I think traces do serve to surface that information, which is cool. So that could be something worth investigating.

    Jess Belliveau:

    It's funny. This is a little bit unrelated to observability, but you've just made me think a bit more about how you're saying you're reliant on third party providers as well. And something I think that's really important that sometimes gets missed is so many of us today are relying on third party providers, like AWS is a huge thing. A lot of people writing apps that require AWS services. And I think a lot of the time, people just assume AWS or Jira or whatever, is 100% up time, always available. And they don't write their code in such a way that deals with failures. And I think it's super important. So many times now I've seen people using the AWS API and they don't implement exponential back off. And so they're basically trying to hit the AWS API, it fails or they might get throttled, for example, and then they just go into a fail state and throw an error to the user. But you could potentially improve that user experience, have a retry mechanism automatically built in and that sort of stuff. It doesn't really tie into the observability thing, but it's something.

    Jared Kells:

    And the users don't care, right? No one cares if it's an AWS problem. It's your problem, right, your app is too slow.

    Jess Belliveau:

    Well, they're using your app. Exactly right. It reflects on you sort of thing, so it's in your interest to guard against an upstream failure, or at least inform the user when it's that case. Yeah.

    Jared Kells:

    Well, I think we're going to have to call it, this podcast, because it was an hour ago. We had instructed max 45 minutes.

    Jess Belliveau:

    We could just keep going. We might need a part two! Maybe we can request [cross talk 00:39:21].

    Jared Kells:

    Maybe! Yeah.

    Jess Belliveau:

    Or we'll just start our own podcast! Yeah.

    Angad Sethi:

    So what were your biggest learnings today, given it's been Angad and I are just learning about observability, Angad what was your biggest learning today about observability? My biggest learning was that observability does not equal Datadog. No, sorry! It was just very fascinating to learn about quantifying the known unknowns. I don't know if that's a good takeaway, but...

    Jess Belliveau:

    Any takeaway is a good takeaway! What about you, Jared?

    Jared Kells:

    I think, because I we were going to talk about state management, and part of it was how we have this ability, at the moment to, the way our front ends are architected, we can capture the state of the app and get a customer to send us their state, basically. And we can load it into our app and just see exactly how it was, just the way our state's designed. But what might be even cooler is to build maybe some observability into that front end for support. I'm thinking instead of just having, we have this button to send us out your support information that sends us a bunch of the state, but instead of console logging to the browser log, we could be console logging, logging in our front end somewhere that when they click, "send support information," our customers should be sending us the actions that they performed.

    Jared Kells:

    Like, "Hey there's a bug, send us your support information." It doesn't have to be a third party service collecting this observability stuff. We could just build into our... So that's what I'm thinking about.

    Jess Belliveau:

    Yeah, for sure. It'll probably be a lot less intrusive, as well, as some of the third party stuff that I've seen around.

    Jared Kells:

    Yeah. It's pretty hard with some of these integrations, especially if you're developing apps that get run behind a firewall.

    Jess Belliveau:

    Yeah

    Jared Kells:

    You can't just talk to some of these third parties. So yeah, it's cool though. It's really interesting.

    Jess Belliveau:

    Well, I hope someone out there listening has learned something, and Jordan and I will send some links through, and we can add them, hopefully, to the show notes or something so people can do some more reading and...

    Jared Kells:

    All thanks!

    Jess Belliveau:

    Thanks for having us, yeah.

    Jared Kells:

    Thanks all for your time, and thanks everybody for listening.

    Jordan Simonovski:

    Thanks everyone.

    Angad Sethi:

    That was [inaudible 00:41:55].

    Jess Belliveau:

    Tune in next week!

  • Podcast

    Easy Agile Podcast Ep.6 Chris Stone, The Virtual Agile Coach

    Sean Blake

    What a great conversation this was with Chris Stone, The Virtual Agile Coach!

    Chris shared some insights into the importance of sharing and de-stigmatising failures, looking after your own mental health, and why work shouldn't be stale.

    Some other areas we discussed were, why you should spend time in self reflection - consider a solospective? and asking "how did that feel?" when working as a team.

    "I really enjoyed our chat. Plenty to ponder over the silly season, and set yourself up with a fresh perspective for 2021. Enjoy and Merry Christmas!"

    Transcript

    Sean Blake:

    Hello, and welcome to another episode of the Easy Agile Podcast. It's Sean Blake here, your host today, and we're joined by Chris stone. Chris is going to be a really interesting guest. I really enjoyed recording this episode. Chris is the Virtual Agile Coach. He's an agility lead. People First champion blogger, speaker and trainer, who always seeks to gamify content and create immersive Agile experiences. An Agile convert all the way from back in 2012, Chris has since sought to broaden his experiences, escape his echo chamber and to fearlessly challenge dysfunction and ask the difficult questions. My key takeaways from this episode were; it's okay to share your failures, the importance of recognizing our mental health, why it's important that work doesn't become stale, how to de-stigmatize failure, the importance of selfreflection and holding many self retrospectives, and the origins of the word deadline. You'll be really interested to find out where that word came from and why it's a little bit troubling. So here we go. We're about to jump in. Here's the episode with Chris stone on the Easy Agile Podcast. Chris, thanks so much for joining us and spending some time with us.

    Chris Stone:

    Hey there Sean, thank you for having me. It's a pleasure.

    Sean Blake:

    I have to mention you've got a really funky Christmas sweater on today. And for those people listening on the audio, they might have to jump over to YouTube just for a section to check out this sweater. Can you tell us a bit about where that came from?

    Chris Stone:

    So this sweater was a gift. It's a Green Bay Packers, Chris, Ugly Christmas Jumpers, what they call it. And I'm a fan of the Green Bay Packers, I've been out there a few times to Wisconsin, Green Bay, Wisconsin. It's so cold out there in fact. When you're holding a beer and minus 13 degrees, the beer starts turning to slush just from being outside in the cold air. It's a great place, very friendly, and the jumper was just a gift one Christmas from someone.

    Sean Blake:

    Love it. There's nothing better than warm beer is there? Okay. So Chris, I first came across you because of the content that you put out on LinkedIn. And the way that you go about it, it's so much fun and so different to really anything else I've seen in the corporate space, in the enterprise space, in the Agile space even, why have you decided to go down this track of calling yourself the virtual Agile coach, building a personal brand and really putting yourself out there?

    Chris Stone:

    Well, for me, it was an interesting one because COVID, this year has forced a lot of people to convert to being virtual workers, remote workers, virtual coaches themselves. Now, what I realized this year is that, the aspiration for many is those co-located teams, it's always what people desired. They say, "Oh, you have to work harder, Katie, that's the best way." And I realized that in my whole Agile working life, I'd never really had that co-located team. There was always some element of distributed working and the past two years prior to where I'm currently, my current company, I was doing distributed scaled Agile with time zones, including Trinidad and Tobago, Alaska, Houston, the UK, India, and it was all remote.

    Chris Stone:

    And I thought, all right, this is an opportunity to recognize the fact that I was a virtual Agile coach already, but to share with others, my learnings, my experiences, the challenges I've faced, the failures I've had with the wider community so they can benefit from it because obviously, everyone, or more many have had to make that transition very quickly. And there's lots of learnings there that I'm sure people would benefit from. And this year in particular, I guess the honest answer, the reason for me being, I guess out there and working more on that side of things, being creative is because it's an outlet for my mental health.

    Chris Stone:

    I suffer from depression and one of my ways of coping with that is being creative and creating new content and sharing it. So I guess it's a reason of... it's linked to that also, but also the stories that people tell me afterwards, they motivate me to keep doing it. So when someone comes to me and says, "Hey, I did the Queen retrospective, the Queen Rock Band retrospective, and this program manager who never smiles connected to the content and admitted he liked Queen and smiled." And this was a first and when people come to me and say, "Hey, we did the Home Alone retrospective, the one of your Christmas themed ones and people loved it. It was great." It was the most engaging retrospective we've had so far because the problem is work can become stale if you let it be so.

    Chris Stone:

    Retrospectives can become this, what did we do last time? What are we going to do next time? What actions can we do? Et cetera, et cetera. And unless you refresh it and try new things, people will get bored and they'll disconnect and they'll disengage, and you're less likely to get a good outcome that way. So for me, there's no reason you can't make work a little bit fun, with a little bit of creativity and a little bit of energy and passionate about it.

    Sean Blake:

    I love that. And do you think a lot of people come to work even when they're working in Agile co-located teams and it's just not fun, I mean what do you think the key reasons are that work isn't fun?

    Chris Stone:

    I think because it can become stale. All right. So let's reflect on where we are today. Today, we're in a situation where we're not face-to-face with one another. We don't have time for those water cooler chats. We don't connect over a coffee or a lunch. We don't have a chat about idle banter and things of that on the way to a meeting room, we didn't have any of that. And that forces people to look at each other and see themselves as an avatar behind a screen, just a name. Often in particular, people aren't even on video camera.

    Chris Stone:

    It forces them to think of people as a name on a screen, rather than a beating heart on a laptop. And it can abstract people into just these entities, these names you talk to each day and day out, and that can force it to be this professional non-personal interaction. And I'm a firm believer that we need to change that. We need to make things more fun because it can, and in my experience, does result in much better outcomes. I'm very, very people first. We need to focus on people being people. People aren't resources. This is a common phrase I like to refer to you.

    Sean Blake:

    I love that, people aren't resources. You spoke a little bit about mental health and your struggle with depression. Something that I hear come up time and time again, is people that talk about imposter syndrome. And I wonder, firstly, if you think that might be exasperated through working remotely now. People are not so sure how they fit in, where their role is still the same role that it was 12 months ago. And do you have any tips for people when they're dealing with imposter syndrome, especially in a virtual environment?

    Chris Stone:

    Well, yeah I think this current environment, this virtual environment, the pandemic in particular, has led to a number of unhelpful behaviors. That there's a lot more challenges with people's mental health and negativity, and that can only lead to, I guess, less desire, less confidence in doing things, maybe doubting yourself. There's some great visuals I've shared on this recently, and it's all about reframing those imposter thoughts you have, the unhelpful thinking, that thing that goes through your mind that says, Oh, they're all going to think I'm a total fraud because maybe I don't have enough years of experience, or I should already know this. I must get more training. There's lots of “shoulding” and “musting” in that. There's lots of jumping to conclusions in this.

    Chris Stone:

    And a couple of ways of getting around that is, so if you're thinking of the scenario where I'm a fraud think, "Oh, well I'm doing my best, but I can't predict what they might think." When you're trying to think about the scenario of do I need to get more training? Well, understand and acknowledge the reality that you can't possibly know everything. You continue to learn every single day and that's great, but it's unrealistic to know it all. There's a great quote I often refer to and it's, true knowledge is knowing that you know nothing. I believe it's a quote from Socrates.

    Chris Stone:

    And it's something that very much resonates with me. Over the years I've gone through this learning journey where, when I first finished university, for example, I thought I knew everything. I thought I've got it all. And I'd go out to clients and speak and I'm like, "Oh yeah, I know this. I've got this guys." And then the more involved I've become and the more deeper I've gone into the topic, the more I realized, actually there's so much that I don't know. And to me, true knowledge is knowing that you know nothing tells me there's so much out there that I must continuously learn, I must continuously seek to challenge myself each and every day.

    Chris Stone:

    Other people who approach me and say, "How do you, or you produce a lot of content. How would you put yourself out there?" And I say, "Well, I just do it." Let's de-stigmatize failure. If you put a post out there and it bombs, it doesn't matter, put another one out there. It's as simple as that, learn from failure, Chuck something out there, try it, if it doesn't work, try something else. We coach Agile teams to do this all the time, to experiment. Have a hypothesis to test against that. Verify the outcomes and do retrospectives. I do weekly solospectives. I reflect on my week, what works, what hasn't worked, what I'm going to try differently. And there's no reason you can't do that also.

    Sean Blake:

    Okay. So weekly solospectives. What does that look like? And how do you be honest with yourself about what's working, what's not working and areas for yourself to improve? How do you actually start to have that time for self-reflection?

    Chris Stone:

    Unfortunately you got to make time for some reflection. One thing I've learned with mental health is you have to make time for your health before you have to make time for your illness or before you're forced to make time for your illness. And it can become all too easy in this busy working world to not make time for your health, to not make time and focus on you. So you do just have to carve out that time, whether that's blocking some time in the diary on a Friday afternoon, just to sit down and reflect, whether that's making time to go out for a walk, setting up a time on your Alexa to have a five minute stretching break, whatever it is, there's things you can do, and you have things you have to do to make time for yourself.

    Chris Stone:

    With regards to a solospective, the way I tend to do things is I tend to journal on a daily basis. That's almost like my own daily standard with myself, it's like, what have I observed? What have I... what challenges do I face in the past day? And then that sums up in the weekly solospective, which is basically a retro for one, where I reflect on, what did I try it? What do I want to achieve this week? What's gone well? What hasn't gone well. It's the same as a retrospective just one and allows me to aggregate my thoughts across the week, rather than them being single events. So that I'm focusing more on the trajectory as opposed to any single outlier. Does that make sense?

    Sean Blake:

    It does. It does. So you've got this trajectory with your career. You're checking in each week to see whether you're heading in the right direction. I assume that you set personal goals as well along the way. I also noticed that you have personal values that you've published and you've actually published those publicly for other people to look at and to see. How important are those personal values in informing your life and personal and career goals?

    Chris Stone:

    So I'd say that are hugely important, for me, what I thought was we see companies sharing their values all the time. You look on company websites and you can see their values quite prominently. And you could probably think do they often live up to their values? You have so many companies have customer centricity as their value, but how many of them actually focus on engaging with their customers regularly? How many have a metric where they track, how often they engage with customers? Most of them are focusing on velocity and lead time. So I always challenge, are you really customer centric or is that lip service? But moving aside, I digress. I thought companies have values, and obviously we do as well, but why don't we share them? So I created this visual, showing what mine were and challenged a few others to share it also. And I had some good feedback from others which was great.

    Chris Stone:

    But they hugely influence who I am and how I interact on a day-to-day basis. And I'll give you an example, one of my values is being open source always. And what that means is nothing I create, no content I create, nothing I produce would ever be behind a payroll. And that's me being community driven. That's me sharing what I've learned with others. And how that's come to fruition, how I've lived that is I've had lots of people come to me say, "Hey, we love the things you do. You gave me flying things. Would you mind, or would you like to collaborate and create this course that people would pay for?" So often I've said, "If it's free, yes. But if it's going to be monetized, then no."

    Chris Stone:

    And I've had multiple people reach out to me for that purpose. And I've had to decline respectfully and say, "Look, I think what you're doing is great. You've got a great app and I can see how having this Agile coaching gamification course on that would be of great value. But if it's behind the payroll, then I'm not interested because it's in direct conflict with my own values, and therefore, I wouldn't be interested in proceeding with it. But keep doing what you're doing, being people first, #people first." This is about me embodying the focus on people being beating hearts behind a laptop, rather than just this avatar on a screen. And I have this little... the audio listeners, won't be able to see this, but I'm holding up a baby Groot here. And he's like my people first totem.

    Chris Stone:

    And the reason for that is I have a group called the Guardians of Agility, and we are people first. That's our emblem. And these are my transformation champions in my current company. I like to have Guardians of Agility, and I've got this totem reminding me to be people first in every interaction I have. So when, for example, I hear the term resources and I'm saying, well... As soon as I hear it, it almost triggers me. I almost hear like, "Oh, what do they mean by that?" And I'll wait a little moment and I'll say, "Hey, can you tell me what you mean by that?" And you tease it out a little bit. And often they meant, "Oh, it's people, isn't it?" If you're talking about people, can we refer to them as people?

    Chris Stone:

    Because people aren't resources. They're not objects or things you mine out the ground. They're not pens, paper or desks. They're not chairs in an office. They are people. And every time you refer to them as a resource, you abstract them. You make it easier to dehumanize them and think of them as lesser, you make it easier to make those decisions like, oh, we can just get rid of those resources or we can just move that resource from here to there and to this team and that team, whether they want to or not. So I don't personally like the language.

    Chris Stone:

    And the problem is it goes all the way back to how it's trained. You go to university and you take a business degree and you learn about human resources. You take a course, Agile HR, Agile human resources, right, and it's so prevalent out there. And unless we challenge it, it won't change. So I will happily sit there and a meeting with a CTO and he'll start talking about resource and I'll say, "Hey, what do you mean by that?" And I'll challenge it and he'll go, "Yeah, I've done it again, have I not?" "Yes. Yes, you have." And it's gotten to the point now where I'll be on this big group call for example, and someone will say it, and I'll just start doing this on a screen waving, and they'll go, "Did it again, didn't I?" "Yes, you did."

    Sean Blake:

    So some of these habits are so ingrained from our past experiences our education, and when you're working with teams for the first time, who's never worked in Agile before, they're using phrases like resources, they're doing things that sometimes we call anti-patents, how do you start to even have that conversation and introduce them to some of these concepts that are totally foreign to people who've never thought the way that you or I might think about our teams and our work?

    Chris Stone:

    Sure. So I guess that the first response to that is with empathy. I'm not going to blame someone or make out that they're a bad person for using words that are ingrained, that are normal. And this is part of the problem that that term, resource is so ingrained in that working language nowadays, same as deadlines. Deadlines is so ingrained, even though deadlines came from a civil war scenario where it referred to, if you went past the line, you were shot. How did that land in the business language? I don't know. But resources, it's so ingrained, it's so entrenched into this language, so people do it without intending to. They often do it without meaning it in a negative way. And to be honest, the word itself isn't the issue, it's how people actually behave and how they treat people.

    Chris Stone:

    I said my first approach is empathy. Let's talk about this. Let's understand, "Hey, why did you use term?" "Oh, I use it to mean this." "Okay. Well." Yeah, and not to do it or call them out publicly or things like that. It's doing things with empathy. Now, I also often use obviously gamification and training approaches, and Agile games to introduce concepts. If someone's unfamiliar to a certain way of working, I'll often gamify. I'll create something, a virtual Agile game to demonstrate. The way I do say, is I'm always looking to help people understand how it feels, not just to talk theory. And I'll give you an example. I'm a big fan of a game called the Virtual Name Game. It's a game about multitasking and context switching.

    Chris Stone:

    And I always begin, I'll ask group of people, "Hey guys, can you multitask?" And often they go, "Yeah, we can do that." And there'll be those stereotypical things like, "Oh yeah, I'm a woman. I can do that." It happens. Trust me. But one of the first things I do, if I'm face-to-face with them, I'll say, "Hey, hold your hands out like this. And in your left hand..." And people on the audio can't see me, I'm holding out like my hands in front of me. In my left hand, we're going to play an endless game of rock, paper, scissors. And in my right hand, we're going to play a game of, we have a thumb war with each other. And you can try, you can challenge them, can they do those concurrently? No, they can't. They will fail because you just can't focus on both at the same time.

    Chris Stone:

    Now the Virtual Name Game, the way it works is you divide a group of people up into primarily customers and one developer. And I love to make the most senior person in the room, that developer. I want them to see how it feels to be constantly context switching. So if you were the developer, you're the senior person to review the hippo in this scenario, the highest paid person. I would say Sean, in this game, these customers, they are trying to get their name written first on this virtual whiteboard. And we're going to time how long it takes for you to write everyone's name in totality. The problem is that they're all going to shouting at you continuously, endlessly trying to get your attention. So it's going to be Sean, Sean, write my name, write my...

    Chris Stone:

    And it's just going to be wow, wow, wow, who do I focus on? You won't know. And this replicates a scenario that I'm sure many people have experienced. He who shouts loudest gets what they want. Prioritization is often done by he who's... or the person who shouts loudest not necessarily he. We then go into another rounds where you say, I'm this round, Sean, people are to be shouting their name at you. But in this round, you're going to pay a little bit attention to everyone. So the way you're going to do that is you're going to read the first letter of one person's name, then you move on to the first letter of the next person's name, and you're going to keep going around. The consequence of that is everyone gets a little bit of attention, but the result is it's really slow.

    Chris Stone:

    You're starting lots of things but not finishing them. And again, in each round, we're exploring how it feels. How did it feel to be in that round? Sean, you were being shouted at, how did that feel? Everyone else, you were shouting to get your attention. You had to shout louder than other people, how did that feel? And it's frustrating, it's demotivating, it's not enjoyable. In the final around, I would say, "Hey, Sean, in this round, I'm going to empower you to decide whose name you write first. And you can write the whole thing in order. And the guys actually they're going to help you this time, there are no shouts over each other, they are going to help you." And in this scenario, as I'm sure you can imagine, it feels far better. The result is people finish things, and you can measure the output, the number of brand names written on a timeframe.

    Chris Stone:

    It's a very quick and easy way of demonstrating how it feels to be constantly context switching and the damage you can have, if, for example, you've prioritized things into a sprint and you got lots of trying to reorder things and so on and so forth, and lots of pressure from external people that ideally should be shielded from influencing this and that, and how that feels and what the result is, because you may start something, get changed into something else. You got to take your mindset of this, back into something else, and then the person who picks up the original thing might not have even been the same person, they've got to learn that over again. There's just lots of waste and efficiency costs through that. And that's just an example of a game I use, to bring that sort of things to life.

    Sean Blake:

    That's great. That's fantastic. I love that. And I think we need to, at Easy Agile, start playing some of those games because there's a lot of lessons to be learned from going through those exercises. And then when you see it play out in real life, in the work that you're doing, it's easier to recognize it then. If you've done the training, you've done the exercise, that all seems like fun and games at the time, but when it actually rears its head in the work that you're doing, it's much easier to call it out and say, "Oh wait, we're doing that thing that we had fun playing, but now we realize it's occurring in real life and let's go a different direction." So I can see how that would be really powerful for teams to go through that so Chris [crosstalk 00:22:26].

    Chris Stone:

    I'd also add that every game that I do, I construct it using the four Cs approach. So I'm looking to connect people... firstly, connect people to each other, and then to the subject matter. So in this game is about multitasking. To contextualize why that matters, why does context switching and multitasking matter in the world of work? Because it causes inefficiencies, because it causes frustration, de-motivation, et cetera. Then we do some concrete practice. We play a game that emphasizes how it feels. And at the end we draw conclusions, and the idea is that with the conclusion side of things, it's almost like a retrospective on the game. We say, "Hey, what did we learn? What challenges we face? And what can we do differently in our working world?" And that hopefully leaves people with actionable takeaways. A lot of the content I share is aiming to leave it with actionable takeaways, not just talking about something, but reflecting on what you could do differently, what you could try, what experiment you might like to employ with your working life, your team that might help improve a situation you're facing.

    Sean Blake:

    Okay. Yeah, that's really helpful. And you've spoken about this concept of Agile sins, and we know that a lot of companies have these values, they might've committed to an Agile transformation. They might've even gone and trained hundreds or thousands of people at accompany using similar tactics and coaching and educational experiences that you provide. But we still see sometimes things go terribly wrong. And I wonder, what's this concept of Agile sins that you talk about and how can we start to identify some of these sins that pop up in our day-to-day work with each other?

    Chris Stone:

    I guess, so the first thing I would emphasize about this is that using sin, it's a very dogmatic religious language and it's more being used satirically than with any real intent. So I just like to get that across. I'm not a dogmatic person, I don't believe there is any utopian solution. I certainly don't believe there's any one size fit to all situation for anyone. So the idea that there's really any actual sins is... yeah, take that with a pinch of salt. The reason the Agile sins came up is because I was part of... I'd done a podcast recently with a guy called Charles Lindsey, and he does this Agile confessional. And it's about one coach confessing to another, their mistakes, their sins, the things they've done wrong.

    Chris Stone:

    And I loved it because I'm all about de-stigmatizing failure. I'm all about sharing with one another, these war stories from one coach to another, because I've been a proponent of this in the past. I've shouted, "Hey there, I failed on this. I made this mistake. I learned from it." And I challenge others to do so as well and there's still this reluctance by many to share what went wrong. And it's because failure is this dirty word. It's got this stigma attached to it. No one wants to fail, leaders in particular. So the podcast was a great experience.

    Chris Stone:

    And it was interesting for me because that was the first time I'd given a confession, because I'll be honest with you, I'm someone who is used to taking confession myself. I go to this hockey festival every year and I got given years ago, this Archbishop outfit, and I kind of made that role my own way. I was drunk, and I said, "You're going to confess your sins to me." And if they haven't sinned enough, I tell them to go and do more. And I give them penicillin with alcohol shots and things like that. And I've actually baptized people in this paddling pool whilst drunk. Anyway, again, I digress, but I wasn't used to confessing myself, usually, I was taking confession, but I did so and it was a good experience to share some of my failures and my patterns was to create... and it was my own idea, to create my videos, seven videos of my seven Agile sins. And again, this was just me sharing my mistakes, what I've learned from that, with the intent of benefiting others to avoid those similar sins.

    Sean Blake:

    So you've spoken to a lot of other Agile coaches, you've heard about their failures, you confessed your own failures, is it possible for you to summarize down what are those ingredients that make someone a great coach?

    Chris Stone: And that is a question, what makes someone a great coach? I think it's going to be entirely subjective, to be honest. And my personal view is that a great coach listens more than they speak. I guess that would be a huge starting point. When they listen more than they speak, because I've... and this is one of the things I've been guilty of in the past, is I've allowed my own biases to influence the team's direction. An approach I'd taken in the past was, "Hey, I'm working with this team and this has worked well in the past. We're going to do that." Rather than, "So guys, what have you done so far? What have you tried? What's worked well? What hasn't worked well? What can we create or what can we try next? That works for you guys. Let's have you make that decision and I'm here to guide you through that process to facilitate it, rather than to direct it myself."

    Chris Stone:

    Again, I find ... it's an approach that resonates more with people. They like feel that they own that decision as opposed to it being forced upon them. And there's far less, I guess, cognitive dissonance as a consequence. So listening more than speaking is a huge for me, a point an Agile coach should do. Another thing I think for me nowadays, is that there's too much copying and pasting. And what I mean by that is, the Spotify, the Spotify model came out years ago and everyone went, "Oh, this is amazing. We're going to adopt it. We're going to have tribes and chapters and guilds and squads, and it's going to work for us. That's that's our culture now."

    Chris Stone:

    I was like, "Well, let's just take a moment here. Spotify never intended for that to happen. They don't even follow that model themselves anymore. What you've done there is you've just tried to copy and paste another model." And people do it with SAFe as well. They just say, "Hey, we're going to take the whole SAFe framework and Chuck it into our system in this blueprint style cookie cutter." And the problem is that it doesn't take into account for me, the most important variable in any sort of transformation initiative, the people, what they want, and the culture there. So this is where another one of my values is, innovate, don't replicate. Work with people to experiment and find that Agile, what works for them rather than just copying and pasting things.

    Chris Stone:

    So tailor it to their needs rather than just coming in with some or seen dancing framework, and then the way I do it is I say, "Hey, well, SAFe is great. Well, it's got lots of values, and lots of great things about it. Lots of benefits to it, but maybe not all of it works for us. Let's borrow a few tenent of that." Same with LeSS, same with Scrum At Scale, same with Scrum, similar to Kanban. There's lots of little things you can borrow from various frameworks, but there's also lots of things you can inject yourself, lot's of things you can try that work for you guys, and ultimately come up with your own tailor-made solutions. So innovate, don't replicate would be another one for me.

    Chris Stone:

    Learning, learning fast and learning often, and living and breathing that yourself. Another mistake I and other coaches I think have made is not making time for your own personal development to allowing, day in, day out to just be busy, busy, busy, but at the same time you're going out there, coaching teams, "Hey, you've got to learn all the time. You got to try new things." But not making that time for yourself. So I always carve out time to do that, to attend conferences, to read books, to challenge myself and escape my echo chamber. Not just to speak to the same people I do all the time, but perhaps to go on a podcast with people I've never spoken to. To a different audience, maybe to connect with people that actually disagree with me, because I want that.

    Chris Stone:

    I don't want that homophilous thinking where everyone thinks exactly like I do, because then I don't get exposed to the perspectives that make me think differently. So I'm often doing that. How can I tend to conference that I know nothing about, maybe it's a project management focus one. Project management and waterfall isn't a dirty word either. There is no utopian system, project management and... sure traditional project management and waterfall has its benefits in certain environments. Environments with less footing, less flexible scope or less frequently changing requirements works very well.

    Chris Stone:

    I always say GDPR, which is an EU legislation around data protection, that was a two year thing in the making and everyone knew exactly what was happening and when they had to do it by. That was a great example of something that can be done very well with a waterfall style, because the requirements weren't changing. But if you are trying to develop something for a customer base that changes all the time, and you've got lots of new things and lots of competitors and things like that, then it varies, and probably the ability to iterate frequently and learn from it is going to be more beneficial and this is where Agile comes in. So I guess to sum up there, there's a few things, learning fast learning often. I can't even remember the ones I've mentioned now, I've gone off on many tangents and this is what I do.

    Sean Blake:

    I love it. It's great advice, Chris. It's really important and timely. And you mentioned, earlier on that the customer base that's always changing and we know that technology is always changing and things are only going to change more quickly, and disruptions are only going to be more severe going forward. Can you look into the future, or do you ever look into the future and say, what are those trends that are emerging in the Agile space or even in work places that are going to disrupt us in the way that we do our work? What does Agile look like in five or 10 years?

    Chris Stone:

    Now that again is a very big question. I can sit here and postulate and talk about what it might look like. I'm going to draw upon what I think is a great example of what will shape the next five or 10 years. In February, 2021, there's a festival called Agile 20 Reflect, I'm not sure if you've heard of it, and it's built as a festival, not conference, it's really important. So it's modeled on the Edinburgh festival and what it intends to be is a celebration of the past, the present and the future of Agile. Now what it is, it's a month long series of events on Agile, and anyone can create an event and speak and share, and it will create this huge community driven load of content that will be freely accessible and available.

    Chris Stone:

    Now, there are three of the original Agile manifestor signatories that are involved in this. Lisa Adkins is involved in this as is lots of big name speakers that are attached to this festival. And I myself, I'm running a series of retrospectives on the Agile manifesto. I've interviewed Arie van Bennekum, one of the original Agile manifesto signatories. They're going to be lots of events out there. And I think that festival will begin to shape in some way, what Agile might look like because there's lots of events, lots of speakers, lots of panel discussions that are coming up, coming together with lots of professionals out there, lots of practitioners out there that will begin to shape what that looks like. So whilst I could sit here and postulate on it, I'm not the expert to be honest, and there are far greater minds than I. And actually I'd rather leverage the power of the wider community and come into that than suggesting mine at this time.

    Sean Blake:

    Nice. I like it. And what you've done there, you've made it impossible for us to click this video and prove you wrong in the future when you predict something that doesn't end up happening. So that's very wise if you.

    Chris Stone: Future proof myself.

    Sean Blake: Exactly. Chris, I think we're coming almost to the end now, but I wanted to ask, given the quality of your Christmas sweater, do you have any tips for teams who are working over the holiday period, they're most likely burnt out after a really difficult 2020? What are some of the things you'd say to coaches on Agile teams as they come into this time where hopefully people are able to take some time off, spend some time with their family. Do you have any tips or recommendations for how people can look after their mental health look after their peers and spend that time in self-reflection?

    Chris Stone:

    Sure. So a number of things that I definitely would recommend. I'm currently producing and sharing this Agile advent calendar. And the idea is that every day you get a new bite-size piece of Agile knowledge or a template or something working in zany or a video, whatever it may be. There's lots of little things getting in there. And there's been retro templates, Christmas and festive themes. So there's a Home Alone one, a Diehard one, an elf movie one, there's all sorts. Perhaps try one of those as a fun immersive way with your team to just reflect on the recent times as a squad and perhaps come up with some things in the next year.

    Chris Stone:

    And there's for example, the Diehard one, it's based on the quotes from the movie Diehard so it's what you'd be doing in there, celebrate your... to send them to your team. Or there's one in there about, if this is how you celebrate Christmas, I can't wait for new year. And that question was saying, what do we want to try next year? Like this year has been great, what do we want to try differently next year? So there's opportunities through those templates to reflect in a fun way so give one of those a go. I shared some Christmas eve festive Zoom backgrounds, or Team backgrounds, give those a go and make a bit fun, make it a bit immersive. There's Christmas or festive icebreakers that you can use. What I tend to do is any meeting I facilitate, the first five minutes is just unadulterated chat about non-work things, and I often use icebreakers to do so. And whether that's a question, like if you could have the legs of any animal, what would you have and why, Sean, what would that be?

    Sean Blake:

    Probably a giraffe, because just thought the height advantage, it's got to be something that's useful in everyday life.

    Chris Stone: Hard to take you on the ground maybe.

    Sean Blake:

    Yes. Yes, you would definitely need that. Although, I don't think I would fit in the lift on the way to work, so that would be a problem.

    Chris Stone:

    Yeah. That's just how I start. But yeah, that's just a question, because it's interesting to see what could people come up with, but there's some festive ones too, what's your favorite Christmas flick? What would put you on the naughty list this year? Yeah, does your family have any weird or quirky Christmas traditions? Because I love hearing about this. Everyone's got their own little thing, whether it's we have one Christmas present on Christmas Eve or every Christmas day we get a pizza together. There's some really random ones that come out. I love hearing about those and making time for that person interaction, but in a festive way can help as well.

    Chris Stone:

    And then on the mental health side of things, I very much subscribed to the Pomodoro effect from a productivity side of things. So I will use that. I'll set myself a timer, I'll focus without distractions, do something. And then in that five minute break, I'll just get up and move away from my desk and stretch and get a coffee or whatever it may be. But then I'll also block out time, and I know some companies in this remote working world at the moment are saying, "Hey, every one to 2:00 PM is blocked out time for you guys to go and have a walk." Some companies are doing that. I always make time to get out and away from my desk because that... and a little bit more productive and it breaks up my day a little bit. So I definitely recommend that. Getting some fresh air can do wonders for your mental health.

    Sean Blake:

    Awesome. Well, Chris, I've learnt so much from this episode and I really appreciate you spending some time with us today. We've talked about a lot of things from around the importance of sharing your failures, the importance of looking after your mental health, checking in on yourself and your own development, but also how you tracking, how you feeling. I love that quote that you shared from, we think it Socrates, that true knowledge is knowing that you know nothing. I think that's really important, every day is starting from day one, isn't it? De-stigmatizing failure. The origins of the word deadline. I did not know that. That's really interesting. And just asking that simple question, how did that feel? How did that feel working in this way? People were screaming your name, walk up work, when work's too busy, how does that feel? And is that a healthy feeling that everyone should have? So that's really important questions for me to reflect on and I know our audience will really appreciate those questions as well. So thanks so much Chris, for joining us on the Easy Agile Podcast.

    Chris Stone:

    Not a problem. Thank you for listening and a Merry Christmas, everyone.

    Sean Blake:

    Merry Christmas.

  • Podcast

    Easy Agile Podcast Ep.25 The Agile Manifesto with Jon Kern

    "Thoroughly enjoyed my conversation with Jon, he shared some great perspectives on the impact of the Agile manifesto" - Amaar Iftikhar

    Amaar Iftikhar, Product Manager at Easy Agile is joined by Jon Kern, Co-author of the Agile Manifesto for Software Development and a senior transformation consultant at Adaptavist.

    Amaar and Jon took some time to speak about the Agile Manifesto. Covering everything from the early days, ideation, process, and first reactions, right through to what it means for the world of agile working today.

    They touch on the ideal state of an agile team, and what the manifesto means for distributed, hybrid and co-located teams.

    We hope you enjoy the episode!

    Transcript

    Amaar Iftikhar:

    Hi everyone. Welcome to the Easy Agile Podcast. My name is Amaar Iftikhar. I'm a product manager here at Easy Agile. And before we begin, Easy Agile would like to acknowledge the traditional custodians of the land from which we broadcast today, the people of the Dharawal speaking country. We pay our respects to elders past, present, and emerging. And extend that same respect to all Aboriginal, Torres Strait Islander, and First Nations peoples joining us today.

    Today, we have on the podcast Jon Kern, who is the co-author of the Agile Manifesto for Software Development and an Agile consultant. If you're wondering, you're correct. I did mention the Agile Manifesto for Software Development. The Agile Manifesto. So Jon, welcome for being here and thank you for joining us.

    Jon Kern:

    Oh, my pleasure, Amaar. Thank you.

    Amaar Iftikhar:

    Yeah, very excited to have you on. Let's just get started with the absolute basic. Tell the audience about, what is the Agile manifesto?

    Jon Kern:

    Well, it's something that if you weren't around, and I know you're young, so you weren't around 21 years ago, I guess now, to maybe understand the landscape of what software development process and tooling and what most of us were facing back then, it might seem like a really obvious set of really simple values. Who could think that there's anything wrong with what we put into the manifesto? But back in the day, there were, what I practiced under as a... I'm an aerospace engineer, so I was in defense department work doing things like fighter simulation, F-14 flat spins and working with a centrifuge and cool stuff like that. And subject to a mill standard specification, which makes sense for probably weapons systems, and aircraft manufacturing, and all sorts of other things. But they had one, lo and behold, for software development. And so there was a very large, what I would call heavy handedness around software development process. We call it heavyweight process. Waterfall was the common term back then, and probably still used today.

    And there were plenty of, I would say the marketing juggernaut of the day, IBM and Rational unified process, these large, very much like Safe. Where it's a really large body of work, awesome amount of information in it, but very heavy process even though everything would, say you tailor it, it could be whatever you wanted. I mapped my own lightweight process into REP for example. Sure. But the reality was we were facing kind of the marketplace leader being heavyweight process that was just soul crushing, and from my perspective, wasting taxpayers' money. That was kind of my angle was, well, I'm a taxpayer, I'm not going to just do this stupid process for process sake. That has to have some value, has to be pragmatic. So lo and behold, there were a handful of us, 17 that ended up there, but there are a handful of us that practiced more lightweight methods. So the manifesto was really an opportunity for coming together and discovering some of the, what you might think of as the commonality between many different lightweight practices. There was the XP contingent. I first learned about Scrum there, for example. Arie van Bennekum, a good friend, he taught us about DSDM. I don't even remember what it stands for anymore. It was a European thing.

    Alistair and Jim Highsmith, they had, I forget, like crystal methodologies. So there was a fair amount of other processes that did not have the marketing arm that erupted, or didn't have the mill standard. So it was really all about what could we find amongst ourselves that was some sort of common theme about all these lightweight processes. So it was all about discovering that, really.

    Amaar Iftikhar:

    You all get together, the principles kind of come to fruition, and let's fast forward a little bit. What was the initial reaction to the original manifesto?

    Jon Kern:

    Yeah, it was even kind of funny that the four values, the four bullets is as simple as it was. The principles came a bit later. I want to say we collaborated over awards wiki, but the original... If you go to Agile uprising, you can see I uploaded some artifacts, because apparently I'm a pack rat. And I had the original documents that Alistair probably printed out, because he was the one... He and Jim lived there near Salt Lake City. So it was like, "Hey, let's come here." And we like to go skiing, so let's do it here. So he arranged the room and everything. And so there's some funny artifacts that you can find. And the way that it actually came about was an initial introduction of each of us about our methods. And really I think a key, we left our egos at the door. I mean I was a younger one. Uncle Bob, some of these, he was at Luminar, I know I have magazines still in the barn that he was either the editor of, or authors of for people who don't remember what magazines are. Small little booklets that came out. So Uncle Bob was like, Ooh, wow, this is pretty cool.

    And I wasn't shy because I had a lot of experience with heavyweight methods. So I really wanted to weigh in on... Because I had published my own lightweight method a few years earlier. So I had a lot of opinions on how to avoid the challenges of big heavyweight process. So the culmination as we were going out the door and after we had come up with the four values was I think Ward said, "Sir, want me to put this on the web?" And again, this is 2001 so dot com and the web's still kind of new so to speak. And we're all like, yeah, sure, why not? What the hell, can't hurt. We got something, might as well publish it. I don't think to a person, anybody said, "Oh yeah, this is going to set the world on fire because we're so awesome." And we were going to anoint the world with all of this wonderful wisdom. So I don't think anybody was thinking that that much would happen.

    Amaar Iftikhar:

    Yeah. So what were you thinking at that time? So how would the principles that you had come up with together, was that maybe just for the team to take away? Everyone who was there? What was the plan at that time?

    Jon Kern:

    I think it was a common practice. Like I said, there were other groups that would often meet and have little consortiums or little gatherings and then publish something. So I think it was just, oh yeah, that's a normal thing to do is you spent some time together and you wrote things down, you might as well publish it. So I think it wasn't any deeper than that other than Bob, I think Bob might say that he wanted to come up with some kind of a manifesto of sorts or some kind of a document because that's I think what those sort of... I was never at one of those gatherings, but you know, you could see that they did publish things. I have a feeling it was just something as innocent as, well we talked, wrote some things down, might as well share it.

    And then the principles, there were a lot of different practices in the room. So some of what I would say the beauty of even the values page is the humility at the top is it's still active voice. We are uncovering not, hey all peasants, we figured it all out. No, we're still uncovering it. And the other thing is by doing it, because I'm still an active coder. And plus we value this more on the left, more than on the right. Some people might say it's a little ambiguous or a little fuzzy, but that's also a sign of humility and that it's not A or B. And it really is fuzzy, and you need to understand your context enough to apply these things. So from a defense department contracting point of view, certainly three of the four bullets were really important to me because I learned... Sure, we did defense department contracting. But it's way more important to develop a rapport with the customer than it is... Because by the time you get to the contract you've already lost, which goes along with developing a rapport with the customer, the individual.

    And one of Peter Codes, when we worked with customers and whatnot, one of our mantras was frequent tangible working results, AKA working software. You can draw a lot and you can do use cases for nine months, but if you don't have anything running, it's pretty, I would guess risky that you don't have anything, no working software yet. So it really was I think an opportunity to share the fact that some people thought two weeks and other people thought a month. Even some of the print principles had a pretty good wide ranging flexibility so to speak. That I think is really important to note.

    Amaar Iftikhar:

    Yeah, no, absolutely. And it makes sense. Did you or anyone else in the room at that time ever imagine what the impact downstream would be of the work that was being done there?

    Jon Kern:

    Not that I'm aware of. I certainly did not. I remember a couple times in my career walking in and seeing some diagrams when I worked with the company Together Soft, and we'd build some cool stuff and I'd see people having some of the... Oh yeah, there's a diagram I remember making on their wall. That's kind of cool. But nothing near how humbling and sort of satisfying it is. Especially I would say when I'm in India or Columbia or Greece, it almost seems maybe they're more willing to be emotional about it. But people are, it's almost like they were freed by this document. And in some sense this is a really, really tiny saying it with the most humility possible. A little bit like the Declaration of Independence, and the fact that a handful of people... And the constitution of the United States. A handful of people met in a moment of time, never to be repeated again and created something that was dropped on the world so to speak, that unleashed, unleashed a tremendous amount of individual freedom and confidence to do things. And I think in a very small, similar fashion, that's what the manifesto did.

    Amaar Iftikhar:

    As you mentioned, there was a point in time when the manifesto was developed and that was almost over 20 years ago. So now the way of working, and the world of working has drastically changed. So what are your thoughts on that? Do you see another version coming? Do you think there are certain updates that need to be made? Do you think it's kind of a timeless document? I'd love to hear your thoughts on that.

    Jon Kern:

    Yeah, that's a good question. I personally think it's timeless and I welcome other people to create different documents. And they have. Alistair has The Heart of Agile, Josh Kerievsky's got Modern Agile.

    There's a few variations of a theme and different things to reflect upon, which I think is great. Because I do believe, unlike the US Constitution, which built in a mechanism to amend itself, we didn't need that. And I believe it captured the essence of how humans work together to produce something of value. Mostly software, because that's what we came to practice from, is the software experience. But it doesn't take a lot of imagination to replace the word software with product or something like that and still apply much of the values that are there with very, very minor maybe adjustments because frequent tangible working results.

    There might have to be models, because you're not going to build a skyscraper and tear it down and say, "Oh, that wasn't quite right," and build it again. But nonetheless, there are variations of how you can show some frequent results. So I think by and large it's timeless. And I would challenge anybody. What's wrong with it? Point out something that's somehow not true 20 years later. And I think that's the genius behind it was we stumbled on... And probably because most of us were object modelers, that's one of the things we're really good at, is distilling the essence of a system into the most critical pieces. That's kind of what modeling is all about. And so I think somehow innately, we got down to the core bits that make up what it is to produce software with people, process and tools. And we wrote it down. That's why I think it's timeless.

    Amaar Iftikhar:

    Yeah, no absolutely. I think that was a really good explanation about why it's timeless. I think one of the principles that comes to mind in a kind of modern hybrid or flexible working arrangement is one of the principles talks about the importance of face to face conversations. And in a world now where a lot of conversations aren't happening physically face to face, they might be happening on Zoom. Do you think that still applies?

    Jon Kern:

    Yeah, I think what we're finding out with... Remote was literally remote, so to speak, back 20 years ago. I was working with a team of developers in Russia and we had established enough trust and physical... I would travel there every month. So kind of established enough of a team, and enough trust in the communication that we could do ultimately some asynchronous work because different time zones. And me being in the east coast. 7:00 AM in the US was maybe 3:00 PM in Russia if I recall. St. Petersburg. So we were able to overcome the distance, but it's hard to beat real life. And I would often sometimes even spar a little bit with Ron Jeffries that on the one hand you could say the best that you can do is in person. But on the other hand, I could argue a little bit of some of the remoteness makes things... You have to be a little more verbose, possibly a little more precise, but also a little more verbose. A little more relaxed with... You might take a couple of passes to get something just because, I mean there are two time zones passing in the night. But that was based off of some often initial face to face meetings, and then you could go remote and still be successful and highly effective.

    So I think it's important that teams don't just say that they can still do everything. And zoom is way better than 20 years ago, admittedly. Zoom gets, at least you can see a face. But nothing replaces the human contact. And I think also for wellbeing, I think human contact is important. So I would still say that the interaction aspect in the manifesto is still best served with a healthy dose of in-person. And that's kind of the key about most things in Agile. It's to me it's about pragmatism, and not just being dogmatic but rather, what might work better for us? And even experimenting with try something a little bit and see how that works. So even how you treat the manifesto, you should treat it in an Agile manner so to speak.

    Amaar Iftikhar:

    Yeah, no absolutely. That's a great point. On that note, as an Agile consultant or the Agile guy, what have you seen are the best practices or what works, what doesn't work for distributed teams?

    Jon Kern:

    Well I think the things that are most challenging that I've run across big companies and even smaller ones is that... I don't know if it's natural, God forbid if it's natural, but tendencies that I've seen in some companies to set up silos where you're the quality control, you're the UX, you're the front end, you're the back end, makes my headwater explode. Because that's building in a lag and building in communication roadblocks and building in cooperation which is handed offs from silo to silo, versus collaboration. So I've seen more of that. And I get it, you might want to have a specialty, but customer doesn't care. Customer wants something out the door. If I showed up and I'm going to pull a feature off the stack, what do you mean I can only do part of it? I don't get that. And yeah, I know I'm not an expert in everything but we probably have an expert that we can figure out what the pattern is. So I find that sort of trend, I don't know if it's a trend, but I find that's a step backwards in my opinion. And it's better to try to be more cross-functional, collaborative, everybody trying to work to get the feature out the door, not just trying to do your little part.

    Amaar Iftikhar:

    Yeah, a hundred percent. I think knocking on silos is a big part of being agile, or even being digital for that matter. And often the remedies for it too are there at hand, but it's a lot harder to actually be practical with it, to actually implement it in an organization, a living, breathing business where there's real people and there's dynamics to deal with, and there's policies and processes to follow. So I guess as generic as you can be, what is your thought as an Agile consultant to a business that's kind of facing that issue?

    Jon Kern:

    One of the things that... Adaptive is what my colleague John Turley has really opened my eyes to. I tend to call it the secret sauce, or the missing piece to my practice. And it has to do with individual's mindset and what we call vertical development. So it might sound like weird wishy-washy fluffy stuff, but it's actually super critical. And I've always said people, process, and tools for, I want to say since late nineties probably, I mean a long time. And the first I've been able to realize why sometimes I would have just spectacular super high performing teams and other times it'd be just really, really well performing but not always that spark and sometimes kind of like, eh, that was a little meh. And a lot of it comes down to where people lie on in terms of how they make their meaning and what their motivational orientation is, command and control versus autonomy.

    So what we do is we've learned that we can help people first off recognize this exists, and help people with what we call developmental practices. Something that, even the phrase, you probably heard it, like safe experiments. Failure, or trying something and failing. Well if you chop someone's head off for it, guess what? They're just going to probably stay pretty still and only do what they're told, not try to... I have a super high dose of autonomy in me, so I've long lived by the, better to beg forgiveness than ask permission, and always felt as long as I'm trying to do the right thing to succeed and do the best for the company, they probably won't fire me if I make a mistake. But not everybody has that amount of freedom in the way they work. So you have to help establish that as management, and that's a big thing that we work with, with teams.

    And then we also start with the class. If you've ever watched office space, and if you haven't you should, but the, what is it that you do here? So there's a great, the consultants Bob and Bob coming in, the efficiency consultants, "So Amaar, what is it that you do here?" But literally that's something, whether we're helping teams build a new product, is okay, what's the purpose? What's the business purpose of this product? What is it that you do here? What do you want to do with this product? What value does it provide? Same thing with anything you're working with as a team. And that's why whether it's software, producing some feature that has an outcome that provides value to the customer, or some product. But the point is if you don't understand that, now it's making, the team is going to have a real hard time being able to make decisions which are helping us move forward.

    So if you help everybody understand what it is we're here to do, and then try to get the folks that might reflect all the different silos if you're siloed, but all the different elements. How do we go from an idea to cash, so to speak, or idea to value in the customer's hand? And have a good look at that. Because there are so many things that just sort of... Technical data often creeps into software code bases. And the same thing, we sort of say the organizational debt, the same thing can happen. Your process debt. You can just end up with, all right, we want the development team to go faster, John and company, can you come in and help coach us? We want to go agile. Sure, okay yeah. All right. We roll up our sleeves, we look around and after an initial kind of value stream look, like, wait I'm sorry but there's a little tiny wedge, it's about 15%, that's the development. And then you spent the 85% thinking about it.

    Let's pretend we could double the speed of development. Which was initially the... Yeah, we need the developers to code faster or something. That's a classic. And no you don't, you need to stop doing all this bullshit up front that's just crazy ass big waterfall project-y stuff with multiple sign-offs. And matter of fact, one of the sign-offs, oh my gosh it only meets once a week, and then if you have a typo in it, you get rejected. You don't come back for another... Are you insane? You spent eight months deciding to do eight weeks worth of work. Sorry, it's not the eight weeks. So things like that, what I recommend anybody self inspect is try to... If you're worried about your team, how you can do better is just start trying to write down what does your process step look like and what is a typical time frame?

    How much time are you putting value into the... Because a lot of times people batch things up in sprints. That's a batch, why are you putting things in a batch? Or they have giant issues. Well that's the big batch. So there's lots of often low hanging fruit. But to your point, it's often encrusted in, this is the way we work and nobody feels the ability to change or even to stop and look to see how are we working. So I think that's where we usually start is let's see how you actually work today. And then while we're doing that you can spill your guts, you can tell us all the things that hurt and that are painful and then we'll try to design a better way that we can move towards, in terms of working more effectively. Because our goal is to help teams be able to develop ways to do more meaningful and joyous work, really. Because it's a lot of fun when it's clicking and when you're on a good team and you're putting smiles on the customers' faces, it's hard to almost stay away from work because it's so much fun. But if it's not that, if it's drudgery and you're just a cog in the machine and stuff takes months to get out the door, it's a job. It's not that much fun.

    Amaar Iftikhar:

    Yeah. A lot of the points that you mentioned there strongly resonated with me, and the common pain points. It sounds like you've kind of seen it all. And by the way if you haven't seen office space, definitely need to watch it. It's a really good one. You've mentioned now a lot about of the element of the challenges that a distributed team faces. Now I want to flip it over and ask you what does the perfect distributed team look like today that lives and breathes agile values?

    Jon Kern:

    Yeah. I don't know if you can ever have such a thing, a perfect of any kind of team. So I would say harking back to the types of distributed teams that I've worked with, and this goes back to the late nineties. So I've been doing this for a long, long time. Only really done remote, whether it was with developers in Russia or down in North Carolina, or places like that. And I think that the secret was having a combination of in-person... If you want to go somewhere as a group, there are things you can do to break the ice, to establish some, what you might call team building type activities.

    And not just, hey let's go do a high ropes course and be scared out of our wits together. But rather also things that are regarding why are we here, what are we trying to achieve? And let's talk about whether it's the product we're trying to build, and take that as an opportunity to coalesce around something and get enough meat on the bone, enough skeletons of what it might look like. Because there's good ways to start up and have a good foundation. And that's part of what I've been practicing for decades. If you get things set up properly with understanding that just enough requirements, understanding... And I do a lot of domain modeling with UML and things like that, just understanding what the problem domain is that we're trying to solve to achieve the goals we're looking for, have a sense of the architecture that we want. So all those things are collaborative efforts.

    And so if you have enough of a starting point where you've worked together, you come in and, let's say you even had to go rent someplace, because nobody lived near office, so you all flew somewhere. I mean that's money well spent in my opinion. Because that starts the foundation. If you've broken bread so to speak, or drank some beers, or coded together and did stuff, and then you go back to your remote offices to take the next steps and then realize when you might need to meet again. So that's really important to understand that the value of establishing those relationships early on so that you can talk bluntly. And I have some good folks that I run a production app for firefighters since like 2006.

    Amaar Iftikhar:

    Yeah, very cool.

    Jon Kern:

    And that friend that I've worked with, we are so tight that we can... It makes our conversations, we don't have to beat around the bush, we don't have to worry about offending any, we just, boom, cut to the chase. Because we know we're not calling each other's kids ugly. We're just trying to get something done fast.

    And building that kind of rapport takes time and effort and working together. And that's what I think a good successful distributed team, you need to come together every so often and build those relationships and know when you might need to come together again if something is a problem. But that I think is a key to success is it shortens the time. Because you may have heard of things like the group forms, if this is performance on the Y axis they form and they're at some performance level, then they need to storm before they get back to normal, and before they start high performing. So it's this form, storm. You get worse when you're storming. And storming means really understanding where we're at. When we argue about, I don't think that should be inheritance, Amaar. And then you're like, "Oh bull crap, it really..."

    And again, we're not personal, but we're learning each other's sort of perspectives and we're learning how to have respectful debates and have some arguments, so to speak, to get to the better place. And I've worked in some companies that are afraid to storm, and it feels like you're never high performing.

    Everyone's too polite. It's like, come on. And I love when I worked with my Russian colleagues. They didn't give a crap if I was one of the founders. And I'm glad, because I don't want any privilege, I don't want anything like that. No let's duke it out. May the best ideas win. That's where you want to get to. And if you can't get there because you don't have enough of a relationship, and you tend not to say the things that needed to be said because you're being polite, well it's going to take you really long to succeed. And that's a lot of money, and that's a lot of success, and people might leave.

    So I think the important thing is if you're remote, that's okay, but sheer remote is a real challenge. And you have to somehow figure out, if you can't get together to learn how to form and storm, and build those bonds face to face, then you need to figure out how to do it over Zoom. Because you need to do it, because if you don't, if you never have words, then trust me, you're still not high performing.

    Amaar Iftikhar:

    Yeah, I kind of feel like being fully remote now is being offered as almost a competitive advantage to candidates in the marketplace now, because it's a fight for talent. But if I'm understanding correctly, what you are saying is that in-person element is so important to truly be high performing and those ideas kind of contradict each other, I feel.

    Jon Kern:

    Yeah. And again, having been remote since the late nineties, I've been doing this a long time. And commuting to Russia is the longest commute I ever did, for three years. I mean that's a hell of a long flight to commute there over seven times, or whatever the hell it was. Anyway, I used to say that that being remote is not for everyone, because it really isn't. I mean you have to know how to work without anybody around, and work. I mean it has its own challenges. And yeah, it might be a perk, but I think what you need to do is look at potentially what the perks are and figure out too, can I fold them into... It doesn't have to be all or nothing. And I think that can be a easy mistake to make maybe is to, all right cool, we don't have to have office space. That's a lot of savings for the company. Yeah, but maybe that means you need to have some remote workspaces for occasional gatherings, or figure it out.

    But yeah, I think even... And certain businesses might work differently. In the beginning of building a product, I want to have heavy collaboration and I want to get to a point where it's almost, I feel like the product goes like this where once you get things rolling and you kind of get up, get some momentum going, now the hardest thing to do is be in front of an agile team, whether they're in-person or remote. Once things are rolling and rocking and kicking and it's like everything's clicking, you can just bang out features left, like boom, boom, boom. Yeah, okay then we probably need to be...

    Unless we've got ways that we're pairing or things like that. I will say when we're together, mobbing is easier. I'm sure there's ways to do it remote, but being in a room, I don't know, it's a lot easier than coordinating over Zoom. You just, hey there's this problem, let's all hang out here after standup because we're just going to mob on this. So it doesn't take a whole lot versus anything remote, there's a little extra, okay, we've got to coordinate, and even different times zones, gets even worse. So yeah, don't get carried away with remote being the end all be all. Because I have a feeling there's going to be a... I would wager there will be a backlash.

    Amaar Iftikhar:

    And I'll take that back coming from the Agile, the person who does this day to day who helps teams become agile, I'll definitely kind of take your word for it. Plus with my experience too, I've seen nothing really beats a good white-boarding session. That is really hard to replicate online. I mean we have these amazing tools, but nothing quite mimics the real life experience of just having a plain whiteboard and a marker in your hand. That communication is so powerful.

    Jon Kern:

    Great point. You're so, right, because I had just with the one company that I was with for five years, we were doing high level engineered to order pump manufacturing sales type tool for... So it was my favorite world because it blended my fluid dynamics as an aerospace engineer, plus my love for building SaaS products, and building new software and things like that. And even having a young, we would interview at Lehigh University and we'd have some young graduates that would be working with us, and being able to bring them into the fold, and there was a room behind where my treadmill was and we'd go in there, we'd have jam sessions on modeling and building out new features. And man, you're right. Just that visceral three dimensional experience. Yeah, Miro's great. Or any other kind of tool, but yeah, it's not the same. You're absolutely right. That's a great point. You're almost making me pine for the good old days. [inaudible 00:42:04]

    Amaar Iftikhar:

    I think the good old days very much still exist. I think even now, it's kind of been a refreshing time for me to be with Easy Agile. I've only been here for just under two months now. And there's a strong in-person dynamic. And again, it's optional, where if people are remote or they're hybrid or they need to commute once in a while, it's a very understanding environment. But once you're in the office or you're in person, you kind of feel the effect you were describing, you're motivated to deliver for the end customer. You just want to come back. It's an addictive feeling of, I want to be back in person and I want to collaborate in real time in person.

    Jon Kern:

    That's beautifully said, because that's... One of the companies that we're beginning to engage with in South Africa, they're at this very crossroad of struggling with, everybody's been remote, but boy, the couple times we were together, got so much done. And you're describing the flame of, the warmth of delivering and let the moths come to the flame. I mean nurture it and then fan the flames of the good and let people opt in and enjoy it. And still sometimes, yeah, I got to say home, I got the kids or the dog, that's okay too. But giving the option I think is where we're going to head. And I believe the companies that are able to build that hybrid culture of accepting both, and neither mandating one nor the other, but building such a high performing team that basically encourages people to opt into the things that make the most sense at that time. And I think that those companies will rule the day, so to speak.

    Amaar Iftikhar:

    Yeah, absolutely. It's been so nice to chat with you John, and I've really enjoyed this. I want to leave the audience off with one piece of advice for distributed agile teams from you. We've talked a lot about the importance of in-person collaboration. We've talked about the principles of the agile manifesto. Now, what would the one piece of advice be when you're thinking of both? When you want the agile manifestos to be something that's living and breathing in distributed agile teams, what one piece of advice can you give businesses today right now who are going through the common struggles? What can you tell them as that last piece of advice?

    Jon Kern:

    Well, I think kind of a one phrase that I like to use to capture the manifesto is, "Mind the gap." In my sort of play on words, what I mean is the gap in time between taking an action and getting a response. Whether it's what do we do about the office, what do we do about remote, what do we do about this feature, what do we do about this line of code? The gap in time is, it's sort of a metaphor about being humble enough to treat things as a hypothesis. So don't be so damn sure of yourself one way or the other about the office or remote or distributed. But instead, treat things as a hypothesis. Be curious and experiment safely with different ways and see what works. And don't be afraid of change. It's not a life sentence to, you got to run your business or your project or your team one way for the rest of your life. No. Don't tell the boss, but work is subsidized learning. I never understood people who just keep doing the same thing because they weren't given permission. Just try it. So that's what my departing phrase would be regarding making those decisions. Mind the gap and really be humble about making assumptions, and test your hypotheses, and shorten the gap in time between taking actions and seeing a reaction.

    Amaar Iftikhar:

    Oh, that's awesome. Thank you. I really wish we could let the tape roll and just keep talking about this for a couple more hours, but we'll end it right there on that really good piece of advice that you've left the audience off with. Jon, thank you again for being on the podcast. And we've really, really enjoyed hearing you and learning from your experiences.

    Jon Kern:

    Oh, my pleasure. Any time. Happy to talk another couple hours, but maybe after some beers.

    Amaar Iftikhar:

    Yeah.

    Jon Kern:

    Except it's your morning, my evening. I'm going to have to work on that.

    Amaar Iftikhar:

    Yeah.

    Jon Kern:

    My pleasure, Amaar.