Pybites Podcast

#010 - Beating Perfectionism

January 29, 2021 Julian Sequeira & Bob Belderbos
#010 - Beating Perfectionism
Pybites Podcast
More Info
Pybites Podcast
#010 - Beating Perfectionism
Jan 29, 2021
Julian Sequeira & Bob Belderbos

In this episode we discuss Perfectionism, what it is and how we overcome it ourselves.

To put some skin in the game we each share some stories (coding and every day life) where we got caught up in Perfectionism and the impact it had.

If as a coder you experience Perfectionism more often than you'd like, we encourage you to hop on a call with us so we can help get you some clarity and next steps: https://pybit.es/pages/talk

Show Notes Transcript

In this episode we discuss Perfectionism, what it is and how we overcome it ourselves.

To put some skin in the game we each share some stories (coding and every day life) where we got caught up in Perfectionism and the impact it had.

If as a coder you experience Perfectionism more often than you'd like, we encourage you to hop on a call with us so we can help get you some clarity and next steps: https://pybit.es/pages/talk

And I started going down this track and I actually missed the loose deadline. It wasn't something that was production, but the loose deadline I'd set with him. And he came back and he said, hey, man, how are you going with that? And I'm like, oh, yeah, I've just. I've got the core thing working, but I wanted to tack this on. He's like, oh, no, that core thing is great. That's all I needed. Hello and welcome to the Py Bytes podcast, where we talk about Python career and mindset. We're your hosts. I'm Julian Sequeira. And I am Bob Baldebos. If you're looking to improve your python, your career, and learn the mindset for success, this is the podcast for you. Let's get started. Welcome, welcome. Welcome to another episode of the Pibytes podcast. I'm Julian square, and I'm here with Bob. How's it going, man? Hey, you pretty well. It's Monday again, as usual, our favorite day for recording. Perfect day for recording fresh. New goals, new levels, new devils. I don't know. It's all good. New levels, new devils. I love it. What's happening, man? Yeah, no, we. We're going to talk about something important today, and that is the monster of perfectionism. Do you want to start by defining the beast, what it is? Of course. So, perfectionism for everyone listening is a beast of a problem. It affects us all. It's affected us plenty of times. It's essentially the mindset trap that you get stuck in when you don't act on something because you're too preoccupied with making it perfect. And it happens all the time. You know, think about any project you've worked, anything that you're working on, and you just keep going, oh, maybe just one more little tweak or just gotta fix this little thing on. Maybe. Maybe if I try this or change the color on that, or move this there, move that to that place, whatever it might be. It's delaying you and it's stopping you from pushing, it's stopping you from getting to that goal, it's stopping you from delivering on your promises. And it's. It's a real problem that we have, especially in the coding world. It's everyone struggle because everyone's afraid of. Of sharing their code, right? Everyone's afraid of what people might think. And it's a. It's crippling. That is the perfect word for it. It is crippling. It hinders your progress, it hinders your ability to deliver on your projects. And your promises. And it's just insidious. One of Bob's favorite words. I love it. And yeah, so essentially, Bob, what can people do about this if, if they're struggling? Anyone listening to this who is hit by why perfectionism identifies with what I've just said, what can they do about it? Can I stand on your soapbox? Yeah, please. Yeah. No, that's a great description. I wholeheartedly agree. I think, although it sounds cliche, what you can do about it is acknowledge it. And we really think it's having the courage to push your stuff out there, because first of all, it's never going to be perfect. That just doesn't exist. But also, if you're just procrastinating on getting your stuff out there, you're also missing out on the feedback loops, which will actually make you better. So getting your stuff out there quickly and imperfectly, I mean, we're not talking about putting out trash, of course, but it's a decent version. But knowing that it's not 80% perfect, even you get that feedback and you can learn and you can iterate. And that's often what we have found with our products and the platform is getting it in front of people and getting those feedback loops going. That's where you actually start to improve because you're getting in tune with your audience, with the market. Yeah, there's a good distinction to make there. Don't put out trash. I guess identifying the difference between trash and because a lot of people will feel like what they're pushing out there is trash, right? It's garbage code or something. But I think we need to take a step back and people should sit there and look at it and go, well, okay, it's not trash if it works, right? It works. It solved the problem. It just may not be perfect. It may not cover every possible exception that could be caught. And that's okay. These are things that you can implement over time. What matters is that you deliver. So that's a really good point. When I say trash, though, when Bob says trash, and I say trash, we're not talking about code that works and code that you're afraid to push. We're talking about people who might just take a shortcut and push something that doesn't work at all or that will essentially break the parent code base, if that's what you're working on. But with that said, no one is beyond perfectionism, especially us. This is something we struggle with from time to time, quite often actually, because we hold ourselves to a high standard that's just how we are. And so this is something that definitely slows us down from time to time. I like to think that we at least recognize. Bob, would you be able to say that we recognize when we're getting caught in perfectionism? I think so, yes. And it's definitely helpful that we bounce ideas off of each other. Then we can kind of spot when we're getting a bit pedantic on that. Yeah, just like starting this episode. Right? It's good enough. Yeah. Okay, let's just start. That's pretty much how we started recording this episode. Pen to paper or voice to the microphone, right? Yeah. Just start talking. Just start talking. All right. So, Bob, you first thought, let's talk some examples of perfectionism that we hit. So let's do a code example first. Then we'll go into some, I guess, everyday life stuff. So go with your code example. What do you have? Sure. Yeah. What we sometimes see when we're coding and with our clients is that we try to optimize too soon. Like we're laying out this whole class structure, doing abstract methods and all that. Well, we're not really sure yet how the thing is going to work, how the design will be. So at that point, I'm not against just writing a whole bunch of code in a module to see how it works and then refactor it into functions, classes and whatnot, because then I have a better understanding how the thing is supposed to work as opposed to laying out the whole class structure upfront, which sometimes is very difficult. So I think you can definitely go from scripting to software in that order. Implementing the patterns upfront can be difficult. There's definitely a place for getting something to work first and then make it nicer. What about you? Do you have an example from the coding world? Yeah. Yeah. So this one's a little. It hits home with me because I tend to worry about what other people are going to think about my code, and it's something I push through every time I'm going to push a code review or something that someone else is going to see. And I think it's kind of funny. One of the things that hits me more is not when a stranger or someone that I don't really know is going to look at it, but if it's someone that I do know, like a friend or even you, for example, I'll be really self conscious about it. And you're right. You were saying before there's a fear element to it, but for my example, I remember it was at work and I was just creating this simple script for a teammate, you know, on another team. And he didn't need it to be pretty, but I've written this script to do what he'd asked, the automation he wanted. But then I thought, oh, you know, this might be nicer for him if I make it do this, if I allow it. If I allow it to batch jobs, maybe if I put in a little front end for it, some sort of a web gui or something. And I started going down this track, and I actually missed the loose deadline. It wasn't something that was production, but the loose deadline I'd set with him. And he came back and he said, hey, man, how you going with that? And I'm like, oh, yeah, I've just. I've got the core thing working. But I wanted to tack this on. He's like, oh, no, that core thing is great. That's all I needed. And that was it. And then, sure enough, after he used it, then he came back and he said, all right, I see what you were saying now maybe that it's working and I can use, and I'm getting through this backlog. Can we tack on some stuff, like the batching of jobs and maybe a usable front end so the rest of the team can use it and so on and so forth? But, yeah, it was a bit of a learning lesson for me. Or a reminder that perfectionism just rears its ugly head whenever we least expect it. Awesome example. Yeah. Like, and really being in tune with the audience. Right. What do they really appreciate or need? Exactly. So the other thing about perfectionism is it's not just about the coding world and our work and day jobs. And it can tackle us anywhere. It can really knock us over and ruin anything that we're working on. So we thought we'd throw in an example of day to day stuff, the mundane, if you may. If I may. So, Bob, what's your example? Yeah, let's go with an insidious one. Working out. So, in Spain, we're not, luckily, not in a full lockdown, but the measures were restricted once again. So the bars and the gyms closed Wednesday afternoon, and I procrastinated on my next workout for four or five days. Finally today, Monday, five days later, doing one at home. And the reason was that I went in this extreme, thinking, like, well, a good workout requires the gym where you can have certain load, certain machines, certain exercises that I cannot do at home. Well, that's not true, because I have my dumbbells here, and you have good calisthenic exercises where you just use your body weight. And I managed to do a pretty intense workout this morning, so there was no reason to procrastinate. And it was a false belief that a good workout is only to be done in the gym. So that was really a good example of perfectionism. While just if you accept, like, well, home workout can give me 80% or more, and that's just good enough. That's. I mean, what's the goal, right. Is to stay fit. Well, you have enough equipment to do that at home. So that's a, that's a good example because there's a real impact there of the perfectionism. Right. What if you didn't make that realization? You know, what was, what would the repercussion have been? Just more procrastination and maybe putting off workouts altogether. Right. What about to the body? What, what about to the body? I mean, would you put on weight? Oh, for sure. Because, like, cheating then on the diet is just one step further. Right. That's the cascading effect. Yeah. Yeah. Just so everyone knows, this is from a discussion bob and I had before. Um, it's, it's the same here. You know, I actually fell, if you, if we're going to talk about the exercise thing, I fell into that same trap with, uh, you know, since the, the baby's been born. I keep waiting for that perfect time of, oh, yeah, I gotta. Gotta wait till everything's perfect so I can go do a workout, get my 45 minutes, and it just doesn't happen. And then next thing you know, I haven't worked out. Uh, and you're right. You know, it just reprocrastinate on it. Next thing you know, it's been five days since you did one. You remember Ramit Sethi saying she rather dreamed about running four times a week than actually doing it two times. Right. I mean, if you can do it two times, do it right. I mean, it doesn't have to be four or five, or I have to work out every day. No. If you can do it two, three times a week, you're probably still exercising above average. Yeah. Yeah, that's it. I was doing push ups in front of the baby and the rocker the other day just because I thought, okay, I got two minutes. All the washers are done, the dishes are done, laundry is done. Let's just get it in. Can you give another example of your personal life where we'll hit you? We'll wrap it up with this example. Mine's around the financial planning, so we at the start of this year, we thought, let's redo the budget because we have a family budget. Let's redo it, revamp it. We've had a few financial changes with schooling and all that stuff, so let's redo it. I told my wife I'd do it, and it was actually a really simple job. Could have been done in one to 2 hours, tops, if I'd bothered to just stick to the basics. But I tried to get really crazy with it and was, you know, she kept asking me, is it ready yet? Can we start playing with it? And so on. I'm like, oh, no, just, just wait. I just need to add this to it. Just want to tweak this. I want to try this out, connecting it to the bank and doing all these little things right. And next thing, fast forward. It's two weeks later, halfway through January, and it's still not ready. And that's half a month worth of transactions that have been missed in the budget, and we don't know where we are financially. So I got that gentle reminder from my wife saying, so you still haven't done it yet? Do you think you'll have it done anytime soon? I'm like, oh, crap. So, yeah, I mean, I got it done. I wound everything back, wound myself back in and just said, all right, let's do it. And I just got it done in like 45 minutes, and we're back on track. But it just did result in a lot of manual work. All the transactions from the start of the month till, you know, mid January, I had to manually enter and do all this stuff. So it added more work for me because of my perfectionism, which real consequences there. Yeah, exactly. So it was a bit of a pain in the butt, but a good reminder again that it can hit us anywhere. So. All right, Bob, let's wrap it up here. Challenge for anyone listening. What is it? Yeah, we're not pivots without a challenge. So next time you're working on some code, don't fret about everything being perfect. Just push it. And once the base functionality is there, basically, and then go iterate. If you're working on a repo, create some issues to track the items that you're currently worrying or holding you back. And yeah, take it from there, but get it reviewed. Go through that iteration. Don't sit on it too long. I think that's the main call to action here. Yeah. That tip on creating issues, I mean, it could just be whatever it is you're doing, you could just make notes in a notepad or whatever. But sometimes the perfectionism is caused by us having a lot of features we want to add to our code or whatever it is that we're doing. So just take a note of that somewhere, get it out of your mind, and that'll reduce that mental load on you so you don't worry so much about it. And you go, okay, I'm happy to push because I've got this stuff noted down. I've got it in the issues folder and. Yeah, I'll get to that next. That's a great point. I mean, we can only hold so many items in our hats, so using issues or noting stuff down, you actually free up mental bandwidth to take action. Yeah, there's a productivity tip as well, Julian, if people struggle with this and they want to talk with us about it, there's an option for that too, right? Yeah. So as Bob mentioned, we do talk to people about this sort of stuff and help people on their python journeys because we find a lot of people, a lot of the issues have to do with things like perfectionism. So if you do want to talk about this, make sure you check out the link in the show notes, notes and give us a call. It'll let you get on a call with Bob and myself. All right, well, Bob, thanks heaps, man. Really enjoyed it. Me too. This was great even just talking about it. Right. It's definitely something that, a monster that hits us as well from time to time. And that's something we need to battle, something we're going to have to remember in the next thing we're working on after this recording. Cool, right? You have a great day. All right, you too. Take it easy. Bye bye. We hope you enjoyed this episode. To hear more from us, go to Pibyte friends, that is Pibit es friends and receive a free gift just for being a friend of the show. And to join our thriving slack community of Python programmers, go to Pibytes community. That's pibit dot es community. We hope to see you there and catch you in the next episode.