Being called a “lazy bum” could mean you’re about to be fired from your job. Or your Dad is about to kick you out of the house. Or your wife is packing up the kids and going to her mother’s.
It’s not a good thing to be a lazy bum.
Well, unless you’re choosy about when and where you’re lazy.
About 10 years ago I was the new guy in a high-tech company in the Seattle area and I was given the “grunt work” that nobody else wanted to do. I’ll spare you the details, but every time I had to do that specific task it took about four hours of copy and pasting, typing in data, etc. Zzzzzzzz!
I absolutely hate work that’s brain dead so one day instead of spending 4 hours in hell, I spent four hours writing a simple little tool that would automate the process. It wasn’t pretty, it wasn’t “commercial quality,” but it did the job.
And it did it in less than 15 minutes almost entirely hands-off!
Even though as a programmer I had used libraries and code snippets in the past to shorten development, that was the first real “Ah-hah!” moment where I saw what an automated tool could do for me. And that turned me into an “automation fool.” Whether it was using macros, coding stand-alone utilities, or even just finding ways to streamline a complicated process, I found “working lazy” could really pay off.
If you’re a hobbyist programmer maybe going the long way around isn’t such a big deal. But if you’re a professional coder you rely on getting a product out the door if you want to pay the bills (whether working as an emplotee or as an indie developer). Any way you can cut down the non-creative work, the better off you’ll be.
I sat down once and spent two days writing a utility that saved me 30-45 minutes. Doesn’t sound like a very good trade-off, does it? Except the task it automated is something I do at the beginning of almost every project. I’ve used it dozens of times so far and as long as I’m a developer I’ll continue to use it.
Plus, besides saving me time, it gets the drudge work out of the way so I can just dive in at the beginning of a new project with a positive perspective — not dreading the “housekeeping” I have to get out of the way before I can get to the fun stuff.
There’s brainless work in just about every project, but don’t let it slow down your progress. Find a way to automate it and let the computer take care of those tasks while you focus on the more creative parts of programming.
It’s one of the best ways to increase your “return on investment” as a programmer.
At my current job the main thing I frequently use Python for is to program little helper scripts. I use other languages for pretty much everything else, but for some reason I find Python incredibly helpful for stuff I would otherwise be doing by hand.