Tuesday, October 4, 2011

Automate Each Week

I always try, at least once a week, to find a cumbersome or lengthy procedure that I do frequently and streamline it somewhat.
To give an example, I often shuffle files between my MacBook laptop and work computer. Sometimes I need to work on files from home, sometimes the OS X interface or a certain program I have just makes things easier.
Now, Dropbox is great for this, but it has its limitations. Leaving security aside, one of the sets of files I work on a lot is a web application for recording library statistics. Since the application requires PHP and MySQL, to run it live on my laptop I need the files to be in my localhost web server directory. So I am constantly copying the latest version from Dropbox, pasting it into my web directory, and then replacing the file that connects to MySQL with a different file (since the MySQL logins on our live site and my localhost are necessarily different). Now, I am not a real programmer, but I know enough of the command line to do this operation via Terminal. So I googled how to write a shell script in OS X and made a libraryStatsTransfer.sh file:


#! /bin/sh
cp -R [Web app's Dropbox location] [Web app's web server location]
cp [The localhost MySQL connection] [The other connection, now in web server directory]



Now, I can run this script and save myself a few seconds and a lot of hideous drag-and-dropping (I am very much a keyboard person, if my post on application launchers didn't already tip you off). Sometimes these little automations don't do much, but other times they're huge and completely transform the way you operate. The first time I installed and configured Quicksilver was the latter.
Computing is an easy example, because computers are all about automation. Any program, at its core, is about automating and simplifying a set of frequently performed commands. But there's no reason to limit oneself to that: cooking, commuting, conversation, etc—all of these have the potential to be streamlined or improved. The real difficulty is in finding something to fix. We are so immersed in our everyday routines that sometimes identifying areas for improvement can be difficult. Then, once you've found something rife with automation potential, thinking up the best way to do it usually isn't hard. Google it, read a book about it, or just meditate for a moment. An answer will present itself.

No comments:

Post a Comment