Archive for category Hobbies

Hitting the Apex in Scrum Projects

Notice the title doesn’t say Scrum “Software” Projects, because I believe Scrum can be applied to many different types of projects. Having music and motorcycle riding as the other passions of mine, I find myself drawing comparisons and reapplying learnings where I see fit.

In a talk about building trust through delivering results in Scrum software projects, analogies with hitting the apex at a race track have come up, and I felt I had to expand on that idea. So for this post, I’ll consider a software project, but again, the ideas can be applied to many types of scrum projects.

I’ve only started learning about apices and race lines when I started riding a motorcycle at a race track in 2017, so my comparisons here come from my understanding on the subject as of November of 2020. As I learn more, I may need to update this post in the future.

If you’re a fan of races (motorcycles or cars, it doesn’t matter), you are most likely aware that racers know how to hit an apex consistently and why they should hit them.

Consistency is key; hitting the apex consistently, lap after lap is extremely important. Hitting the top speed on a straightway isn’t as important as hitting consistently high average speeds, which yield fast lap times.

Reaching 200mph on the straight and then running off track isn’t the most efficient way to turn fast laps (not to mention you might crash when you run off). Working crazy hours during a Sprint to deliver a high number of story points isn’t an effective way to turn good quality software and keep doing it lap after lap; I mean, sprint after sprint (not to mention you may crash; I mean, get burned out).

The apex is typically the slowest part of a corner. The soonest you can get to WOT (wide open throttle, which means you’re using the vehicle’s fullest acceleration potential), the faster you can get to the next corner. But then, you also need to know that you will have to slow down in order to make that next corner. If you’re looking down to the speedometer to keep marvelling at how fast you’re going, chances are that you will be running off track. If we keep solely looking at number of story points, we may lose track of where we’re going.

In order to find the proper race line, with the respective apex for each turn, we need to analyze each turn backwards. We need to know what comes after each turn to be able to plan a strategy for getting in and out of the corner as fast as possible; if turn 2 is a slow hairpin, then we may never get to WOT coming out of turn 1. If turn 4 preceeds a long straightway, then we need to make sure we exit that corner as fast as we can, getting to WOT as soon as possible.

However, opening the throttle too soon, may cause us to run wide, creating a need to slow down, before accelerating to the full potential (a process that causes loss of precious time).

In a motorcycle, if we open the throttle too much too soon, it may cause loss of traction. Depending on how we handle the situation, when the bike regains traction, it may send us on a trip to the moon and back. Not pretty. How do I see that in a scrum project? Maybe we’re forcing performance optimizations when it’s not the right moment?

Back to planning the corner backwards: we need to see what’s coming. We need to have a vision. We plan for it. Then we execute it (by riding laps). As we do, we look ahead, through the corner.

We may misjudge how much speed we can take into a corner and brake too much. Next time around, we brake a little less.

We may not have good reference points (brake points, turn in points, apex, exit points) around the track to help us assess our speed and strategies. On every lap, we stay aware of those things, so we can fix it next time. Remember sprint retrospective meetings?

Such approach can only work if we are not going recklessly around the track. If we’re riding without control, we will not be able to evaluate our execution; we won’t learn anything from it. So we can’t improve it. We can’t come up with better strategies.

Only hitting the apex isn’t enough. Racers have different strategies for hitting the apex. If they’re trying to make a pass, they may decide to take an early apex, so they can carry more speed into the corner, hopefully passing the other rider, but at the expense of coming out ot the corner slower.

On the hand, if they’re trying to turn consistently fast laps, they may take a late apex, where they carry less spead into the corner, but are better placed to accelerate harder out of it.

See the riders in the photo below: some are trying to pass, some are planning to pass, some are trying to avoid being passed. Their plan to hit the apex varies based on their desired next result (turn a faster lap to stay ahead of the others, get closer to the rider in front and set up for a pass, etc.)

Each lap is a sprint. One fast lap does not guarantee a race win.
Each race is a release. One race win doesn’t guarantee a championship win.

Consistency is key.

Vision, plans, execution, evaluation, tweaks, repetition, strategies, using them accordingly, focus, flow. Wait, am I describe racing or a scrum project?

Image source: Pixabay

Leave a comment

One Thing Different Every Week

Do you ever feel like you’re living in auto-pilot mode, where every week and every day seems to be the same? Well, I was, and I wanted to do something about it.

About 4 months ago I decided I wanted to try doing at least one different thing every week. It could either be something I’ve never done, or something that has been a while since last time I’ve done it. It doesn’t have to be something huge, such as “visit the pyramids in Egypt” (even though that’d be awesome!); it just has to be something different than the normal.

In order to track that, I’ve created a simple note in Evernote titled “One thing different every week”. At the top of that note a keep track of things I may try at some point, and at the bottom I keep a log of the things I tried, formatted as “Week of Month day, year: brief description”. This log is extremely important, as it allows me to go back and realize that I did do interesting, out of the norm, things. skateboard

Here’s a partial list of some of the things I tried/did in the last few months:

  • Go a whole week without drinking any coke (or soda of any kind). Not only did I manage to do that, but I went full 10 days with it. I didn’t think that was possible.  🙂
  • Gave somebody a nice gift that she was wanting for some time, but I did it at a regular day (not birthday, xmas, or anything like that). You see, presents given on those dates aren’t really a “surprise”, as the person normally expects something. That’s boring.
  • Bought me a nice new acoustic guitar.
  • Went bowling, after several months since last time.
  • Started doing some web developers after several years, first with ASP.NET MVC, and then Ruby on Rails.
  • Took a few days off and went on a trip with the family.

See, it doesn’t have to be a life-changing experience; anything out of the ordinary boredom should do. I’m also trying out small things that push me a little (or sometimes a lot) out of my comfort zone. For instance, this week I’m going to try to wake up every day at 5am to study something (I *hate* waking up early, and for me waking up around 7:45am is already bad enough). Who knows, maybe waking up that early to study won’t work out well for me; if that’s the case, maybe I should try waking up at that same time, but doing something else, like going inline skating around the neighborhood, or working on my music, etc. 

skatesAlso, another thing I do is to try out some soft ware or site I haven’t used before, like a different browser, or a tool that’s a competitor to another tool I use, so I can make an educated decision on sticking with the tool I was using, or switching to the other one.

Need some more ideas? Here you go: have you ever tried inline skating (rollerblading)? Give that a shot; you might like it. Did you use to skateboard when you were younger? Well, why not try that again? You may not be able to do the same tricks, but it’ll probably still be a lot of fun. How do I know? Well, take a guess…  Smile

If you give that a shot, let me know whether it worked for you, and if you feel like sharing, let me know what kind of things you’ve tried out.

4 Comments

Hallelujah! We’re done with the 2000-piece Jigsaw Puzzle

Holy Cow, that took us a while…  Smile

Several months ago, while at Barnes & Noble with the family, I’ve decided to pick up a big 2000-piece jigsaw puzzle (ok, it may not be that big to some people, but I’m sure I had never picked up one with more than 200 hundred pieces or so…). I figured that’d be something we’d enjoy engaging together. I’ve always appreciated the “old” Manhattan skyline, from watching so many episodes of Friends, so that’s the image I chose.

The first one or two months into this “project” went very smooth, but boy, the last several months after that dragged really bad. The main problem was that sky. Over 300 pieces of the puzzle probably go in there, and they all look pretty much the same! Fortunately, the wife was decided to finish that off, picked up the slack, and managed to pull it off.

Now I just need to get some puzzle glue, put it on a frame, and hang it on the wall.

I hear we may be picking up a 5000-piece one. I’ll try to make sure we don’t get one where there’s a large section with pieces that all look the same. Smile

 

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

Click on the image below to see an Animated Gif!

JigsawPuzzle-3000NY

1 Comment

Dealing with the boredom of traveling

I’ve been traveling quite a lot this year. I always make sure to have enough to keep myself busy while waiting at airports or flying. Last Monday I flew to one of our clients in Eugene, OR, and found interesting what my actions were from living the house until getting to the client.

  • Drive from home to the airport (that’s a 25-minute drive): turned on my MP3 player and listened to Podcast (.NET Rocks).
  • Left the car at the economic parking, and took the shuttle to the airport (about a 15-minute ride, since it had to stop at two terminals before the one I was going to): kept listening to the podcast.
  • Went through security and direct to the boarding gate (another 10 minutes): still listening to the podcast.
  • Waiting at the boarding gate, boarding, and then waiting for the aircraft’s cabin to be closed (about 20 minutes): that was about time for the podcast to finish.
  • After the cabin was closed, all electronic devices must be turned off, so I picked up one of the books I’m currently reading, and read it for about 15 minutes until we were airborne. I’m really enjoying that book, by the way; I’ll have a full blog about it once I’m finished reading.
  • Once airborne, I turned on my laptop, and started working on a building a little "memory game" in VS 2008. I wanted to do this just to practice more TDD, OOD, VS 2008, C# 3.0, and all that fun stuff (plus, whenever I’m done with it, my daughter is going to have a new game to play on the computer).
  • After an hour my laptop’s battery was totally out, and I still had an hour on the plane. I picked up my PocketPC and started watching a movie (I watched 300 again…).
  • Eventually I had to turn off electronic devices when we were preparing for landing, so I put out my PocketPC, and picked up my book again, which I read until we were ready to get off the plane.
  • I had a connection in Salt Lake City, so I walked to the right boarding gate, sat there until the time when boarding started. During this time I was listening to another episode of .NET Rocks. I also took the time to plug my laptop to a power outlet and left it there recharging the battery.
  • Once onboard, I basically followed the same ritual: listen to Podcast until they say you have to turn electronic devices off, then read a book until we’re airborne, then use the computer until the battery runs out, then watch a movie on the PocketPC, then go back to reading book until we’re off the plane, and then listen to podcast on the way from the airport to the client’s office.

Summing up: I did some programming, learned something from reading and from listening to podcasts, and watched a movie. And on top of that, didn’t get too bored while traveling. Not too bad.  🙂

I’m typing this blog entry on the plane, flying back. I followed pretty much the same ritual on the way back, except that I watched a different movie (Stealth, a pretty lame movie, if you ask me). And while my laptop’s battery lasted, I’ve caught up on my emails and read some interesting blog posts.

As for the rest of the week, the whole days are pretty much occupied by working with our clients, and that’s usually pretty fun, since I’m always facing different challenges, so the days fly by.

On the evenings I usually do some work, but I try to watch a movie or two. You know, I need to tune out a little bit to make sure I’m as productive on the next day. For my next trips, I’ll have two new gadgets with me to keep me sane on the evenings:

  • Traveler Speedster Guitar: a great guitar that I can take with me when I’m traveling, since it’s small enough to carry it on the plane, but still big enough to feel like a regular guitar.

aa

bb

I’m very excited about these two new toys. I hate being away from playing for weeks in a row, but now I’m going to be able to practice even when I’m on the road. I’m even considering taking these toys to the office every day and practice for 30 minutes on my lunch breaks. This will be fun!

Leave a comment

Trying to keep the sanity…

Just in case you don’t know, I keep another blog out there just to post about things that are not related to my life as a software developer. Here’s a link to that blog:

I just posted something related to my band, just in case you’re into music you might want to check it out.  🙂

I promise the next post on this blog is going to be technical.  😉

Leave a comment