DevQuestions with Tim Corey
I am Tim Corey. I teach coding online and my inbox is full of questions from current and future developers. I wish I could sit down with each of you and share the answers I know will help you go further, faster in the world of development. This podcast is the next best thing. On this podcast, I will answer the biggest questions people are asking! Send us to your suggestion for a future Dev Questions at https://suggestions.iamtimcorey.com/ To keep the podcast coming, like, subscribe, rate, and share it with your friends and colleagues. See why thousands of students have chosen to learn to think and code like a professional developer at www.DevForge.com.
DevQuestions with Tim Corey
318. Establish Good Habits That Accelerate Your Career
Use Left/Right to seek, Home/End to jump to start or end. Hold shift to jump forward or backward.
Bad habits drag you down. But establishing good habits can be an accelerator for your career and your life. So how do you set yourself up for success? How do you make and keep good habits? These are the questions we will answer in today's episode of DevQuestions.
Website: https://www.DevForge.com/
Ask Your Question: https://suggestions.iamtimcorey.com/
Sign Up to Get More Great Developer Content in Your Inbox: https://signup.iamtimcorey.com/
When we think about habits, we often think about bad habits, from spending too much time on our phones to avoiding the things that we know we need to do. But habits can be incredibly powerful. They can keep us moving forward well beyond our initial surge of enthusiasm. But establishing these good habits can be difficult. Let's talk about how to do that in today's episode of Dev Questions.
SPEAKER_00Welcome to the Dev Questions Podcast with Tim Corey.
SPEAKER_01Software development is more than just writing code. So let's talk about the rest of it. Specifically, let's talk about establishing good habits as a software developer. And then we'll transition into some good habits developers should have, as well as finally, we'll talk about some recommended reading if you want to go deeper. And let's start with the an illustration from my own life and how I established a good habit stuck around. I've spent a lot of time working on building good habits because this is not natural. And especially for me, it feels like it's just not natural. So as a software developer, I'm a software developer, I'm a trainer, I'm a business owner. I spend a lot of time at my desk, which is not ideal physically. But then, you know, that takes a lot of time. But then I also have a family I want to spend time with. And I want to, you know, do chores around the house. I cook supper sometimes, I mow a lawn, I get that stuff done. And then I have my hobbies. I'm an amateur photographer and I try and do other things as well. There's not a lot of extra time, it always feels like. And so one of the things that that often gets dropped by me, and it part of it is just being a little lazy, is I don't go to the gym. And so that was something I've been working on. I'm like, I need to go back to the gym. I need to get back in the gym and be more intentional about working out. And so I have all of these books, and I've got, I'll have four of them for you at the end that we'll talk more about. Uh no, it's not a promotional video, talking about a promotional link. Um, but I've read the books, I've worked through it, I've worked myself to be more intentionally, more uh focused on building good habits and establishing good habits. And I've got a lot of good habits, especially around my business and around creating content, et cetera. But this is one where I just hadn't done it for a long time and I needed to get back to that. And so I applied some of these techniques in order to really get myself back in the gym, and that's what I'm doing now, and I love it. It's I had a lot of fun, but there were things that I it I did that have set me up for success in a way that I've not had in previous times. Where you know, you get that initial urge like, I'm gonna go to the gym, I'm gonna go to the gym, you know, five times a week. And you go two days and you're like, I didn't do anymore, or I don't want to do it anymore. Um, this is why New Year's Day is rough at the gym because everyone's there the day after. They're always there to, you know, start that New Year's resolution. And then by day three or four, that it's just empty again. So I did things intentionally based upon what I've done in my professional life that applied here and have really set myself up for long-term success at the gym, which I am seeing. So here's the techniques that I used and that I've pulled from a lot of resources to really make sure that I understand how to do this well. Um, number one is set yourself up for success. So too often we get these, you know, the the our eyes are bigger than our stomachs, right? When it comes to that's a thing like my parents always used to say was, I get at the table, I'm like, I want everything. And your eyes are too big for your stomach. You you want more than you can actually do. Well, the same is true for anything in life, is when you get enthusiastic about it, you say, I'm gonna do it all, right? So if you're a software developer or learning software development, you're like, I am going to study 20 hours a week. And that just isn't going to happen. You are not setting yourself up for success. What you're setting yourself up for is maybe a week or two of doing that before you feel guilty about it, before you feel dragged down by it, before you feel overwhelmed by it, and you feel resentful for even doing it. And at some point, you're gonna give up. That's almost always what happens. So instead, set yourself up for success. And that means making sure that you are not taking more than you should, making sure that you are saying timing up. So for me, when it came to the gym, I'm busy. I got a lot of stuff to do, and I'm not a morning person. So I could have said, I'm gonna get up at you know, seven in the morning, I'm gonna go to the gym, you know, five days a week, seven in the morning. I'll be miserable. I'll be miserable. It will last for three days. It will last for a week. Um, it just won't last because I'm going to be miserable. I'm gonna wake up one morning and go, I don't feel like it, and roll over and go back to sleep. And then the next day, it gets even easier to say, I don't feel like it, and go back to sleep. So I set myself up for success. One of the things I noticed was I was looking for what's the time? What's the time where I can say, yes, this works in this spot? Because the gym is about 15 minutes away from me. Um that means you know, round trip is half an hour. So you got to take half an hour plus whatever time you take the gym. So at least an hour to an hour and a half, more realistically than an hour and a half at least, um, of time. So that's a lot of time. And I can't just say, I'll do it at noon. That isn't gonna work either. So the way my schedule works is I have I work, you know, pretty hard. I try and get up at 5:30 earlier sometimes if I'm gonna cook supper. And then I try and spend time in that time between 5:30 and 8.30-ish, 9 o'clock, where I'm available or I can, you know, maybe even play some games and do some other things that kind of refresh me, refresh, you know, spend time with my family, et cetera. And then I get time in the evening where I spend more time. Maybe I'm back to playing games again, or maybe I'm doing other things. And one of the things I think I found was that there are times in the evening where I'm like, I don't know anything else to do, so I'll just watch a movie, or I'll just watch a you know TV show, or I'll I'll play a little more of World of Warcraft or something else. So those times, what I said was, you know what? I can set myself up for success by saying, hey, when I have those times, I'm gonna go work out. I'm gonna aim for three days a week where I'm gonna go during those times where I'm like, what else can I do? I'm a night person, not a problem. So I'll go at 10, 30, 11 o'clock at night to the gym and go work out. So I set myself up for success by saying, here is the time that I have. It's not gonna be every night. It's not gonna be something where it's gonna get bumped very often by other things. And so that works for me. I had a friend of mine who was not is not a night person. So what he would do is he worked at a certain point and go, you know what? I'm gonna have a four. I'll give up a four and finish it. And so for him, the morning was the time. And so he would do things in the morning because that's what worked for his schedule. And so that could be your thing. But set yourself up for success, especially when it comes to timing. Figure out where is this work and where's gonna be the least disruptive thing. So if you set yourself up for I'm gonna do software development training uh Tuesdays, Thursdays, and Saturdays from this time to this time. Well, make sure that your Saturdays don't get bumped all the time. And if they do, maybe you figure out a different time on Saturday. Maybe it's Saturday evening or Saturday morning or whatever. Number two, set your inner monologue up for success as well. Okay. Make sure you have an inner monologue that's telling you good things. And that means you have to tell it what your inner monologue is. Too often we're passive with our inner monologue, where we listen to how we feel. And, you know, I don't feel like working out today. And so that's what you're thinking. I don't feel like it. I don't feel like it. And that's passive. That is letting your body, your mind, whatever, kind of drag you down. Instead, what you have to do is is talk to your inner monologue and say, I am a person who works out. Okay. So I am a person who uh likes to do this. I'm a person who is going to enjoy this. I am, I will do this because it is going to be good for me. And you start telling yourself these things and you work at pushing back what your brain is telling you. My brain is super lazy. My brain wants to do nothing but veg out, right? I don't want to do work. I don't want to do the things that I like to do sometimes, even. I just want to sit and be a vegetable. And that's not good. And so instead of allowing that to say, well, that's how I am, it's who I am. You need to push back at that and tell your inner monologue, this is what I am. So use I am statements. I am a person who works out. I am a person who wants to be better in the career. I am a person who works hard. I am a person and tell yourself these things. So with that, number three is similar, is you might need to lie to your brain. And that sounds weird because you're like, I know the answer. I know the truth, right? Well, isn't the truth, or is it just a lie you've already believed? Because your brain lies to you all the time. And it's time to lie back, fight fire with fire. Um, it may be that you just say to yourself, I'm gonna use the illustration working out, I can't wait to work out. Okay. And you know what? Right now, your brain may be saying, Yeah, right, I don't want to work out. I can't wait to work out. I can't wait to work out. And before long, you'll find that you started to believe your own lie and it becomes the truth. And this is not a bad thing, right? Like you are, you are telling yourself something that you you're turning, you're kind of manifesting it. You're you're working on saying, you know what? I'm gonna I'm gonna push back on my brain who is hurting me. I'm gonna push back and try and get something good out of this. Now, part of this is just emphasizing the good and ignoring the bad. You know, ah, my hips hurting me. Ah, my knees hurting me. I mean, I'm in my late 40s. Everything feels like it hurts, and I'm sure that 10 years from now, it'll be worse. So I understand that. My body tells me all the time, you're too old for this. You know what? Nope. The good is I'm gonna feel better. I do feel better. I do like this. And you start telling yourself those things and ignoring the bad things. Lie to your brain, set your up your inner monologue for success. Make sure that you're taking command of your own thoughts instead of being led by your thoughts. Work on that. And sometimes it comes down to just saying, I'm gonna believe this, even though I don't think it's true. And number four, start small. Too often when people get enthusiastic, they start huge. And like I said, when you start huge, that 20-hour a week training, what happens is that you do it for a while, but it starts to drag on you and it starts to feel like a burden and it just weighs you down. It's super hard to push through. It's like walking in chest deep water. You just don't make good progress. It feels like you're pushing ahead and you're gonna get through hours and hours of content. You're not really actually doing that much. Start small and then build up over time. And sometimes give yourself permission to do just a little. So in the gym illustration, um, it could be I'm gonna go to the gym, I'm gonna work out for 10 minutes. 10 minutes, I'm gonna I'm gonna do this one machine. That's it. And you know what? You're gonna get there and do that one machine, you're like, well, I could do a couple more sets. You know, I could do that machine over there too. And that kind of builds up over time. But what you're saying is, no, I only have to do this. And some days you're not gonna feel it, and you're gonna do that one machine and walk out. You're still successful. You did the thing you said. You yeah, it's not a big step. And and too often we think these massive steps are what we need to take in order to get to our goal. It's not, it's a whole bunch of small steps consistently over time. So just take small steps. It's much better because you're much more likely to actually keep going. So for me, when I started, it was just three machines and a minimum of 20 minutes. That was it. That was three machines and 20 minutes. And I've never been there for just 20 minutes. My lowest time is probably like 40 because I'm already there. I'm already doing the work. I might as well, you know, do one more rep, do one more set, do, you know, a few more minutes on the treadmill. And that stuff makes an impact because I'm doing, I'm, I'm successful just by showing up. But by doing a little bit more and just doing what I can while I'm there, I feel better, I do more. So start small. Number five, don't expect to be perfect. Um, John A. Cuff and I have a couple of books' recommended recommendations, but in a different book, um, he talks about what to do after your first failure. Because in his book, Finish. So in Finish, he talks about the fact that, you know, so often the way we we failed our goals is not all at once, but it's we we miss one, and then that we use that as an excuse to miss the next one. And that becomes an excuse to miss the next one, it becomes a snowball. And so what ends up happening is we don't just fail entirely, we fail a little bit, and we use that as the next stumbling block for the next thing. Don't expect perfection. It's okay to miss something. It's okay that you have something that came up, or you were sick, or you know, you just didn't feel like it. And you know what? Don't use that as an excuse. Don't feel like, oh, I can just, you know, skip whatever. But don't also be the one that then gets in your head and beats yourself up. Don't look at it as I missed, I missed, I can't believe I'd missed. I'm not a good, you know, I'm not good at going to the gym, I'm not uh a person who works out. Remember, go back to your brain and start telling yourself the truth or even a lie you want to be true. You want to reset your thought process. It's about look at how much you have done in the past and look at what you're going to do next. Okay. When I talk to developers about how do you learn software development? Because software development is more than about learning just syntax. Um, when you learn syntax, you're you're not even a junior developer, really. You even though you know most of, if not all, of syntax, it's about how learning how to apply that and you've gone through and done the work and and put in that effort. Well, that that's a whole mountain of work. And it's a whole, it's like looking at the Mount Everest when you're at base camp. We just look up and up and up, and you're like, man, there's so far to go. But look at where you've come from. You're at base camp. Now go a hundred more feet. Okay. Don't expect perfection, but get that next 100 feet down the road. Number six, celebrate success and ignore failure. This kind of goes along with it, don't be perfect. Forgive yourself. You're gonna make mistakes, you're going to be imperfect, you're going to fail. Celebrate your successes, ignore your failure. And finally, on this list, number seven, schedule it. So when I looked at, you know, how I set myself up for success, one of the things I looked at was what's that time? And so I scheduled it. And now it's on the schedule. So I do Monday, Wednesday, Friday. Um, although my gym is not open late enough on Friday, sometimes sometimes I do Saturday instead. Or, and if I do that, sometimes I'll I'll do you know Monday from that. But if I do Friday, I might do, you know, uh Sunday. And then I'll start on Tuesday, Thursday. Like I have a bit of a just in wiggle room. It's not like it's an in-stone thing. I have to do it at this time, but I know my brain, it's been two days, it's time to go. Like today, it's been two days, it's time to go tonight, right? So I want to get to the gym. So again, my thought process, how I'm doing it. Basically, all this comes down to being intentional in our actions, our calendars, and our thoughts. That's what it comes down to, intentionality. So let's talk about some categories of valuable habits for software developers. And we'll keep this brief. But number one, balanced lives. So, this is one I worked at throughout my career. I had a really good mentor early on in the process. I was 17 working as an intern. And I had a boss who really believed in me, not just in the work I could do. And he talked to me about living a balanced life and about how he became a workaholic for a while because he was so focused on getting this done that he forgot that he had a family. And that really caused some damage. And he had to recover from that. And he said, you know, learn from my mistakes instead of making the same mistakes. And that really helped me figure out how do I do this well and how do I start working on this? And it's not easy, it's not perfect, and you will never be, you know, fully successful in every area of your life. You're always gonna want more. And that's, you know, work is hard, and you're gonna have to do a lot of hard work in order to provide for your family or to provide for yourself or whatever the case may be. And that often feels like it comes first. But then, you know, in your off time, you're like, man, I just want to, you know, do my own thing, or I want to play games, or I want to whatever. And you've got to figure out how to maintain a balanced life. And so set up good habits can really be helpful. I went through a time in my life, and I've told a story before, but I went through a time of my life where I was working 50, 60 hours a week at my day job. And then I was also going to school online full time. And I'm also a bit of a perfectionist, I had to get straight A's. Um, but I also had young kids and I was married. So I also had a family. And so trying to figure out how do I do all of this well was very difficult. But by having already set up some good practices in my life, I was able to figure out how do I give each category enough. And so that took a lot of work. But setting those good habits early on was allowed me to do more than I thought I ever could. Number two, continual growth through practice. It's important as software developers that we continue to grow. Otherwise, what happens is we start to fall behind. I've worked with a number of people and a number of companies that fell behind because they they stopped growing and they did the work, they were putting their head down, get the work done, and the world changed around them. And it's very hard to get back on the track. That may mean that you have to do things outside of work. Your job may not be setting yourself setting you up for success. And while I wish this was not the case, your job does not owe you anything in your career. Your job is not required to make your career better. I think they should think of you as a human and they should treat you as a person they want to see succeed long term. But they don't always. We have to embrace reality. And so sometimes that means practicing outside of work. I know it's hard, but setting those habits up can mean that you do it effectively. Number three, career reviews. This doesn't have to be every month, but you should be thinking about on a regular basis, whether it's quarterly or every six months, where you're reviewing, probably not any more than six months, probably quarterly, where you are reviewing where am I in my career? Not on my job, in my career, where I want to be. Am I making progress towards that? Because too often people put their heads down and they just work and they lift their heads up and like, wait, I'm not where I wanted to be. I want to be somewhere else. But you can't start walking in a direction and then never look up because what we're gonna do is you're not gonna hit your goal. So a good habit is to be continually reviewing a career, make sure you're on the right path. It will save you years. It will put you in such a better place. Number four, learning new things. You should have a habit of learning new things. Because, again, life changes. And whether you wish it were this way or not, everything changes about software development seemingly every year or two. There is so much change that goes on. You might say, Well, I wish they would stop making changes, but the rest of the world doesn't change, doesn't stop. Like what we used to Have when I came into I was an intern. I was I was starting work when I was um yeah 17 in the industry. And you know, what we had back then is nothing like what we have 30 years later in in software development. Everything has changed. We no longer use floppy disks, we no longer have wide open network ports that just let anything through because who knows what security is, right? Like things have changed, things have grown in the industry. So learning those new things keeps you up to date and keeps that career in the right spot. And you know what? If you're doing career reviews, you know what new things to learn. You can't learn everything. But if you say, I want to be doing more uh server management, well, guess what? Learn new things around server management. You know, if you want to be a senior developer, you should be practicing more things around leadership, not just software. So learning new things is important. And then number five, invest in relationships. It should be a habit of yours to invest in relationships. It takes time, it takes effort, it takes intentionality, but it's really important, both personally and professionally. Number six, personal growth. This does not have to be anything to do with work, but the idea that you are growing as a person. Part of it can be your career because maybe some of what you want in your personal growth is I want to be a better leader, I want to be a better speaker, I want to be a more outgoing person. These are all things you could do in your personal growth. But sometimes it might be, you know, I want to be a more well-rounded person. I want to be a more knowledgeable person. I want to, you know, know more about World War II and the history thereof. Cool. Whatever the personal growth may be, work in that area. And then number seven, anything that gets you closer to who you want to be. Establishing good habits around making yourself progressing yourself towards who you want to be, super valuable. Because again, if you're not intentional, then what happens is you don't realize that life has just passed you by. So be intentional about investing in things that help you get closer to who you want to be every day. Put that as one of your habits. Okay, so there's some habit ideas, some categories for especially software developers. Uh, but what we don't often think about is the majority of what we do every day. We don't think about how we get up and you know, turn the coffee pot on and do all these things. We use routines to automate most of the things we do so that we can spend most of our brain power on the things that are important to us. That's just how we're wired. But if we aren't careful, those automated tasks, they can become bad habits that hurt us in the long run. Whether it's you know, spending an hour and a half on TikTok or whether it's sitting on the couch and just vegging out watching movies. Instead, take the time to establish good habits that can lead you to success both as a person and as a software developer. Now, if you want more help in establishing good habits, I can recommend the following four books. Now, just be clear, this is not a sponsored video. I'm not even putting the links to them. Okay. You can figure out where to go to get them. But these are books that have really helped me. I've really appreciated that are on these topics. So the first two here, um, you've probably seen these, but um Atomic Habits by James Clear and then Tiny Habits by BJ Fogg. Um, both of these are really good books at working directly on your habits and making sure that you're establishing good habits, again, tiny ones, um, that build up over time. And then the other two that I recommend, I love this author. Um, these are both from John A. Cuff. John A. Cuff is funny. Um, he writes really well. Um, he writes good. Um, but he he writes really well. He he's down to earth, um, and he's always really on point with um hitting the topic. And so uh soundtracks, it's about the the thought processes in your mind and how to establish better soundtracks for your head. Um so that's you know, that's his metaphor for it, but basically making sure we're thinking through things well and um being careful how we establish these soundtracks in our head. And then also, this one just came out recently, uh procrastination proof. This is the thing that, you know, for me, um procrastination is a thing, right? I push things off. My wife rolls her eyes every time because it for her, it feels like it works out a lot for me. Um but procrastination proof, the idea of making sure that you are not getting locked down by procrastination, but instead empowering yourself to do more without feeling like you're you're pushing hard. So again, really good content there if you want to go deeper. But establishing good habits is really important. And the thing is, it doesn't have to take a lot of time. But if you do it and build up over time, those small steps, what happens is over time it takes you so much further than if you were unintentional and allowed your habits to be whatever they are. Okay? So thanks for listening. And as always, I am Tim Corey.
SPEAKER_00Thank you for joining us for this episode of Dev Questions. When you're ready to learn to think and code like a professional developer, head over to IamtimCorey.com and enroll in a course.