{"id":87,"date":"2014-06-23T12:56:32","date_gmt":"2014-06-23T17:56:32","guid":{"rendered":"http:\/\/www.aminutestime.com\/jobblog\/?p=87"},"modified":"2014-07-10T16:16:06","modified_gmt":"2014-07-10T21:16:06","slug":"the-devil-in-the-details","status":"publish","type":"post","link":"https:\/\/www.aminutestime.com\/jobblog\/2014\/06\/23\/the-devil-in-the-details\/","title":{"rendered":"The Devil In The Details"},"content":{"rendered":"<p>Because this site is about the art and science of Software Development, it&#8217;s not enough for me to just publish the fruits of my labours without analyzing every little implementation detail to a disturbing degree.<\/p>\n<p>So with that goal in mind, here are some of the technical artifacts from my development of <a href=\"http:\/\/www.aminutestime.com\/jobblog\/2014\/05\/30\/a-new-dawn\/\">&#8220;A New Dawn&#8221;<\/a>, my WordPress theme, for those among you with an inclination to explore such things.<\/p>\n<p>The two main modules I created while making this theme were <a href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/js\/loadingScreen.js\">The Loading Screen module<\/a> itself and <a href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/js\/css_notify.js\">The CSS Notification module<\/a>, a cross-browser module for invoking a javascript callback when a linked CSS file has finished loading.  A cleaner source listing for both files is available under the HTML documentation link below.  These source files constitute part of the code for the theme and can be re-used or extended in other contexts by themselves.<\/p>\n<link rel=\"stylesheet\" type=\"text\/css\" href=\"http:\/\/www.aminutestime.com\/src\/css\/client-global.css\" \/>\n<style>\n.full-cell-btn {\n  width: 100%;\n  height: 100%;\n  text-align: center;\n}\n.mod-column {\n  width: 30%;\n}\n.header-2 td {\n  text-align: center;\n}\n<\/style>\n<table>\n<tr class=\"header-2\">\n<td>Artifact<\/td>\n<td class=\"mod-column\">Loading Screen<\/td>\n<td class=\"mod-column\">CSS Notification<\/td>\n<\/tr>\n<tr>\n<td>API Documentation (YUIDoc)<\/td>\n<td><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/js\/api-doc\/modules\/LoadingScreen.html\"><button type=\"button\" class=\"full-cell-btn\">Show<\/button><\/a><\/td>\n<td><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/js\/api-doc\/modules\/CSSNotification.html\"><button type=\"button\" class=\"full-cell-btn\">Show<\/button><\/a><\/td>\n<\/tr>\n<tr>\n<td>Notes from Test-Driven Development (FreeMind)<\/td>\n<td><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/media\/img\/a_new_dawn\/load_screen_unit_tests.png\"><button type=\"button\" class=\"full-cell-btn\">Show<\/button><\/a><\/td>\n<td><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/media\/img\/a_new_dawn\/cssload tests.png\"><button type=\"button\" class=\"full-cell-btn\">Show<\/button><\/a><\/td>\n<\/tr>\n<tr>\n<td>Test Harness (QUnit)<\/td>\n<td><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/js\/test\/test_load_screen.html\"><button type=\"button\" class=\"full-cell-btn\">Show<\/button><\/a><\/td>\n<td><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/js\/test\/test_css_notify.html\"><button type=\"button\" class=\"full-cell-btn\">Show<\/button><\/a><\/td>\n<\/tr>\n<tr>\n<td>Unit test listings<\/td>\n<td>\n<ul>\n<li><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/js\/test\/test_NoScrollbar.js\">NoScrollbar<\/a><\/li>\n<li><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/js\/test\/test_StopWatch.js\">StopWatch<\/a><\/li>\n<li><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/js\/test\/test_ImageLoader.js\">ImageLoader<\/a><\/li>\n<li><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/js\/test\/test_LoadingScreen.js\">LoadingScreen<\/a><\/li>\n<\/ul>\n<\/td>\n<td>\n<ul>\n<li><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/js\/test\/test_cssload.js\">All classes<\/a><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/table>\n<table>\n<tr>\n<td>Changelist descriptions (Mercurial)<\/td>\n<td style=\"width: 60%;\"><a target=\"code\" href=\"http:\/\/www.aminutestime.com\/jobblog\/wp-content\/themes\/new-dawn\/changes.html\"><button type=\"button\" class=\"full-cell-btn\">Show<\/button><\/a><\/td>\n<\/tr>\n<\/table>\n","protected":false},"excerpt":{"rendered":"<p>Because this site is about the art and science of Software Development, it&#8217;s not enough for me to just publish the fruits of my labours without analyzing every little implementation detail to a disturbing degree. So with that goal in mind, here are some of the technical artifacts from my development of &#8220;A New Dawn&#8221;, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,12],"tags":[8],"class_list":["post-87","post","type-post","status-publish","format-standard","hentry","category-a-new-dawn-wordpress-theme","category-code-examples","tag-theme-wordpress-development-detail"],"_links":{"self":[{"href":"https:\/\/www.aminutestime.com\/jobblog\/wp-json\/wp\/v2\/posts\/87","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.aminutestime.com\/jobblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.aminutestime.com\/jobblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.aminutestime.com\/jobblog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.aminutestime.com\/jobblog\/wp-json\/wp\/v2\/comments?post=87"}],"version-history":[{"count":10,"href":"https:\/\/www.aminutestime.com\/jobblog\/wp-json\/wp\/v2\/posts\/87\/revisions"}],"predecessor-version":[{"id":159,"href":"https:\/\/www.aminutestime.com\/jobblog\/wp-json\/wp\/v2\/posts\/87\/revisions\/159"}],"wp:attachment":[{"href":"https:\/\/www.aminutestime.com\/jobblog\/wp-json\/wp\/v2\/media?parent=87"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.aminutestime.com\/jobblog\/wp-json\/wp\/v2\/categories?post=87"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.aminutestime.com\/jobblog\/wp-json\/wp\/v2\/tags?post=87"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}