<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Publishing on billpg industries™</title><link>https://owl.billpg.com/tags/publishing/</link><description>Recent content in Publishing on billpg industries™</description><generator>Hugo</generator><language>en-us</language><copyright>© William Godfrey.</copyright><lastBuildDate>Tue, 03 Mar 2026 19:29:01 +0000</lastBuildDate><atom:link href="https://owl.billpg.com/tags/publishing/index.xml" rel="self" type="application/rss+xml"/><item><title>"Too Clever By Half"</title><link>https://owl.billpg.com/too-clever-by-half/</link><pubDate>Tue, 03 Mar 2026 19:29:01 +0000</pubDate><guid>https://owl.billpg.com/too-clever-by-half/</guid><description>&lt;figure class="wp-block-image aligncenter size-full"&gt;
&lt;img src="https://owl.billpg.com/images/Too-Clever-By-Half.png" class="wp-image-1429" /&gt;
&lt;figcaption&gt;Wilf's Programmers' Workshop, PC Plus, November, 1991.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;This was my first ever publication. Wilf Hey, writer of the &lt;strong&gt;Programmers’ Workshop&lt;/strong&gt; column in PC Plus, had run a contest to write what we’d now call a &lt;em&gt;quine&lt;/em&gt;, but which he described as a “self‑creating program”, one that tells you what it does by producing its own source.&lt;/p&gt;
&lt;p&gt;By coincidence, I had just been experimenting with PKZIP’s ability to create self‑extracting EXE files. ZIP archives fused with the decompressor into a single executable. It occurred to me that if I took a few liberties with the definition of “programming language”, I could use that mechanism to produce a rather cheeky entry.&lt;/p&gt;</description></item><item><title>My adventure into self web-hosting (Part 1)</title><link>https://owl.billpg.com/web-hosting-1/</link><pubDate>Fri, 25 Mar 2022 20:20:41 +0000</pubDate><guid>https://owl.billpg.com/web-hosting-1/</guid><description>&lt;p&gt;If you had asked twenty-something me how he thought forty-something me would be hosting his website, he&amp;rsquo;d have predicted I had a rack of small servers in my attic, as part of a grid-computing business. (That&amp;rsquo;s what we called &amp;ldquo;cloud&amp;rdquo; computing back then.)&lt;/p&gt;
&lt;p&gt;He&amp;rsquo;d have been disappointed to find out I&amp;rsquo;m using a shared web-hosting service, but that may change.&lt;/p&gt;
&lt;figure class="wp-block-image aligncenter size-large"&gt;
&lt;img src="https://owl.billpg.com/images/keekahs-717622.jpg" /&gt;
&lt;figcaption&gt;"The end of the day, remember the way, we stayed so close to the end, we'll remember it was me and you 'cause we are gonna be..."&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;h2 id="over-the-cliff"&gt;Over the Cliff&lt;/h2&gt;
&lt;p&gt;It all started when my article, &lt;a href="https://owl.billpg.com/data-mining-wikipedia/" rel="noreferrer noopener" data-type="post" data-id="401" target="_blank"&gt;Data-Mining Wikipedia for Fun and Profit&lt;/a&gt; made it to the top of Hacker News and stayed there for three hours. I was careful to &lt;em&gt;try&lt;/em&gt; to not overburden the system by switching on an HTML cache. This way, visitors would only be served up static files without the server having to run the PHP code or talk to the database. Despite that, the server went down and I had to post a sheepish comment with a link to a mirror.&lt;/p&gt;</description></item><item><title>My Incredibly Stupid Diary</title><link>https://owl.billpg.com/incredibly-stupid-diary/</link><pubDate>Fri, 18 Mar 2022 19:06:05 +0000</pubDate><guid>https://owl.billpg.com/incredibly-stupid-diary/</guid><description>&lt;p&gt;&lt;a href="https://billpg.com/incredibly-stupid-diary/2004/11/lets-try-that-again.html" data-type="URL" data-id="https://owl.billpg.com/incredibly-stupid-diary/2004/11/lets-try-that-again.html" target="_blank" rel="noreferrer noopener"&gt;🥇First Entry&lt;/a&gt;&lt;br&gt;
&lt;a href="https://billpg.com/incredibly-stupid-diary/random" data-type="URL" data-id="https://owl.billpg.com/incredibly-stupid-diary/random" target="_blank" rel="noreferrer noopener"&gt;⚾ Random Entry&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Years ago, 2004 to 2007, I had a website. It was mildly popular - I counted the number of readers and found I had eleven regulars. I called it &amp;ldquo;The Incredibly Stupid Diary of Bill&amp;rdquo;, although I added a few friends as writers and &amp;ldquo;of Bill&amp;rdquo; very soon became &amp;ldquo;of Bill et al&amp;rdquo;.&lt;/p&gt;
&lt;figure class="wp-block-image size-large"&gt;
&lt;img src="https://owl.billpg.com/images/banner-sept06-b.jpg" /&gt;
&lt;/figure&gt;
&lt;p&gt;I occasionally posted long form pieces, but mostly it was quick-and-short stuff that these days I would post to &lt;a href="https://facebook.com/billpg" rel="noreferrer noopener" target="_blank"&gt;Facebook&lt;/a&gt; or &lt;a href="https://twitter.com/billpg" rel="noreferrer noopener" target="_blank"&gt;Twitter&lt;/a&gt;. I used Blogger before it was BlogSpot. Back then, it worked by connecting to my web server and uploading HTML files over FTP. I&amp;rsquo;d leave my password configured with Blogger so that in case anyone commented, they could update the page with the comment without having to wait for me to allow it.&lt;/p&gt;</description></item><item><title>Dear WordPress. Please stop using MySQL.</title><link>https://owl.billpg.com/dear-wordpress-please-stop-using-mysql/</link><pubDate>Thu, 20 Jun 2019 18:56:00 +0000</pubDate><guid>https://owl.billpg.com/dear-wordpress-please-stop-using-mysql/</guid><description>&lt;p&gt;&lt;img src="https://owl.billpg.com/images/Squirrel.jpg" data-border="0" data-align="right" data-original-width="150" data-original-height="150" width="150" height="150" /&gt; This may very well end up being my last &lt;em&gt;Blogger&lt;/em&gt; based post as I&amp;rsquo;m slowly adopting (self-hosted) WordPress as a publishing platform. I have a set of websites running on a commodity cPanel-based shared host, with a view to moving to a dedicated VM in due course. While setting things up and playing about with WordPress, I kept tripping over an obstacle that just kept getting in the way of doing what I wanted to do. &lt;strong&gt;MySQL&lt;/strong&gt; was that obstacle. Dear WordPress, please have an option to use a file-based database (such as SQLite) instead.&lt;/p&gt;</description></item><item><title>I need a good podcast catcher (and a bit of a rant)</title><link>https://owl.billpg.com/i-need-a-good-podcast-catcher-and-a-bit-of-a-rant/</link><pubDate>Sat, 15 Jun 2013 16:35:00 +0000</pubDate><guid>https://owl.billpg.com/i-need-a-good-podcast-catcher-and-a-bit-of-a-rant/</guid><description>&lt;p&gt;I listen to podcasts on my daily commute. These are radio shows that can be downloaded over the internet and listened to later. However, to keep up with a weekly show, I’d have to - every week - visit the show&amp;rsquo;s website and manually download the latest episode. That would get real tedious real fast. To resolve the tedium for us all, the podcast catcher app was invented.&lt;/p&gt;
&lt;p&gt;Podcast catchers allow me to list all the shows I want to listen to. Every day or so, it automatically checks each show on the list to see there are any new episodes for me. If it finds any, it downloads them and plays them for me.&lt;/p&gt;</description></item><item><title>The cult of 140</title><link>https://owl.billpg.com/the-cult-of-140/</link><pubDate>Wed, 09 Feb 2011 23:02:00 +0000</pubDate><guid>https://owl.billpg.com/the-cult-of-140/</guid><description>&lt;p&gt;Apparently, women don&amp;rsquo;t understand the offside rule. At least that&amp;rsquo;s according to some TV sports pundit who lost his job recently.&lt;/p&gt;
&lt;p&gt;I don&amp;rsquo;t really understand the offside rule either, so I wrote this on my facebook page in response to the news.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;The key to understanding the offside rule is that it doesn&amp;rsquo;t really matter what the rule is.&lt;/p&gt;
&lt;p&gt;Make up any old rubbish, like &amp;ldquo;Goal keepers must be pipe smokers&amp;rdquo; and call that the offside rule. It is just as meaningful.&lt;/p&gt;</description></item><item><title>reddit'd (Followup to 'Construct Something Else')</title><link>https://owl.billpg.com/redditd-followup-to-construct-something-else/</link><pubDate>Tue, 14 Sep 2010 00:12:00 +0000</pubDate><guid>https://owl.billpg.com/redditd-followup-to-construct-something-else/</guid><description>&lt;p&gt;&lt;img src="https://owl.billpg.com/images/s200_2894318763_dc8f349691_o.jpg" data-align="right" width="157" height="200" /&gt;Fame at last! Fame at last! My last piece, &amp;ldquo;&lt;a href="https://owl.billpg.com/construct-something-else-c/" target="_blank" rel="noopener"&gt;Construct something else!&lt;/a&gt;&amp;rdquo; got a bit of attention when someone posted it &lt;a href="http://www.reddit.com/r/programming/comments/dd9sa/construct_something_else_c/"&gt;on reddit&lt;/a&gt;.That was unexpected. Remember the rule; If you publish something that&amp;rsquo;s a bad idea in hindsight, post a &amp;ldquo;clarification&amp;rdquo; article claiming you&amp;rsquo;ve been misunderstood and that you never thought it was a good idea in the first place. Then hide in the shower. You see, I think I&amp;rsquo;ve been misunderstood. I was reading stackoverflow and I found the question asking about c# constructors. There was the comment from Eric Lippert, talking about the possibility of implementing this feature, but they were lacking a good reason to undertake the effort. Then I remembered I had exactly what he was looking for, a real-world use case! So I wrote up my experiences in a blog post and left a comment on the stack overflow question. I thought I was rather clear that I was just providing Mr Lippert with a use case, rather than actually advocating it. Nonetheless, some people mistakenly took my post as advocacy and responded as such. Now if you&amp;rsquo;ll excuse me, I&amp;rsquo;m going to go have a shower.&lt;/p&gt;</description></item></channel></rss>