Thematic cleaning

It should be obvious to anyone familiar with the site giving it even a passing glance from today that the theme has been changed. I switched to the default WordPress “Twenty Twenty” theme. I added bunch of custom CSS to override the theme and make it look more like confusion has looked for the past 14 years or so…

Why? Well, I’ve been running on a home grown theme that grew as a hack of the original default theme, ether known as Michael Heilemann’s “Kubrick” theme. But it was a mess of legacy crap; HTML that predated XHTML, then was XHTML, then no one gave a shit about XHTML anymore so I stopped making sure changes validated, CSS that started with CSS1, passed right over CSS2 as far as I remember and had some CSS3, oh, JavaScript, early jquery libraries!

I was tinkering with it lately and just decided it needed a complete rewrite. I had about 500 lines of CSS and when I looked at the Twenty Twenty theme they have ten times that. Providing responsive layout and handling all the layout code generated by various Gutenberg blocks. Besides the CSS there are hundreds of lines of PHP and HTML in various template files, way more files than are in the old Confusion theme. It would be a lot of work to start from scratch, it might be fun, but it would also take me ages given the priority I assign to managing this site. So better off trying to use a ready made them.

But, I will miss the layout, the simplicity, of the old Confusion theme. I used the Custom CSS feature to skin the Twenty Twenty theme to resemble the old Confusion theme, but there is still a long way between the two. There are also a ton of things that must be broken. I hope I can work through those in the next few weeks. Ah, debugging in production! Wish me luck.

colophon technical

Achievement unlocked: Padlock

The COVID19 lockdown here in Singapore gave me some time to dig into an issue that has been bugging me about for a while. Since before browsers started indicating sites which don’t use HTTPS it’s been in my to-do list. I looked into it when I first moved the site to AWS but didn’t get it done. So the other day I sat down and figured it out. Wasn’t that hard. I originally thought I would put the SSL on a Elastic Load Balancer on AWS but given that you have to pay for the ELB and this site hardly justifies any infra based on visits… I decided not to worry about the fact that my first try didn’t work and I kept digging into ways to enable HTTPS on the site. In the end I found [] which is dedicated to helping sites move to HTTPS.

I stumbled again trying to follow their simple instructions because their automated tool, certbot [] from the Electronic Frontier Foundation, didn’t know what to do on a Amazon Linux 2 box. It told me I would need to install all the dependencies and such myself and directed me to documentation which was a dead link… (see here: [], nice 404). So… back to Google, or actually DuckDuckGo [] in my case. And after a few permutations of terms I found this tutorial on AWS: Configure SSL on Amazon Linux 2 []. And that worked like a charm.

But still, no padlock…

Screenshot of Chrome address bar showing with "Not Secure" indicator.
HTTPS but no padlock

Lucky Let’s Encrypt directs you to SSL labs‘ [] SSL Server Test page where you can check on your site. A few minutes later the problems were listed on the report page. A couple of hard failures where I was loading things from other sites over HTTP, font libraries from Google. and a bunch of soft failures related to old images what were linked with HTTP not HTTPS. A quick edit of the site header page fixed the Google font libraries link and a quick search and replace on old posts, using the Search Regex plugin (which I installed long ago to fix some other things) and viola! Achievement unlocked, site locked:

Screenshot of Chrome address bar showing with secure indicator icon - a locked padlock.
Shiny new padlock

License Update

I have updated the License for all the content on this site to the Creative Commons Attribution 3.0 Unported [] license. Have fun.


Confusion Icon

I don’t know if I like it, don’t know if I’ll keep it but I made a site icon. All the important and well read bloggers have one so I guess I should too. Even if no one in the world actually reads this blog on a regular basis. Since I started closing comments after 14 days I rarely ever get comments—seems it really was just the Nigerians and knock-off V1agr@ guys who gave love to my site. So sad. Anyway, if anyone does happen to read this while they can still comment let me know what you think of the icon!

P.S. I made the logo with a little help from the Web 2.0 style buttons [] tutorial over at IRIS Design.


buttons, buttons, buttons!

2011.03.09 & Buttons gone… why? Well, XHTML is dead, The CSS is not valid as per the validator, it’s out-of-date and jQuery does crazy things, blah blah blah. I updated the footers ‘disclaimer’ to link to the Creative Commons as all my words is still free…

2008.12.24 & I have updated to the Creative Commons Attribution 3.0 Unported [] license. The link(s) below are to the older 2.0 version.

You may have noticed there are a bunch of buttons at the bottom of the pages here at What does it all mean? Let me tell you…

powered by wordpress

This button links to WordPress [] because I use their software to run the blog [] on confusion. And basically all the content on the sight is uploaded as an entry in the blog (which I call my ‘journal’ a holdover from when I was doing this manually before the glory days of blogging!)

Creative Commons License

Next is the Creative Commons [] license button. This button is intended to show that you can copy anything you want from this website and use it (with a small number of restrictions) how you want. Read this post [] for more info.

Valid CSS!

Ah the power of standards! This button means that the pages on this site are designed using valid CSS []—which stands for Cascading Style Sheets and is a way to separate the layout and visual style of a webpage from the HTML code and content. We love standards! And we’d love them even more if they worked in IE! Damn Micro$oft and their non-conformist ways!

Valid XHTML 1.1!

This one says that confusion is coded in valid XHTML []. What does that mean? It’s another standard that along with CSS is designed to make coding and maintaining web pages easier. All of the basic pages here at confusion should validate but some of the older journal entries may not. Click the button to see if this page validates!

rss entries feed
rss comments feed

Want too keep up with my latest dribble? Feeds are just the thing! Using a feed aggregator like those you can find here [] and here [] you can add the links these buttons and you will be able to keep up-to-date with all my pointless ranting. The ‘entries’ link will will give you all the new entries I post and the ‘comments’ link will provide a feed of all the comments other leave.

what are these things

WTF? This one takes you to this post, because an odd number of buttons was not cool. I made this button to match the other second row buttons using this handy utility [] created to support the “steal these buttons” craze which you can read about here [] and if you need a bazillion buttons go here [].


This discussion is over

For a long time my little corner of cyberspace was quite, the neighbors didn’t make much noise and there were not a lot of strangers around.

Life was good…

Then reality came crashing in. For sometime now I have been getting comment spam. It has been confined to a single post [] from a single spam bot for the past few months. To manage this I added Jay Allen’s MT-Blacklist [] plugin to my Movable Type installation. This allowed me to remove the offending post easily and for the most part automatically.

And life was good… for a time…

Today I had 136 comments posted to my journal. Comments posted by people with names like; cmxmqr, yreaiile, kaiewh, turjey, hkqoaq, etc. They have been coming in fairly regularly all day, about every 15 minutes. MT-Blacklist is still working, blocking a number of these posts, but spammers are persistent and my in box is getting full.

By lunchtime I was a bit annoyed about this and was trying to figure out what could be done. I went through a lot of heart ache when my email address first made the rounds with the spammers. I was a long hard struggle, but I am fairly spam free now thanks to spamassasin []. I didn’t want to go through that painfully long process again to make my journal spam free. Then I remembered that over at Jonathan delacour’s [] weblog there is a little tag line at the bottom of the comments on old posts. It reads This discussion is now closed. My thanks to everyone who contributed. This is a good idea, especially since most comments come within the first week or so that the entry is posted and most of these spam comments are being posted to achieved entries.

Now Jonathan doesn’t say how he does this, but a quick search of mt-plugins [] turned up this nice little plugin called CloseComments [] which does exactly what I want. It took only a few minutes of fiddling around with the plugin to get what I wanted.

And life is good… for now

I have set the CloseComments plugin to remove the ‘post a comment’ form from any journal entry over 14 days old which has not had a comment posted to it in 7 days. Now you will see in place of the ‘post a comment’ form a short note saying that comments are not allowed and pointing any lost soul, who may happen to wonder in from the cold and decide to participate in old discussions, to this post. So now, this discussion is over. Have a nice day.


copyright… or copyleft?

I have updated to the Creative Commons Attribution 3.0 Unported [] license. The link(s) and text below are to the older 2.0 version.

The works on the site are released under the Creative Commons “Attribution 2.0” [ ] license (unless otherwise explicitly stated).


From the Creative Commons webisite []:

Attribution 2.0

You are free:

  • to copy, distribute, display, and perform the work
  • to make derivative works
  • to make commercial use of the work

Under the following conditions:

  • For any reuse or distribution, you must make clear to others the license terms of this work.
  • Any of these conditions can be waived if you get permission from the copyright holder.

Your fair use and other rights are in no way affected by the above.

This is a human-readable summary of the Legal Code (the full license).


Because I’m a nice guy and because of things like this [ ]! I think copyright is a good thing in general. But the insatiable desires of the capitalist enterprises chasing the all mighty dollar (or Euro, or Yen, or Pound, or Renminbi, or whatever) has pushed copyright so far beyond what is reasonable that they are in fact destroying the vary basis of what makes free markets and capitalism work. I don’t agree with the Copyright Term Extension Act (aka the Sunny Bono Act or the Mickey Mouse Act) which extended copyright but neither will I resort to piracy of copyrighted material. I choose to fight the system from within the framework of the law. I do not believe that we have come to a point where breaking the law is the only effective way of changing the law [ ].


What’s it all about? has been online since late in 2001—before that there was another older will-not-be-mentioned-here site which has been lost in the fog and shadow of the early internet. This site originally started as a way to keep my close friends up-to-date with my wanderings in Europe as I went to school in London.

Admittedly confusion is filled with what Jeffery Zeldman [ ] would refer to as “dull personal commentary with a side order of self-importance” [ ] but perhaps one day my writing skills will improve and I might approach the depth of writing that Jonathon Delacour [ ] has, or the beauty of opinion that Richard Geib [ ] illuminated to the web before the ‘blogging phenomenon’ started.

In the meantime I will continue my dull personal commentary and occasionally update my photos and writing. All for my own benefit but then again this is my personal corner of cyberspace. I make no excuses for hideous grammar, asinine statements, blissfully ignorant worldviews or verbal diarrhea on this site. It is by me, for me and of me.