Project-Oriented Mindset
Published 2/12/2018
In today's episode, we talk about a way to avoid feeling like you're just working on an endless list of tasks.
Today's episode is sponsored by Linode.
In 2018, Linode is joining forces with Developer Tea listeners by offering you $20 of credit - that's 4 months of FREE service on the 1GB tier - for free! Head over to https://spec.fm/linode and use the code DEVELOPERTEA2018 at checkout.
Transcript (Generated by OpenAI Whisper)
Have you ever felt like you were kind of working in an endless loop? And you didn't really know how far along you actually are at any given point? And you're not really sure when that endless loop really is going to come to an end. We're talking about way to avoid this feeling, to avoid this mental state in today's episode. My name is Jonathan Cutrelll, you're listening to Developer Tea. My goal on this show is to help driven developers uncover their career purpose so they can do better work and have a positive influence on the people around them. You've heard that before if you listen to this show, and it's true, I truly believe that if you can connect to something that you believe in, then you're going to have a better work life. You're going to end up enjoying your job more, but you're also going to end up influencing the people around you. You're going to have a better influence on the people that you're directly in contact with, whether that's your coworkers, your family, your friends, anybody you come in contact with, your customers, everyone's life is going to be better if you are working better. And one of the ways that you can become disconnected, one of the ways that you can start losing sight of that purpose is to feel like you're floating. And this happens, unfortunately, far too often. Especially it happens when you work in a company that isn't super well organized already. This is something that happens with freelancers a lot. This is something that happens with teams that don't have strong structure or are in a transition state. And a lot of the time, software developers work in these environments because the companies that we're working in as software developers very often, those companies are newer. They haven't really established really strong boundaries, really strong roles necessarily. And so it's a little bit easier to end up feeling like you're in kind of a undefined state, kind of a mushy state is another way to describe it. And this can be really frustrating because when you have this level of uncertainty, it can create a little bit of a sense of anxiety. So we're going to talk about ways to mitigate this mushy kind of lack of definition. We're going to talk about kind of a mindset. It's actually kind of a bridge between principle and practice that will help you bring more definition to that kind of situation. But first, when we talk about today's sponsor, Linode, we've been highlighting particular features and offerings that Linode has just because there's so much to go through and there's so many different things that Linode provides to their customers, which is you. And today we're going to talk about stack scripts. Stack scripts. A huge thing that Linode has available for developers. And what it allows you to do, they've had it for quite a while, by the way, over three years now. But what it allows you to do is to simply answer a few questions for your server. Let's say for example that you want to spin up a WordPress site. Maybe you want to start a WooCommerce site, which is another sponsor of the show. And you want to get started quickly. So you don't want to go through all that boilerplate stuff that you know that you know how to do it most likely if you're a developer, if you've spun up a WordPress instance before. But really there's a lot of details that you forgot since the last time you do it because you don't do this kind of thing every day. Well, stack scripts help you get through this kind of mundane process and it provides you with a script that you can run on your Linode. So you have a Linode instance. You can run the script anytime you start a new Linode instance, for example, you may want to have a script that updates all of the dependencies on the server automatically. You can do that with stack scripts. And they have community stack scripts. These are things that people have already made for you to get started with Linode very quickly. So if you have, you know, a particular stack like for example, let's say you use mean, the mean stack, the node.js, an Angular or MongoDB and express. If you use that stack, then there's a mean stack script available for you. You can also call stack scripts from within stack scripts. They have tools. They have the Linode API can call stack scripts. It's a very robust system that allows you to do quite a few things inside of Linode. So this is one of again, many different offerings that Linode has for Developer To make your life easier to solve your problems to automate these solutions to take work off of your plate and offload it. These are the ways that Linode is working for you. Now, you can get started with Linode for as little as $5 a month. That'll get you a one gigabyte of RAM server. Of course, Linode is providing you as a Developer Tealistener with $20 worth of credit. All you have to do is use the code Developer Tea2018 at checkout. Thanks again to Linode for sponsoring today's episode. Get over to spec.fm slash the Linode if you want to learn more today. So we're talking about a way of getting rid of this uncertainty factor. There's no silver bullet here. I hate to break it to you. Uncertainty is something that you're going to deal with in your career, probably indefinitely. But there are ways that you can shift your mindset a little bit and practice differently so that you create your own boundaries. What I want you to do is to adopt a project-oriented perspective. Projects are defined as scoped efforts towards an objective. That's as simple as it needs to be. Scoped efforts towards an objective. Software projects typically have the following things in common. Number one, there's a limited resource that we will be using to accomplish this project. This can be time. This can be money. This can be hardware. Or it can be a combination of any of these things. These are all limited resources. You can't create more time. You can't create more money. You could create more hardware, but it would take more money to create more hardware. So limited resources. Number two, the second factor. There is an objective that the project is kind of pointed at accomplishing either directly or indirectly. It could be one or more objectives, but it's even better if you can kind of nail down a single objective per project. I want to say something about timeline on a project. Project can last as little as half a day. You don't have to have this major timeline and multiple people involved. Projects can be relatively small. You can also compose projects together. The idea is don't think of your work in terms of tasks. Things can pile up and they can end up being undefined. They can end up having really difficult to understand objectives. Ultimately, you decide how much time to put into a task. That's a really difficult process. It's going to leave you feeling like things are a little bit mushy once again. Instead, if you have projects and these projects have objectives, they have resources, and they have kind of values assigned to them, then you can choose which projects make the most sense. Only one change ever happens at a time. In other words, you can only do one thing at a time. You're not going to be multitasking. Prioritization happens whether you want it or not. You're going to choose one task at a time. It's of utmost importance that you actually take the time to do that prioritization. I would recommend that you have one project on your plate at a time. Don't try to bounce between projects, identify a project that is worth your time. Identify a project that is worth your time, your energy, that's worth the resources that you're going to spend on. Remember, projects are not just these endless buckets of time. They have limited resources. They have limited time. You can start to scope the kind of work, the kind of energy, the quality, the level of testing, the level of rigor that you're able to put into a project based on those limited resources. This is going to help you substantially improve the boundaries that you place on the work that you do. There's a lot of theory around how to manage projects. There's a lot of different opinions. But ultimately, if you're going to listen to this show, I would recommend that you do one thing at a time, don't try to multitask, that you focus on the highest priority items first, and that you try to deliver something that is working as soon as possible. This means that you're kind of living below your means. This is something that we learn in personal finance. If you have some financial margin, you're much less likely to get in trouble. If you can target, for example, you may set your personal target to ship something that is working at the 50% mark. In other words, whenever that limited resource, whenever 50% of it has been used, then something working, something that is absolutely minimal to the objective that you're trying to accomplish, something working is there. Thank you so much for listening to this episode of Developer Tea. I hope you enjoy this concept. More importantly, I hope this is helpful for people who are struggling with feeling like you're just kind of waiting through an endless ocean of tasks. If you add one more layer on the outside of those tasks, bundle those up together into projects. That's going to help your objectives. It's going to help you understand how your work is contributing to those objectives and how to put limits on the amount of time, the amount of effort you put into a given task. Thank you so much for listening to this episode. Thank you again to Lynneud for sponsoring today's episode of Developer Tea. Remember, Lynneud has tons of offerings, recovering them on this show, kind of one at a time, highlighting them. But you can learn all about Lynneud by going to Spect.fm's Slash Lynneud. They're going to give you $20 worth of credit just for being a Developer Tealistener. If you use the code Developer Tea 2018, check out head over to Spect.fm's Slash Lynneud. Thank you again for listening. If you're enjoying these episodes of Developer Tea and you haven't yet subscribed, then I encourage you to do so. You can subscribe in any podcasting app and we are also in Spotify now so you can go and find Developer Tea and Spotify. But we're posting three episodes a week and it's critical that you subscribe to Developer Teabecause a lot of people find that if they fall behind, that it's more difficult to go back and find episodes that they believe are relevant to them. Just because you're subscribing doesn't mean you have to listen to every episode. We intentionally post more episodes of this show than the average podcast because I know that not every single episode is going to be relevant to every single person. But when those most relevant episodes show up in your feed, you're much more likely to know about them if you're subscribed. So go and subscribe in whatever podcasting app you use. Thank you so much for listening and until next time, enjoy your tea.