BoredomIsaSmell. Possibly the only smell you should heed when it comes to the decision to automate. Examples of non-boring tasks, which would be less-suited to automation, with their boring counterparts, which would be more beneficial to automate: * '''Not boring:''' Coming up with a style guide for a new language * '''Boring:''' Re-indenting code * '''Not boring:''' Higher-level search-and-replace (i.e., finding all code that directly uses the database and making it use an indirect layer) * '''Boring:''' Literal search-and-replace (change "getSelectSql" to "selectSql") * '''Not boring:''' Extracting an interface * '''Boring:''' Implementing an interface (in a language like Java) * '''Not boring:''' Choosing between delegation and inheritance * '''Boring:''' Writing delegation code * '''Not boring:''' Planning * '''Boring:''' Collecting metrics * '''Not boring:''' Writing test procedures * '''Boring:''' Running test procedures * '''Not boring:''' Determining how to build and deploy the software * '''Boring:''' Building and deploying the software * '''Not boring:''' 20% * '''Boring:''' 80% ---- I HaveThisPattern. Every time I find myself saying "this is boring" while working on my Web site, I end up creating another script to AutomateBoredom: site maintenance, uploading changes, HTML validation, link checking, indexing, etc. Editor macros insert tag pairs while writing content. New pages use a standard page template for boilerplate material. I now spend almost all of my Web design time writing and editing content, not formatting, without using a ContentManagementSystem. (My site validation script indicates successful results with a GreenBar, and incorrect pages produce a RedBar. Reminiscent of a UnitTest, but written before I'd heard of them.) This may explain part of the popularity of blog software: it lets people create a well-organized site without mucking around with HTML, alleviating the need to AutomateBoredom entirely. ---- See ThreeStrikesAndYouAutomate, AreBusinessAppsBoring ---- CategoryAutomated