🎙 Develpreneur Podcast Episode

Audio + transcript

Planning and Scheduling - Essential Habits for Building Better Developers

In this episode, Rob and Michael discuss the essential habits of planning and scheduling for building better developers. They share their approaches to task management and scheduling, and provide tips on how to prioritize tasks and focus on the most important ones first.

2024-11-02 •Season 23 • Episode 6 •Planning and Scheduling •Podcast

Summary

In this episode, Rob and Michael discuss the essential habits of planning and scheduling for building better developers. They share their approaches to task management and scheduling, and provide tips on how to prioritize tasks and focus on the most important ones first.

Detailed Notes

Planning and scheduling are essential habits for building better developers. In this episode, Rob Broadhead and Michael Milosz discuss their approaches to task management and scheduling. They share their experiences and provide tips on how to prioritize tasks and focus on the most important ones first. The hosts also discuss the benefits of breaking down large tasks into smaller, manageable chunks. They conclude the episode with a challenge for listeners to try out a new approach to task management and scheduling for the next seven days.

Highlights

  • Rob Broadhead discusses the importance of planning and scheduling in building better developers.
  • Michael Milosz shares his approach to task management and scheduling.
  • The hosts discuss the benefits of breaking down large tasks into smaller, manageable chunks.
  • They also talk about the importance of prioritizing tasks and focusing on the most important ones first.
  • The episode concludes with a challenge for listeners to try out a new approach to task management and scheduling for the next seven days.

Key Takeaways

  • Planning and scheduling are essential habits for building better developers.
  • Breaking down large tasks into smaller, manageable chunks is crucial for productivity.
  • Prioritizing tasks and focusing on the most important ones first is key to success.
  • Task management and scheduling should be approached with a focus on simplicity and clarity.
  • The hosts' approaches to task management and scheduling can be applied to both personal and professional settings.

Practical Lessons

  • Break down large tasks into smaller, manageable chunks.
  • Prioritize tasks and focus on the most important ones first.
  • Approach task management and scheduling with simplicity and clarity in mind.
  • Use a task list or planner to stay organized and focused.
  • Review and adjust your task management and scheduling approach regularly.

Strong Lines

  • The snowball effect of getting tasks done can be a powerful motivator.
  • It's not about being perfect, it's about being consistent.
  • Task management and scheduling is a skill that can be developed with practice and patience.
  • The key to success is to focus on the most important tasks first.
  • Breaking down large tasks into smaller chunks can make them feel less overwhelming.

Blog Post Angles

  • 5 Tips for Building Better Developers through Planning and Scheduling
  • The Importance of Task Management and Scheduling for Software Developers
  • How to Break Down Large Tasks into Smaller, Manageable Chunks
  • The Benefits of Prioritizing Tasks and Focusing on the Most Important Ones First
  • A Simple Approach to Task Management and Scheduling for Developers

Keywords

  • Planning and Scheduling
  • Task Management
  • Scheduling
  • Productivity
  • Software Development
Transcript Text
Welcome to Building Better Developers, the Developer podcast, where we work on getting better step by step professionally and personally. Let's get started. Well, hello and welcome back. We are continuing our season. We are Building Better Developers. We're continuing the season of Building Better Habits. This episode, we're going to talk about a habit of the habits, I guess, of planning. We're going to sort of get into one focus this time and the next episode, we're actually going to follow up and have almost like a two for one kind of combo little mini series within this. So this episode, we're going to look at that about planning, scheduling, and actually doing something besides just sitting there and saying, hey, I've got a crap load of stuff to do. Before you get into all of that, I have a crap load of introduction stuff to do, which is, hey, I am Rob Broadhead. I'm one of the founders of Developing and Building Better Developers. Also a founder of RB Consulting, where we take all of that crap that's out there and all of that overwhelm and that technology sprawl, and we help you understand what you've got, where you need to be, and how to get there. So how to, through automation, simplification, integration, take all that stuff and turn it into something that is actually useful for you. Good thing, bad thing. In the world of good thing, bad thing, I have like a, my favorite of the good things is I had some customers that were a little slow on paying and they finally paid. I finally like got them over the hump. So that's a very good thing. Related to that, and a bad thing, is that I had a vendor that had not invoiced for a while and I'd totally forgotten that they needed to invoice me. So now I've got to like go make sure I do that and get all of that pushed through and build out to the appropriate people. I want to add something we're going to add in this season. Let's talk a little bit about what we have been going through with some of our past challenges. And so the two that I, two really I want to talk about is one is the coding challenge that I talked about. I have continued to do that and it has been a very, very helpful for me to have something that won. What I did is I just like, hey, I want to get into an area of programming that I've heard about. It's a buzzy type, you know, buzzword kind of thing, but it's something that I don't know a ton about and I want to know more about it. So I go into a little deeper dive and it has allowed me to like, one, learn more about this thing that everybody would, you know, is talking about. And two, it's actually a little different from my day job kind of stuff. Some of the stuff I'm working on a day to day basis. So it's actually refreshing to be able to change gears and do something that's not, you know, like under the gun or anything like that. The other one I want to talk about is the pomodoro. I went through my first week of pomodoros and struggled a little with them, with them basically because I would get to the 25 minutes and I really usually needed about another 10 or 15. But I've kept this going and I've gone from on my to-do list, which we'll talk a little bit about this later, on my to-do list every day, I had one pomodoro. And now I have two pomodoros, which is sort of like, which I think is a really interesting approach to grow it is just that every day I'm going to have one that is a, we'll call it my day job pomodoro. And then I have my side hustle pomodoro. So it can be working in your business pomodoro, working on your business pomodoro, things like that. So it is making sure that I have at least, you know, a half an hour each day of these two things that are, you know, the driving forces of what I want to do career wise between side hustle and main hustle and things like that. So those are my challenges. And the follow up challenge for me is to now hand this over to Michael so he can introduce himself. So go ahead and introduce yourself, Mr. Michael. Hey everyone. My name is Michael Milosz. I'm one of the co-founders of developer Neuror, Building Better Developers, also the founder of Vision QA, where we help small and mid-sized businesses automate, come up with testing software and other solutions to help improve their business software. Good and bad. Good. I've actually, you were mentioning our challenges. I've actually made quite a bit of progress on kind of revamping my kitchen sink gap, adding some new tools and some new features that I've kind of been lax and updating for a while. The bad side, I didn't realize that some of the tools and things I had were not necessarily outdated, but they were broken with some of the latest operating system updates. So I went through a bit of pain point trying to Google to figure out how the heck to fix command line environment issues again, which is always a pain in the ass. Although with the challenges, though, I've been doing really good like you. I kind of did the daily Pomodoro. Biggest problem I have is if I tried to sit down in the evenings in block out time, I totally lose track of time. Like I sat down one night, was going to work for just 35 minutes. Next thing I know, it's three hours later. So I've got to really get a little bit better with my timers, especially once I found out that after a certain time, my phone is set to evening or so-called bedtime hours and it turns off all your alert alerts. So I wasn't getting notified. So I just kept on working. That does happen. All right. So we're going to talk about, I'm going to talk about planning and scheduling. And this is something that I have found a lot of developers, there is probably a split of developers that struggle with this because they would rather just get in and get going and do stuff and they don't really, they're just, some of us are just too scatterbrained or whatever that we don't really sit down and think through some of the details and the bullet points that we probably need to be thinking through. But then there's the other side that that is part of what we love because it is more of like mathematical kind of stuff where it's like you put a bullet, you put a bullet point down, you get to check it off when it's done, things like that. When you get into a day, now there's, we can talk about long, longer term stuff, but I want to really talk more about habitual type stuff, the kinds of things that are daily types of habit with your planning and scheduling. There are whole libraries of books written on productivity and tools and approaches and probably the one that I think most to some extent would apply to this would be GTD getting things done. The way he does it is way beyond anything I've ever done, but it may be something that's a very good fit for you because it does attack both daily stuff and then longer term things. On the daily stuff, I think the easiest way to start is to pick a number, probably like three to five, somewhere like that. You may be a smaller three or maybe you're an overachiever and you're going to say like five, but every day have a to-do list and you can either do it at the beginning of the day or you can write your to-do list for tomorrow at the end of the day and put three to five items on there. Don't go to like 10 or 15 because you're going to overwhelm and you're never going to get it done. If you only have one or two, then you're probably just like you're underselling yourself. So somewhere in there. These aren't things like brush your teeth, make your bed and make a cup of coffee and you're like, Hey, I got them all done before I got out like five minutes after I was, I rolled out of bed. It's not that kind of stuff. These are things that you want to accomplish in the day. Now one of the things that you want, it should be actually at the top is the thing that you least want to do. You need to get it done, but you just don't let you dread it. You do not look forward to it. The next thing is called eating the frog and it is, you will thank yourself if you can regularly find a chore, a task, a to-do item for your day that you don't want to do, but you need to get it done because just like day in and day out, getting that thing, those things knocked out is amazing how satisfying that is. And it doesn't sometimes take too long before you're like, there's not really anything out there that I've dread. And so your day suddenly becomes sunshine and roses until the next dreadful task appears. So you want to sit down and you want to take these tasks and you want to think of them when you're, when you're putting them in your mind, sort of when you're designing the task or defining the task is it's probably something that's going to take you a couple hours maybe. Typically if you're going to do three to five items, the items should be no more than roughly one to two hours a piece, or maybe if there's a bigger one that's going to take you half a day, then the other two pick some smaller tasks. The goal in doing this is to have an amount of things to do that are comprehensible to you, that are easy for you to keep in mind. Ideally you create your list and you can, you can off the top of your head, you know that list the rest of the day because it's a small number. It's not 15 items. It's a shopping list except for when you're just going to grab like a couple of things for that recipe that you need. That's why we write them down because we know if you've ever done that you have forgotten one of the items at least on the recipe that you need and you have to go back out. I digress. What you want is to have that thing that you really dread doing and then you want a couple of things that are well defined so you know when you're done. You don't want something where it's like, eh, it could take a couple of days. If it is, if it's something that isn't going to have a well defined stopping point, then define it down to a well defined stopping point. So instead of, for example, like I need to create a class to deal with customers and all of their account stuff. Well, like what can you get done today? So think of it more like, okay, I'm going to do the basic structure of that and a couple of getters and setters or something like that. You know, adjust your to do list because your goal and this is for your, well, we'll say for your work day, basically. Now it may be that your work day is like, for example, a hustle and a side hustle. You can tack on maybe, you know, one or two extra tasks where it's that three to five tasks for your primary day, your eight hour, we'll call your eight hour workday and then one or two that are your half day or whatever it is that you do after that. Now, the key to this is those tasks that you define for your day. If it's an eight hour day, they should probably be aiming for about a six hour day that you could get them done in six hours. If you try to fill it to that eight hours, you're almost always going to miss. You're going to end up stressed. You're going to have all kinds of stuff because stuff happens. Life gets in your way. You end up oversleeping. You spend too much time at lunch, whatever it is, get yourself a manageable list and I'll save what the challenge is with this. But like, as I'm going to pass this over, Michael, as we start thinking about that, it's like, what does that kind of thing look like? And it's something that you probably will struggle with a little bit initially because I think we under and overestimate ourselves all the time. We overestimate what we can do. We underestimate and overestimate what tasks will take, particularly the ones we hate. I don't know how many times the things that I dreaded forever, because I was like, that's going to take me a day. Took me half an hour. And I was like, why did I wait so long to do that? Now I'm going to allow you guys to wait so long while I pass this over. Michael, I want you to talk a little bit about task and your approach to this, and then we'll come back and talk about the challenge for this episode. Sure. So in the past, incidentally, we've I've kind of mentioned this before. So in my daily routine, what I typically like to do is I'll take a sheet of paper and fold it five or six times, tilts about the little, little bit smaller than an index card. And I'll sit down and I will write down what I need to get done for the next day or for that day if I didn't get to it the day before. By doing it this way, it forces me to keep a small list of things to do so I don't overfill my day. The other key to that is don't write small, write normal. You're only looking for four or five tasks that you want to get done in the day. Now these tasks could be multiple tasks in one. And by that, I mean, one of the things Rob mentions is always try to get that thing out of the way that you least like to do. Well, one of the things I least like to do is pay bills or deal with financial information. I just, that's not my cup of tea. So what I've actually done is in the past, I found myself constantly checking my bank statements daily. So now what I've done is not only have I organized this down into a daily task, but what I've done now is I've batched it and like every Friday on my to-do list is reconcile my accounts. So I go out, I check all the registers. So now instead of a task that took me five, 10, 15 minutes a day, I now moved it to the end of the week. It takes me maybe a half an hour and I can do it all at once. It's the least thing I like to do. I know it's one day a week and I knock it out quickly. The other thing, as Rob mentioned, is if you have these large tasks or these large projects that you're working on, one of the things you need to be careful of is breaking them up in such a way so that you don't leave them in progress when you end your day or you're at the end of the day and, oh, I think I can get it done. And you work into the night because you're stuck working on a task. When you get to the end of your day or the end last task on your list, make sure you are at a stopping point. Make sure that you are done for the day. One of the biggest problems I have is if I have not reached that point and I'm at like an indeterminate state on a problem, I may carry that with me when I walk away from the computer. It gets stuck in your mind. It's like, oh, I really need to get that done. What do I need? You don't want that. So that's one of the things about keeping track of this to do list that you can do to really not only simplify your daily task and keep it organized, but you also lower your stress level because if you get rid of those tasks that you least like to do quickly, as Rob said, it's a snowball effect. Then it's like, oh, that's out of the way. Cool. I can get back into the things I like to do. And I actually find it fun sometimes to kind of stagger your tasks. So start out with the, you know, the worst thing, the thing that you really don't want to do and then do something you want to do next, like something that you really like to do, but maybe it's a small task and then you do kind of a medium task in between that. And then maybe another easy task, maybe another larger task. So it's not just a matter of stacking what you need to get done in a day. It's also how you order your to do list for how you're going to accomplish this. The last thing I want to mention is as you're organizing or as you're listing out these tasks, make sure that, like I said before, you put common tasks together. So you kind of batch these common threads of work because by doing that, you also stay in the same mindset as you're working through your tasks. So like if you're working on building a particular component of an application, one task could be, okay, build the database. Second piece, add the repository piece to your application and talk to the database. So you kind of stagger the order of operations of things. By doing that, you really make it easier because you start out in the right path. Whereas if you started out with the front end here, build the GUI for it. Oh, I'm missing all these things I didn't think about because I didn't have the database yet. You've doubled your work. So also look through your tasks as how you're putting them together to make sure that you're doing them in the right order. So you're not having to go back and do double work. There's a couple of things there. The first one is... Actually I just lost both of them. So the first one is always pay attention to what you are focused on. The thing that you're going to do. Don't look down. This is a good example. Do your tasks asynchronously. Or I'm sorry, synchronously. Like serialize one, two, three, not in parallel, not asynchronous. And make sure that you know how to speak before you do a speaking task. Like I don't know, do a podcast or something like that. The breaking stuff down. I think that's one of the best benefits of besides just the endorphins of like, hey, I got something done and being able to say, I'm done when you get your stuff, which is a challenge, but it is actually very important. For example, if you go to a place and eat dinner and you have a, they give you a plate of food and you finish your plate, you are done. If you end up in a place that's an all you can eat and you keep going back and adding stuff, you are going to eat too much. Most likely. It's sort of the same thing. It's like, let's make sure that we are right sizing our tasks for our day. I think it's like, it is, it goes back to that whole idea of like doing them in order. Thinking about those and enough that you're like, okay, this is sort of, this is roughly what I'm going to do and how long the time block I'm going to take is going to force you to think about a little bit. So if you're like, well, I'm just going to start on my new app. Well, you're going to have to take a minute or two to say, well, what does starting on my new app look like? Am I going to build a database? Am I going to write a user story? Am I going to build out a, am I going to do a clickable? Am I going to do, you know, HTML page? Am I going to build CSS? Whatever it is. What is it? I'm going to, am I just going to go register a code repository and do a first commit? Those things. It, it allows you, it forces you and allows you to step into your day, not in chaos because now you're not improvising it. You have a plan and yes, it takes a little bit of time, but it's really not much. It's like five or 10 minutes maybe to sit through there and think through it. I go every day, like crank through my stuff. I can do it. And I don't know. I probably spend less than a minute and there are my tasks that are important. And then there's all these other little ancillary things like, oh yeah, I got to do this. It's the laundry list stuff of like, oh yeah, don't forget to send this email. Don't forget to do that thing. They're not really the tasks. They are tasks in themselves, but they're all those little tiny things that were like, oh yeah, don't forget to pay the bill or something like that. I knew if I vamped long enough, I would come back to one point. The, there is a different thing that we can look at that is how he handled his bills. And it's actually, honestly, it's exactly the same way I do it. It is Tim Ferriss when he talks about getting mail. That's how he does it. There are certain things that you don't need to do every day. And those things may be better candidates for a different approach, like a weekly list or something like that. I don't want to get out of the scope of this, but that's one of the things we probably will talk about. Actually, I know we will talk about later is more like the longer term stuff. This is very tactical. And so we're talking about your day. So challenge wise for the next seven days, because that's how challenges work here, I want you each day to start whether it's again, whether it's the beginning of the day or the end of the day before, put down three to five tasks. I would challenge you to pick a number and do that number of tasks each time for the next seven days. But the one and you can prioritize them, which would be even better. Let's say that's bonus points. We'll send you a virtual smiley face or whatever the heck it is when you do that, because you want to have the thing that you dread the most, the thing that's on you. Look at the items on your list and the one that you least want to do. Boom, put that to number one. I don't care. And they may all be pretty close, but whatever you want, at least put that at the top, because when you get that done, the rest of your day is going to be better because the crap you didn't want to do, you already got it done. So it's like, hey, smooth sailing after here. Do that for the next seven days. And I do mean seven days, not just business days, because I think it is very valuable for us to take this same skill and approach into our personal days. Now, I'm assuming that you work five days a week and you take two days off. If you work seven days a week, sucks to be you. There's not much we can do about that. But if you take six days, you got a day off on your off days, when you are off, when you're not working your main job or whatever it is, still do this because it may be stuff that's like, I don't know, mow the yard or get a haircut or whatever the heck it is. But keep that same, the momentum of building that habit. And also it is practice. It is really good practice because you start figuring out a little bit more, assessing things better. What kind of a task is this? How should I break this task up? Some of those skills that are actually very valuable, particularly if you're starting out and you're moving into, as you move into a senior, a mid-level senior, advanced, architect type role in the software world, you have to be able to do these mental exercises. Another mental exercise you have to do is you have to put down, send an email to info at developerneur.com because you need to give us feedback because we love to hear that. Particularly, you can make that last day, maybe that's your first priority on day seven, is to send an email that says, I have gotten into my seventh day and I got six days in a row behind this. Where I, and this is now my seventh day, I've completed my list. Because that means we're well on your way to starting a habit. And that, coincidentally, is exactly what this season is all about. So shoot us an email. If not that, you can reach out to us. You can leave us comments on wherever you get your podcast on YouTube. You can go to developerneur.com. You can leave, we've got a contact form. We've got all kinds of crap out there. All these ways for you to get a hold of us. And also to take a look at all of the content that we have out there, whether it's past episodes of this, the podcast itself, blog articles, mentor class, all kinds of stuff that we've done over the years. It's all out there. It's not super easy, but if you do like a couple little searches, you can find the topic you need most likely. That being said, I'm going to let you get onto that. Go get that list made. Go out there, have yourself a great day, a great week, and we will talk to you next time. Great momentum and great success.