{"id":3733,"date":"2013-02-12T12:01:57","date_gmt":"2013-02-12T18:01:57","guid":{"rendered":"http:\/\/apps.lib.ua.edu\/blogs\/digitalservices\/?p=1674"},"modified":"2013-02-12T12:01:57","modified_gmt":"2013-02-12T18:01:57","slug":"the-other-black-art","status":"publish","type":"post","link":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/","title":{"rendered":"The Other Black Art"},"content":{"rendered":"<p>Since we are two days away from Valentine\u2019s Day, you\u2019re probably expecting a blog about love and romance. Close, this blog is about the automation of repetitive tasks through the use of a scripting language, and who\u00a0doesn&#8217;t\u00a0love that?<\/p>\n<p>Perhaps you find yourself working on a task that seems mindlessly repetitive. Maybe as you drift into a boredom-induced coma, you think to yourself that surely such a task is better suited for a tireless machine to slave away on, and not an easily bored human. I recently had a similar inner monologue, but instead of waiting for the age of reasonably affordable robots, I decided to use a bit of\u00a0wizardry\u00a0to make my computer complete this task for me. That is to say, I wrote a script.<\/p>\n<p>Scripting languages are wonderful things, and share a lot in common with their two ancestors, genies and magic. In layman\u2019s terms, scripts do stuff. Computer stuff. Stuff you don\u2019t want to do. Any computer-based task which can be handled by a human (and doesn&#8217;t require any sort of creativity) can conceivably be handled by a script. Bill Gates is quoted as saying:<\/p>\n<p>&#8220;<em>The first rule of any technology used in a business is that automation applied to an efficient operation will magnify the efficiency.<\/em>&#8221;<\/p>\n<p>Scripts are especially well suited for the long, mindlessly repetitive tasks that leave most of us humans cringing. These tasks involve a set of actions controlled by a specific set of rules, like say only moving files with certain filenames, or changing one specific file type to another. These actions and rules need to be explained to the computer in a language the computer understands. Computers are basically dumb; they can only count to 1. You could write your programs in zeros and ones if you wanted to (I don\u2019t) or you could use a higher language that interprets your commands into zeros and ones for you.<\/p>\n<p>I am currently learning two scripting languages, Perl and Python (In my spare time I\u2019m also trying to pick up a little AHK and a\u00a0micro-controller\u00a0language, but that\u2019s neither here nor there). Of these, Perl is quickly becoming my favorite for a number of reasons. I like the way variables and arrays are easily distinguishable by their leading \u201c$\u201d and \u201c@\u201d signs respectively. I enjoy not having to call variables, and of course there\u2019s CPAN (an online database of pre-written code, which I\u2019m sure will prove helpful in the future). On the other hand, Python\u00a0doesn&#8217;t\u00a0require the trailing semi-colon or curly brackets which is nice, though it\u2019s really just a lateral move when you consider Python\u2019s force indent policy. In the end, it\u00a0doesn&#8217;t\u00a0matter what scripting language you choose, just choose one and learn it. You don&#8217;t have to master every aspect of the language in order to write\u00a0useful\u00a0scripts; you&#8217;ll be\u00a0surprised\u00a0what you can\u00a0accomplish\u00a0with just some basic working knowledge.<\/p>\n<p>The task I wanted to automate involved moving files from one directory to another, while creating unique folder names based on the first 21 characters of the file names, and then moving said files into said folders. Not a particularly difficult task when there are just a few files, but when you would need to routinely accomplish this for a large quantity of files it becomes time consuming. Thankfully, it&#8217;s also immanently\u00a0script-able.\u00a0So I wrote a script in a Perl, tested it, and when it was fully functional made it available to the rest of my team. Another co-worker, who happens to also possess programming know-how, wrote a graphic user interface for my script which added to the script\u2019s usability. I went back in and changed the color scheme to his interface which added to the script\u2019s prettiness. But the important part is, my script will save me and my co-workers a little time every day, and that\u2019s time and energy that can be put towards other tasks. Tasks better suited for us humans.<\/p>\n<p>-Austin Dixon,\u00a0Digitization Technologist | Hoole Library<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Since we are two days away from Valentine\u2019s Day, you\u2019re probably expecting a blog about love and romance. Close, this blog is about the automation of repetitive tasks through the use of a scripting language, and who\u00a0doesn&#8217;t\u00a0love that? Perhaps you &hellip; <a href=\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":426,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3699,3737],"tags":[3734],"class_list":["post-3733","post","type-post","status-publish","format-standard","hentry","category-software","category-work-flow","tag-automation"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>The Other Black Art - What&#039;s Cool at Hoole<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The Other Black Art - What&#039;s Cool at Hoole\" \/>\n<meta property=\"og:description\" content=\"Since we are two days away from Valentine\u2019s Day, you\u2019re probably expecting a blog about love and romance. Close, this blog is about the automation of repetitive tasks through the use of a scripting language, and who\u00a0doesn&#8217;t\u00a0love that? Perhaps you &hellip; Continue reading &rarr;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/\" \/>\n<meta property=\"og:site_name\" content=\"What&#039;s Cool at Hoole\" \/>\n<meta property=\"article:published_time\" content=\"2013-02-12T18:01:57+00:00\" \/>\n<meta name=\"author\" content=\"kgmatheny\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"kgmatheny\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/\"},\"author\":{\"name\":\"kgmatheny\",\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#\/schema\/person\/d5f5cd65eb2797de0df24a1b16a348d1\"},\"headline\":\"The Other Black Art\",\"datePublished\":\"2013-02-12T18:01:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/\"},\"wordCount\":682,\"commentCount\":0,\"keywords\":[\"automation\"],\"articleSection\":[\"Software\",\"Work Flow\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/\",\"url\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/\",\"name\":\"The Other Black Art - What&#039;s Cool at Hoole\",\"isPartOf\":{\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#website\"},\"datePublished\":\"2013-02-12T18:01:57+00:00\",\"author\":{\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#\/schema\/person\/d5f5cd65eb2797de0df24a1b16a348d1\"},\"breadcrumb\":{\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"The Other Black Art\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#website\",\"url\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/\",\"name\":\"What&#039;s Cool at Hoole\",\"description\":\"Just another University Libraries - Public Blogs site\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#\/schema\/person\/d5f5cd65eb2797de0df24a1b16a348d1\",\"name\":\"kgmatheny\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5f3e9ddeadbcf45fb29141d391ed83ae78718aae2ec433f30c73cbf454e44b39?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5f3e9ddeadbcf45fb29141d391ed83ae78718aae2ec433f30c73cbf454e44b39?s=96&d=mm&r=g\",\"caption\":\"kgmatheny\"},\"url\":\"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/author\/kgmatheny\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"The Other Black Art - What&#039;s Cool at Hoole","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/","og_locale":"en_US","og_type":"article","og_title":"The Other Black Art - What&#039;s Cool at Hoole","og_description":"Since we are two days away from Valentine\u2019s Day, you\u2019re probably expecting a blog about love and romance. Close, this blog is about the automation of repetitive tasks through the use of a scripting language, and who\u00a0doesn&#8217;t\u00a0love that? Perhaps you &hellip; Continue reading &rarr;","og_url":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/","og_site_name":"What&#039;s Cool at Hoole","article_published_time":"2013-02-12T18:01:57+00:00","author":"kgmatheny","twitter_card":"summary_large_image","twitter_misc":{"Written by":"kgmatheny","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/#article","isPartOf":{"@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/"},"author":{"name":"kgmatheny","@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#\/schema\/person\/d5f5cd65eb2797de0df24a1b16a348d1"},"headline":"The Other Black Art","datePublished":"2013-02-12T18:01:57+00:00","mainEntityOfPage":{"@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/"},"wordCount":682,"commentCount":0,"keywords":["automation"],"articleSection":["Software","Work Flow"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/","url":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/","name":"The Other Black Art - What&#039;s Cool at Hoole","isPartOf":{"@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#website"},"datePublished":"2013-02-12T18:01:57+00:00","author":{"@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#\/schema\/person\/d5f5cd65eb2797de0df24a1b16a348d1"},"breadcrumb":{"@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/2013\/02\/12\/the-other-black-art\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/"},{"@type":"ListItem","position":2,"name":"The Other Black Art"}]},{"@type":"WebSite","@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#website","url":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/","name":"What&#039;s Cool at Hoole","description":"Just another University Libraries - Public Blogs site","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#\/schema\/person\/d5f5cd65eb2797de0df24a1b16a348d1","name":"kgmatheny","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/5f3e9ddeadbcf45fb29141d391ed83ae78718aae2ec433f30c73cbf454e44b39?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5f3e9ddeadbcf45fb29141d391ed83ae78718aae2ec433f30c73cbf454e44b39?s=96&d=mm&r=g","caption":"kgmatheny"},"url":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/author\/kgmatheny\/"}]}},"_links":{"self":[{"href":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/wp-json\/wp\/v2\/posts\/3733","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/wp-json\/wp\/v2\/users\/426"}],"replies":[{"embeddable":true,"href":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/wp-json\/wp\/v2\/comments?post=3733"}],"version-history":[{"count":0,"href":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/wp-json\/wp\/v2\/posts\/3733\/revisions"}],"wp:attachment":[{"href":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/wp-json\/wp\/v2\/media?parent=3733"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/wp-json\/wp\/v2\/categories?post=3733"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/apps.lib.ua.edu\/blogs\/coolathoole\/wp-json\/wp\/v2\/tags?post=3733"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}