Desk

The internet is awash with nonsense and people that really want to be heard. That's not entirely the case for me and I'm not planning on adding to the nonsense. I've spent too much time working on websites for other folks to really concern myself with my own. However, I've grown really tired of communicating using third party websites and I wanted to use this as a way to archive any notes, ideas, or anything I want to share. Right now, this site is clogged up with lots of old posts about mostly computer related ramblings, but I'll clean that up over time. I mostly leave commenting off, but please feel free to contact me if you have any feedback, questions, or just want to say hello.
Thanks for visiting,

David Windham Signature Who Needs a Computer Anyway?
David A. Windham

Peoples Pants

I just set up another server for a side project: Peoples Pants1. The pants thing has been a little idea in the back of my mind for some time and I’m not sure where the name came from. I think it just hit me while running a domain search.  Sometimes I think that maybe I just enjoy setting up servers. Perhaps I’m just procrastinating other work, but given a little free time to dabble and I usually end up with some sorta new side project… either around the house or on the computer. I’m kinda a serial tinkerer and sometimes entrepreneur where my capital is all sweat equity of the time spent ‘behind the machines’.  I just build out the ideas as they come to me. There are a bunch unfinished, quite a few I’ve abandoned, one I’ve sold, and this one now makes two out there floating in cyberspace. I guess it’s the ‘if a tree falls on the internet’ sorta reason for publishing them or posting it here. 

This one got started because while I was building a demo for an upcoming contract and I started using hypothetical pants orders for the models. I might have been thinking about getting some new pants or the pants I had on. Who knows. I had also just read about the legalization of hemp with the farm bill.  And in my opinion, this is something that should have been done a long time ago. I first read about the sustainability of hemp was when a buddy gave me his copy of The Emperor Wears No Clothes2. I was in college. I had just moved from Savannah to Charleston. And for the record… I definitely inhaled. I remember buying a pair of hemp shoes in New Hampshire. They had recycled plastics for the sole and hemp canvas for the upper… like ‘hippy chucks’. Although the shoes are long gone, I currently have two current shirts from Patagonia that contain hemp. The hemp is imported. I’m guessing that this farm bill is going to ramp up domestic production. I think it’d be great if we were to re-invent modern domestic textiles with hemp. Hemp is far more agriculturally sustainable and environmentally friendly. 

Earlier this year, I built a project for a greenhouse environmental control company that does a lot of new business related to the legalization of cannabis. At one time, I starting working up a business prospectus and looking for property for my future greenhouses because, well money…. I’ve toured a facility in Colorado and I had seen that our former state attorney general was getting into the business.  But that’s another story and another business all together even though technically hemp is cannabis. I think hemp is going to be a viable agricultural product and I’m hoping it turns out to be a successful agriculture crop in the states.  From what I remember, part of the introduction to The Emperor Wears No Clothes was about the historic prevalence and uses of hemp in America. I still see a good number of cotton fields in and around the countryside, but I know that the majority of the textile outfits in these area are gone.  I wonder what kind of impact hemp production will have.  

I’ve played with the pants idea in conversation with folks in the past.  I almost always get the ‘you can’t do that here.. that’s why they’re all made in _blank_ third world country’ reply.  I tend to roll through all kinds of those types of lofty aspirations regularly, so I know the context in which the responses from my acquaintances derive. Peoples Pants is ‘pants’ software and it’s one thing to build software on your computer and another set of considerations for how it performs under the weight of users.  These days, I tend to think about scalability from the start because I seem so many good ideas choked off from implementation issues. That’s that’s one reason I spun up a server for this. I like having all of the code modular and the infrastructure in place for high availability.  There is an about page I just wrote for the site and there’s not much more that I need to add here. We’ll see how it goes. I’m sure it’ll take a big chunk of money to ramp up production and at this point is merely a minimum viable product5. Although the software is primarily handling customer service and e-commerce, the idea is that I’m going to build it to handle everything from generating patterns,  passing those to the laser cutter, supply chain management, and human resources.  You can head over to PeoplesPants.com to plug in your email address for updates or check back with me when you need some pants.



1. – Peoples Pants – https://peoplespants.com/
2. – The Emperor Wears No Clothes – https://en.wikipedia.org/wiki/The_Emperor_Wears_No_Clothes
3. – Patagonia Hemp – https://www.patagonia.com/hemp.html
4. – H.R.5485 – Hemp Farming Act of 2018 –https://www.congress.gov/bill/115th-congress/house-bill/5485
5. – Minimum viable product –https://en.wikipedia.org/wiki/Minimum_viable_product

 
David A. Windham

WordPress 5.0

In the tradition of my various old posts about how this website is published, this is the first post I’ve published on this site with the new Gutenberg editor1 for WordPress. I like it. I like how it’s built. I think it’s the future. I think it is smart that they pushed it into core. However, I didn’t decide to write a post based on how much I like it or my opinions on the future features. The reason I’m writing this post is that I spent the better part of this morning and yesterday fixing websites with errors due to the upgrade.

I know that there has been quite a bit of discussion on the subject, but I think my opinion is garnered mainly through experience and figured it might be valuable to share with anyone else out there who may be contemplating the same issues. The reason the website I was working on had issues is because of the Enfold theme2 and it’s Avia Framework and Layout Builder. Let me share a little backstory first for those finding this post. I’ve been working with WordPress since version 1, over ten years now.  I originally built this website with static HTML and CSS. I migrated it to WordPress at version 2. I’ve since built a bunch of websites on WordPress and I’ve started to developed some highly opinionated, which I’d consider educated, ways of doing so. 

I realized a long time ago that having fewer moving parts is the sort of aesthetic I prefer when it comes to working with software or content management systems.  In the last couple of years, I can’t load a YouTube video without a website builder advert in front of it. I remember when GoDaddy and others like WIX started forming their site building tool teams and I saw a lot of good JavaScript developers go to work on them. I often recommend these sorta of site building tools to folks that don’t have more complicated requirements because they are easy to use. These site builder tools are just an effort to make the tools more user friendly. WordPress is merely following this trend in an effort to make sure that it doesn’t find itself antiquated in coming years. However, these type of JavaScript site building tools made their way into WordPress themes and plugins before the new Gutenberg editor did and now some of those tools aren’t exactly compatible.

With the sites I just worked on, I didn’t build them or choose to use the Enfold theme. I often inherit projects built by others because, unfortunately, that just seems to be the modus operandi of the web dev world. I don’t mind inheriting projects because it pays the bills and you learn more from maintaining websites than building them.  The websites had been built entirely using the Avia Template builder and the errors started happening right after the update.  After heading off to the user forum for the theme, I discovered that the theme author is dealing with the same issues and cites them in their most recent post3.  The theme author has written a simple workaround to enable and disable the new Gutenberg Editor.  ( Although I might note in this case, I’m not sure they should be calling their editor the ‘Advanced’ one. )

In conclusion… ( I can’t seem to escape the fifth grade five point essay and a lame fifth paragraph introduction ). I like the new Gutenberg editor and I think it’ll do a good bit to help modularize some of the components of a good plugin or theme. That doesn’t appear to be the popular opinion  because the reviews are full of negative comments from inexperienced users, which is really indicative of the majority of internet forums these days. My recommendation is to always try and build highly modular systems that aren’t dependent on boated features or lots of third party code so that interoperability is prioritized to prevent deprecation. And no matter what frameworks or content management systems you’re using, it’s always best to try and stay closely aligned with the code base of those systems. As much as I could rant here about this and that, it’s just something that happens with all software. I can’t even turn on my phone now without an update notification. And in the end, it only took me a little bit of time to run the upgrades and troubleshoot the issues. And I’ll get paid for it. So the lesson is…  please don’t heed my advice here and keep making stuff that breaks so that I can keep fixing it. The “move fast and break things”4,5,6 motto of development is working out for me. 

 



1. Gutenberg editor – https://wordpress.org/gutenberg/
2. Enfold theme – https://kriesi.at/themes/enfold-overview/
3. Kresi blog – https://kriesi.at/archives/wordpress-5-0-and-enfold-4-5-1
4. Move Fast and Break Things – https://commons.wikimedia.org/wiki/File:Move_Fast_and_Break_Things.jpg
5. Move Fast and Break Things – https://en.wikipedia.org/wiki/Jonathan_Taplin
6. Move Fast and Break Things – https://xkcd.com/1428/

 
David A. Windham

Laravel

I like to dabble with new development frameworks for fun. I’ll just check out whatever is the trending and run through a basic setup. Projects like https://github.com/gothinkster/realworld are like a toy for me. I’ve worked with a limited group of frameworks more extensively because I’ve built or worked on projects with theses: Drupal, Django, Rails. Sinatra, Meteor, and Express. I know I’m a bit late on Laravel, but it’s still new to me. I think I started seeing some We Work Remotely gigs rolling through my reader and those sent me down the Laravel1 rabbit hole.

Something about Laravel gelled with me. I wasn’t exactly sure at first… in fact, I was a bit skeptical ( I think I’m getting that way in my old age ) and I didn’t think that a PHP project could grab my attention. I mean I figured I’d be digging into Elixer and Pheonix and I was recently digging on GoLang and Revel. Although most of what I do is simple content and file management running on WordPress. It’s seems like for most of the other projects it’s the exact the same stuff different framework…  authentication, permissions, routing, some models, and nowadays.. maybe consuming or producing an API. I don’t think it was just me falling back on old trusty PHP. I thought maybe I just like Laracast2 like I liked Railscasts. One afternoon after a session of Laracasts, I decided that I’d figure out who the host is since I’d been watching and listening to his instruction.  I found an interview3 with him about how he started with Laravel and he mentioned the comments. That’s it. That’s what gelled with me. It’s the comments… and the formatting, spacing and overall attention to detail in the structure. Here is the Routing/RouteAction.php file.

namespace Illuminate\Routing;

use LogicException;
use Illuminate\Support\Arr;
use Illuminate\Support\Str;
use UnexpectedValueException;

class RouteAction
{
    /**
     * Parse the given action into an array.
     *
     * @param  string  $uri
     * @param  mixed  $action
     * @return array
     */
    public static function parse($uri, $action)
    {
        // If no action is passed in right away, we assume the user will make use of
        // fluent routing. In that case, we set a default closure, to be executed
        // if the user never explicitly sets an action to handle the given uri.
        if (is_null($action)) {
            return static::missingAction($uri);
        }

        // If the action is already a Closure instance, we will just set that instance
        // as the "uses" property, because there is nothing else we need to do when
        // it is available. Otherwise we will need to find it in the action list.
        if (is_callable($action)) {
            return ! is_array($action) ? ['uses' => $action] : [
                'uses' => $action[0].'@'.$action[1],
                'controller' => $action[0].'@'.$action[1],
            ];
        }

        // If no "uses" property has been set, we will dig through the array to find a
        // Closure instance within this list. We will set the first Closure we come
        // across into the "uses" property that will get fired off by this route.
        elseif (! isset($action['uses'])) {
            $action['uses'] = static::findCallable($action);
        }

        if (is_string($action['uses']) && ! Str::contains($action['uses'], '@')) {
            $action['uses'] = static::makeInvokable($action['uses']);
        }

        return $action;
    }

    /**
     * Get an action for a route that has no action.
     *
     * @param  string  $uri
     * @return array
     */
    protected static function missingAction($uri)
    {
        return ['uses' => function () use ($uri) {
            throw new LogicException("Route for [{$uri}] has no action.");
        }];
    }

    /**
     * Find the callable in an action array.
     *
     * @param  array  $action
     * @return callable
     */
    protected static function findCallable(array $action)
    {
        return Arr::first($action, function ($value, $key) {
            return is_callable($value) && is_numeric($key);
        });
    }

    /**
     * Make an action for an invokable controller.
     *
     * @param  string $action
     * @return string
     *
     * @throws \UnexpectedValueException
     */
    protected static function makeInvokable($action)
    {
        if (! method_exists($action, '__invoke')) {
            throw new UnexpectedValueException("Invalid route action: [{$action}].");
        }

        return $action.'@__invoke';
    }
}

Simple as that. No benchmarks, no language preference, no new-fangled features. It’s just the aesthetics of the code. I think that’s part of the reason why everyone fell on Rails too. I’m the same way. If I’m really into something, I’ll take care to make sure that I’m systematically tabbing, formatting, and commenting the code. Yes, I know… it’s easy to run some post processing for any sort of formatting preferences, but I like to do it manually. And it’s that the sorta detail in Laravel that grabbed my attention. I try not to force a project onto a framework and I generally try pick the best framework for each project. Most of the time, it’s generally the framework that makes it the quickest and easiest.  Although I’m a bit late on this one, I’m sure I’ll do a follow up on Laravel when I’ve got a decent project under my belt. In the meantime, I’ll be looking to make someone’s project fit into Laravel relatively soon. 



1. Laravel – https://en.wikipedia.org/wiki/Laravel
2. Laracasts – https://laracasts.com/
2. Jeffrey Way – PHP Sydney – https://www.youtube.com/watch?v=kHoVE0kCnZg

 
David A. Windham

Privacy and Cookies

I had a chance this weekend to dabble with this personal site. One of the things I’ve been meaning to do is address the European Commissions General Data Protection Regulation, and in particular the European Commission’s Cookie Policies. So I’ve built out a privacy policy and cookie policy for this website even though I don’t use any third party APIs or share data with any third parties. When I advise clients on the use of privacy policies on their websites, I generally express my ineptitude with legal matters and refer them to a set of standard privacy policies and/or their own counsel. Aside from this new privacy policy, the only other legal document on this site is my Independent Contractors Agreement.

Honestly, I glad the EU has addressed privacy concerns on the web. It’s a mess out there and I’m particularly fond of maintaining my privacy. For the uneducated, many websites use a litany of methodologies for tracking your every move. The most disturbing to me are the numerous ‘social media’ plugins that, while appearing to be useful to a website operator, serve a dual purpose of tracking their users. And although this is not likely ‘news’ to many of you, those companies will track your every move online and compile that data into a product they sell. You and your data are the product. I’m not a fan, and I don’t allow any third party access to any data from this website. Although, let me be more clear on that… the data that travels to and from the data center in which the server that this website is hosted is not in my control. It’s more than likely that data is being tracked by the NSA and whomever they contract or partner with. I’m also unsure of the protections you have from you service providers to eavesdrop on your data transmissions.

Regardless of your lack of privacy and my efforts here to stave off those intrusions, I’m being as compliant and protective as I can of my own personal liability by including privacy policies within this website. Because this website uses a combination of custom cookies made to interact with returning users on the homepage and cookies provided by the content management system, I’ve got to display a notice to new users within the European Union informing them of the privacy policy and use of cookies. There are plenty of pre-built EU Cookie law scripts and plugins for websites. As is usually the case, I like to build my own solutions to these types of problems.

I’ve used a pretty simple method to implement the notice. I’m already setting a custom cookie to anyone who visits the homepage. I store the users name in that cookie if they respond to the terminal question “What is your name?” I do this so that when they return, the site will say “Welcome back [whomever]”. However, many users arrive at this site through various other pages and I need to implicitly have the user to agree to my policy on every page. I’m going to use the most common solutions of providing a small pop-up asking for permission. I’m doing this by checking for the cookie using javascript. I’m using https://github.com/js-cookie to check for the cookie and the script below to set and notify the user.

/*============================================
       EU GDPR cookie notification
==============================================*/

$( document ).ready( function() {
    cookieNotification();
});
var hideCookieNotification = function() {
    $( '.js-cookie-notification' ).delay(5000).fadeOut( "slow" );
    Cookies.set('EU-GDPR-Cookie', 'true', { expires: 365 });
};
var cookieNotification = function() {
    var setCookieNotification = function() {	
        $( '.js-cookie-notification' ).fadeOut( "slow" );
        Cookies.set('EU-GDPR-Cookie', 'true', { expires: 365 });
    return false;
};
if ( Cookies.get('EU-GDPR-Cookie') === 'true' ) {
    console.log('EU GDPR cookie notification set');
    } else {
    console.log('EU GDPR cookie notification not set');
    $('.js-cookie-notification').css({ 'display' : 'block'});
    $('.js-cookie-notification').find('.js-cookie-notification-hide').click( setCookieNotification );
    };					
}

Once the site has confirmed that you haven’t previously visited, the javascript will then initialize a pop-up asking permission to use the cookie. Here’s the HTML and CSS:




.cookie-notification {
	display: none;
	padding:30px;
	position: fixed;
	bottom: 10px;
	left: 10px;
	background-color: #fff;
	opacity: 0.8;
	border-radius: 15px;
}

If you’re trying to do this at home, you’ll need a tool to edit your cookies because clearing them out every time you want to test is a pain in the arse. I recommend http://www.editthiscookie.com/ for managing cookies. You can see how I’ve added all of this to my site in my git code repo commit. I don’t think my efforts here are really going to help anyone out there protect their privacy, especially considering this website is about as private as any on the open web. The little pop-up box is really just another little annoying part of the using the web, albeit with less consequences than the invasion of your privacy. Really this little project was just a way for me to waste some time on a chilly morning even though I know I have other work and laundry to do.

 
David A. Windham

Data Mining Our Viewing Habits

I’ve often thought and talked about this over the years and my better half and I were talking about it last night in bed while searching the idiot box for something to watch. In case you’re wondering, we decided to finish off  Blandings1 because we like snarky British comedy.  We were debating how good the recommendations were from Netflix and more importantly what kind of conclusions could you draw form our television viewing habits. I’ve often said that if you’ll give me access to your bank statements and your Netflix account I can tell more about you than from any other sources.  I think I’ve got a pretty firm grasp on how much data mining for personality traits is happening online. It’s one of the primary reasons I dropped social media years ago. I try to be forthright and upfront about who I am… or do I? Does anyone? Is that just another layer of the ‘ego onion’ so to speak. 

I pull in, publish, and store all of my music listening habits. I document my ideas about life on this website.  I publish my work history and projects. I know most of it is relatively polished public relations in a sense. Not exactly bullshit, but close.  I know that social media is full of it. I know first hand because I had family involved in the ‘old media’ before everyone became their own PR agents online. I mean, the concepts of ‘reality’ television, the hyper-personal online publishing outfits, the fear mongering of the  ‘going out of business’ journalism. All of it really plays to some vulnerabilities of the psyche. Yeah yeah, so what does this have to do ‘data mining video viewing habits’. Back when I still thought very idealistically about the future of internet, I didn’t understand how we turn this sort of data into weapons designed to make us feel certain ways as a call to action, where most often the action is either buy this or pay attention to that.  As a kid, I vaguely understood how companies gathered data on what television viewers or radio listeners are doing.  As an adult, I think I understand exactly what data is being passed around and why. I use the word ‘think’ because I thought I knew everything as a kid, and I’m expecting that as I grow older, I’ll reflect back on everything I didn’t know as a middle-aged adult.

The question is… would I publish my entire viewing habits. Every article I read, every video I watch, every image I see?  I’m not talking about a curated sorta, look at my bookmarks or try to trace my interest based on my upbeat social media posts sorta data. I’m talking about all the other stuff…  the odd medical searches about popping some sort of growth on your ear, the curious pornography related search because I didn’t know what a ‘fleshlight’2 is, the queries into the intra-webs about the crazy belief systems of others, the cyber stalking of folks I work with. You know… that sorta stuff.  Anytime someone ask me to look at their computer, I always tell them “you know, I’ll be able to see every-thing you do” to which I almost always get a bit of  hushed reaction. It’s only the very defensive sorta ‘I got nothing to hide’ folks who never drop the laptop off or follow up on my fixing their phone or computer. I had one not too long ago where I did an extra swipe I wished I’d never seen on the phone while syncing a bunch of email addresses for an associate.  So, last night while we ran through our Netflix list we pondered really digging into creating a system for defining video qualities as they relate to personality. My wife, a psychologist, starts suggesting some ideas that relate almost entirely to previous behavioral and personality studies. Meanwhile the art school flunky in me starts in or trying to categorize filmmaker styles.  As we were discussing it, and as I have known, it’s very easy to determine personality type and other personal information based on artistic preferences.  So maybe companies like Arbitron3 having been doing it all along. Maybe the rise of ‘talk’ radio was just a precursor to the modern publishing landscape of political journalism. Maybe?

Will I be publishing all of my television or web viewing habits? It’s doubtful. I pride myself on a bit of mystique. Sometimes, because I track my music listening habits, I’ll quickly flip past a song so it doesn’t log when I find myself engaged in something that might be considered unsophisticated or distasteful.  At one time, I was pulling in viewing data from Netflix. They don’t offer a public facing API anymore so I’m sure I’d have to sign up and be vetted as some sort of content partner to even get close to pulling data4. I’ll stick with publishing a curated version of me. I’ll publish my list of favorite shows, I’ll give you a list of my bookmarks.. the public ones. I’ll share this or that on this website. As much as the informality of my amateurish writing style seems ‘off the hip’, it’s all somewhat carefully curated just like almost everything else. This is my point, while Netflix or Amazon’s ‘suggestions’ might seem to be there to help you. It’s really just a measure of how much data those companies are collecting on you. And while Facebook and others might give you an ‘export’ option, trust me… your data is not leaving that company.

So being the opportunist that I’ve grown into, I’ve added the ‘movie personality’ project into the grab bag of fun side projects I’d like to build. The entirety of every major studio film made can’t be more than a couple hundred thousand at this point. I could probably even get that in a dataset from somewhere like IMBD5. And then my wife and I could assign all kinds of hypothetical taxonomies to each film based loosely on our own personal understanding of the film. Then I could make all this data publicly available knowing how powerful a tool it would be. You could pipe in your own viewing habits to figure out your personality type, net worth, marital status, emotional stability, and intelligence quotient.  Don’t worry. I’m pretty sure this project already exists. And I’m sure that when Netflix asks you tonight who’s watching… they already know. And at some point your YouTube viewing data is going to determine your health insurance rates. I’m pretty sure mine are going to remain low because the algorithm will misappropriate my interest in medicine due to that time I binged watched a bunch of surgeries6 intended to train medical students.



1. Blandings – https://en.wikipedia.org/wiki/Blandings_(TV_series)
2. Fleshlight – https://en.wikipedia.org/wiki/Fleshlight
3. Arbitron – https://en.wikipedia.org/wiki/Nielsen_Audio
4. Netflix Backlot – https://partnerhelp.netflixstudios.com
5. MovieDB API https://www.themoviedb.org/documentation/api
6. Mayo Clinic Surgical Technique – https://www.youtube.com/watch?v=osgndmRBjsM

 
David A. Windham

Glenridge Circle

We bought this house almost three years ago. And I say bought in the most liberal since of the word. The bank will give us the title as soon as they get their money. We knew before we bought it that we would be going through a series of renovations. You can see the chimney being renovated in the photo above that we had that done last month. Our last three houses have all involved little improvement projects and I’m just now starting to get decent at handling these projects. I’ve told the better half that this is the year I start doing some of them myself and I’ve already begun the acquire tools. Every man needs tools right? Regardless, the reason I’m thinking of this because I also like to publish a list of home repairs and improvements to communicate with contractors and so that, if the time comes, I have a record of everything that’s been done to the house. Here is the page I’m using for this house. 

We are about to begin one of larger renovations removing a wall from our kitchen and living room.  I’ve worked up the specs and drafts for our quotes from contractors. It’s been a learning process for me. The process of dealing with contractors and bids can be a bit tricky to navigate and that’s an entirely separate post for another day. I’d like to focus on why we’ve focused our attention on renovating this home. We’ve been it a little over two years now and have made some minor improvements. We like the neighbors and hood. And although we considered other moves before we came here, we’ve been happy with this house. 

I created a business built on real estate ten or so years ago now. I had a real estate license in three associations at one point, so that I could access the data for the multiple listing services. I still enjoy the real estate game. And I say game because, not unlike any business, there is a certain acumen needed for real estate. Homes, much like other major purchases tend to shed their value the moment they become occupied. It’s like driving a new car off the lot. In that respect, I’ve found that economic factors are the most important factor, but there are other more important issues I have when finding homes.

I remember buying my first house and my father was adamant in his “this is the best thing you can do”. That was 2006, they year before the market took at tumble and I was upside down within six months of purchasing the home. Live and learn… and what I’ve learned is that life is not a series of investments. You can’t calculate your life into net worth targets. You do however have to live with your circumstances everyday and I’ve found that the most important thing in a home is livability. Livability in the sense that it works for your life. And with that in regard, it’s the distance from work or the grocery store and your neighbors that matter more. So sure, you should always consider the resale value as an investment, but I don’t think it should be the single deciding factor. 

This home works for us. And as of now, we have no plans to migrate anytime soon. With that in mind, we’re going to be putting a bit of effort, time, and money into it in coming years as a fun project. We’ll be overhauling the kitchen next and then the master bathroom. I’ve heard nightmarish stories of folks losing their marriages, minds, and finances over home remodeling projects. Let’s hope that isn’t the case with this one. I’ll keep the project page for the house updated for any of you who have nothing better to do than follow along. 

View from upper deck
 
David A. Windham

Education through Recreation

“A master in the art of living draws no sharp distinction between his work and his play; his labor and his leisure; his mind and his body; his education and his recreation. He hardly knows which is which. He simply pursues his vision of excellence through whatever he is doing, and leaves others to determine whether he is working or playing. To himself, he always appears to be doing both.”

~ L. P. ( Lawrence Pearsall ) Jacks
Education through Recreation, 19321

 


*hat tip – https://ma.tt/2018/06/work-and-play/
1. https://en.wikipedia.org/wiki/L._P._Jacks

 
David A. Windham

David Byrne

I went to see David Byrne in Asheville a couple weeks ago. We were in the first rows and the audience started following the performers dance moves. It was like being in some sorta intimate line dance with the band. It was stellar. Watching him perform is more akin to watching a preacher than a rock musician. I’ve had a long held fascination with David Byrne and I think it began in August of 1981 when MTV first went on the air and I saw this video.


I would have been just under 10 years old the first time I saw the video, but I remember quite vividly the debut of MTV on our console television in the living room. MTV aired a bunch of the same videos1 over and over, but none of them grabbed my attention the way Once In A Lifetime by the Talking Heads2 did. In retrospect, I believe the innovative use of film editing was just the product of the art school background of the Talking Heads band members. At that age, I didn’t really understand the meaning of the lyrics and it was only the motion that intrigued me. Regardless, the song reappeared in a 1989 film entitled Down and Out In Beverly Hills3, which gave me a bit of insight into the meaning of it. The theme of the film kinda nailed the existential crisis of the song lyrics. About that same time (1989) I owned exactly two concert films on VHS: The Song Remains the Same by Led Zepplin and Stop Making Sense by the Talking Heads4. Both of which are two of my all time favorite concert films. I bought up about every Talking Heads and David Byrne CDs I could get my hands on. And I played them non-stop. I had a couple friends who also enjoyed them, but they were few and far between.

Skip ahead fifteen years or so, when I met my wife in college. Two things really stood out about our first date from my other gal pals. The first is that she had a really good sense of humor, not just the giggle type, but the dark and cynical gut rolling humor I like. The second thing is that she really liked the David Byrne and Talking Heads. It wasn’t just the ‘oh yeah, they’re cool’ type of like. She knew all of the lyrics to most of the songs and understood them. The first birthday gift I ever bought her was a talking heads CD box set. We played that thing out on every trip we took. I’ve since read How Music Works6 and followed about every recording project, film, or book he’s been involved with. I’m also particularly fond of his internet radio station7 because of the way he curates the playlists. I can’t say there is anything he’s created that I don’t like. I am particularly fond of a couple though… the film True Stories, Look Into the Eyeball, and Uh-Oh. I also really like the soundtrack to The Last Emperor and it was nice seeing him play himself on the Simpsons Dude, Where’s My Ranch? and in This Must Be the Place.

Neither of us have ever seen David Byrne in concert. I bought the tickets as soon as they went on sale and put us in the second row. As with what has been noted the style of that original video in that he studied archive footage of “preachers, evangelists, people in trances, African tribes, Japanese religious sects” to see how he could incorporate them into his performance… the live performance we watched wasn’t too far off. The way he engaged the audience wasn’t that of a rock star, but of an evangelist. Because the set design was so simple and the accompanying band members engaged in a rehearsed synchronized dance routine, the first ten rows of the auditorium were completely engaged in the performance. Him and his crew were working hard breaking a sweat, and had obviously spent countless hours rehearsing the material and choreography. Like I said… it was top notch. We already knew the lyrics to the new album so we listened to the Imelda Marcos inspired musical Here Lies Love5 written by Byrne on the way up, while Ginny researched the Marcos’ real life. On the way back we listened to Brian Eno. I’d give the American Utopia concert a 10/10. And I give David a 10/10 on being an artist and a decent human being.

Here’s the setlist for the show (Asheville, NC – May 8th, 2018):
Here – Lazy- I Zimbra (Talking Heads) – Slippery People (Talking Heads) – I Should Watch TV (David Byrne & St. Vincent) – Dog’s Mind – Everybody’s Coming to My House – This Must Be the Place (Naive Melody) (Talking Heads) – Once In a Lifetime (Talking Heads) – Doing the Right Thing – Toe Jam (Brighton Port Authority) – Born Under Punches (The Heat Goes On)(Talking Heads) – I Dance Like This – Bullet – Every Day Is a Miracle – Like Humans Do – Blind (Talking Heads) – Burning Down the House (Talking Heads) – Encore: Dancing Together – The Great Curve (Talking Heads) – Hell You Talmbout (Janelle Monáe)



0. https://en.wikipedia.org/wiki/David_Byrne
1. https://en.wikipedia.org/wiki/List_of_first_music_videos_aired_on_MTV
2. https://en.wikipedia.org/wiki/Once_in_a_Lifetime_(Talking_Heads_song)
3. https://en.wikipedia.org/wiki/Down_and_Out_in_Beverly_Hills
4. https://en.wikipedia.org/wiki/Stop_Making_Sense
5. https://en.wikipedia.org/wiki/Here_Lies_Love
6. https://en.wikipedia.org/wiki/How_Music_Works
7. http://davidbyrne.com/radio

 
David A. Windham

The Selfish Ledger

An internal Google video is making the rounds on the internet over the last couple weeks. Although Google has disavowed it as simply a “thought-experiment from a design team”, it looks like an entirely probable solution of how user data is going to evolve online, in that it has inherent risks and rewards. The video has made from some decent fodder online and for my ongoing debates about social media, behavior, and connectivity.


 
David A. Windham

The Writers Almanac

For the last ten years or so, I start almost every weekday morning with a cup of coffee and my feed reader. The first subscription I used to open every day was The Writers Almanac 1. I thought about it again this morning. I really enjoyed listening to it and I miss it. It was cancelled in December of last year.

The Writers Almanac webpage just says 2:

MPR has ended our contract with the company that owns the rights for production and public distribution of The Writers Almanac and MPR no longer has the rights to post the archives. MPR is proud of its 25 years of work, highlighting the art of poetry and the work of so many talented artists. Please check this page periodically on the chance we can direct you to the online archives. Thank you for enjoying the series. We appreciate your listening, reading and support.

I certainly don’t know Garrison Keillor 3 personally, but I feel like I do having listened to hundreds of episodes. I seem to believe the quote from the New York Times article 4:

“I put my hand on a woman’s bare back,” he wrote. “I meant to pat her back after she told me about her unhappiness and her shirt was open and my hand went up it about six inches. She recoiled. I apologized. I sent her an email of apology later and she replied that she had forgiven me and not to think about it.”Mr. Keillor claimed that they continued to be friends “right up until her lawyer called.” He insisted his discomfort with physical affection was common knowledge, adding, “If I had a dollar for every woman who asked to take a selfie with me and who slipped an arm around me and let it drift down below the beltline, I’d have at least a hundred dollars.”

Anyway, I hope the Poetry Foundation 5 can come up with a replacement. If anyone knows of any other sites that feature a daily audio reading of poetry, please let me know. It’s something about the short audio clip where I can generally surf through a couple other things as the birthdays and writer were being introduced before settling back for a small moment of mediation on the poem. I think I’ll leave the last three unread Writers Almanac items in my reader until I find a replacement.


7/14/18 – UPDATE: In April of this year Garrison started hosting his own version on his website6 and Minnesota Public Radio has reached an agreement with Garrison Keillor to restore free public access to the online archives of A Prairie Home Companion and The Writer’s Almanac. I’m unsure why it took me four months to catch on, but I’m happy to have it back.



1. https://en.wikipedia.org/wiki/The_Writer%27s_Almanac
2. https://www.mpr.org/archive-information
3. https://en.wikipedia.org/wiki/Garrison_Keillor
4. https://www.nytimes.com/2017/11/29/business/media/garrison-keillor-fired.html
5. https://en.wikipedia.org/wiki/Poetry_Foundation
6. http://www.garrisonkeillor.com/radio/