🎙 Develpreneur Podcast Episode

Audio + transcript

Building Better Developers, the Develop-a-Noor Podcast

In this episode, the host shares a personal story about a near-miss experience and the lessons he learned from it. He discusses the importance of proper planning, risk assessment, and intentional design in software development.

2022-05-25 •Lessons learned from a near-miss experience •Podcast

Summary

In this episode, the host shares a personal story about a near-miss experience and the lessons he learned from it. He discusses the importance of proper planning, risk assessment, and intentional design in software development.

Detailed Notes

The host shares a personal story about a near-miss experience where he was stuck in a tree while trying to traverse branches. He discusses how the lack of foresight and planning led to the situation, and how he learned a valuable lesson from it. He applies this lesson to software development, explaining the importance of intentional design, planning, and risk assessment. He also introduces the concept of momentum in software development, highlighting the need to plan ahead and adjust course as needed.

Highlights

  • The importance of proper planning and risk assessment
  • The dangers of rushing into a situation without thinking it through
  • The need for intentional design and planning in software development
  • The concept of momentum in software development
  • The importance of having a clear plan and design before starting a project

Key Takeaways

  • Proper planning and risk assessment are essential in software development
  • Intentional design and planning are crucial in software development
  • Momentum in software development can lead to costly mistakes if not managed properly
  • It's essential to plan ahead and adjust course as needed in software development
  • Software development should be done with a clear plan and design

Practical Lessons

  • Take the time to plan and assess risks before starting a project
  • Make intentional design and planning a priority in software development
  • Be aware of momentum and adjust course as needed to avoid costly mistakes
  • Communicate clearly and effectively with team members to ensure everyone is on the same page
  • Review and adjust plans regularly to ensure they remain relevant and effective

Strong Lines

  • Proper planning and risk assessment are the foundation of success in software development
  • Momentum in software development can be both a blessing and a curse
  • It's essential to plan ahead and adjust course as needed to avoid costly mistakes

Blog Post Angles

  • The importance of proper planning and risk assessment in software development
  • How to apply the lessons learned from the host's near-miss experience to software development
  • The role of momentum in software development and how to manage it effectively
  • The benefits of intentional design and planning in software development
  • Real-life examples of successful software development projects that demonstrate the importance of planning and risk assessment

Keywords

  • software development
  • proper planning
  • risk assessment
  • intentional design
  • momentum
Transcript Text
Welcome to Building Better Developers, the Develop and Work Podcast, where we work on getting better step by step, professionally and personally. Let's get started. Hello and welcome back. Continuing our season where we're looking at mistakes and how we can learn from them and how those were maybe stepping stones for future successes. In this episode, we're going to talk about the day I died. Well, this is probably an overdramatic way to look at it. But to some people, that's how it was painted, which made it interesting enough. Let's just get right into this one. So I was, again, one of those things that was done in my youth. I don't know, I was probably 12, 13, maybe, probably not even 14 years old, probably closer to 10 to 12 or age range. And we had in our neighborhood several lots that were in the process of being turned into homes. We were not the first, but we were some of the first in our subdivision. So there was, there are actually still trees and things like that, like, you know, that have been around for a while, not just that somebody planted in their yard. And this is important because across the street from our house was a lot that had plenty of trees. They were good. I would say at least 40 to 50 feet tall, not like 100 or anything like that. But if you got to the tops, you were easily a good, you know, at least as high up as you could get on them, you're easily 30, you know, maybe 40 feet up in the air. That means that it was a good 20 to 30 feet across the, and there's a lot of trees, there's a good 20 to 30 feet across those where you could be at that age. Now, if you're a young kid with that weight, you could be, you know, bopping around on the tree. You could climb up there and you could be solidly, you know, on a nice solid branch. You don't have to worry about, you know, anything breaking on you or anything like that. And so we climbed trees a lot. We had, I think we've had even there, we had some quote tree forts. We didn't get too complex with them. It was mostly, you know, we'd find a couple of two by fours and set them up. So we had like a perch, you know, or something like that somewhere to sit. But it wasn't a, to sit with a tree fort was probably, that would probably be overselling it. But because of this, we were up in the trees all the time. And this is, I'm assuming, I think it was summertime where school was out or a weekend, at least where school's out. So at this age, you get up in the morning and you would go out and you wouldn't come back until street lights came on and didn't really matter what you did. Just, you know, you go out and have fun. And so we did a lot of things that involve, you know, climbing and running around and hammering on things and building things and all kinds of stuff like that. And then on this particular day, there was, across the street, there were three trees that formed sort of a, basically formed a triangle. And you could see from the branches, you know, the branches were laid out as a sort of, the branches are connected. They didn't really connect from tree to tree, but they, there was some overlap. And these are solid branches. I mean, they were good, probably at least three to four inches thick. And then you're talking probably again, probably a good 15, 20 feet from trunk to trunk, maybe even a little bit more for these trees. So there was a, you know, you figure it's a nice little triangle and they, it formed all the way from up in the trees where there was sort of a place that you could, you had a couple of nice ways to sort of build, you know, put some seats on and stuff like that and perches that you made use of that all the way down to the bottom. And then we had a sort of a, you know, an opportunity there because there's really not much growing between those three to have like a little, a ground fort kind of thing. Now the key to all of this is that we liked to climb. We liked to pretend like we were monkeys basically and go, you know, go hang out and climb the trees and there were places where there were vines and stuff like that, that we could actually do some swinging. There are some places where either we or other people put up ropes so you could do stuff. So it was a, it was our own little, almost literal jungle gym, you know, trees that you could swing on and do stuff. Well one of the days, this particular day, I decided that I could go up one of these trees and I could do a, you know, basically hanging on the branch, go hand over hand and actually go from one tree to another. It's not a swing, it's like, you know, not swinging but actually like traverse the branch and then switch to another branch on the other, to a branch on the other tree and then go to that other tree. So we could actually go from tree to tree up, you know, this is about 30, like I said, probably 30, 35 feet up in the air. And I don't remember that it was a, I don't think there was a dare or anything like that involved. I think it was just like me looking at it and saying, hey, this is something pretty cool we can do. Remember, I'm a young kid, so, you know, give some grace with the whole pretty cool concept or that quote. And so, you know, being me, I started going hand over hand from one to the other. And it was, the branch was solid. It held me no problem. It's not like, you know, as you're going along the branch, it's starting to like dip towards the ground or something like that. So all's well until I get, I don't know, probably a good 10 feet out from the base of the tree. And what I failed to understand is that there was like a little, there was a branch there. The way I was doing, the way I was moving is there was a, you know, it's essentially you think of it as a fork. So you had this nice little V of two where that branch split off. And as I'm going hand over hand, I'm just sort of, you know, cruising right along and I end up moving my hand into that V crease and getting it stuck. So I'm moving on pretty good and it's in there and it's at a point where it's like sort of, it's pinched in to the V and the way I'm at, you know, where I'm hanging, I don't really have a way or strength to get the leverage to pull my hand back out. That's a problem when you're hanging 30 feet off the ground. And so I sat there for a while and trying to figure it out and I'd probably even ask the guy that was with me for some help. I was like, hey, you know, I'm stuck. And there wasn't much they could do either because it's not like they could crawl out on that. They would have had to go hand over hand with me. There wasn't an opportunity to walk on the branch. This is one where you're going to have to hang if you were going to cross it. So there's not really, you know, other than somebody getting a ladder really fast and getting it up there, there wasn't much help they could give me. And that's okay because it didn't last very long before my arms started giving out and I was like, okay, I guess I'm just going to have to essentially let go. And there's a little bit of me trying to finagle my hand back out. But really it meant I was going to have to hang from one hand. And by then the one hand I would have been hanging from just didn't have the strength. I managed to work the hand free, but also worked my body free from the branch and started to free fall. And as I fell, one of the neat things about these three trees is there were there were like some binds and growth in that up, but not on the ground, but up in the air, probably, I don't know, say between eight and 15 feet, something like that off the ground. And so as I fell and hit those things, it basically moved my body. So when I hit the ground, it was on my back and just sprawled out. Didn't land on my feet, landed on my back and actually with my head towards the base of one of the one of the trees. So when I hit the ground, it was back first. And then my head sort of bopped back and banged the trunk of the tree. Not super hard, but enough where it was like, you say, ouch, except for I didn't say ouch. I hit the ground from the description. I think I bounced. So I hit the ground hard enough, hit it, bounce. And since I banged my head, I was just, you know, it's one of those moments where you collect yourself. It's like, OK, suss damage, things like that. In those few moments, my friend that saw me fall. Freaked out. Ran across the street, bangs on my door. And when my mom comes to the door, he tells her I'm dead. Just lays it right out. I'm dead. Fell out of a tree. I'm dead. And so she freaks out completely, as you would. And comes running across the street. By then, I'm starting to move a little bit. So that sort of reduces the hysteria involved in the moment. And I think she ended up yelling at me about, you know, of course, climbing trees and stuff like that. And how dare I scare her, even though in my defense, it wasn't me. I didn't say I was dead. I didn't even say I was hurt. And as it turned out, I wasn't. There was no broken bones. There were no bruises. There's nothing. I think I had a little knot on my head where my head banged the tree trunk. That was it. So I had this grand idea to traverse branches from one tree to another. It failed. Now, besides being just a one of those stories, there is a lesson that can be learned in this. And it is there's actually a couple, but really the key here, the thing that was a problem was a lack of foresight. It was lack of, as they say, that old cliche, look before you leap or proper planning, surveying the landscape of whatever it is that you are about to step into and ensuring that you have some idea of where the risks are, where the potential obstacles are and where the potential pitfalls are. If we just rush right in, we're not going to have the time to be able to do that sort of a risk assessment. And like this situation, sometimes there is a we'll call it there's a momentum, at least with us, say, rushing into something. And that ends up taking us a little further past the point, it takes us past the point of no return. It takes us further into the situation than we otherwise would want to be. In the software sense, this is actually not uncommon. There are many times that I have seen situations, say solutions, systems, applications during implementation where the design wasn't fully thought out. It was a little bit incomplete. And that ends up biting you, because what happens is you start in the implementation and you get to a certain point and realize it. Oh, what we built does not support what we need it to support. It either doesn't have the features or it's not going to be scalable or maintainable, or there's a bunch of different weaknesses that can appear as you get further into implementation. In particular, this is a challenge in the agile world. Because you are building with the knowledge that you know, we may change some stuff. There may be some alterations to our requirements. And it is not uncommon to get to a point where you say, oh, wow, you just changed those are those requirements. And the design that we have is at the very least not ideal for it. Sometimes it's it's an entire refactor redesign that is required to meet the change in requirements. And that is a little bit, you know, something that's a risk that I guess you you accept when you go into a situation like agile and say, hey, we we're not exactly sure we haven't nailed down what we're going to build yet. So, yeah, the stuff that you do early on may not be ideally designed for what we end up with. However, we can learn from this because there is this there's this momentum had I felt out ahead a little bit with my hand, I would have seen that, oh, I'm assuming I would have noted that, oh, hey, this running out of space where I can place my hand. So I'm going to have to adjust my handhold to get around this this fork in the in the branch. And that's the same things we can run into or that we can do to avoid some of these problems is one, particularly in the agile world, when you're going from sprint to sprint, there needs to be some some very intentional design going on that is a step or two, at least ahead of the implementation. So as opposed to just, OK, this is what we're going to build and we'll sort of design it as we go in this within the sprint. Instead, you need to have somebody that's, you know, ideally, it's the product owner and the scrum master, but somewhere, you know, something along those lines where it's like, hey, we we've got part of the team is forging ahead. So if we have to change gears, if we have to change directions, then they're out ahead of the momentum of the team, the core team, and able then to, you know, sort of slow them down and change your course as opposed to an abrupt stop and pivot. Because pivot's a great word, and I know, you know, businesses love to talk about that. But if you pivot and you're not really moving, you don't have a lot of momentum. That's awesome. If you pivot and you have a lot of momentum, you can blow it off. If you have a lot of momentum, you can blow stuff up. I mean, look at it. Think of like a plane. If you have a plane that's going along it, you know, whatever, you know, let's say it's a jet fighter, it's going along at hundreds of miles an hour and it suddenly turns 90 degrees and goes a different direction that is going to plaster the people inside it up against the wall at best, probably rip the whole thing to shreds because all of the material is moving one direction and then when you finally decide to move it another, the momentum is going to cause issues. So when we're designing, when we are thinking through what it is that we are going to implement, we need to keep that in mind, realize that there is this momentum. And so we can't just, you know, sort of keep your, your focus on your feet on the ground and just move one step at a time forward because that's maybe OK if you're taking slow steps. If you're running things are going to come up and it's going to be very difficult to change course. So you need to have either yourself picking your head up and looking ahead at what's coming up. What are the potential obstacles and pitfalls and things like that? Where are there situations coming up soon where you're going to have to make a decision and maybe take, you know, take one road or another, take one path or another? Because if you wait to the last second, the momentum might carry you. It could carry you right beyond the the decision point. And so you've already sort of committed at that point where your momentum has you moving past where you wanted to make that decision. And now you've got to, you know, put on the brakes, back it up, turn around and go down that path. And like I said, this is particularly an agile thing. You need to make sure that you've got people or at least a person and a lot of times it's people that are ahead of the primary development team as far as planning things out, building out that backlog. Now, some places, a lot of times, places start with this. There's like a design period before the first sprint where things are thought through to some extent, you know, maybe not completely, but thought through. And there's things thrown into the the backlog. And there's that there's some running room, there's some runway basically built for the team to start their sprints and get moving. That runway needs to be maintained. The length of that runway needs to be maintained. Otherwise, you may end up in a situation where the development team ends up basically running off the runway. They get to the point where the design is not ahead of them enough. And now you risk the option or the possibility of missing a turn of your momentum carrying you beyond the decision point where you wanted to make that decision. I think that's a good stopping point for this one. It's definitely a lesson learned that was maybe could have been much worse than it was. And I think it just shows, you know, sometimes we get ahead of ourselves. And when we do, we can realize that, oh, you know, we knew, you know, maybe that we should have taken that turn or we should have made that turn. But we realize that a little too fast. And then we're sort of, you know, kicking ourselves or saying, I wish I hadn't blown right past that exit. So something to consider. But we're going to come back and we're going to have more to consider next time around. So as always, go out there and have yourself a great day, a great week, and we will talk to you next time. Thank you for listening to Building Better Developers, the Develop-a-Noor podcast. You can subscribe on Apple Podcasts, Stitcher, Amazon, anywhere that you can find podcasts. We are there. And remember, just a little bit of effort every day ends up adding into great momentum and great success. There are two things I want to mention to help you get a little further along in your embracing of the content of Develop-a-Noor. One is the book, The Source Code of Happiness. You can find links to it on our page out on the Develop-a-Noor site. You can also find it on Amazon. Search for Rob Rodhead or Source Code of Happiness. You can get it on Kindle. If you're an Amazon Prime member, you can read it free. A lot of good information there. That'll be a lot easier than trying to dig through all of our past blog posts. The other thing is our masterminds mentor group. We meet roughly every other week. And this is an opportunity to meet with some other people from a lot of different areas of IT. We have a presentation every time we talk about some cool tools and features and things that we've come across, things that we've learned, things that you can use to advance your career today. Just shoot us an email at info at Develop-a-Noor.com if you would like more information. Now go out there and have yourself a great one.