Tag: ask

  • Lessons from Uncle Sidney

    Lessons from Uncle Sidney

    Uncle Sidney was notorious. I think even he’d agree to that.

    Sidney was his own weather system, with lots of thunder. Photo by Johannes Plenio on Unsplash

    He might indeed be someone’s uncle, but he isn’t my uncle or the uncle of anyone I know.

    He was the main instructor for one of the programming languages used (and created!) by one of my former employers. But if you said Uncle Sidney, everyone within earshot of him knew who you meant. Sidney was his own weather system, with lots of thunder.

    His reputation preceded him, for everyone’s safety.

    Portrait of Sidney

    Likely in the same moment in which you were signed up for Sidney’s class, you were warned that you DO NOT under any circumstances show up late for class. Leave home an hour early, if you have to. Don’t be late. Your manager will hear about it, loudly and in no uncertain terms.

    His insistence on timeliness wasn’t pure whim, or even simply a matter of respect. He had the timing of every day of his class down to the minute. If you delayed the start of class, that would throw him off schedule. And there was no “just start without me, I’ll catch up” in this world. This class was intense, and he needed you on board and attentive for every minute.

    Second thing you learned: don’t fall asleep in class. I did this once. You better believe he noticed, stopped the class, and called me on it — loudly, crossly, but not unkindly. We took a short break. Again, he needed our attention for every minute.

    The stories could go on and on. Some of the stories were not so great. “Sidney yells because he cares,” we’d say. It helped me to think of being yelled at as a badge of honor, but not everyone can let shouting roll off them like water from the back of a duck.

    Some stories were more entertaining. My favorite moment was when he quipped that Friday was actually “fried day” because people were fried by then… and then he laughed so much at his own corny joke that he couldn’t continue class for at least a full minute. Which, of course, threw him off schedule.

    I emerged from those classes reasonably conversant with the programming language. It’s been years since I last used it, and most of my knowledge of the language is gone now. However, several other lessons from Sidney stick with me.

    Slow down, smart people

    I find myself repeating this one as I’m mentoring: smart people have a tendency to rush, especially by jumping to conclusions. We’re gratified to put some of the puzzle pieces together and think we see the whole picture. We see A and B, and we get excited. We immediately decide F and G, therefore K… skipping a bunch of intermediate steps. Then when K doesn’t turn out to be true, we’re confused and stuck.

    The answer is often to rewind and start again with A, taking it one step at a time. A, then B, then C, then D… wait, what about E? It turns out E isn’t true after all, which explains why K was a faulty conclusion.

    Here’s a concrete example. Let’s say a specific input to a function should be generating a certain output, but it isn’t. We stare at the function, and we don’t see how we could possibly be getting the results we are seeing, given the input we’re passing in — or more accurately, given the input we assume we’re passing in.

    Slow down a bit. Check to see if the values we’re passing in are what we expect. They are. Slow down a bit more. Are the values we’re passing to the function the same as what the function is receiving? “How could they not be??” you might ask. Check anyway. Wait, they’re not… I pass 5 and 100 and the function is receiving 0 and 0?? How can THAT be?

    And that’s exactly the reason for slowing down: you’ll find those problems that exist in the cracks, in places where you assumed everything was going according to plan. Maybe you never saved your most recent code changes, so the code that is running isn’t the same as what’s on your screen. No wonder E isn’t true.

    Don’t always take notes

    There’s some evidence that writing things down with pen and paper, rather than typing them, improves retention. Writing by hand might force you to do more processing to put the ideas in your own words, whereas typing lets you record what was said closer to verbatim, without necessarily comprehending it.

    Sidney took this a step further, calling me out on my tendency to try to write down everything. He would provide us with notes, he promised. Try putting the pen and paper aside and just listening. Just absorb the ideas and make sure you understand. Too much writing, especially in a class as fast-paced as his, and you might start to miss the current idea because you’re too busy trying to record the previous idea. This can snowball quickly.

    Ask the question ASAP

    If I’m listening to someone lecture, I often hold a question in my mind, rather than asking it. I am trying to allow for the possibility that they’re going to explain it momentarily, or that I have all the information and I just need to make some mental leap to understanding. This is not a great habit.

    With some lectures, the information is cumulative. If you don’t understand the point that was just made, you are going to be confused by the point currently being made, baffled by the point coming next, and completely lost in a matter of minutes. And at that point, it can become hard to admit that you actually lost the teacher several minutes prior and you need them to recap a lot.

    Put another way: the best time to ask is as soon as you have the question, or as soon as you realize you’re confused. The next best time to ask is when you’re kicking yourself for not having asked because you’re now completely lost. As challenging as it is to confess being lost, it’s only going to get worse the longer you stay lost.

    Could you teach it?

    Related to the point about asking the question right away: one of Sidney’s tricks was to ask the class if we all understood something. Are we sure we all completely understood it… yes, nods all around.

    Okay, he’d say, then explain it back to me.

    Uh oh. Suddenly, we’re not sure we understood it so well after all. Oops.

    It’s not necessary that you understand everything perfectly on the first try, or that you could explain it to others after just one hearing. It is definitely useful to know that there are layers of understanding, and to know when you might be expected to be at a deeper layer than you are. Now, I routinely check my understanding: did I just barely follow what I was being told? Could I explain it to someone else if they asked? If not, what do I need to ask to get clarification? Or is my minimal understanding sufficient for now?

    You influence others too

    Uncle Sidney retired before I left that company. On his last day, I made sure to catch up with him to say my goodbyes and wish him well in his retirement.

    And it really hit me — as one of the original developers of that language, he’d taught “generations” of developers how to reason about it. He’d taught us how to slow down, skip the note-taking sometimes, ask the questions, and check our understanding. And everyone who taught the language would do so in his footsteps as well, even if their approaches and teaching styles were entirely different. In that way, his influence on the organization was not so unlike an uncle after all.


    What’s your legacy, and what do you hope it will be? When you move on from where you are now, what will people remember about you? What habits will they pick up from you, what lessons did they learn from you, and how did you influence the culture and people around you?

    Originally posted 10 September 2023 on Medium.

  • Choosing a mentor (updated)

    Choosing a mentor (updated)

    I’m happiest in a job when I’m learning from someone who knows more than I do.

    Last year [this post is originally from August, 2023], I started a new role on a team of engineers who all know boatloads about stuff I don’t. That by itself was a dream come true. Just after I started, we learned that one of my teammates would be going on parental leave in a few months, and it was decided that I would pick up his responsibilities while he was out. So, lots of knowledge transfer was about to happen. Better yet, he’s a great teacher, great to work with, and he works on things I’m interested in.

    Luck is not a strategy

    Let me clarify before we continue: I’m not telling you to get a mentor by changing jobs to one where everyone could be your mentor and the person who would be the best match from among them just happens to be going on leave half a year later. Nice work if you can get it, but that’s not a strategy, that’s mad luck. And it’s just the preamble to the story I want to tell you.

    The downside to this magical plan of knowledge transfer galore became painfully obvious about 5 months later when joyful news of the baby’s arrival meant my new work BFF was suddenly not available.

    Side note: it was less than 24 hours before we had a question that only he could answer. 😂😭

    I was too busy adjusting at first to notice, but it wasn’t long before I could see I was adrift. I needed a new mentor. But who?

    Start with the obvious

    First question I asked myself was an obvious one: “who do you know who might be a good mentor?” A worthwhile question, but for me it only generated some names who didn’t seem like good matches. People whose focus was different from mine (including most of my team). People who were probably too busy. People whose skills were too much like mine.

    Photo by Desola Lanre-Ologun on Unsplash

    I suspect this is where some people get derailed. I can’t think of anyone, or I don’t dare ask because I doubt anyone has time for, or interest in, working with me. And what would I ask them about anyway if we did work together?? The “who do I know” question was getting me nowhere, but it’s worth a shot, maybe someone leaps to mind for you.

    Decide what you want

    I thought about asking my manager, but then I realized he would probably ask: “what do you hope to get out of mentoring?” Huh, I hadn’t thought of that, beyond “someone to learn from.”

    There’s an important distinction here between “mentor” and “sponsor.” A mentor is a guide who can teach you, advise you, help you get unstuck. A sponsor is someone who can advocate for you in rooms you aren’t in, look out for opportunities for you, help you make connections. Identifying a potential sponsor is a whole other post. In this case, I wanted a mentor.

    I was looking for someone knowledgeable in topics I was interested in, someone who could answer questions or offer advice I had when I got stuck on those subjects. Someone who could give me a perspective from a vantage point different from my own.

    The next question that arose from this was: “what are you interested in?” Again, I hadn’t really given that much thought. I was immersed in this world of NodeJS and Kubernetes and cloud migration, but was that something I wanted to keep focusing on?

    I thought about the things I had been learning about recently, and DevOps came to mind. I know that term means different things to different people, so a few examples would be useful here. I had recently read The Phoenix Project by Gene Kim, Kevin Behr, and George Spafford (great book!). I had read some writing my new-dad colleague did on the mindset shifts needed for a devops transformation. I’d read a few items from our Enterprise Architecture (EA) team about it, and I’d been to a few architecture “community of practice” meetings where one of my EA colleagues had presented about that. That same person had written the “getting started with DevOps” article that recommended The Phoenix Project.

    As you might be guessing, this gave me an idea for who I might ask.

    You might also be thinking: great, Leaf, that you thought of someone. What if nobody had come to mind? That’s where I would have reached out to my manager. Having decided what I was looking for, I could start to tap my manager, or other people who have been at the company a while, to see who they knew who might be a good match.

    Deal with the doubts

    I had a name that seemed like a potential good match to me, but I still had doubts. Would he have time? Interest? Could I even set this up? He was in a completely different part of our tech org. And what would I say?

    I decided to deal with most of those doubts by ignoring them. Why cancel an opportunity before you even try for it? There was no way to know what would work unless I asked. I happened to have a 1:1 meeting with my boss’s boss around the time I was thinking about all of this, and I realized he might have the insight into whether this cross-org match would work. I brought it up.

    Sure enough, his first question was about what I was looking for from mentoring, so I was glad I had an answer ready. He offered to talk with my potential-mentor’s manager about it, and a few days later, I got the go-ahead.

    We scheduled our first chat. That left me faced with the question of what to actually say.

    Arrive prepared…ish

    I already have a rough framework for how I introduce myself to someone. It’s kind of a mix-and-match set of phrases about me that I tailor for my audience, omitting things they already know and focusing in on what’s relevant. I’ve been a developer for 20 years, I became a tech lead in 2020, I got to help an application grow from empty repository to serving users in production… that sort of thing. It situates me in time (how long I’ve been doing what), space (in the org chart sense), and experience (dev-turned-architect, learning devops). Pausing to invite the other person to share anything from their background or current interests is probably a good idea here, although I don’t think I actually did that, oops.

    I also had some ideas of how I was hoping this mentoring thing would go. Maybe meet once a month for half an hour, I’d batch up any questions I had about things I was learning. It was almost a “hey, let’s try this and see if it’s useful.”

    Other than that, though, I didn’t arrive to our first meeting with an agenda other than introducing ourselves and setting a cadence. I think that’s fine. I mean, if you have questions to bring already, bring them, you never know… but the first meeting doesn’t have to be a teaching session. It can just be an introduction, especially if you have not actually talked with this person before (I hadn’t).

    Bonus points (“wow, I wasn’t expecting that”)

    Let me just say that I had no idea what I was getting into with my new mentor. In a good way.

    Photo by Marcel Smits on Unsplash. That’s not me, but I did have curly hair like that as a kid.

    First? He was actively listening, even taking a few notes as I talked. It was clear that he didn’t want to interrupt me, but he was noting items he wanted to circle back to when I was done. Okay, I haven’t even finished introducing myself yet, and I’m already learning. Win.

    Second, I didn’t realize just how experienced a colleague I had picked. Checking someone’s LinkedIn profile first might be a good idea, no? I did not. In this case, my error was only in my favor, as I picked someone with decades of experience working with developers. He’s an astute advisor not just about devops and the tech we work with, but also about interactions with others. I’ve brought him some interpersonal work dilemmas and he’s had helpful insight.

    The biggest surprise for me was that this mentoring relationship turned out to be way more of a “two-way street” than I expected. What could I have to offer him, given that he has no particular need to troubleshoot a Jenkins build problem or learn how to use kubectl? Well, I’ve been a developer, a tech lead, and an architect, both doing the work and helping other devs do the work. That gives me a lot of visibility into and perspective on how dev teams in my area operate. And he’s outside of that area, so this is valuable to him. (Don’t fret if you don’t have that kind of experience, though – the perspective of a newer person is more valuable than you may realize.) We’re also working in partnership with each other, because with two different management chains, we have different sources of information, spheres of influence, and organizational contacts. We’re working out ways our teams can support each other’s efforts, and we’re introducing each other to people who can help.

    Ask, ask, ask

    Start by asking yourself the questions to determine what you are looking for from a mentor and how you imagine mentoring might look. Ask around to find a potential match, and ask for an introduction – if they don’t have time or interest, you’ll find out, and no harm has been done by asking. Keep an eye open for what you might be able to provide for your mentor in return (like sharing an interesting article or introducing your mentor to a colleague). You could ask your mentor outright if you can be of service in some way. Curiosity about yourself and others will serve you well on this quest.


    Many thanks to both of my mentors, I can’t imagine the last year and a half without you. Thanks to our management for making the connections (and for being great mentors in their own right). And thanks to “baby G” for disrupting the status quo and opening up doors for me in the process – happy first birthday.

    Originally posted 26 August 2023 on Medium.

    Epilogue

    It is now April 2025, and I am fortunate to continue to have both mentors as friends. I have also stumbled my way into a few other mentoring relationships as well. I wasn’t looking. I’ve simply crossed paths with a few more people whose knowledge and perspective have made them great teachers, whether or not they realize it.

    I’ve come to treasure those professional relationships where we can have a once monthly half-hour meeting on the calendar, with no prepared agenda, and we’ll invariably find more than half an hour of useful stuff to discuss. “Hey, I wanted to get your opinion on this…” or “so here’s the dilemma I’m facing…” or “do you have any advice for how I might approach…” or even “is it just me, or have you also noticed that…”

    I’ve also been able to be a mentor myself for a few others, folks who have sought me out directly or through their management. But whether I’m someone’s formal mentor or not, I see it as a key part of my role to just listen and be present with others, and to offer anything from my experience that might be useful in response.