About bit-player
by Brian Hayes
Published 14 August 2025
I called it “bit-player” because I’m someone who plays with bits—the fundamental atoms of information. But the name also alludes to the theatrical notion of a bit-player: an actor who takes minor, non-starring roles. I am not a mathematician or a computer scientist; there are no theorems or algorithms named for me. I consider myself a lifelong student of those fields, an enthusiastic amateur rather than an expert. I’ve had some fine adventures bumbling my way through the landscapes of mathematics and computation. I want to share what I’ve learned.
History
The bit-player website was launched in 2006 as an adjunct to my “Computing Science” column in American Scientist magazine. A colleague, Martin Baucom, had told me about the wonders of a software system called WordPress. When I tried it out, I was instantly enchanted by the miracle of pushbutton publishing. What a contrast to the world of ink-on-paper periodicals, where getting your words in front of readers required the services of an editorial team, a production staff, a printing plant, a bindery, and the U.S. Postal Service. The lead time was weeks. Now I could publish my words as fast as I could type them.
Captivated by the novelty of lickety-split publishing, I felt I should be posting something new every day. Many of those early posts were brief squibs, rather like tweets (though Twitter would not be born until a few months later). If I had nothing in my own head worth sharing, I would publish a “quote of the day” from some savant I admired.
The daily publication regimen didn’t last long. Writing quickly and briefly is just not in my nature. I’m a plodder. And so, over the years, my posts grew fewer and fewer but longer and longer.
At the outset I labeled bit-player a “weblog.” (The rebracketed form “blog” was a bit too breezy for my taste.) Rebracketing is a linguist’s term for breaking a word apart in inappropriate ways, as when someone reads “therapist” as “the rapist.” In 1999 Peter Merholz rebracketed “weblog” as “we blog.” The front page of the site presented the full text of the 10 most recent posts in reverse chronological order, all in one long scroll. This worked well when the posts were a few paragraphs long, but it became unwieldy later, as I allowed myself to become more long-winded. In 2013, during a revamp of the site, I altered some settings so that only the single latest post appears on the front page. In 2025, during another cycle of renovation, I ditched the diary-like weblog structure altogether.

A snapshot of the bit-player website in its earliest years, from 2006 through 2012.

A 2013 revamp brought cosmetic changes and some functional ones, such as menus for navigating the site.

The 2025 edition is not so much a revamping as a resoling: The main changes are to the substructure, the invisible machinery that runs the website. The algorithm behind the animated banner has also been tweaked.
Technology
Three computing devices help to convey this web page from my fingertips to your eyeballs. First is the laptop I’m using to create the document—writing the text, preparing the illustrations, and so on. At the other end of the line there’s whatever device you are reading it on—a computer, a tablet, a phone. Standing between the origin and destination machines is a middleman: the web server.
Under WordPress, the server is the hub of the system. That’s where web pages are assembled on demand, like made-to-order pizzas. WordPress takes the main text of an article and adds headers and footers to the page, plus menus, buttons, links, and other tasty toppings, as well as stylesheets and various hunks of code needed to make the page look and behave properly. Most of these ingredients are stored in a relational database maintained by WordPress, or in the server machine’s file system. A few resources, such as fonts, might be downloaded directly to your computer from elsewhere on the internet—from Google, perhaps, or from a “content distribution network.”
Bit-player’s first web server came with WordPress preinstalled, and with the services of system administrators who configured and maintained all the software. It was pleasant to be relieved of those chores. On the other hand, I was soon frustrated by management rules that locked me out of parts of the system. For example, I had a hard time trying to install specialized stylesheets for individual posts. In 2013 I moved the site to a virtual private server—a barenaked Linux computer where I could install my own copy of WordPress and any other software I wanted, and where I could fiddle with the innards to my heart's content. Naturally I made a terrible mess, altering the WordPress core in ways that made later updates awkward or impossible.
In the 2025 edition of bit-player I have finally parted ways with WordPress. I have also shifted the assembly-line work off the server and onto my own computer. A program called Eleventy (or 11ty) orchestrates the whole process, combining words and pictures and other components to make pages, and organizating the pages to make a website. For example, the “Stories” menu appears on all pages, and every copy of that menu needs to be updated whenever I publish a new story. Eleventy takes care of that task without manual intervention.
Eleventy works by keeping a local copy of the complete website, then regenerating it every time I add or edit a document. When I’m ready to go public, I copy the whole collection of prefabricated pages to the server. This scheme reduces the computational load on the server; all it does is transmit readymade files in response to requests from your browser. And managing the server software is greatly simplified.
What’s New, What’s Missing
The new bit-player is still a work in progress. There are broken links and misshapen illustrations and buggy programs. My plan is to try to fix at least one problem every day.
One goal of the makeover was to improve accessibility on phones and other small-screen devices. The 2006 version of the site was hopeless in this respect—which is not much of a surprise since the iPhone and its brethren didn’t yet exist. The 2013 revision was not much better. Now most pages should work reasonably well on any device with a screen width of at least 350 pixels. A few stories have elements that would need to be completely reworked to fit on a small screen or to function properly with a fat-fingered touch interface. Some, I fear, will never be fixed.
Other pieces of the puzzle are still missing. The old bit-player had a search function, although it never worked well. The new site has no search facility at all. I hope to build one, but there’s a complication: The pattern-matching program will have to run on your computer, not on mine or on the server. Making that happen looks like an interesting challenge.
Another painful loss may never been remedied: I have not found an acceptable way to allow readers to submit comments for publication. In years gone by the comments appended to my articles were often more interesting and illuminating that the original text. I dearly wish I could continue welcoming such contributions, but I don’t think it will be possible.
The WordPress comment mechanism was based on a fill-in-the-blanks form that invited readers to write a response to an article, click a button, and have their words presented to all subsequent viewers of the article. For this scheme to work, the web server had to be equipped to accept submissions from any visitor to the site; it would store those comments in the database and serve them up when appropriate. The new server has no such ability; readers can only read, not write.
The difficulties of handling comments are not just technical. The bit-player comment form was meant for thoughtful and polite discourse on topics pertinent to bit-player articles. However, the form was accessible not just to the thoughtful and polite among us but to the entire global internet. Anybody (and anybot) with an IP number could post all manner of nonsense. Over two decades, more than 2,000 legitimate comments were received and published, but in the same period more than 640,000 spam comments were submitted. Most of them were intercepted by an automated filtering service called Akismet, but plenty more slipped through and had to be removed by hand.
Third-party services, such as Disqus, provide a mechanism for accepting reader comments, but I am reluctant to engage those services. They compromise the privacy of all visitors to the site, even those who do not submit comments. Perhaps there’s another way. If you know of one, please get in touch. (I wish I could tell you to leave a comment. I’m afraid the best I can offer is old-fashioned email: brian@bit-player.org.
Even if the comment-submission form never comes back, I have retained and republished all the existing comments.
Retirements
The complete archive of bit-player posts comes to 388 items. I have kept them all, on the principle that erasing history is an act of vandalism. On the other hand, some posts are so trivial or so outdated that I would be wasting your time if I encouraged you to read them. Do you really want to load a web page whose only content is a two-line announcement of a talk I gave back in 2006? All those articles are still present on the site, but they are marked as “retired” and are not listed in the master index of published stories. The only links to them are in the list that follows:
- Quote of the day (9 January 2006)
- Quote of the day (10 January 2006)
- Quote (11 January 2006)
- Talkin’ Towson (24 April 2006)
- Nullity (7 December 2006)
- Marketplace of Ideas Interview (5 September 2008)
- Alfonso’s Universe (30 September 2008)
- Survey on Computing in the Sciences (17 October 2008)
- Light-Field Photography (14 May 2012)
- A quasirandom talk (2 February 2015)
- The Carnival Is Coming to Town (10 December 2015)
Against Nosiness
Bit-player is a non-commercial website. You don’t have to pay to read anything here. Furthermore, there are no advertisements or paid product placements or endorsements or sponsored posts. I’m not an “influencer.” If you buy something I mention, I will not earn a kickback.
You can browse the site anonymously. You don’t have to give me your email address, or show your driver’s license, or scan your face, or select pictures of motorcycles to prove you’re not a robot. The server does record the internet protocol (IP) address assigned to your computer; without it, the server could not respond to your requests. (If you want to avoid disclosing even this clue to your identity, please use a VPN—a virtual private network.)
On your first visit to many websites, you’ll see a ribbon at the bottom of the screen advising you that the site uses “cookies”—bits of data stashed on your computer that keep track of your interactions with the site from one visit to the next. For example, a cookie might record whether or not you have already consented to the use of cookies. For bit-player, I’ve considered creating a ribbon that says, “This site does not use cookies.” The trouble is, I’d have to use a cookie to record your consent to cookielessness.
So: No cookies here. Also no tracking pixels, the invisible images whose purpose is to alert various interested parties (e.g., marketers, surveillance agencies) that you are visiting a particular web page. I have not installed Google Analytics or any of its competitors to gather data on visitors.
Finally, I have avoided the use of content-distribution networks and other “cloud” resources that might also threaten privacy. With a few exceptions, everything that appears in a bit-player web page is downloaded directly from the bit-player server. The exceptions are found in a few posts from early days, when I thought that cross-linked resources were one of the splendid features of the web. (I have changed my mind about that.)
Copyright and Licenses
I hold the copyright to almost everything that appears on this website. Most of my work is made available here under a Creative Commons license, specifically CC BY-NC 4.0. This license allows you to copy and reproduce the text and illustrations for any noncommercial purpose, provided you acknowledge my authorship. (See the linked document for details.) You don’t have to ask my permission, although I would be happy to know about your use of the material.
Computer programs embedded within an article are released under an MIT open-source license, which allows free use of the programs, at your own risk.
About web scrapers and spiders: I have mixed feelings about programs that crawl the web from link to link, indexing pages for search engines and other uses. On the one hand, building search engines and archives is a socially beneficial activity. I want people to be able to find and read what I’ve written. On the other hand, scrapers sometimes run amok, downloading the same files over and over, burning up server resources and network bandwidth.
More recently, controversy has focused on AI companies hoovering up great swaths of the internet for the training of chat bots and other language models. I am skeptical about the utility and the future prospects of this entire enterprise, but I have no grievance about the use of my own work for this purpose.
For now I am placing no restrictions on robotic crawlers of my websites, but I am prepared to ban any bandwidth hogs whose rampages impede others’ access.
Publication history
First publication: 14 August 2025