Feed
-
Twitter
I logged in the first time soon after it started in 2007. I did my ten years and then mostly logged off by 2017. I’m not likely to start using it again regularly although I still use it occasionally as a people bookmarking service of sorts. I logged in last week to get an ‘archive’ of all of my data and publish it elsewhere1,2. I tweeted 828 times and based on the IDs in the data, I’m guessing that I was the 950,535th person to ever tweet. The process felt achingly familiar3. I’ve had some discussions with others about it recently and it reminds me to think about how I use the web. Per the course… I like to flush it out, write it down, and publish it so I can send a link instead of hashing it out in an email or text thread.
Twitter was built as a MicroBlogging service. Microblogging as a type of broadcast medium was the forerunner to social networking platforms. Social networking existed from the moment the first network computer connections were made. Twitter had a good name and was the best breed of something not unique amongst the landscape at the time. The fundamentals of Twitter already existed elsewhere. The Twitter idea originated from Odeo4,5, a podcasting company. It was just a means of having an SMS group chat. Evan Williams created Blogger which was sold to Google and was the basis of the ideas behind both podcasting and blogging. Before Twitter, social media meant connecting with others online primarily through email and RSS, both of which could be read from the same client and in a browser. Some folks worked out unique ways to notify others via email for pingbacks and trackbacks6. I was a fan of Friendfeed because it supported pulling feeds from various sources. Facebook acquired it for $15 million and shut it down7. Similarly, Pump.io, StatusNet, and identi.ca were using the open-source Activity Streams format which was a precursor to the ‘Fediverse’ or federated social network terms tossed around today.
Inter-Net-work….the web was inherently social long before the media part. In Silicon Valley’s race to capitalize, proprietary methodologies were created because open standards hinder income potential. Even the data archive I got from Twitter last week isn’t exactly portable. The WC3, who sets the standards has recommended Web Mentions, Activity Streams, and Activity Pub9 standards which is the protocol that makes Mastodon federated. I migrated most of my Twitter follows over to Mastadon while I was at it last week. Watching the other platforms pivot to gain new users is amusing. Substack has added ‘mentions’, ’cross-posts’, and ‘best seller’ badges10. Tumblr rolled out a $7 badge and the owner insisted they would be implementing the activitypub specification which I noted appropriately11. I’m sure folks will figure out a way to spam those protocols too as long as there is a way to profit from them. Twitter turned to bots after it gained popularity and the account APIs were introduced. The bot, spam, link farms, etc were online long before Twitter too.
Elon Musk recently tweeted “Vox Populi, Vox Dei” likely in reference to his surveys on reinstating previously banned accounts. It translates to the “Voice of the People is the Voice of God”, but the full context of the most cited reference to that term is:
Nec audiendi qui solent dicere, Vox populi, vox Dei, quum tumultuositas vulgi semper insaniae proxima sit. “ And those people should not be listened to who keep saying the voice of the people is the voice of God since the riotousness of the crowd is always very close to madness.
~ Alcuin in his letters to Charlamagne Epistle 127 in 760AD12.
The riotousness of the crowd is Twitter. And Twitter is just a bellwether for the internet as a whole as we adapt to new communications mediums. Those first couple of years were just techie types tweeting because those were most of the same folks with websites. Then came the journalists, media, celebrities, publishers, and internet celebrities. Then everyone’s uncle had it installed on their phone. When those other folks started rambling on about their other interests, I lost interest. And then they started to monetize it all with adverts, tracking users across the web, and rewriting shared URLs so they could track those too. The most retweeted thing ever was a pyramid scheme offering a reward for retweets. The web was already decentralized and will likely always be outside some platforms’ walled gardens. I just hope that the efforts to improve the open standards aren’t sabotaged by private interests.
I’m sure in the coming year we’ll end up hearing a lot more on free speech and social media. I have a very simple minded approach to it which I wrote about pretty extensively in my article on Section 23013. I think that you’re welcome to espouse your opinions, ideas, or theories however you’d like but not entirely without consequence if they are damanging to others. I think that the main product of social media platforms, aside from usability, is sorting and moderating that information so that it’s vaulable to it’s end users. A platform like Twitter is a private company and can make itself reponsible for moderation however it best see’s fit to it’s own business model. And likewise, I can excersize my own liberty to not pay it any attention.
I’d use social media again if I had something to promote and I suppose I’m lucky not to have the need. Former Twitter CEO Evan Williams apologized saying he was “wrong to think that an open platform where people could speak freely would make the world a better place”. I wouldn’t completely agree with him on that because I believe there have been some good things gained through social networking platforms. I read an essay recently fed to me, not via social media but my handy dandy good ole’ fashion hosted RSS reader… entitled A Tweet Before Dying that said “What then? We’ll all move over to some Twitter replacement like Mastodon, hundreds of millions of us, and ruin that too? Sigh.”13. Other than echoing my sentiments here, whatever happens with Twitter means very little to me because I choose to rely not on the platform itself but on the interoperable standards of the internet which were social from the get go.
2022/12/03 Update:
Right on Cue… Matt Taibbi, the investigative journalist published a series of tweets he’s calling the Twitter Files15 yesterday afternoon looking into the content moderation efforts of Twitter during the last election. Main takeaway for me was the fact that, imagine this… people are sending emails around requesting removals and questioning various policies. Sometimes just having an audience has it’s own consequences.
2025/11/15 Update:
The thing is… all this new reporting on foreign spam accounts seems so obvious to me, I can’t even really understand how it’s news other than the fact that they added the ‘about this account’ features showing country of origin16. The new reporting did kinda touch on something I hinted at here and that America’s Polarization Has Become the World’s Side Hustle17. Perhaps I’ll log in again and leave this as my only ‘tweet’ since I previously deleted all of the others… na, ole Space Karen isn’t getting any eyeballs from me.
- @windhamdavid tweets – https://davidwindham.com/til/lists/tweets
- @windhamdavid follows – https://davidwindham.com/til/lists/people#i-follow-on-twitter
- Windham, D. 2020. Dirty Algorithm – https://davidwindham.com/dirty-algorithm/
- Odeo – https://en.wikipedia.org/wiki/Odeo
- Twitter History – https://en.wikipedia.org/wiki/Twitter#History
- Pingback https://en.wikipedia.org/wiki/Pingback
- FriendFeed – https://en.wikipedia.org/wiki/FriendFeed
- Silicon Valley – S3E10 – https://en.wikipedia.org/wiki/Silicon_Valley_(TV_series)
- W3C Social Web Protocols- https://www.w3.org/TR/social-web-protocols/
- Substack – https://on.substack.com/p/introducing-mentions-and-cross-posts
- Tumblr –https://windhamdavid.tumblr.com/
- Alcuin – https://en.wikipedia.org/wiki/Alcuin
- Windham, D. 2021. Section 230 – https://davidwindham.com/section-230/
- Ford, P. 2022. A Tweet Before Dying – https://www.wired.com/story/tweet-dying-revolutionary-internet/
- Taibbi, M. 2022. The Twitter Files – https://twitter.com/mtaibbi/status/1598822959866683394
- Elon Musk’s Worthless, Poisoned Hall of Mirrors – https://www.theatlantic.com/technology/2025/11/x-about-this-account/685042/
- America’s Polarization Has Become the World’s Side Hustle – https://www.404media.co/americas-polarization-has-become-the-worlds-side-hustle
-
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)

25/12/04 Update: We saw David again last night in Atlanta for the Who Is the Sky? tour8. The thing is I’ve seen a lot of concerts in my lifetime and it’s definitely different. David takes a bunch of highly trained dancers, musicians, and vocalists and puts em through their paces in a thematic visually stunning choreographed set. He gave em what they wanted on this tour, yet the set list of songs somehow still felt like a tightly planned concept album. It’s really about him as an artist. It’s kinda hard to explain, but it’s like he’s floating up above it to steal a line from his song. He’s not rooted in any physical place or timeline even though several of the songs have very physical references. The lyricism is timeless and abstract – he blended a setlist that spans almost fifty years. Here’s the setlist:
- Heaven ( Fear of Music )
- Everybody Laughs ( Who Is the Sky? )
- And She Was ( Little Creatures )
- Strange Overtones (Brian Eno – Everything That Happens Will Happen Today )
- Houses in Motion ( Remain in Light )
- T Shirt ( Who Is the Sky? )
- (Nothing but) Flowers ( Naked )
- This Must Be the Place (Naive Melody) ( Speaking in Tongues )
- What Is the Reason for It? ( Who Is the Sky? )
- Like Humans Do ( Look into the Eyeball )
- Don’t Be Like That ( Who Is the Sky? )
- Independence Day ( Rei Momo )
- Slippery People ( Speaking in Tongues )
- I Met the Buddha at a Downtown Party ( Who Is the Sky? )
- My Apartment Is My Friend ( Who Is the Sky? )
- Hard Times ( Paramore cover )
- Psycho Killer ( Talking Heads: 77 )
- Life During Wartime ( Fear of Music )
- Once in a Lifetime ( Remain in Light )
- Everybody’s Coming to My House ( American Utopia )
- Burning Down the House ( Speaking in Tongues )
Anyway, you can go find the tour show reviews out there so I’m not going to sum it up. The Fox in Atlanta is wild with its mosque design. All I’ll say is if you haven’t seen a performance – it’s good – definitely worth the effort. Seeing the show is just a reminder of possibilities.
- https://en.wikipedia.org/wiki/List_of_first_music_videos_aired_on_MTV
- https://en.wikipedia.org/wiki/Once_in_a_Lifetime_(Talking_Heads_song)
- https://en.wikipedia.org/wiki/Down_and_Out_in_Beverly_Hills
- https://en.wikipedia.org/wiki/Stop_Making_Sense
- https://en.wikipedia.org/wiki/Here_Lies_Love
- https://en.wikipedia.org/wiki/How_Music_Works
- http://davidbyrne.com/radio
- Who Is the Sky? – https://en.wikipedia.org/wiki/Who_Is_the_Sky%3F
-
Man from Plains
All this talk of politics has affected my netflix lineup. Last night we watched the documentary “Man from Plains“2 about Jimmy Carter3 and his most recent book. I’ve got to say that Jonathan Demme4 is one of the better filmmakers of our time. Ever since Stop Making Sense5, a video concert of the Talking Heads was released I’ve been a fan. What I like about Demme is the unbiased and personal approach. I’ve always said of good photographers and painters whom work with portraiture that the best approach is to be as transparent as possible so as to not influence the subject in any manner. This film does just that as it documents Carter’s travels to promote his most recent and controversial book entitled Palestine Peace Not Apartheid6.
The film gives an honest perspective on the man and his principles as Demme was obviously given good access the former president during the filming and what impressed me most was exactly how candid and emotional Carter was during the filming. He is obviously a very intelligent man in the way he handles conversation and which may also explain why he is a physicist by trade. What is controversial about the book is that Carter is trying to explain that perhaps the Palastinians have been wronged which is very bold and politically incorrect these days. But Carter does it with eloquence and good rhetoric in the face of staunch adversaries.
After the film, I followed up with some research on Carter and his policies. What amazed me is how strong his opinions about peace and energy conservation. He actually reduced the dependence on foreign oil by half during tenure as president. He installed solar panels (which were later removed) on the white house! It’s amazing how we continue to repeat ourselves in history as I think my third grade teacher began the first history lesson i remember with that exact phrase. President Carter had some interesting approaches to energy policy that may hold in todays atmosphere.
Don’t get me wrong…I’m not a political or economic expert, but I can tell you a good deal about the Laffer Curve7 and supply side, trickle down Reaganomics including the fact that Author Laffer and Wanninski, credited with coining the term did so over a meeting in 1974 with Dick Cheney and Donald Rumsfeld present…so I’ll let you do your own research8. But I am a good with the study of human character and I can tell you that I am compelled to believe that Jimmy Carter is a good man with honest motives or at least the film did an excellent job of concealing anything otherwise.

April 20, 1979, White House photo of Carter and rabbit from the Carter Library [1] I can whole heartedly recommend that you see the film for yourself. The photo above is of Carter fishing when a swimming rabbit “attacked” his boat.. lucky the secret service was there to capture it on film.
23/12/06 – The rabbit incident came up in a conversation likely due to conflict in Gaza9. I replaced the missing photo and added the references. I didn’t replace any of the original links, correct any of the grammatical, or fix the spelling errors.
25/01/09 – I referenced this essay in a recent conversation with friends since he passed away at age 100. He was the longest-lived president in U.S. history. I read quite a bit about him recently and I watched the service on C-Span 10 this morning. The Carter Center published a tribute site 11 that’s worth your time. I left a condolence message. The more I learn… the more I like.
Jimmy Carter is an inspiration for a life well lived. I told my friends I’m gonna pick up some tools in his honor and to handle some carpentry work for myself and I might even go so far as start working on the solar thing. I’ve referenced the Crisis of Confidence speech12 a number of times recently and I suggest a revisit. I first picked up on it in the film 20th Century Women and rewatching it had profound affect. I sympathize with Jimmy Carter’s tough mind, soft heart mentality and I hope that his work to advance human rights and alleviate human suffering is an inspiration for generations to come14.
- Jimmy Carter rabbit incident – https://en.wikipedia.org/wiki/Jimmy_Carter_rabbit_incident
- Man From Plains – https://en.wikipedia.org/wiki/Man_from_Plains
- Jimmy Carter – https://en.wikipedia.org/wiki/Jimmy_Carter
- Jonathan Demme – https://en.wikipedia.org/wiki/Jonathan_Demme
- Stop Making Sense – https://en.wikipedia.org/wiki/Stop_Making_Sense
- Palestine Peace Not Apartheid – https://en.wikipedia.org/wiki/Palestine:_Peace_Not_Apartheid
- Laffer Curve – https://en.wikipedia.org/wiki/Laffer_curve
- Reaganomics – https://en.wikipedia.org/wiki/Reaganomics
- Israel – Hamas War – https://en.wikipedia.org/wiki/2023_Israel–Hamas_war
- President Jimmy Carter Funeral Service at National Cathedral – https://www.c-span.org/event/public-affairs-event/president-jimmy-carter-funeral-service-at-national-cathedral/429876
- Jimmy Carter Tribute – https://www.jimmycartertribute.org
- President Carter Address on Crisis of Confidence – https://www.c-span.org/program/american-history-tv/president-carter-address-on-crisis-of-confidence/154404
- 20th Century Women – https://en.wikipedia.org/wiki/20th_Century_Women
- Carter Center – https://en.wikipedia.org/wiki/Carter_Center
-
South Carolina PPP Recipients
I was wondering this morning who locally had received money from the CARES Act Paycheck Protection Program1. I grabbed the existing data from the press release from the Treasury2. I imported it into a database trimmed out all of the other states, decently formatted the tables for the web, and published it to a searchable/sortable page.
You can access it @ https://davidwindham.com/wha/sc-ppp/

- https://en.wikipedia.org/wiki/Paycheck_Protection_Program
- https://home.treasury.gov/news/press-releases/sm1052
Related Articles:
- The Economist – America’s covid job-saving programme gave most of its cash to the rich – https://www.economist.com/graphic-detail/2022/01/31/americas-covid-job-saving-programme-gave-most-of-its-cash-to-the-rich
- Fast Company – Less than 35% of the $800 billion in PPP loans actually went to workers, say economists – https://www.fastcompany.com/90713747/workers-800-billion-ppp-loans-economists
-
People of Trump

Take a look at the photo above (click for full size). I just have one question: Do these folks look like the ‘good guys’? If I walked into a party and that crowd was there, I might say “honey, we’re in the wrong place and we should leave”. The collage took me about ten minutes this morning after reading the news and ‘googling’ “Trump Supporters” and “Trump Associates”. Maybe it’s just me, but considering the number who’ve been convicted of crimes or made other hateful statements, the odds of me being correct could be in my favor. Unlike People of Walmart1, this isn’t a group of folks who we might inappropriately laugh at because they’re either too poor or too uneducated to know better. These are folks who have decided that their political opinions or actions are important for one reason or another. I think the main attributes they share are anger and greed. And as much as I pride myself in trying to not to judge others… these are not my people.
I hope that this is absolutely the last political thing I ever include on my website and I hope we vote him out of office. I think I was pretty spot on with my previous political post2 in 2011 because I keep seeing that same image in the news. The folks I know who are involved in politics don’t rank high in my network. I’m happy to have the freedom to express my opinion, but in many ways, just posting about it is dragging me down. “Politics it’s a drag”…. that’s a line from the Ben Harper song Both Sides of the Gun2. It’s the last CD I think I ever bought and disc 2 is still in the player in my old truck… take a listen2. I was talking last night to my better half about the type of personality I admire and want to represent… it’s a person who exudes peace with themselves and the world around them. “Living these days is making me nervous”2, but I’m working on it.
-
Good News Everyone!

The title here is what Professor Farnsworth says before every suicide mission on Futurama, one of my favorite television shows1. I’m using it sarcastically for those that are uninitiated. On the very rare occasion that Farnsworth has good news, he opens with “Bad news, everyone!”. Without further ado, I’m just going to briefly summarize a bit of what I’ve been thinking regarding some of our currently trending topics. Be forewarned in that, as much as I like to say or present otherwise, my opinions lean a bit towards a boring dystopia. The symbolism of a for profit billionaire owned company2 launching astronauts into space above the heads of thousands of people protesting oppression amid a global pandemic and economic turmoil should not be lost on anyone.
My last post made light of the quarantine simply due to the fact that I’ve always thought that if you can’t be positive about something, at least figure out a way to make light of it. I’m a big proponent of that strategy and the power of humor to deliver the unspoken. I think we’re all aware by now that comedians very much walk that high wire. My better half and I are still very much quarantining ourselves from the rest of the world. You should see our Animal Crossing island now3. I’m always telling folks first world problems, but rioting, looting, political unrest, and a viral pandemic are not. These are third world problems and let’s be real with ourselves in that they are very much right on our doorsteps.
I gotta confess that I happen to be in the minority in my neck of the woods regarding Covid-19. The top of the fold front page article from our local newspaper several weeks back was titled “Overreaction? Some say COVID-19 has been weaponized for political reasons“4. The headlines recently show that South Carolina is leading the country in transmission rates and percent positive tests. Ah come on y’all, over 100,000 folks have died from it in the United States. The information war around it is a politicized mess. I’m not an epidemiologist, but I’m intelligent enough to understand the rates of transmission and the risks. My attitude has been from the start that you’ve got to consider what is worth the risk. I consider myself fortunate because I work from home and I’ve been able to adjust my leisure activities to suit. I think we all know who’s taking the risk and it’s mostly those that cannot afford to do otherwise. As for the other folks who would rather continue on in some sense of normalcy and expose others, I’ve just been writing that behavior off as ignorance and arrogance. I think that although some level heads are begging folks to take note, my guess is that the rates here in South Carolina will continue to rise and for the time being, I’ll be spending my time trying to isolate.

In the last couple weeks, the National Guard was deployed in over 20 states and protests have occurred in over 120 cities. The part that really had an effect on me was the watching videos of protesting and riots areas that I am very familiar with. It’s all just some video until you know folks that have been impacted. I think it’s pretty clear now the amount of discontent and I think it’s about much more than just racial injustice. I believe that there are a powder keg of other factors involved. Here’s an obscure fact related exactly to Minneapolis in that area has the largest discrepancies of home ownership rates for minorities with a gap of 51.3%5,6. The socio-economic factors combined with the pandemic are underlying issues of discontent. I read this morning that as the unemployment benefits and social safety nets run out, it’ll likely charge up a new round of unrest. There are things that we can try to do to fix it. The first step I had to take was trying to explain to a board of mostly sixty-plus white males how spreading rumors originating from disinformation campaigns were espousing racists views to our neighborhood association. It wasn’t met with much reception, but several days later, I did get an email from one member who had obviously put a bit of thought into what I was trying to say. I got choked up a bit reading the email just thinking that I mighta help create a bit more unity and understanding. I’ve been doing my little part by creating Wikipedia pages of more recent racial injustices that have happened around our state. It has a much more lasting effect than #hash-tagging some tweets or any other social media nonsense. I add the pages to their respected cities and towns as a historical reminders of the antiquated mindset that happened just a generation or two ago.
I’m very much a moderate sorta fella and I have empathy for the various opinions in this discussion. For instance, on the more conservative side, I’d think we have a better long term outcome by adding historical context to the monuments instead of removing them. I kinda like the way HBO handled Gone With the Wind with an introduction for historical context. I think we’re in a really dangerous era now because of our modern communication mediums and information silos they create. As much is being said otherwise, I wish I could assure folks that while yes, there are certainly agendas hidden in about every editorial room in the US, many honest to goodness journalist are being as objective and sincere as possible in their reporting. I remember one summer as a teenager, I went to a weeklong ‘journalism camp’ where this tough ole’ broad gave a lecture on objective reporting. I’m sure that every journalism student at every major university has heard something similar. I’ve since sat in on several editorial boardroom meetings at major newspapers. Traditionally they’ve been represented by a highly educated spectrum of opinions, but the so called democratization of internet publishing has given a megaphone to relatively obscure voices. I recently did a little forensic research into a couple online rumors and found two tweets insinuating that riots and a heavy response from law enforcement were coming to our community. Both accounts had virtually no way to fingerprint a the person(s) behind them and I found evidence that both accounts were disinformation campaigns. Although I expected them to be removed when the news announced that 170,000 Twitter accounts that had been removed7, I checked again this morning, and only one of them was removed. I’m not naming or linking to these tweets so as to not draw any unwelcome attention to my website. I will however point you to some research that was done showing how these campaigns are effective in a piece done by NBC on the spread of racist rumors8. These sort of disinformation campaigns are literally tearing apart the fabric of America.
I think the most dangerous aspect of everything going on is the idea of American exceptionalism9. I have Gravity’s Rainbow10 by Thomas Pynchon sitting on my nightstand right now and it continuously reminds me of a quote about the meaning of hit song from Devo. “Whip It” is a tongue-in-cheek pep talk satirizing hollow American optimism. “I had been reading Thomas Pynchon’s Gravity’s Rainbow, and he had these limericks and poems in there that really made me laugh, where he was making fun of all the American, can-do clichés—Horatio Alger—‘there’s nobody else like you,’ ‘you’re number one,’ ‘you can do it.’ And I was just trying my hand at it.”11 Don’t get me wrong on this, I do believe that America is exceptional in a number of ways, most importantly our founding democratic ideals. However, I think that the dangerous part is assuming that we will always continue to be exceptional. I think that sort of arrogance is dangerous in any sport, profession, or personality.
The slogan of Make America Great Again has been rubbing me the wrong way since I first wrote about it. In November of 2016, I was correct when I wrote that “My guess is that the markets will take a joy ride on ideals of deregulation, but social and global issues will be agitated by him.”12 A Pew Research study conducted in January of this year concluded “Younger Americans more likely than older adults to say there are other countries that are better than the U.S.” Slightly more than a third (36%) of adults ages 18 to 29 say there are other countries that are better than the U.S.13 These policies of some of the countries who might rank higher in certain indexes aren’t some sort of foreign quasi new world order sort of ideas. These are just practical solutions to modern problems. Let’s look into them and give it a shot. It reminds me a clip that’s been circulating the internet taken from the series The Newsroom originally aired in 201214.
That video is pretty potent. I think that the editorial Please Stop Telling Me America is Great15 was influenced by the monologue and is also worth a watch. Personally, I think it’s fundamental to admit where you are in order to get better at anything. Calculate your strengths and weaknesses realistically. I think we’re in that stage now. I’ve been tinkering with the idea of a third moderate political party in the U.S. based on the fact that I think teachers and nurses are the real backbone of our country. Perhaps their new political slogan could be something more akin to Make America Better. Let’s just admit it to ourselves and then get on with it.
- https://en.wikipedia.org/wiki/Professor_Farnsworth
- https://spacex.com
- https://davidwindham.com/animal-crossing/
- http://www.indexjournal.com/news/covid-19/overreaction-some-say-covid-19-has-been-weaponized-for-political-reasons/article_593c465c-8dfc-5cd7-a3bf-9ba9b9044952.html
- https://www.zillow.com/research/black-homeownership-rate-2020-26526/
- https://www.census.gov/data/tables/2019/demo/income-poverty/p60-266.html
- https://www.bbc.com/news/business-53018455
- https://www.nbcnews.com/tech/tech-news/antifa-rumors-spread-local-social-media-no-evidence-n1222486
- https://en.wikipedia.org/wiki/American_exceptionalism
- https://en.wikipedia.org/wiki/Gravity%27s_Rainbow
- https://www.salon.com/2017/09/16/33-13-devo-excerpt/
- https://davidwindham.com/make-america-great-again/
- https://www.pewresearch.org/fact-tank/2020/01/08/younger-americans-more-likely-than-older-adults-to-say-there-are-other-countries-that-are-better-than-the-u-s/
- https://en.wikipedia.org/wiki/The_Newsroom_(American_TV_series)
- https://www.nytimes.com/2019/07/01/opinion/america-great.html
-
Animal Crossing
Day 32 of the COVID-19 quarantine1 and my better half has left me some mail in Animal Crossing2 :

“Have a little sip of this tea Lee, No need to check the insurance plan Stan, you just listen to me”3
-
My Personal Website
What is a personal web page1,or home page, or website? I recently read several articles recently that put me in the deep spin about what the web actually is and how I use it. It’s a forest from the trees2 sorta of thing for me where I don’t often consider the medium. The first article I read was The Web is Industrialized and I helped industrialize it3 by Dave Rupert. In it, he cites two other essays, Architects, gardeners, and design systems4 by Jeremy Keith and Redesign: Gardening vs. Architecture5 by Frank Chimero. All three of those fellas are folks I respect. The essays were written in reverse order with responses to one another. Just read them since I’ll certainly fall short trying to summarize.
I’ve also been thinking about it a bit recently because I’ve been considering the reason I first published this website. I’m going to be completely honest here, so please don’t hold it against me. I remember the first time I ‘Googled’ myself while sitting at a computer at my college library when some other ‘David Windham’ came up in the search results. I was thinking something along the lines of… ‘who does this fella think he is?’, I’ll fix that. I recently acquired the original domain that some other David Windham had used years ago. And so it goes, almost twenty years later I’m still building web sites and applications for a living. I’ve seen the ins and outs of the ‘business’ per se and somehow along the line, I’ve developed a kind of Zen and the Art of Motorcycle Maintenance6 approach to it.
I’m very particular about how I do anything. And by anything I mean laundry, yard work, cleaning, eating, sleeping… etc. I try to remind myself, while ruining my vision going through thousands of lines of code, the parts that I really enjoy. Over the years, as the essays suggest, the design process is becoming automated and industrialized. I’ve mostly try to be involved in building feature rich software and web applications, likely because the pay is slightly better and maybe partly because I’ve gotten bored of design as it relates to web development. I’ve been studying design since an early age because I’m a visual learner. I have a way with pattern recognition. I used to have this ability to tell you the year and model car based on the headlights coming at you in the dark. It could be the reason I have degree in studio art and it’s likely the reason I started as a web ‘designer’.
The coding part closely aligns to the part of me that wants to understand inner workings… vis-a-vis the motorcycle maintenance. I like to say now that “I’ve learned more from maintaining projects than I ever have from building them” and I’ve tried to develop an attitude towards my work wherein I find value in the day to day work and problem solving. I try to control all of the subtle things like matching all of my syntax highlighting between editors, following string naming conventions, making reusable blocks of code, standardizing my build systems, and automating anything possible.
I’ve been tossing around what kind of value do I get with my website and I’ve come to the conclusion that the value I’ve made on this site is mostly personal. Sure, I’m pitching my abilities here and there and I’ve made it easy for others to find me, but the majority of it’s value is as a personal communication tool. After I had completed my first year or so of paying web projects, I decided that I needed business cards. I still use the same cards because I bought way too many of them and don’t hand out enough. A post from Matt Cutts entitled The Best Business Card Ever7 rolled into my reader in 2008 and that’s where the idea for this website design came from. He posted the original photo of a card he found in an old book he bought (the one in the bottom right below) and I found other similar versions online, but the tag lines just stuck with me and it’s still in the code of my homepage today. They’re hidden and you’d only read them if you’re using a screen reading device, but I use to just have them on the front page.


I’ve just found a live example of one of the first iterations @ http://windhamdavid.github.io/ and I just updated it after six years @ https://code.davidawindham.com/david/windhamdavid.github.com . Of course, I’ve added an interactive console with some embedded humor and a bunch of vector animations to it, but really the idea is still essentially the same as the front page of this website. Is a personal website just a business card, and am I’m a raconteur of sorts. What do I want from the internet? Sometimes, I think about the other David Windham’s out there wondering if I’ve accidentally stepped on their internet toes. It reminds me that my ability to essentially rent an address in cyberspace is somewhat an exercise in futility unless you have an objective.
Although I’ve been through it hundreds of times with clients, I’ve been reminded of the amount of reflection involved when you publish something for the world to see, much less making decisions about how you see yourself and want others to see you. I’ve also been making some business decisions about where to focus my billable hours. I’m fairly critical. My father liked to say that “you’re part of the everything sucks generation” and my wife likes to call it “GOM (Grumpy Old Man) syndrome”. I’m going to figure out how to own it and capitalize that trait. Maybe I’ll make a critical review chat bot. I’m planning on using a bot for the new site that’ll handle phone, text, email, and chat communications which will give me even more breathing room from the machines. I’ve only had a couple folks ever tinker with the interactive front page of this site even though I remember spending countless hours figuring out how to build out responses and store info from the terminal.
Anyway, I’m going to be doing a little motorcycle maintenance on this website to keep it running, but I don’t think I’ll ever really drastically change the design again. You can see the maintenance work @ https://code.davidawindham.com/david/daw . I’ve been hashing out some ideas about what to do with the new site. The primary concept is that I want it to be entirely functional. Ideally, I’d like to migrate over some of the functional bits of this site like the client portal, billing, project management and forms. I’ll put them all into one simple code base. I’d also like to automate some of my processes like communication and scheduling. I’d like it to be simple to understand and straightforward. I’m going to make it a little beast of burden working the interwebs to house and feed me. That’ll make more room for the more obscure fun stuff over here @ https://davidwindham.com and you can check my thought process on what is a personal website over at @ https://davidwindham.com.
- https://en.wikipedia.org/wiki/Personal_web_page
- https://en.wiktionary.org/wiki/see_the_forest_for_the_trees
- https://daverupert.com/2020/01/the-web-is-industrialized-and-i-helped-industrialize-it/
- https://adactio.com/journal/16369
- https://frankchimero.com/blog/2020/gardening-vs-architecture/
- https://en.wikipedia.org/wiki/Zen_and_the_Art_of_Motorcycle_Maintenance
- https://www.mattcutts.com/blog/the-best-business-card-ever/
-
Coronavirus
We’ve been in a self-imposed quarantine for several weeks now due to Covid-19 pandemic1. I think it’s day 20 for us. We had our groceries delivered yesterday. I’m used to this because I work from home, but my workload has picked up significantly because everyone else is also now at work on their home computers. My better half is adjusting fine and we consider ourselves lucky that both of us can work from home. I’ve certainly been very humble in my exchanges with others considering the situation and I was prompted to write a little note on this after watching the video2 from Queen Elizabeth this morning.
I really enjoyed how the she mentions that it’s a good time to be introspective. I wish our leaders had that sort of grace in dealing with duress. Our governor hasn’t issued any stay at home orders, but we’ve been doing so anyway. I’m a better safe than sorry sorta guy and we’ve been avoiding others since the onset. A couple folks scoffed at my attitude early on. Aside from the virtual meetings, we’ve been spending our time cleaning, working in the yard, watching movies, browsing Reddit, cycling, walking, and playing tennis with one another. The outbreak is predicted to extend and peak in early May and that’s at least another month at home.
There are a lot of implications regarding communication technology and the spread of Covid-19 that will likely reshape our work moving forward. I’ve been setting up custom video chatrooms, configuring electronic signatures, and transactional commerce web applications as fast as I am able. I welcome these changes and I’m lucky to have the work, but now is not the time for me to ramble on about it.
I’ve tried to tone down some of my reading of the news because I realize how much longer we will be dealing with it. I’ve been making some friendly personal calls to cheer folks up and I’ve been making an effort to be a little more gentle with other folks. I really just want everyone to slow down a bit and stay at home for a while. I’ll close this out the same way Queen Elizabeth did… “You should take comfort, while we may have more still to endure, better days will return. We will be with our friends again. We will be with our family again. We will meet again. But for now, I send my thanks and warmest good wishes to you all.”
- https://en.wikipedia.org/wiki/2019%E2%80%9320_coronavirus_pandemic
- The Queen’s Coronavirus broadcast: https://www.youtube.com/watch?v=2klmuggOElE
-
Shall We Play A Game?
After the movie War Games1came out in 1983, I asked my parents for a computer. We got a Commodore 642 that year. It worked out well because my brother and I took over the living room television with it and in return we ended up getting our own little black and white televisions. Then we got another computer, an Apple IIc3 with a monitor that we set up on a desk in the dining room. I spent some time glued to that little green on green screen trying to figuring out if I could really change my grades like Matthew Broderick did in the movie and solve the game Hitchhikers Guide to the Galaxy4 .
The reason I thought of this today is because I recently spent a little time IRL playing ‘war games’. One of my servers became the target of a DDOS5 attack. The IP6 addresses making the requests were from all over the world and they were making random GET7 requests all over the place. I noticed it after I discovered one of my web servers, Apache8, was down. There are all kinds of high scalability ways to avoid this, but this is a personal server and has no real need for them. It took me a bit to get to it because the requests weren’t immediately evident in the logs and I kinda suspected that I had broke a configuration with a recent series of upgrades. This particular server has gone through four major versions of Ubuntu9 and at least twenty versions of various languages and databases with all kinds of the old configurations and files stashed everywhere. When my wife asked me what I was doing up late on the computer, I used the expression “that this particular machine is like an indestructible 82 Toyota Tercel on steroids” while gathering some tactics to keep it running.
Most of these type of attacks are just automated crap designed to find holes to use your resources, plant malware, spam links, or part of a larger network attack. This is about the fifth time I’ve had to deal with one on a server I manage. The IPs are dynamic and tend to rotate around so good luck going the block route if you still want your software accessible. Whole country level blocks of IP ranges are against my ethos. Occasionally, if I find a bad bot, I’ll block em from the server, but in the case there was no use and the last thing you want to do is motivate a trouble maker. For example, we used a clever solution to stop bad commenters in newspaper websites by allowing them to continue commenting but only showing the comment to the IP they were connecting from. After cranking up some monitoring software to automatically restart the processes when they got overloaded, I rerouted the proxy through Nginx10 to lessen the load and stopped the web server from running out of resources. I waited a day, and sure enough, they were still coming in at about 400-500 connections a minute. I installed mod_evasive and ngx_http_limit_req_module to limit the connections. On day three, the automated requests kept coming in so I decided to start redirecting all of the automated traffic to a page being served by Node.js11 because the concurrency12 is so high and the memory footprint13 is so low. In combination with the other efforts, this drastically lessened the load on my server. It’s this page:

http://chess.davidwindham.com “How about a nice game of chess?” is a line read by the computer at the end of War Games. It’s when the computer decides that Thermal Nuclear War is a “Strange Game. The Only Winning Move is Not to Play”14. I left my logs up and watched em bounce in and out of that page for fun. Not once did any of those bots decide it was time for nice game of chess. There are some bad bots out there, but these just seemed intent on making as many requests as possible which indicates the intent was just general chaos. I’ll try and speculate what their intent was though. I suspect that the intent is to win a game… although the game in this realm is real. It’s an information war where the victors take the resources. My server isn’t hosting any disagreeable content that I’m aware of, it’s more likely that it’s just been caught in the ‘line of fire’ of a larger bot army. It’s perfect timing with the wild market swings, the oil spat, the coronavirus, and the US election cycle. Most folks have figured out by now that the backlash of the information age is turning out to be and abundance of dis-information. It’s no different than the average search engine or social media bots driving a case for a price. Just like in War Games, the modern ability to out-bot, out-spam, automate, or otherwise disrupt information is being weaponized. I first really caught onto this trend when I published https://davidwindham.com/news-war/ back in 2007. It’s gotten much worse in the sense that it’s now much easier to automate while everyone is glued to their screens.
This type of information war has been going on for eons. Here in South Carolina, our largest newspaper was founded by Narciso Gonzales15 who was shot dead over an information campaign in 1903. Our modern information war is a bit more akin to Matthew Broderick changing his grades in War Games. Many of the earliest prosecuted cases against spam and hacking were simple pump and dump16 stock schemes operated by teenagers. Spam accounts for the vast majority of all email and is a negative externality17, taxing resources just like a DDOS attack. These brute force types of disruption and manipulation are endemic of information technologies. The economic effect of the loss in productivity due to internet is well studied18, but I don’t believe that, as much as we’ve tried to grapple with the disinformation campaigns as they relate to politics, the more lasting effects of a digital information game are not fully understood at this point.
Some political and business strategist take pride in their ability to game the system in one way or another, be it digital or otherwise. Part of me is pessimistic about the ability of people to genuinely seek the truth, knowing our predisposition for cognitive biases, while part of me sympathises with those adhering to the populist rhetoric. For the most part, my concerns center around the actual facts and data and how easy those are to bend. I think that the lack of understanding of information technology is making it easier. Other more serious examples, aside from your relatives forwarding spam, would include how many people are becoming skeptics of science or radical in their belief system based on algorithmic siloing19. I learned at an early age how easy it is to fake data after winning a state science fair competition based on cooked results. The effects of an information war are more vague. Although I’m guilty of gaming the digital system for my own benefit, I’m genuinely concerned about how that is playing out on society as a whole. And while I’m sitting here enjoying winning my little game of bots vs. server, a real life game is playing out just like in War Games. In this case, I would argue that the epistemological20 implications of the information age are upon us and a misguided information war may be hacking our brains into thinking there is a winning move.
- https://en.wikipedia.org/wiki/WarGames
- https://en.wikipedia.org/wiki/Commodore_64
- https://en.wikipedia.org/wiki/Apple_IIc
- https://en.wikipedia.org/wiki/The_Hitchhiker%27s_Guide_to_the_Galaxy_(video_game)
- https://en.wikipedia.org/wiki/Denial-of-service_attack
- https://en.wikipedia.org/wiki/IP_address
- https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods
- https://en.wikipedia.org/wiki/Apache_HTTP_Server
- https://en.wikipedia.org/wiki/Ubuntu
- https://en.wikipedia.org/wiki/Nginx
- https://en.wikipedia.org/wiki/Node.js
- https://en.wikipedia.org/wiki/Concurrency_(computer_science)
- https://en.wikipedia.org/wiki/Memory_footprint
- https://vimeo.com/291483545
- https://en.wikipedia.org/wiki/Narciso_Gener_Gonzales
- https://en.wikipedia.org/wiki/Pump_and_dump
- https://en.wikipedia.org/wiki/Externality#Negative
- https://www.measuringtheeconomy.org/
- https://en.wikipedia.org/wiki/Filter_bubble
- https://en.wikipedia.org/wiki/Epistemology
-
FooBar Challenge Fail
I managed to not only to waste a bunch of my, but also my programming confidence over the last couple days because Google sent me down the rabbit hole. I’ve really been digging on the Go1 language recently. One of the first Go applications I hosted was Gogs2 and it’s turned out to be extremely memory efficient and reliable over the years. I’ve been searching around for a good lightweight framework fit for a project I’ve got later this year when I ran into the Fiber3 framework. I’m very comfortable with Express4 so I thought it might be a good fit. There is a little small hurdle though. I haven’t spent enough time with Go to give me the 99% confident sorta feeling I really need to feel comfortable about maintaining a Golang project for years to come. So I’ve been spending some free time with Go.
In doing so, I’ve been rummaging through the internet, (e.g. StackOverflow and Google) hitting up Golang issues like a newb5. Let’s face it, it’s how problems get solved. I’m at least 90% confident in my ability to find answers if I’m unable to solve them. I always tell folks it’s not rocket science, it’s really just about reading the instructions and being able to scan documentation. Read the Readme. It’s not some mystical mathematical or programming ability. I really believe it’s pretty simple stuff once you understand the fundamentals. I’ve sat through some coding challenges before and I’ve endured a couple whiteboard interviews. Well…

Last weekend, I was googling around about garbage collection5 in Go and viola… The ever allusive Google Foobar Challenge appears. Google uses this as a secret hiring challenge to find developers. I use the word allusive, because after looking into it there are evidently bunch of folks who are desperate to give it a shot. They obscure links to it in source code and through various queries. I wasn’t looking for it and let this be my word of warning. It’s tough and it left me feeling like I shouldn’t use the word programmer in a description ever again even though I rarely do. I prefer to use the term developer because I’m realistic about my own skillset and I understand that what I’m capable of. I’m perfectly capable of developing reasonable programming logic and reading the documentation. I’m perfectly capable of maintaining a software stack end to end. I’m perfectly capable of finding the best solutions to problems. I’m capable of building software that works and is maintainable. I’m capable of… you can see my effort here in building my confidence back up.

Evidently, I’m not capable of solving the programming challenges in Google invited me to complete. In my defense, the coding challenges were in either Python or Java and I’m best with PHP, Ruby, and Javascript. They all translate though and after failing the first challenge four or five times, I was tempted to use my other skillset of reading the docs and finding a solution online. There are a couple out there if you go looking, but I really wanted to test myself. I managed to fumble through the first couple problems digging around, but I really got stumped on the third and gave in to hunger and reality that I was wasting my time trying to prove something to myself. I did give it a go and spent some time with the challenges. They’re not the type of programming you’ll need in the majority of development work, but the type of high level challenges that a company like Google is up against. The FooBar interface has a 48 hour timer on it. I left it up on a monitor just watching the timer count down thinking some stroke of genius might hit me. It never did.
With that being said, let me just say that the IT world is full of bullshitters, just as I would imagine any other industry. I like to say this often… “you don’t know what you don’t know until you do”. When I look back at earlier work I’ve done, I’m often embarrassed. It’s just so true in programming and other software related businesses. Programmers, developers, cloud experts, system architects, analysts, security, consultants… all of have em. In many cases, the folks doing the hiring or writing the check don’t fully understand what is actually being built or how it operates. The skillsets change so rapidly and finding talent has developed into an industry. I once had an employer bring me into a meeting with the top brass where they proceeded to ask me “if I was some sort of hacker” simply because I pointed out a loophole that allowed me, or anyone else for that matter, unfettered access to a bunch of sensitive data. Sometimes I feel like folks don’t even know what their actual skill levels are. I’ve been guilty. I ended up in a gig one time where I was in over my head and I spent months trying to keep up with the rest of the team. It eventually wore me down to the point that I ended up physically ill from the workload. I recently interviewed a potential partner where I noted that although he listed his occupation on LinkedIn as “Software Developer” and he had a computer science degree from a local university, he had virtually no experience and really didn’t have the slightest of clues as to what he is doing. Some of his Github projects were littered with passwords and other evidence of operating on a thin veil of knowledge. I felt bad for him. That type of blind confidence can be dangerous.
The team at Google does very much know what they’re doing. Even the fact that they managed to pick up on me delving into Golang error reporting and garbage collection is evidence. Their hiring process is likely even more challenging even if I had gotten through the FooBar tests. I also ran through a serious of tests years ago for Facebook too and I think I failed half of them. I’m Ok with that. I didn’t want to move to California anyway. The weather here is more suited to my taste. Part of me has become a little jaded on the ‘sell yourself’ economy where we’ve all become our own PR agents. I try very much to just let my work speak for itself. I’m not a dev-ops magician or ninja. I have the experience to know to read the documentation and test for errors. I have the years of practical application that gives me some insight. My best skill, and the one I enjoy the most, is solving problems. My little niche is a blend of programming, design, and development… where I’ll continue to excel even if Google doesn’t want me.
-
Gutenberg Sidebar Plugin
I’ve been spending some free time with Gutenberg. The primary reason is that I’ve been digging into moving custom fields and post types into Gutenberg. This post started out as a testing post for doing so and I went ahead and made some notes about what I believe is a practical real world use case that I’ve used in this website for years. For those of you who’ve found this post from the title and want a quick deep dive, I’d recommend you head over to this article about “Managing Metadata in Gutenberg“.1 This essay is just my own little use case study and I tend to just write about my opinion. The analytics from this site show the majority of traffic are people trying to answer web development problems, so I try to save folks time by linking to relevant sources. Over the years, I’ve started noticed that the web is prejudiced to itself. This is another essay for another day… but put shortly: the internet has a lot of information about ‘the internet’ if you can imagine that.
Many moons ago, WordPress began using a <!– more –>2 quick tag in order to create the excerpt from a post. It used the first 55 words of the post content which was too long for meta descriptions. My first attempt to modify the_excerpt3 function would cut off sentences and the resulting meta description in the header would end up having the search results sentences ending in the middle of sentences with ‘…’. In an effort to avoid this, I’d continually had to inform others how to add the short tag or use the ‘more’ wysiwyg button from the classic editor. I got around this for several years by creating a custom function to replace the_excerpt in themes I built. The functions I’ve used found the post_excerpt, filtered it, replaced it with the the_title if it’s under 15 characters, looks for a punctuation mark to end the excerpt if it’s longer, changed the link, limited it to 115 characters. etc… (src: https://code.davidawindham.com/david/dw/src/master/inc/template.php#L89 )
function dw_good_excerpt($length) { global $post; $text = $post->post_excerpt; if ( '' == $text ) { $text = get_the_content(''); $text = apply_filters('the_content', $text); $text = str_replace(']]>', ']]>', $text); } $text = strip_shortcodes($text); $text = strip_tags($text); $text = substr($text,0,$length); if ( strlen($text) < 15 ) { $text = the_title('', ' - ', false); } $allowed_end = array('.', '!', '?', '...'); $excerpt = reverse_strrchr($text, '.', 2); if( $excerpt ) { echo apply_filters('get_the_excerpt',$excerpt); } else { echo apply_filters('get_the_excerpt',$text); } } function reverse_strrchr($haystack, $needle, $trail) { return strrpos($haystack, $needle) ? substr($haystack, 0, strrpos($haystack, $needle) + $trail) : false; } function dw_meta_desc() { global $post; $post = get_post( $post ); setup_postdata( $post ); if ( is_single() || is_page() ) { $meta_desc_value = get_post_meta( $post->ID, 'meta_desc', true ); if ( $meta_desc_value !== '') { echo $meta_desc_value; } elseif ( $meta_desc_value == '') { $meta_excerpt = dw_good_excerpt(115); echo $meta_excerpt; } } } function dw_excerpt($count){ $permalink = get_permalink($post->ID); $excerpt = get_the_content(); $excerpt = strip_tags($excerpt); $excerpt = substr($excerpt, 0, $count); $excerpt = $excerpt.'... more'; return $excerpt; }This function still didn’t have complete control over the excerpt. WordPress’ own meta box for a custom excerpt meta field was hidden by default and, at one time in an effort to make that more apparent, I used to move the meta field up above the content editing area. Other folks came up with all kinds of creative solutions and plugins to customize the excerpt. It became an important element to customize for because it was used by many default themes for archives, feeds, and search results. When the Open Graph protocol4 and Twitter Cards5 came along and I wanted the websites I built to have an exact control over the meta description, og:description, and twitter:description. My second method to get around the excerpt limitations were to just create a ‘custom field’6 to replace or give a second option to the_excerpt that could still be displayed elsewhere. This custom field stored a string in the postmeta table with the meta_key set as meta_desc. I’ve used this technique on bunches of websites and it’s still an effective technique with little overhead.
Likewise, I also added a “Media URL” meta field for embedding video into into third party sites using meta fields. I remember when I original built this meta_key how I also needed to include a video container for the media which you can see in the repo in my aptly named inc/tweaks.php7. I also needed the function to be backwards compatible with any of my earlier posts containing media. Using just these two meta fields, I managed to gain more control over the output of the meta data of the website. To see this in action, take a look at the view-source meta output from one of the first things I ever posted online back in 20058, using WordPress version 1, long before Twitter existed or I rewrote the post_excerpt for the first time.
Beginning with WordPress version 5, The Gutenberg editor’s ‘More Block’ now has similar functionality to the original <!– more –> short tag and it has an additional field for a manual excerpt. There is still quite a bit of chatter about the customizing the functionality of the block and more importantly to me, the custom fields UI now seems like a ‘second thought’ to the Gutenberg editor. Even their display is hidden in the Gutenberg->settings->options and the fields appear down under the editor unlike rest of the settings in the sidebar. This is just not the first class sorta of operation I’d like to have going on and I’ve taken the time to fix it using a Gutenberg sidebar plugin. I’ve managed to reconfigure my meta two custom fields into Gutenberg without having to use the clunky standard meta fields.
Adding metadata fields in Gutenberg is a two step process. You’re basically using React9 to interact with the API10 using the @wordpress/data module11. I used the API before it landed in core and I had already started down the JavaScript path before Matt handed out the homework to “learn JavaScript Deeply” in 201512. You just load up some packages, enqueue up your Javascript along side of the editor, and viola.

Of course, it’s a little bit more than that. I’ve put up the entire git repo @ https://code.davidawindham.com/david/dw-guten13. In my case, I also bundled in my need to tackle the subscript that I use for citations. Those were pretty easy to plugin into the wp.editor field and can be found @ dw-guten.js. I now have a little bit more elegant solution using Gutenberg, without having to use the clunky custom meta fields UI. I’m glad I spent the time with the API early on and I’m comfortable with the Javascript build processes like NPM, Webpack, and React. I believe that overall, the Gutenberg editor will significantly improve the end user experience. I originally shared concerns about the React license14 and I do understand the future need of Automattic to capitalize the better built blocks15. And although there have been growing pains, I’m glad that Gutenberg is being built transparently with open source licensing in the tradition of WordPress to combat the proprietary page builders that had started to take over.
When I first started into web development, I spent a lot of time trying to explain the WYSWYG16 editor to users and now I’m doing it again with Gutenberg. Although it’s quite a bit more complex than early rich text editors like TinyMCE or CKEditor17, it’s still primarily an abstraction layer to the HTML output. What makes it so much more powerful is the additional interaction with the API using packages. Part of me is really hesitant to see that functionality bundled (literally) into JavaScript packages, but I foresee a time when the mystery of development is broken down into the most simple terms of a programming language interacting with a database and spitting out results to the user. I think in WordPress, as I’ve previously mentioned14, we’ll see ‘full site’ editing in the near future where all of the previously built PHP template parts are abstracted to editable Gutenberg blocks. I also believe that other dynamic content management systems will use Gutenberg or something like it. I love the ‘cross-pollination’ of open source projects. I had a recent project where we included Gutenberg into Laravel using Laraberg16 and I’ve got an upcoming project where I intend to rewrite a host of features, including custom post types, into Gutenberg.
- https://css-tricks.com/managing-wordpress-metadata-in-gutenberg-using-a-sidebar-plugin/
- https://developer.wordpress.org/reference/functions/the_excerpt/
- https://wordpress.org/support/article/excerpt/
- https://ogp.me/
- https://developer.twitter.com/en/docs/tweets/optimize-with-cards/overview/abouts-cards
- https://wordpress.org/support/article/custom-fields/
- https://code.davidawindham.com/david/dw/src/master/inc/tweaks.php#L248
- https://davidwindham.com/my-chair/
- https://reactjs.org/
- https://developer.wordpress.org/rest-api/
- https://developer.wordpress.org/block-editor/packages/packages-data/
- https://www.youtube.com/watch?v=KrZx4IY1IgU
- https://code.davidawindham.com/david/dw_guten
- https://ma.tt/2017/09/on-react-and-wordpress/
- https://github.com/Automattic/newspack-blocks
- https://en.wikipedia.org/wiki/WYSIWYG
- https://en.wikipedia.org/wiki/Online_rich-text_editor
- https://davidwindham.com/wordpress-5/
- https://github.com/VanOns/laraberg
-
Richard Ayoade: A Catcher in the Rye
My wife and I just finished watching all of the seasons of Richard Ayoade’s1 Travel Man2. In one episode we were watching he mentions that he’s half Norwegian which peaked our curiosity and we asked “what’s her name” to “Wikipedia Richard Ayoade”. I’ve started the habit of referring to Alexa or Siri as “What’s her name” so as to not summon any additional eavesdropping. I’m a fan of Ayoade. Although I’d taken note of him in The Mighty Boosh3, I didn’t really pay particular attention to him until watching The IT Crowd4. I now go out of my way to find other work he’s involved in because of his dry wit, intelligence and self deprecation. It’s a particular kind of personality I gravitate towards. He always looks at the camera with a bit of skepticism and it’s hard to find a photo or video of him in which he isn’t.

The article from which the image above was republished5, written by Ayoade is spot on for my interpretation of casting Ayoade as Holden Caulfield6. He includes Holden as a footnote and cites many of the best anti-heroes giving the most attention to my favorite – Max Fischer from Rushmore7. After having “what’s her name” solve our speculation about Ayode’s background, I got up this morning and started reading various things about him. I won’t rehash any biographical material because you can read the Wikipedia entry on him. Aside from the Cambridge education, the law degree, and a screenplay based on a Dostoyevsky novella…there’s a Radiohead tribute video he made back in 2016:
( via: https://www.instagram.com/p/BGwhZRbqyt-/ ) I think the video above is really indicative of Ayoade’s attitude. It was made for the song “Tinker Tailor Soldier Sailor Rich Man Poor Man Beggar Man Thief“8. The song lyrics explore a dark theme of based on children’s nursery rhyme Tinker Tailor9. Ayoade’s little vignette has businessmen all jump to the side of the road like startled deer. It reminds me of a darker version of something that John Cleese10 might have written for Monty Python11.
The one thing that really resonated with me, and the reason I was motivated to write this essay, was this quote from an interview: “I was so obsessed with The Catcher In the Rye that I started to dress like Holden Caulfield”. It stuck with me because I continually run across references to J.D. Salinger’s A Catcher in the Rye12 where I try to remanence on exactly what it was about that book that I so deeply connected with. I’ve gotten in the habit of researching my past experiences to try and uncover clues about myself. My essay about E.T.13 several years back is a good example. I can’t remember when I first read Catcher. Shortly thereafter I went to the bookstore and bought every book he wrote and read them all. I’m not an avid reader so it’s pretty rare incidences that I’ve done that. I’m still not sure why, which may be the primary motive for researching it this morning. Perhaps it may have just been my mindset during the years I read it and maybe I’ll have to read it again in an effort to understand.
I’m not the only one. There are countless essays and research on A Catcher in the Rye. I think I’ve brushed through some of them in the past in attempt to explain my interest. If you want a deeper dive on it referencing other critical works, I’d suggest reading a piece by Gis Jen14 re-published in The New Republic15. A more recent piece from Dana Czapnik16 suggests that if I re-read it, I might “You might see Holden for who he really is. Not a stand-in for every single teenager that ever walked the Earth, but a lonely individual who finds the injustices of the world intolerable.” Alfred Kazin17, among other critics, took the harsh view, characterizing Salinger’s audience as “the vast number who have been released by our society to think of themselves as endlessly sensitive, spiritually alone, and gifted, and whose suffering lies in the narrowing of their consciousness to themselves.” Reading these other reviews morning has made me wonder about my supposed connection. I’m guessing that I most likely reminisced on something I had a previously only understood in a very narrow sense.
Richard Ayoade has accomplished exactly what he wanted. He is a modern version of Holden Caulfield. He is overly sensitive, self deprecating, doubtful, sarcastic, sardonic, alienated, crude, and implies that he may be misunderstood. At least he’s projecting that image. In interviews he seems to echo sentiments that Holden would have. He mentions that his parents did not approve of his theatrical studies. In a rare interview Salinger explained that Holden was semi-autobiographical. Don’t we all project a little bit of who we’d like to be. Why am I connecting and why do I find his character or personality so charming? It’s evident I’m not the only one considering the successes he’s having. I would argue that Ayoade unlike Holden, who some consider the ‘avatar of American authenticity’, has a personality more akin to our modern world. Is his tone symbolic of an undercurrent of a collective attitude that is changing with the times? Even if my take on Catcher in the Rye was somewhat narrow minded, I like Ayoade. I’m interested in ordering “Ayoade on Ayoade: A Cinematic Odyssey“18 and I’ll continue to track down anything he’s involved with. In true Holden Caulfield fashion, he bored of Travel Man quickly, and he’s on to something else.
- https://en.wikipedia.org/wiki/Richard_Ayoade
- https://en.wikipedia.org/wiki/Travel_Man
- https://en.wikipedia.org/wiki/The_Mighty_Boosh
- https://en.wikipedia.org/wiki/The_IT_Crowd
- https://www.theguardian.com/film/2011/mar/12/richard-ayoade-submarine-antiheroes
- https://en.wikipedia.org/wiki/Holden_Caulfield
- https://davidwindham.com/rushmore/
- https://en.wikipedia.org/wiki/A_Moon_Shaped_Pool
- https://en.wikipedia.org/wiki/Tinker,_Tailor
- https://en.wikipedia.org/wiki/John_Cleese
- https://en.wikipedia.org/wiki/Monty_Python
- https://en.wikipedia.org/wiki/The_Catcher_in_the_Rye
- https://davidwindham.com/et-extra-terrestrial/
- https://en.wikipedia.org/wiki/Gish_Jen
- https://newrepublic.com/article/72860/why-do-people-love-catcher-the-rye
- https://www.theguardian.com/books/2019/aug/01/the-catcher-in-the-rye-fans-jd-salinger-holden-caulfield
- https://en.wikipedia.org/wiki/Alfred_Kazin
- https://www.amazon.com/Ayoade-Cinematic-Odyssey-Richard/dp/0571316530