CAcert is an SSL Certificate Authority based on the establishment of a web-of-trust à la PGP: rather than charging to issue certificates to anyone, it issues them only to members who have been vouched for by enough other trustworthy members (assurers).

For historical reasons, they were included in the Debian ca-certificates package. It was however recently removed, for justified reasons (CAcert is conducting an audit, and withdrew their demand for inclusion in the Mozilla chain until it’s done). Most other distributions mirror from this package to ship their root certificate, and have also dropped CAcert as a consequence.

This is however a bit annoying, as many sites started popping up warnings due to their root certificate not being in the trusted chain of the OS anymore. Until, maybe, they are reinstalled but disabled by default, I quickly wrote up a tiny script that downloads CAcert’s root certificates, and re-registers them. It’s quick and dirty, and only does an MD5 sum to make check they are the right ones, so use at your own risks.

Continue reading

Some publishers, particularly the IEEE, require that the columns on the last page of an article are balanced, so it looks pretty. The problem is that the break is usually needed in the middle of the bibliography, for which less layout-control is available. Fortunately, there are some specific specific solutions for various cases, and one which works for most: flushend.

Continue reading

After a lot of humming, I decided that it wasn’t very practical to use a different platform for every blog I was running on the same machine. Some more puffing led me to conclude that WordPress was the best candidate to replace the likes of SimplePHPBlog and Blogsum. I still have an odd Nanoblogger to migrate, but it is easily maintained and keeps to itself for the moment.

In the process, I had to find ways to import data from the old platforms, and massage it into something that WordPress can work with.

Continue reading

An edited version of this article originally appeared in The Conversation. It was also translated into Polish by .

One evening when I was young, my father confiscated my radio because I was playing it too loud (I wasn’t). Fortunately, I had a bunch of broken down receivers in my room, so I built a new one. This was probably the start of my maker’s carreer.

The Maker movement has recently been gaining a lot of momentum, as evidenced by the number of events, Maker Faires, popping up around the world—Sydney is hosting its first Mini Maker Faire this Sunday at the Powerhouse Museum.  Yet, in many aspects, makers have been around for a while, from amateur radio operators adjusting their rig to allow clearer communication with more remote contacts to software hackers rewriting their printer’s driver so it works the way they want it to, not forgetting the casual DIYer building a vertical garden out of found material.

All share the common trait that they had a need but, rather than asking somebody else to address it (buying a better radio, printer or, well, bigger house) they took matters into their own hands, and fixed it. As it turns out, it’s not that hard and quite rewarding—a study recently found that people value IKEA furniture more if built by themselves than by anyone else, imagine what it would be without the pre-cut boards, or instructions for that matter!
Continue reading

git has many useful features in git log(1) and git blame(1) to display the history of a file, or who contributed each line in said file, respectively. However, it might be useful to get the full history not of a file or a line but, say, a function (that is, more than one line in a coherent structure). This can be interesting for things such as displaying all the authors of a given function.

Continue reading

Posted in tip.

PXE-booting OpenBSD is easy and well documented. Unfortunately, it is not the case when more than just one OpenBSD install has to be made available through PXE. Using PXELINUX for multiplexing purposes has potential but the documentation is scarce, unsuccessful, or require patching the PXE loader.

One trick which works is to boot from a floppy disk image, using memdisk.

Continue reading

A few of the sites that I maintain are static, and I dare think that thay are hand-crafted. At the very least, they took that amount of time to do. As static, all-public sites, I try to have them as devoid of dependencies as possible, and this involves Javascript.

Now, I recently decided to give them all a mobile support, which would display a lighter interface with less elements when the device width is small enough. This usually involves taking whatever sidebar was around, and hiding it by default.

The problem was how to make it come back, and for a long time (well, not so long, but it felt like it), I had to have a mini function registered to the onclick event of the menu header. It simply made the rest appear or disappear by changing the CSS class of the menu container (rather than the visibility of the kids directly, to avoid problem when rotating the device. Fortunately, using the :target CSS selector, it is possible to dispose of this trick, and make an (almost) perfect CSS folding menu.

Continue reading

I like my mailbox organised. And I like things to be automated. Fortunately, email systems support aliases for their users, so more than one email address reaches the same person. This allows for automatic filtering depending on which address the message was sent to.

What’s even better is that these systems can match a pattern to make generic aliases (e.g., user-REPLACEME@example.net for user user@example.net). This way, you can create valid email addresses on the fly, without having to tinker with anything (e.g., user-gascompany@example.net for the gas company to contact the user).

Now, dash (-) is not the most common character used for that purpose. The plus character (+) is more commonly seen. Notably, but not alone, GMail supports it. If you have an account there, try sending an email to YOURUSERNAME+test@gmail.com.

And this is where my problem is.  Once again, I was happily filling in a form requesting my email address, put in an address with a + in it, and got it rejected because it “contain[ed] invalid characters.” It really annoys me that some people who call themselves professionals in IT-related fields do not seem to be able to understand a standard properly, if they have been looking for it, at least…

Continue reading