Detailed Notes
Welcome to episode four of Building Better Developers. This season, we are focusing on "Building Better Habits." This episode shows how automation can handle repetitive tasks in your daily routine. By automating mundane work, developers can focus more on creative and strategic projects. These automation practices help build a more efficient development process.
*Read More*... https://develpreneur.com/automation-for-better-habits-streamline-your-workflow-and-boost-productivity/
*Episode Challenge:* Automate One Task
This episode challenges listeners to track their daily activities for a week and identify one repetitive task to automate. One task can be as simple as writing a script or macro to handle a recurring workflow. Another task, like setting up a CI/CD pipeline for code deployment, might be more complex. The aim is to find a process that takes up time every day. So spend an hour or two automating it and experience the time savings firsthand.
The goal is to make this an ongoing habit—automate one task this week and continue the practice in the following weeks. This small step can quickly add up, leading to more streamlined and productive workdays. Rob and Michael encourage listeners to share their experiences and successes, building a supportive community of developers focused on continuous improvement.
*Additional Resources*
* Boost Your Developer Efficiency: Automation Tips for Developers (https://develpreneur.com/boost-your-developer-efficiency-automation-tips-for-developers/) * Leverage Technology And Automation For A High Performing Business (https://develpreneur.com/leverage-technology-and-automation-for-a-high-performing-business/) * Use Regular Touch Points And Automation For Better Networking (https://develpreneur.com/use-regular-touch-points-and-automation-for-better-networking/) * Automation and Batching Tasks for Improved Productivity (https://develpreneur.com/automation-and-batching-tasks-for-improved-productivity/)
*Follow-us on:*
* https://develpreneur.com/ * https://www.youtube.com/channel/UCZOuFN_LhczvGyT2KSItH_g/featured * https://facebook.com/Develpreneur * https://twitter.com/develpreneur * http://linkedin.com/develpreneur
Transcript Text
[Music] and howdy everybody I am turning off my notifications once again and I hope that I don't get beaten up by notifications for a while so let's make sure good that's shut down all right hopefully we're good um I like the idea topicwise uh one that you mentioned last time uh I think it was last time somewhere along the way you put one out that was the idea of automation basically of like let's talk about um let me see podcast ideas here we go um yeah like automating processes or scripting common everyday tasks I think that's a really good one for us to do I think from a um a challenge point of view as well is to maybe do something you know I think we could maybe work into something where it's like hey take this week and when you get into the week automate something like look for something and just spend an hour 15 minutes whatever it is pick something that that you do every day and do it with the mindset of I'm going to find one thing this week to automate and it may be very simple but it's I think doing something like that is just a like let's just you know think about it for a while and then go do it so that it's not like doing one every day or anything like that it would be nice but I think it's more like if it was small you could do that like you know add a mail filter every day that it handles just one type of email you know or something like that um there's things like that but I think it's better to say let's take a week and let do it and let's see how that works is let's let's take something and give something that's a little bit more a little bit more in time invested but a little bit more payoff the other thing if I can remember what it was she wrote down quite a few we talked about quite a bit last time in the two episodes ago yeah and I'm trying so another one that I want to do that I think is a good um it also gives me a chance to talk about a side a little bit is um is going back and regularly improving your coding skills it was one of those things we mentioned about but it's like saying hey it's like not even though we're always we're writing new code and crap like that it's basically getting off of the rut that you're in and saying hey I still need to learn new stuff I need to be moving forward and growing on a daily basis so I think those two would make sense to me as it we'll go for this next set this next pairing um as it were is it those two go ahead yeah I like that because the first one interestingly enough I I can add on to that a little bit as well for that discussion because not only is it good to automate but it's also good to keep up with your scripts and that because uh I was working on or going through that book for that customer and very quickly realized that I was missing a few things so I added a couple uh additional things to pull it down but those were manual steps so I never actually folded that back into the code base to pull the data down in the correct format so like those special um characters and things like that that which was faster for me to actually pull it down at the command line and just run uh a shell command to strip out the data I actually started folding that back into the code to just strip it out it actually took longer so I actually just wrote a script that ran my program then it ran the script to use command line tool to strip it out it's just one of those where it's like sometimes you need to refine over time just go back and touch it yeah that's I think that's another one that is a uh a topic that we'll probably want to get into is a little bit more of a uh it's really more of like a technical debt kind of discussion is going back and adjusting your addressing technical debt on a regular basis because there's there's a lot of that obviously the one job was talking about is that's like probably the biggest challenge is that there's just huge amounts of technical debt and some of it's very it's interesting because some of is actually very simple to fix in the moment but when you look at it at a whole it's like you know it's like like it's the idea of like in a single application it takes you five minutes to do it and maybe you know maybe 30 minutes to like change it test it verify it all that kind of crap but then when you take that out to you know 150 applications that's a lot of time and then it's like everybody's got to go touch them and some of those aren't and it's you so it's it is it's a I think there's the the idea of going back and addressing paying on your your technical debt occasionally and we've talked about it a little but I think it would be a good U sub subject and probably a good I think we can come up with a couple good challenges for that as well so we are going to start with because I got to remind myself automating stuff okay oh I'll give you all three two one well hello and welcome back we are develop preneur we are building better developers and this season I think I can remember we are building better habits that is season 23 we are a couple episodes in each episode we are talking about a topic we pick a topic how can we be better what are some things that we can do how can we make some habits that are going to make us better and we have challenges now last time around one of the things that we did is we talked about the Pomodoro Tech technique and one of the things we challenged you guys to do is one Pomo Pomodoro you know little session a day love to hear how that went did you at least get a week of pomodoros I am like I think I'm Day short I will do one today it is really interesting that I've done doing one has been really interesting because every single time the timer goes off and I'm like ah I don't know I I actually have had every single time I've spent a couple more minutes afterward just sort of like oh wait I got to do this do this and then had to like cut it off and I did come back to that later but it was uh it actually was really good to just be like all right I'm GNA get really focused and when I do it's amazing how much like how fast that 25 minutes goes because I was doing 25 on fives it's amazing how fast that goes and it was amazing it's like oh yeah I did get a lot of crap done so let us know how these challenges go this episode we're going to talk about automation we're going to talk about finding ways to make make your life better by looking at what you do a lot it's the same thing it's a it's our profession so we should be good at building automation of some sort and scripting things and batching things and all those things that are what we do for everybody else before I get too far let me introduce myself my name is Rob Broadhead I'm one of the founders of develop preneurs of building better developers also the founder of RB Consulting where we essentially what I just talked about we help businesses understand where they're at take a look at your current uh systems and positions and road maps and things like that if you even have one and then help you create a plan a road map for the future to make sure that you're using your technology better you're taking that technology sprawl and all the pain related to it and through integration Automation and simplification finding a better way to use all those things to leverage technology to make your life better good thing and bad thing good thing for me is I went to vote the other day I did some early voting and it took me I don't know maybe 10 minutes total something like that it was really quick I didn't have to stand in line very long actually sort of like icing on the cake is as I was going through I looked back and the line was growing the whole time I was there so I like got in we got in just in time got our voting done got out so good thing uh bad thing oh gosh what kind of bad things do I want to I've had like I've had a week of bad things uh bad thing is um I had to is it's one of those things it's one of those business things it's always bad for me when I have to go like nudge people when I have to nudge a customer where it's like hey you've got like an invoice out there or hey you've got something you owe me sometimes now the invoices are harder because it's like hey I need you to pay us for our work work is not quite as hard but still where it's like hey you promised me this file or you promised me this content or this stuff that I need in order to work to move forward and I had a couple of those it was sort of my Friday like yeeha it's Friday thing as I had to go through and poke several people to say Hey you know me this I need this hey you forgot to give me that and that's just never fun it's so that was a that's a a culmination of a week of bad things one of the good things though was on the other side of the internet there Michael go ahead and introduce yourself hey everyone my name is Michael MOS I'm one of the founders of develop andur building better developers I'm also the founder of Invision QA where we do multiple things we help small midsize companies work with their software stack help you understand and deal with problematic software if you're a healthc care clinician or small Healthcare shop we also help you build medical software customized to your clinics to your office uh spaces so you don't have to go buy those big expensive uh tools out there you epic um to kind of get what you need out of your software and to kind of lead into today's discussion we also help you improve your user experiences with quality control Solutions through things like automation testing building automation scripts and actually working with users to identify what your software actually needs to do so you can test it before it actually rolls out good and bad good thing this week I actually finally checked off a couple of uh to do things I had to do do around my office for probably the last 6 months I've had some spotty internet connections with one of my routers kept thinking it was a switch finally I just went out and replaced everything rewired everything everything's working now as it's supposed to except although last night the bad thing is I think I have a Plex server that might still be going down so I may have to replace one more thing but I almost have all the media stuff in the house working smoothly so my wife who is not Technic ology sound is happy happy wife happy life as they say our happy life is going to come from automating some of our work now this is amazingly to me this is actually a challenge a lot of developers run into if we are essentially it's I'm probably over dramatizing it but just a little if we are dragged Kicking and Screaming into automation we will do it and then once we once we are we usually fairly confident with that we're pretty happy with it we're like we're content for example I know a lot of times that people developers have stepped into something built a project they've got Version Control they've got some Basics things basic things there but when they get into the cicd world and automating builds and deployments they're like no I'm not going to do that I that's like I don't want to do that right now then when they get to that point where it's like okay everything I do every time I do a you know a commit that gets reviewed goes in and it pushes out to all the places they're like that's great that's awesome but we don't want to do that naturally we have too many of these manual tasks that we do on a regular basis that if we just would invest sometimes 10 or 15 minutes we can save ourselves easily that 10 or 15 minutes in the first day or two and maybe more than that and we have talked in the past about things like utilizing tools that are out there like your mail filters with your your mail and and cleaning that up and springling that I don't want to talk about that this time I want us to take something that's a little bit bigger and I want us to look at how do we find a way to make it easier now when we step into this kind of a this like a we'll call it a mini project when we step into this little mini project of I want to improve something that is wide ranging so what we first want to do is is find some targets of what we can improve now like we do for our customers in a lot of cases one of the things we're going to do is we're going to look at what are the things that have the greatest value to improve them to do process Improvement and that could be either something that has run you know occasionally that takes a very very long time and it would be very helpful to have it take a very long a very less long time or something like that is to to cut that time down you know maybe cut uh like monthly processing if it takes 3 days and maybe it would be much better if we could do it in 3 hours things like that but more likely what's going to help us are the things that we do on a daily basis the things that we spend five or 10 15 minutes or maybe an hour or two each day doing and find a way to improve that or automate that and that's where I want us to look as we're moving forward into this is we're embracing this particular habit what we need to do is take a period of time like usually a good time is a week because this is where're going to see multiple daily tasks and keep a little closer eye on essentially like maybe at the end of the day take a look back and just do like a little brief like log or something of like what did I do today and give yourself at least a rough like how long did it take the how long did it take and itself can be a very interesting question to answer because there's a lot of times that if you're ask how long does it take you to do X you'll quickly say that takes 5 minutes if you actually look at the time during the day it may be 30 minutes or an hour checking mail is one of those things people will be like oh I just spent a few minutes a day looking at mail but if you actually really break it down you'll find out that maybe you're looking at it for an hour every day now there are certain things that we do that are our rituals essentially that we're going to do with a developer a lot of times these things come into the play like uh maybe researching something downloading a file checking if something needs to be updated uh maybe checking status uh like you know ticket statuses and things like that looking at my dashboard what is it I what are the tickets that are on me uh to do today uh prepping or Fallout from a standup meeting and sort of like okay how do I get my stat like daily status how do I put my little status together how do I fill that out we also do a lot of things like uh the equivalent of now a lot of people don't do compiles but you may compile or build or deploy software you may spin up and down uh you know virtual box virtual machines or containers or things like that there's all these little tasks that we do during the day that we do regularly enough that even if it takes us five minutes a pop if we could cut a minute off of that it may save us 10 minutes a day not only that is if we can find a way to automate these things to effectively make it either run one command line thing or click a button then it saves us from typos and things like that so one of the things that I think we can look at if you live if you find yourself regularly on the command line doing something usually it's gonna be like a build a run a test run executing a couple of scripts those kinds of things that would be a great place to start if it takes you five commands to do that and they're basically the same commands all the time especially if you're just like if you've got the history and you're just like scrolling back up and you go like execute this back up execute that ex execute that that's a perfect example turn it into a Bach or shell script take those couple of things and those you know maybe it's three or five or 10 commands and instead of running put it into a shell script and now it's one script and it may be one that is just literally all you do is you execute that script and that's it maybe it's like you execute that script but with a uh like a path parameter or something like that and this is where if you're looking from day to day you may find things like hey I do this for a project when I get going when I start my day I execute these couple of things to get my project going but I also have five projects I'm working on at this time so now I'm executing this five times a day so maybe I can take those disperate steps and give them like a I mean it may be as simple as I just give it a a value that's like 1 2 3 4 5 that's each of my you know various projects I can execute that have it do the setup or whatever it is that it needs to do and then I'm off and running if you want to get a little more graphic in your or gooey in your world then maybe what you do is it could be something like let's say you log in every day and when you log in you have five applications that you fire up every time you may want to put it in the startup but you may say Ah that's too heavy I don't always want to do that so instead maybe you have a button that's just basically like a fire off these five applications you may also want to do some sort of an organizational kind of approach it's like I usually go to these six folders to get information well okay instead of doing that let's pull those folders into one location or have a you know a central button I can look at to give me a link of that maybe there's a plot a lot of websites that go to you can always use you know favorites and things like that you can keep up you know 15 tabs that you can keep open at a given time or maybe what you do is create yourself a little web page that is a click on this and it spawns the 15 tabs that you want to have and logs you into everything those are the kinds of tasks that we can't really can't have somebody else step in and tell us this is what you need to do these are the ones that we are going to be the best to do it because we need to look at what we do each day what's the time and the e involved in it and where can we maybe you know Skip a couple steps or automate going to step one two three instead of us manually doing each of them maybe do all three at once maybe do something where there's a uh something we're sort of eyeballing at every like we're watching logs and we're just looking for something to happen automates a watcher on the log automates something that's going through there and says hey if I get this thing pop an email or pop a a message box or whatever it happens to be these are just a couple of places that you can go in your automation exploration but they're all going to be I think very valuable it may take a little bit of time to figure this out and how you automate it but I think you will find that it will be worthwhile and at some point you'll get to the point where like wow how did I ever do why did I ever do it manually now you may ask why would I ever pass control over to Michael well you're going to find out right now so what are your thoughts on this hey Rob thanks so you've already talked about using like the command line interface you talked about the history and that with automating scripts and builds love that I'm going to take this and build upon that so I'm going to actually go by example one of the biggest things and me and Rob talk about this a lot is we don't necessarily always deal with daily tasks when we look at automation when we think automation sometimes because we've been doing this for a long time we look at the tasks we're working on so am I building a website okay what things do I need to always do when I build a website okay well am I doing like a lamp a map or some type of MySQL uh Linux PHP build well if you do that you can almost guarantee build a script to install so once you do it one time if you go through and you go through your history and you take everything you did that first time save that as a script some you're going to probably use that again on the next project one of the key things though if you do write these script files and you do keep track of these make sure you add read me files or some type of documentation with your scripts or within your scripts add some comments I have been very bad at this over the years I found old scripts that I've been looking for where I didn't document the script the file got moved away from the documentation and I'm like what the hell is this oh this is what I need for this uh and it's like crap okay so the reason I stress this is one of the cool things especially for those of you starting out as new developers or even new entrepreneurs one of the big things we always need as business owners is we need a website right so we need to spin up a new website well AWS provides a free tier that lets you get away with almost no cost to throwing up a standard blank you know standard template website can throw up a WordPress site uh whatever well the cool thing is if you do it once the following year if you need to keep kind of keep it on the lowball you can create a new website spin up a new AWS instance free tier extract your uh WordPress site or your website run that script on the new server and just copy your files over or even write a script to export your files over so at the end of the year you can have a push button solution to literally take one site from one domain to another domain with little or no effort where to spin it up the first time probably took you three hours or longer depending upon your skill level secondly rob you mentioned logs so logs are wonderful so if we kind of stay within the AWS world there's a lot of information stored in that AWS console there's you know logs there's uh service alerts there's performance uh benchmarks AWS is a great example of where you can use automation because you can go in there and you can apply alerts you can go in there and you can apply thresholds oh if my instance is starting to peek out at 90 100% spin up a second instance or spin up a load balancer that could load multiple instances in the background your application scales and all that is handled through automation scripting if you don't have that and your system crashes you're going to get an angry call from that customer and you're going to have to go onto the site figure out what's going on and that takes time money and frustration with your customer so you want to do these things you want to automate them now when you first spin it up that may not be in your mind that's fine but before you go live you better have at least walked through some scenarios where you have some Automation in place to keep that application live so you have zero downtime the third thing I kind of want to touch on are framework so as developers we write a lot of code and a lot of the code that we write is pretty much standard boiler plate which is what we call we have depending upon the language you have to have some structure or some format of some type of method structure whatever within your codebase to actually run the file to build a website to build a mobile app well you can actually write code generators or use code generators to automate that process say you can push a button boom here's a crud here's a uh basic application now just go fill in the blanks now just go quickly add all the pieces you need to get your application up and R now for those of you that are more Junior look at using like third party dependencies or um potential tools to do this initially but once you get better at this and you get more advanced you'll probably want to start writing your own you're going to get into these habits of oh I like this approach I like this framework this seems to be the best practice for this and what you do is you write that into your code generators so when you go build the next project you kind of have a little checkbox oh I need this I need this I need this build here's your application now go fill in the blanks so it's just one way to kind of step in through Automation and the last point I want to talk about is kind of from my years of teaching Microsoft professional uh which is teach teaching kind of uh business developers how to use Microsoft uh application products like word excel access it's funny because there's a not just net but behind the scenes in the Microsoft uh office framework is like a Visual Basic architecture or a Visual Basic application macro system that's hiding behind the scenes now this over time it's been more replaced by uh C or.net but what is interesting about it is is even if you are not a developer even if all you do is business documentation you write spreadsheets you build little uh access databases to store collections of data or you write uh templates or Word documents constantly for business meetings and that you can use macros which are automated scripts within office to essentially script out tasks to build templates to build spreadsheets to do calculations for you that you would have to sit there and figure out your formulas for so macros are just another way to think about using Automation and ironically on Windows macros are also another way through the windows dashboard to kind of do those collection things like Rob was talking about where you could oh you want to spin up five applications well set up a little macro build the macro to say hey start this start this start this kick it off macros essentially translate into uh can be transferred into shell scripts uh it's just another kind of scripting way of doing things in a Windows environment Mac has something similar they have an automator tool that you can use uh but these are just things look at your daily tasks if you see yourself doing something again and again and again you probably want to automate that and ideally if you don't know what you're doing every day if you're on Windows it's a little bit harder but maybe look at uh like uh key tracking tools or possibly even look at uh like application tracking to see what you're in where you're spending your time and that can help you identify oh I spent two hours doing this today that really is a five minute task that I can write a script for and push a button once a day or maybe two or maybe not even push the button maybe schedule it to run when I need it to run five or six ounds a day and just have it email me what I need or just put it into a file and at the end of the day there's my report or whatever I need to do so again automating isn't just about programming automating can be simply taking your tasks and batching them together using these kind of automated tools scripting batching macros so no matter what your technical level is take a look you know do a quick Google search on how can I automate something how can I write a macro and you'll find thousands of examples online very quickly to just kind of tailor to what you need and now we live in the world of semi AI smartness pick your favorite AI tool and just say hey I do this is there a way to automate that and but be careful throw in an operating system because there are different solutions based on your different uh platforms that you're using so now after that I know you're like itching to go so let's give you a challenge for the week what I want you to do the challenge for this week is to take this week ahead of us and spend at least you know five days of looking at what do you do each day what do you do where do you spend your time one of the things that Michael mentioned there are a lot of apps out there that are basically time tracking apps that will show you where do you spend your time what are you doing so you may want something like that if you don't feel that you are going to be able to figure it out yourself if you feel like you're just like I'm just too busy I get the end the day I forget what I did I get that use a tool it'll help you out when you get to end of that time look at the things that you do and pick one pick one of the things that's out there and spend a a little bit of time maybe an hour or two maybe even and automate it build an automation process for that it doesn't have to be like for example it doesn't have to be a full-blown code generator if all you do is build a little shell script that copies and puts together you know from maybe 10 selections of code Snippets and turns around and builds a file for you boom you have automation if it's something as simple as uh something that goes out like this something I used before there's all these sites like Michael talked about if you've got all these customers you've got all these sites that you're just you just want to make sure that they're good that they're up that was like the simplest thing is or like an API is it still running is are things going you could build like just build a little app that goes out and pings each of those things you know those kinds of tools it wouldn't take you very long it's a really good little side hustle kind of thing to do it's a little side project to do it may be an opportunity to learn uh something new maybe it is you go out and you're like hey I spend way too much time building status reports in word go look up VBA and how do I you know maybe templae some of that or how do I pull in information like from slack that all my slack discussions how can I pull that information in and build a status out of it or connect to jira and get information from that those kinds of things look at if this than that IFTTT I think there's three T's there.com or make or some of these other sites that are out there that that's their whole purpose zappier these are the places they are built to automate these kinds of things if you haven't looked at them make that part of it take a look take five minutes and look at one of these sites and see if it makes sense to or if they've got a built-in automation for something that you do on a regular basis along the way make sure that within that automation you send us an email at the end of it it says hey I automated this and this is why okay you don't have to send us and automates you you have to do it every day but I would love to hear from you we'd love to get your suggestions out not only your suggestions for moving forward but feedback on what you've done how have these challenges worked where have they improved and maybe even dare I say built a habit that has helped you out because our goal is not for you to just do this Challenge and be done do this Challenge and then the next week do it again the next week do it again in because that is how you're going to build your habits as always like I said you can shoot us an email but you can also reach out on developer.com we have contact form there you can see us on see us you can follow us you can do all those good things on X at develop andur you can go out to YouTube if you aren't there you can check out the developer Channel you can see this and lots of other content that we've put together over the years uh just however it is if you're out there on a podcast uh any whatever your favorite podcast device and listening thing is there's most likely a way to do a comment to give us some sort of a you know a like a followup some sort of feedback we want to hear it good and bad we want to hear because you guys help us make this whole thing better we're doing it for you so we need to get your feedback that being said go out there and have yourself a great day a great week and we will talk to you next time bonus material uh I had one that I thought about and I just didn't get into it I was like all right I'm going to save this for bonus material and now I forgot so I'm going to throw it at you first you have you have some bonus material you want to throw out there yeah I got two so one because you mentioned like emails and automating emails there are a lot of tools out there the biggest one that comes to mind is MailChimp you can go customize your customer base if you send a lot of emails to a lot of email groups use an email administrator like MailChimp because that's going to keep your site Whit listed you're not going to get black listed if you have to spend out send out a lot of email you can do it yourself but be warn you might get blacklisted if you do it wrong Additionally the other tool I like to use over time is called toggle it works on pretty much all devices and what's really cool is if you get the paid version of it it will actually track what applications you're in for what time you're in and it really works great with jira because if you're actually starting a ticket and you click Start it will actually start the timer you could go work your ticket when you're done you can click stop so you actually can kind of see how long you're working on a particular issue now the only gotcha with that is if you forget to hit that the timer is going to keep going but that is the nice part though if you do the professional version if you go to something else and start doing something else it will keep track of that so if you forget to hit stop you can go look at what you were doing and say oh I stopped at this point stop but this really needs time so you can actually go customize your time tracking uh so it's just an extra bonus there and there are a lot of those um there a lot of good time trackers like that there are ways to you start and start timers you can always build your own too uh there's a lot of ways that you can uh skin the cat as it were no offense to cat lovers and get that kind of information from uh your the week behind some of the things that you you know the week that has gone by and what did you get done uh bonus I guess one little bonus thing is as you're going through this do this on a daily basis as you're trying to look at what you did do it on a daily basis if you get to the end of the week you're like okay now I want to look at what I did this week it is there's so many things that get lost in the Wheats there's so much that you just you'll forget about so do this on a daily basis is is sit down the end of the day take a couple minutes it's probably going to work great with like you know putting status if you've got some sort of daily status thing that you do do that all in just one little sitting at the end of the day what did I do how did I do it if you can make notes along the day even better that's just like a a bonus to you that'll wrap this one up and we will be back we're going to come into the next episode we've already talked about what the topic is so it won't be too much of a surprise to you but we'll come back anyways get a little bit of time on that and uh step into the next thing so go out there and have yourself a good one and we will talk to you next time [Music]
Transcript Segments
[Music]
and howdy everybody I am turning off my
notifications once again and I hope that
I don't get beaten up by notifications
for a while so let's make
sure good that's shut down all right
hopefully we're
good um I like the idea topicwise uh one
that you mentioned last
time uh I think it was last time
somewhere along the way you put one out
that was the idea of automation
basically of like let's talk about
um let me see podcast ideas here we go
um yeah like automating processes or
scripting common everyday tasks I think
that's a really good one for us to do I
think from
a um a challenge point of view as well
is to maybe do something you know I
think we could maybe work into something
where it's like hey take this week and
when you get into the week automate
something like look for something and
just spend an hour 15 minutes whatever
it is pick something that that you do
every day and do it with the mindset of
I'm going to find one thing this week to
automate and it may be very simple but
it's I think doing something like that
is just a like let's just you know think
about it for a while and then go do it
so that it's not like doing one every
day or anything like that it would be
nice but I think it's more like if it
was small you could do that like you
know add a mail filter every day that it
handles just one type of email you know
or something like that um there's things
like that but I think it's better to say
let's take a week and let do it and
let's see how that works is let's let's
take something and give something that's
a little bit more a little bit more in
time invested but a little bit more
payoff the other thing if I can remember
what it was she wrote down quite a few
we talked about quite a bit last time in
the two episodes
ago yeah and I'm trying so another one
that I want to do that I think is a
good um it also gives me a chance to
talk about a side a little bit is
um is going back and regularly improving
your coding skills it was one of those
things we mentioned about but it's like
saying hey it's like not even though
we're always we're writing new code and
crap like that it's basically getting
off of the rut that you're in and saying
hey I still need to learn new stuff I
need to be moving forward and growing on
a daily basis so I think those two would
make sense to me as it we'll go for this
next set this next pairing um as it
were is it those two go ahead yeah I
like that because the first one
interestingly
enough I I can add on to that a little
bit as well for that discussion because
not only is it good to automate but it's
also good to keep up with your scripts
and that because uh I was working on or
going through that book for that
customer and very quickly realized that
I was missing a few things so I added a
couple uh additional things to pull it
down but those were manual steps so I
never actually folded that back into the
code base to pull the data down in the
correct format so like those special um
characters and things like that that
which was faster for me to actually pull
it down at the command line and just run
uh a shell command to strip out the data
I actually started folding that back
into the code to just strip it out it
actually took longer so I actually just
wrote a script that ran my program then
it ran the script to use command line
tool to strip it out it's just one of
those where it's like sometimes you need
to refine over time just go back and
touch it yeah that's I think that's
another one that is a uh a topic that
we'll probably want to get into is a
little bit more of
a uh it's really more of like a
technical debt kind of discussion is
going back and adjusting your addressing
technical debt on a regular basis
because there's there's a lot of that
obviously the one job was talking about
is that's
like probably the biggest challenge is
that there's just huge amounts of
technical debt and some of it's very
it's interesting because some of is
actually very simple to fix in the
moment but when you look at it at a
whole it's like you know it's like like
it's the idea of like in a single
application it takes you five minutes to
do it and maybe you know maybe 30
minutes to like change it test it verify
it all that kind of crap but then when
you take that out to you know 150
applications that's a lot of time and
then it's like everybody's got to go
touch them and some of those aren't and
it's you so it's it is it's a I think
there's the the idea of going back and
addressing paying on your your technical
debt occasionally and we've talked about
it a little but I think it would be a
good U sub subject and probably a good I
think we can come up with a couple good
challenges for that as well so we are
going to start with because I got to
remind myself automating stuff okay oh
I'll give you all three two one well
hello and welcome back we are develop
preneur we are building better
developers and this season I think I can
remember we are building better habits
that is season 23 we are a couple
episodes in each episode we are talking
about a topic we pick a topic how can we
be better what are some things that we
can do how can we make some habits that
are going to make us better and we have
challenges now last time around one of
the things that we did is we talked
about the Pomodoro Tech technique and
one of the things we challenged you guys
to do is one Pomo Pomodoro you know
little session a day love to hear how
that went did you at least get a week of
pomodoros I am like I think I'm Day
short I will do one today it is really
interesting that I've done doing one has
been really interesting because every
single time the timer goes off and I'm
like ah I don't know I I actually have
had every single time I've spent a
couple more minutes afterward just sort
of like oh wait I got to do this do this
and then had to like cut it off and I
did come back to that later but it was
uh it actually was really good to just
be like all right I'm GNA get really
focused and when I do it's amazing how
much like how fast that 25 minutes goes
because I was doing 25 on fives it's
amazing how fast that goes and it was
amazing it's like oh yeah I did get a
lot of crap done so let us know how
these challenges go this episode we're
going to talk about automation we're
going to talk about finding ways to make
make your life better by looking at what
you do a lot it's the same thing it's a
it's our profession so we should be good
at building automation of some sort and
scripting things and batching things and
all those things that are what we do for
everybody else before I get too far let
me introduce myself my name is Rob
Broadhead I'm one of the founders of
develop preneurs of building better
developers also the founder of RB
Consulting where we essentially what I
just talked about we help businesses
understand where they're at take a look
at your current uh systems and positions
and road maps and things like that if
you even have one and then help you
create a plan a road map for the future
to make sure that you're using your
technology better you're taking that
technology sprawl and all the pain
related to it and through integration
Automation and simplification finding a
better way to use all those things to
leverage technology to make your life
better good thing and bad
thing good thing for me is I went to
vote the other day I did some early
voting and it took me I don't know maybe
10 minutes total something like that it
was really quick I didn't have to stand
in line very long actually sort of like
icing on the cake is as I was going
through I looked back and the line was
growing the whole time I was there so I
like got in we got in just in time got
our voting done got out so good thing uh
bad
thing oh gosh what kind of bad things do
I want to I've had like I've had a week
of bad things uh
bad thing is um I had to is it's one of
those things it's one of those business
things it's always bad for me when I
have to go like nudge people when I have
to nudge a customer where it's like hey
you've got like an invoice out there or
hey you've got something you owe me
sometimes now the invoices are harder
because it's like hey I need you to pay
us for our work work is not quite as
hard but still where it's like hey you
promised me this file or you promised me
this content or this stuff that I need
in order to work to move forward and I
had a couple of those it was sort of my
Friday like yeeha it's Friday thing as I
had to go through and poke several
people to say Hey you know me this I
need this hey you forgot to give me that
and that's just never fun it's so that
was a that's a a culmination of a week
of bad things one of the good things
though was on the other side of the
internet there Michael go ahead and
introduce yourself hey everyone my name
is Michael MOS I'm one of the founders
of develop andur building better
developers I'm also the founder of
Invision QA where we do multiple things
we help small midsize companies work
with their software stack help you
understand and deal with problematic
software if you're a healthc care
clinician or small Healthcare shop we
also help you build medical software
customized to your clinics to your
office uh spaces so you don't have to go
buy those big expensive uh tools out
there you epic um to kind of get what
you need out of your software and to
kind of lead into today's discussion we
also help you improve your user
experiences with quality control
Solutions through things like automation
testing building automation scripts and
actually working with users to identify
what your software actually needs to do
so you can test it before it actually
rolls out good and bad good thing this
week I actually finally checked off a
couple of uh to do things I had to do do
around my office for probably the last 6
months I've had some spotty internet
connections with one of my routers kept
thinking it was a switch finally I just
went out and replaced everything rewired
everything everything's working now as
it's supposed to except although last
night the bad thing is I think I have a
Plex server that might still be going
down so I may have to replace one more
thing but I almost have all the media
stuff in the house working smoothly so
my wife who is not Technic ology sound
is
happy happy wife happy life as they
say our happy life is going to come from
automating some of our work now this is
amazingly to me this is actually a
challenge a lot of developers run
into if we
are essentially it's I'm probably over
dramatizing it but just a little if we
are dragged Kicking and Screaming into
automation we will do it and then once
we once we are we usually fairly
confident with that we're pretty happy
with it we're like we're content for
example I know a lot of times that
people developers have stepped into
something built a project they've got
Version Control they've got some Basics
things basic things there but when they
get into the cicd world and automating
builds and deployments they're like no
I'm not going to do that I that's like I
don't want to do that right now then
when they get to that point where it's
like okay everything I do every time I
do a you know a commit that gets
reviewed goes in and it pushes out to
all the places they're like that's great
that's
awesome but we don't want to do that
naturally we have too many of these
manual tasks that we do on a regular
basis that if we just would invest
sometimes 10 or 15 minutes we can save
ourselves easily that 10 or 15 minutes
in the first day or two and maybe more
than that and we have talked in the past
about things like utilizing tools that
are out there like your mail filters
with your your mail and and cleaning
that up and springling that I don't want
to talk about that this time I want us
to take something that's a little bit
bigger and I want us to look at how do
we find a way to make it easier now when
we step into this kind of a this like a
we'll call it a mini project when we
step into this little mini project of I
want to improve
something that is wide ranging so what
we first want to do is is find some
targets of what we can improve now like
we do for our customers in a lot of
cases one of the things we're going to
do is we're going to look at what are
the things that have the greatest value
to improve them to do process
Improvement and that could be either
something that has run you know
occasionally that takes a very very long
time and it would be very helpful to
have it take a very long a very less
long time or something like that is to
to cut that time down you know maybe cut
uh like monthly processing if it takes 3
days and maybe it would be much better
if we could do it in 3 hours things like
that but more likely what's going to
help us are the things that we do on a
daily basis the things that we spend
five or 10 15 minutes or maybe an hour
or two each day doing and find a way to
improve that or automate that and that's
where I want us to look as we're moving
forward into this is we're embracing
this particular habit what we need to do
is take a period of time like usually a
good time is a week because this is
where're going to see multiple daily
tasks and keep a little closer eye on
essentially like maybe at the end of the
day take a look back and just do like a
little brief like log or something of
like what did I do today and give
yourself at least a rough like how long
did it take the how long did it take and
itself can be a very interesting
question to answer because there's a lot
of times that if you're ask how long
does it take you to do X you'll quickly
say that takes 5 minutes if you actually
look at the time during the day it may
be 30 minutes or an hour checking mail
is one of those things people will be
like oh I just spent a few minutes a day
looking at mail but if you actually
really break it down you'll find out
that maybe you're looking at it for an
hour every day now there are certain
things that we do that are our rituals
essentially that we're going to do with
a developer a lot of times these things
come into the play like uh maybe
researching something downloading a file
checking if something needs to be
updated uh maybe checking status uh like
you know ticket statuses and things like
that looking at my dashboard what is it
I what are the tickets that are on me uh
to do today uh prepping or Fallout from
a standup meeting and sort of like okay
how do I get my stat like daily status
how do I put my little status together
how do I fill that out
we also do a lot of things like uh the
equivalent of now a lot of people don't
do compiles but you may compile or build
or deploy software you may spin up and
down uh you know virtual box virtual
machines or containers or things like
that there's all these little tasks that
we do during the
day that we do regularly enough that
even if it takes us five minutes a pop
if we could cut a minute off of that it
may save us 10 minutes a day not only
that is if we can find a way to automate
these things to effectively make it
either run one command line thing or
click a button then it saves us from
typos and things like that so one of the
things that I think we can look at if
you
live if you find yourself regularly on
the command line doing something usually
it's gonna be like a build a run a test
run executing a couple of scripts those
kinds of things that would be a great
place to start if it takes you five
commands to do that and they're
basically the same commands all the time
especially if you're just like if you've
got the history and you're just like
scrolling back up and you go like
execute this back up execute that ex
execute that that's a perfect example
turn it into a Bach or shell script take
those couple of things and those you
know maybe it's three or five or 10
commands and instead of running put it
into a shell script and now it's one
script and it may be one that is just
literally all you do is you execute that
script and that's it maybe it's like you
execute that script but with a uh like a
path parameter or something like that
and this is where if you're looking from
day to day you may find things like hey
I do this for a project when I get going
when I start my day I execute these
couple of things to get my project going
but I also have five projects I'm
working on at this time so now I'm
executing this five times a day so maybe
I can take those disperate steps and
give them like a I mean it may be as
simple as I just give it a a value
that's like 1 2 3 4 5 that's each of my
you know various projects I can execute
that have it do the setup or whatever it
is that it needs to do and then I'm off
and running if you want to get a little
more graphic in your or gooey in your
world then maybe what you do is it could
be something like let's say you log in
every day and when you log in you have
five applications that you fire up every
time you may want to put it in the
startup but you may say Ah that's too
heavy I don't always want to do that so
instead maybe you have a button that's
just basically like a fire off these
five applications you may also want to
do some sort of an organizational kind
of approach it's like I usually go to
these six folders to get information
well okay instead of doing that let's
pull those folders into one location or
have a you know a central button I can
look at to give me a link of that maybe
there's a plot a lot of websites that go
to you can always use you know favorites
and things like that you can keep up you
know 15 tabs that you can keep open at a
given time or maybe what you do is
create yourself a little web page that
is a click on this and it spawns the 15
tabs that you want to have and logs you
into everything those are the kinds of
tasks that we can't
really can't have somebody else step in
and tell us this is what you need to do
these are the ones that we are going to
be the best to do it because we need to
look at what we do each day what's the
time and the e involved in it and where
can we maybe you know Skip a couple
steps or automate going to step one two
three instead of us manually doing each
of them maybe do all three at once maybe
do something where there's a uh
something we're sort of eyeballing at
every like we're watching logs and we're
just looking for something to happen
automates a watcher on the log automates
something that's going through there and
says hey if I get this thing pop an
email or pop a a message box or whatever
it happens to be these are just a couple
of places that you can go in your
automation
exploration but they're all going to be
I think very valuable it may take a
little bit of time to figure this out
and how you automate it but I think you
will find that it will be worthwhile and
at some point you'll get to the point
where like wow how did I ever do why did
I ever do it
manually now you may ask why would I
ever pass control over to Michael well
you're going to find out right now so
what are your thoughts on
this hey Rob thanks so you've already
talked about using like the command line
interface you talked about the history
and that with automating scripts and
builds love that I'm going to take this
and build upon that so I'm going to
actually go by example one of the
biggest things and me and Rob talk about
this a lot is we don't necessarily
always deal with daily tasks when we
look at automation when we think
automation sometimes because we've been
doing this for a long time we look at
the tasks we're working on so am I
building a website okay what things do I
need to always do when I build a website
okay well am I doing like a lamp a map
or some type of MySQL uh Linux PHP build
well if you do that you can
almost guarantee build a script to
install so once you do it one time if
you go through and you go through your
history and you take everything you did
that first time save that as a script
some you're going to probably use that
again on the next project one of the key
things though if you do write these
script files and you do keep track of
these make sure you add read me files or
some type of documentation with your
scripts or within your scripts add some
comments I have been very bad at this
over the years I found old scripts that
I've been looking for where I didn't
document the script the file got moved
away from the documentation and I'm like
what the hell is this oh this is what I
need for this uh and it's like crap okay
so the reason I stress this is one of
the cool things especially for those of
you starting out as new developers or
even new entrepreneurs one of the big
things we always need as business owners
is we need a website right so we need to
spin up a new website well AWS provides
a free tier that lets you get away with
almost no cost to throwing up a standard
blank you know standard template website
can throw up a WordPress site uh
whatever well the cool thing is if you
do it once the following year if you
need to keep kind of keep it on the
lowball you can create a new website
spin up a new AWS instance free tier
extract your uh WordPress site or your
website run that script on the new
server and just copy your files over or
even write a script to export your files
over so at the end of the year you can
have a push button solution to literally
take one site from one domain to another
domain with little or no effort where to
spin it up the first time probably took
you three hours or longer depending upon
your skill level secondly rob you
mentioned logs so logs are wonderful so
if we kind of stay within the AWS
world there's a lot of information
stored in that AWS console there's you
know logs there's uh service alerts
there's performance
uh
benchmarks AWS is a great example of
where you can use automation because you
can go in there and you can apply alerts
you can go in there and you can apply
thresholds oh if my instance is starting
to peek out at 90 100% spin up a second
instance or spin up a load balancer that
could load multiple instances in the
background your application scales and
all that is handled through automation
scripting if you don't have that and
your system crashes you're going to get
an angry call from that customer and
you're going to have to go onto the site
figure out what's going on and that
takes time money and frustration with
your customer so you want to do these
things you want to automate them now
when you first spin it up that may not
be in your mind that's fine but before
you go live you better have at least
walked through some scenarios where you
have some Automation in place to keep
that application live so you have zero
downtime the third thing I kind of want
to touch on are framework so as
developers we write a lot of code and a
lot of the code that we write is pretty
much standard boiler plate which is what
we call we have depending upon the
language you have to have some structure
or some format of some type of method
structure whatever within your codebase
to actually run the file to build a
website to build a mobile app well you
can actually write code generators or
use code generators to automate that
process say you can push a button boom
here's a crud here's a uh basic
application now just go fill in the
blanks now just go quickly add all the
pieces you need to get your application
up and R now for those of you that are
more Junior look at using like third
party dependencies or um potential tools
to do this initially but once you get
better at this and you get more advanced
you'll probably want to start writing
your own you're going to get into these
habits of
oh I like this approach I like this
framework this seems to be the best
practice for this and what you do is you
write that into your code generators so
when you go build the next project you
kind of have a little checkbox oh I need
this I need this I need this
build here's your application now go
fill in the blanks so it's just one way
to kind of step in through Automation
and the last point I want to talk about
is kind of from my years of teaching
Microsoft professional uh which is teach
teaching kind of uh business developers
how to use Microsoft uh application
products like word excel
access it's funny because there's a not
just net but behind the scenes in the
Microsoft uh office framework is like a
Visual Basic architecture or a Visual
Basic application macro system that's
hiding behind the scenes now this over
time it's been more replaced by uh C
or.net but what is interesting about it
is is even if you are not a developer
even if all you do is business
documentation you write spreadsheets you
build little uh access databases to
store collections of data or you write
uh templates or Word documents
constantly for business meetings and
that you can use macros which are
automated scripts within office to
essentially script out tasks to build
templates to build spreadsheets to do
calculations for you that you would have
to sit there and figure out your
formulas for so macros are just another
way to think about using Automation and
ironically on Windows macros are also
another way through the windows
dashboard to kind of do those collection
things like Rob was talking about where
you could oh you want to spin up five
applications well set up a little
macro build the macro to say hey start
this start this start this kick it off
macros essentially translate into uh can
be transferred into shell scripts uh
it's just another kind of scripting way
of doing things in a Windows environment
Mac has something similar they have an
automator tool that you can use uh but
these are just things look at your daily
tasks if you see yourself doing
something again and again and again you
probably want to automate that and
ideally if you don't know what you're
doing every day if you're on Windows
it's a little bit harder but maybe look
at uh like uh key tracking tools or
possibly even look at uh like
application tracking to see what you're
in where you're spending your time and
that can help you identify oh I spent
two hours doing this today that really
is a five minute task that I can write a
script for and push a button once a day
or maybe two or maybe not even push the
button maybe schedule it to run when I
need it to run five or six ounds a day
and just have it email me what I need or
just put it into a file and at the end
of the day there's my report or whatever
I need to do so again automating isn't
just about programming automating can be
simply taking your tasks and batching
them together using these kind of
automated tools scripting batching
macros so no matter what your technical
level is take a look you know do a quick
Google search on how can I automate
something how can I write a macro and
you'll find thousands of examples online
very quickly to just kind of tailor to
what you need and now we live in the
world of semi AI smartness pick your
favorite AI tool and just say hey I do
this is there a way to automate that and
but be careful throw in an operating
system because there are different
solutions based on your different uh
platforms that you're
using so now after that I know you're
like itching to go so let's give you a
challenge for the week what I want you
to do the challenge for this week is to
take this week ahead of us and spend at
least you know five days of looking at
what do you do each day what do you do
where do you spend your time one of the
things that Michael mentioned there are
a lot of apps out there that are
basically time tracking apps that will
show you where do you spend your time
what are you doing so you may want
something like that if you don't feel
that you are going to be able to figure
it out yourself if you feel like you're
just like I'm just too busy I get the
end the day I forget what I did I get
that use a tool it'll help you out when
you get to end of that time look at the
things that you do and pick one pick one
of the things that's out there and spend
a a little bit of time maybe an hour or
two maybe even and automate it build an
automation process for that it doesn't
have to be like for example it doesn't
have to be a full-blown code generator
if all you do is build a little shell
script that copies and puts together you
know from maybe 10 selections of code
Snippets and turns around and builds a
file for you boom you have automation if
it's something as simple
as uh something that goes out like this
something I used before there's all
these sites like Michael talked about if
you've got all these customers you've
got all these sites that you're just you
just want to make sure that they're good
that they're up that was like the
simplest thing is or like an API is it
still running is are things going you
could build like just build a little app
that goes out and pings each of those
things you know those kinds of tools it
wouldn't take you very long it's a
really good little side hustle kind of
thing to do it's a little side project
to do it may be an opportunity to learn
uh something new maybe it is you go out
and you're like hey I spend way too much
time building status reports in word go
look up VBA and how do I you know maybe
templae some of that or how do I pull in
information like from slack that all my
slack discussions how can I pull that
information in and build a status out of
it or connect to jira and get
information from that those kinds of
things look at if this than that
IFTTT I think there's three T's
there.com
or make or some of these other sites
that are out there that that's their
whole purpose zappier these are the
places they are built to automate these
kinds of things if you haven't looked at
them make that part of it take a look
take five minutes and look at one of
these sites and see if it makes sense to
or if they've got a built-in automation
for something that you do on a regular
basis along the way make sure that
within that automation you send us an
email at the end of it it says hey I
automated this and this is why okay you
don't have to send us and automates you
you have to do it every day but I would
love to hear from you we'd love to get
your suggestions out not only your
suggestions for moving forward but
feedback on what you've done how have
these challenges worked where have they
improved and maybe even dare I say built
a habit that has helped you out because
our goal is not for you to just do this
Challenge and be done do this Challenge
and then the next week do it again the
next week do it again in because that is
how you're going to build your
habits as always like I said you can
shoot us an email but you can also reach
out on developer.com we have contact
form there you can see us on see us you
can follow us you can do all those good
things on X at develop andur you can go
out to YouTube if you aren't there you
can check out the developer Channel you
can see this and lots of other content
that we've put together over the years
uh just however it is if you're out
there on a podcast uh any whatever your
favorite podcast device and listening
thing is there's most likely a way to do
a comment to give us some sort of a you
know a like a followup some sort of
feedback we want to hear it good and bad
we want to hear because you guys help us
make this whole thing better we're doing
it for you so we need to get your
feedback that being said go out there
and have yourself a great day a great
week and we will talk to you next
time bonus
material uh I had one that I thought
about and I just didn't get into it I
was like all right I'm going to save
this for bonus material and now I forgot
so I'm going to throw it at you first
you have you have some bonus material
you want to throw out there yeah I got
two so one because you mentioned like
emails and automating emails there are a
lot of tools out there the biggest one
that comes to mind is MailChimp you can
go customize your customer base if you
send a lot of emails to a lot of email
groups use an email administrator like
MailChimp because that's going to keep
your site Whit listed you're not going
to get black listed if you have to spend
out send out a lot of email you can do
it yourself but be warn you might get
blacklisted if you do it
wrong Additionally the other tool I like
to use over time is called toggle it
works on pretty much all devices and
what's really cool is if you get the
paid version of it it will actually
track what applications you're in for
what time you're in and it really works
great with jira because if you're
actually starting a ticket and you click
Start
it will actually start the timer you
could go work your ticket when you're
done you can click stop so you actually
can kind of see how long you're working
on a particular issue now the only
gotcha with that is if you forget to hit
that the timer is going to keep going
but that is the nice part though if you
do the professional version if you go to
something else and start doing something
else it will keep track of that so if
you forget to hit stop you can go look
at what you were doing and say oh I
stopped at this point stop but this
really needs time so you can actually go
customize your time tracking uh so it's
just an extra bonus
there and there are a lot of those um
there a lot of good time trackers like
that there are ways to you start and
start timers you can always build your
own too uh there's a lot of ways that
you can uh skin the cat as it were no
offense to cat lovers and get that kind
of information from uh your the week
behind some of the things that you you
know the week that has gone by and what
did you get done uh bonus I guess one
little bonus thing is as you're going
through this do this on a daily basis as
you're trying to look at what you did do
it on a daily basis if you get to the
end of the week you're like okay now I
want to look at what I did this week it
is there's so many things that get lost
in the Wheats there's so much that you
just you'll forget about so do this on a
daily basis is is sit down the end of
the day take a couple minutes it's
probably going to work great with like
you know putting status if you've got
some sort of daily status thing that you
do do that all in just one little
sitting at the end of the day what did I
do how did I do it if you can make notes
along the day even better that's just
like a a bonus to
you that'll wrap this one up and we will
be back we're going to come into the
next episode we've already talked about
what the topic is so it won't be too
much of a surprise to you but we'll come
back anyways get a little bit of time on
that and uh step into the next thing so
go out there and have yourself a good
one and we will talk to you next time
[Music]