The observant may have noticed that the look of this site has suddenly got rather gaudy. There is a good reason for this - I've been creating a WordPress theme which I want to be as flexible as possible. I.e. a 'bare' theme, which can then be styled easily with css. I know these themes already exist, but I wanted my own, m'kay?

The reason for the gaudy colours? Testing. I wanted the default colours to be fairly obvious, with each main element being distinct so that I could be sure that I had the no typos in the CSS selectors.

I'll leave the theme running for a little while, I'd be interested to hear about any usability issues (other than the horrible colour scheme).

The theme should be fully widgetised, it should have comment threading, avatars and so on.

The theme should be fluid and resize gracefully, as screen width reduces, the images reduce whilst keeping aspect ratio.

Things I know I want to fix - some of these are purely 'behind the scenes':

  1. I want, at most, one sticky post on the front page. At the moment, it'll put any number on.
  2. I want to have a tags page which shows the tag cloud.
  3. Behind the scenes, the entry formatting uses the same template, called when needed by index.php and archive.php. I need to get the single.php template to use this as well in order to minimise maintenance (requires some 'if' statements).
  4. Do I *need* single.php and archive.php once I've done that?
  5. Author pages, ideally automatically pulling in gravatars.
  6. Decent 404 page
  7. The comment form gets screwed up on a narrow screen and doesn't resize gracefully. I don't know why.
  8. I want the theme to be accessible. I.e. Good for screen readers and the like. I have no way to test this however, so if you know anyone with a screen reader, please do point them in this direction and ask them to comment (or, pass on their comments should it *really* be unusable).
    1. Is the order of elements okay?
    2. aural stylesheet hasn't been done, for me, that'd be coding without testing - I would want a sheet though!
    3. The tags/related tags stuff - does there need to be a way to, ideally optionally, skip that for screenreaders.... I wonder how (without introducing new screen cruft)
  9. I'll then package up this rough theme for release, create a duplicate and change the look and feel to customise it. If I find that I have to customise anything other than a stylesheet, I'll need to amend the 'raw' theme.

Things I'm unsure of:

  1. I've appended categories to tags (with a different class for styling)
  2. Do I want to keep the related posts thing? It relies on a plugin, so isn't essential for the theme (plugin may be disabled as a recent update caused a problem behind the scenes... I hope I remember to remove this sentence when fixed, but I've couched it as a conditional just in case)

Quantum Cryptography (a background)

In this article I hope to illustrate some of the ideas behind the strange topic of Quantum Cryptography, though I won't be discussing cryptography itself, that comes later - just the necessary physics. First we must consider the nature of light (this can be generalised to any particle once we get all quantum mechanical, but let's stick with light for now).

Classically, light can be thought of as a wave. It's a transverse wave meaning that the 'oscillations' of the thing doing the waving are at right angles to the direction that the wave is travelling in. Another example of transverse waves are waves on the surface of water.

Picture showing waves horizontally and vertically polarised

These oscillations defined a 'plane' in which the waves are oscillating, and this plane can be oriented at any angle. Waves on the surface of water are vertically polarised. Though the plane of polarisation can be any angle, it is convenient to pick two planes which are at 90 degrees to each other. We can express any polarisation by talking about how much of each is present. Hence, we can talk of 'vertical' and 'horizontal' polarization. Here is an applet which demonstrates this.

You can see polaroid filters in action if you have a pair of polaroid glasses (often sold as 'anti-glare'). Find a light shining on a surface such as a desk. You don't want to be 'square on' to the surface, the light should be bouncing at an angle, 45 degrees is a good start. For the most obvious effect, don't use a mirror.

Look at the surface through your polaroid glasses, then rotate them 90 degrees, and keep looking. You should see the glare change in brightness. You will find that polaroid glasses are best at reducing glare from horizontal reflections when held normally. (See: Brewsters' Angle)

If you use your glasses for driving, you may find that you have trouble with the LCD screens on petrol pumps, this is because the LCD screen relies on polarising light!

If you take a polarised filter, this will ensure that all the light which passes through has the same polarisation. Classically, if a particular wave comes in with an amplitude of A, and a plane of polarisation at angle θ to the plane of polarisation, the amount of light which emerges has amplitude Acosθ.

Picture showing the effect of multiple polarising filters

Suppose that we have two polaroid filters. Unpolarised light hits the first and emerges polarised. It emerges with amplitude, A (on average). This light hits the second filter. The two filters have an angle θ between their planes of polarisation - the amount of light which emerges is Acosθ. So, if the filters are aligned, the second filter has no effect. If it is turned 90 degrees, no light emerges (note, if it is turned 180 degrees, it has no effect - the sign of the amplitude doesn't matter, it's not 'negative light'!)

(Note that for real filters, there is a little scattering, so 90 degrees doesn't give total black, and zero degrees does give some reduction in intensity)

Imagine we have two filters, aligned at 90 degrees. No light emerges. This is because the cosine of 90 degrees is zero.

Now, insert a filter at 45 degrees between the two. What happens? More 'stuff' can only make the amount of light getting through smaller, right? The cunning reader will have assumed that I wouldn't ask the question if the answer were obvious. Some light emerges. In this circumstance, two filters allows through less light than three.

This counterintuitive result is easily explained. Imagine the second filter is at an angle of θ compared to the first.  The third is at 90 degrees. In other words, the angle from the second is (90-θ). From the first filter, we have light with amplitude Acosθ. This is then reduced by the third filter by cos(90-θ). The overall light intensity is now Acosθ.cos(90-θ) or Asinθcosθ, this reduces to A(sin2θ)/2. In other words, we get most light out when sin2θ=1, or when 2θ=90°, or when θ=45° 

The newly inserted second filter is changing the polarisation of the light.

Take your time on polarisation, it's important that you understand the above if you're to comprehend subsequent articles. We'll put this aside for a while, though - the next step is to talk about photons.

Wordpress - The Big Change

WordPress is undergoing a big change right now, it's upgrading to 2.7. Behind the scenes a lot is different, so much so that 2.6.5 to 2.7 seems like an understatement. It feels like a major revision, it should be 3.0. Anyhow, I've taken the plunge with release candidate 1, and from now on I should be able to upgrade automatically with a click.... that is great if it works, and very scary if there is ever an upgrade bug (can you imagine the support forums?)

Everything seems different.... everything is different. It'll take a while before I'm comfortable with the changes, but I'll get there.

Something I want to do is write up a new theme for the website from scratch as the current theme is one cobbled together from pre-existing themes. To write a theme from scratch will, for me, take time - and that's the issue. I also do need to go through and tag all the old posts - that takes time as well!

If anything looks broken, please do let me know.

Doctor Horrible Act 3

The third and final act of Doctor Horrible is online. It will be available until the end of the weekend, and then it'll be gone. Never to re-appear, unless, y'know, you buy the DVD, download it off itunes or illegally pirate it.... erm. Well, if you want to watch it legally and for free you have this weekend.

It did feel like there should be more.... maybe there will be?

Highspots without spoilers:

  • 'She's got that quiet, nerdy thing, not my usual, but nice.'
  • We get to see Bad Horse!
  • Grr, Argh! is back.

Previous posts on Dr. Horrible

Posts on other sites

Doctor Horrible's Sing-Along Blog

Annoyingly, I simply cannot watch Doctor Horrible at Doctor Horrible.Com .

Doctor Horrible is the latest project from Joss Whedon. Made without backing from a studio and released online.

When I try and view it I get the message 'This Video is not available at this site' message - I think that, the video hosting service, have restricted it to US subscribers only, at least that's what I thought until I saw that people all over the world have been commenting on how great it is.

Ack. There's a buzz out there about this Joss Whedon project, and I'n stuck on the other side of the glass looking in.


Hang on a cotton picking second.... I wonder..... if... No... it can't be that simple....?

Fantastically, I've just worked it out - it was something to do with Firefox. It opened in the dreaded MSIE (browser conflicts are pretty rare these days, previously it would've been the first thing I'd have checked).

Nice opening - the evil laugh - and I want one of those big chairs at the end of Act 2.

It's really good stuff, musically very similar to a certain well known episode of Buffy (of course) - thoroughly enjoyed it.

Felicia Day played a novice slayer in Buffy, and has recently starred in the online series, 'The Guild' - the first episode of which is here.

Doctor Horrible, played by Neil Patrick Harris was the lead in Doogie Howser MD. Nathan Fillion appeared as a bad guy in Buffy, has 'Mal' in Firefly and Serenity, and as one of the leads in the ill-fated 'Drive'.

Doctor Horrible is free to watch online for a few days, and then it's gone - having built the hype it'll then re-emerge on DVD and itunes.

Random Reviews:

Take a Seat

Take a Seat is an automated system whereby a chair follows you around whilst you're in a library so that you always have somewhere to sit. Management can take several chairs, lead them to an area for a presentation and they will arrange themselves.

I hope this is real. If this is a hoax, fine, but it doesn't stop it being a cool idea!

Hackaday has more chair related goodness, including the self-assembling chair.


I'm always wary about posting about things like commenting, I worry it'll sound desperate - but here goes! I'll try to steer away from the desperate... Richard Hooper over at WPProject makes a post about comments:

One of the greatest rewards you can give a blogger in appreciation of providing content that suits your needs, is to leave your thoughts in the comments section at the end of a post.

Leave a comment

If you’re a blogger, I know you’ll agree with me. There’s no greater reward. Sure, it’s nice to monetize, publicize and so on, but when your readers participate, leaving related comments, suggestions, and even criticism, you really appreciate that. We all do.

Without question, getting comments from interested readers is one of the most enjoyable and rewarding aspects of blogging.

~ Chris Pearson

Jai, over at Blog Oh Blog lists a few reasons why we should leave comments below the posts that we read and enjoy.

This blog is relatively new and isn’t getting a great deal of comments just yet, but in due time if I continue to provide valued content, comments will grow. Comments are almost guaranteed when bloggers “regularly” provide top notch content that their readers or subscriber base are tuned into. It’s automatic.

Now, I mostly put this site together for me, for example, my posts about my trip to India recently came in handy as someone asked me for information and it was easy to give it to them. Despite this, at times I have wondered why I keep writing in a public way if nobody is reading? Am I really that chap standing on the street corner babbling to himself?

Occasionally, an article gets a load of traffic, like these ones, but very few comments. This is a shame - it is always nice to get comments. As I posted on the original article:

I love comments - I don’t get nearly enough of them… but then, I don’t post in a niche, I post on whatever concerns me when I post…. this is probably the cause of the ‘not nearly enough’!

Of course, other reasons could be that what I'm writing is without merit (some will be, I hope that it's only some!) - it could be that when I write a big article, I've covered all the bases and there is little left to add.

Nevertheless, at a guess, I'd say it's because I'm chopping and changing topics - it's harder to 'build and audience'. For this reason, at times I've toyed with the idea of separating out the various topics which I'm interested in into their own sites - but would that be too restricting? Would I generate the content to keep each one fed? Probably not.

Perhaps I should 'theme' each category page and so produce sub-blogs, but that'd be a real pain to set up with the categories I have. I like the freedom of a general site, but would like the interaction one would get by having a site on a given topic which builds an audience. It's a bind. A catch-22.... but I would like more comments, they're nice.

Perhaps the first step is to restrict the categories - I have way too many, then I could theme the category pages more readily for the 'sub-blog' solution. The categories were made before tags became part of WordPress, so contain too much information, so the first step would be to take the current categories for all my posts and turn them into tags - how could I do this? Does the cat2tag feature remove the category info? Then I could remove categories, re-assigning deleted categories wholesale and create a few broad categories for my posts. Perhaps: Cycling, Art, Politics, Travel, Entertainment. It's a plan, I suppose. Doesn't sound like a fast change - and there may be broken links caused (a big item on my to-do list already is to fix links in old posts which remain broken from my change from movable type to WordPress!)

Before I commit to trying to improve the commenting situation by radically altering the structure of my categories, I'd really like to garner some opinions - is my analysis reasonable? Do I not get many comments due to the chop-change nature of this site, or is it something else? Perhaps it's simply that what I write isn't worth a comment?... or it's so good a comment would be superfluous?

(This could be an interesting experiment, how many comments will I get on a post about a lack of comments?)

So, there's my post about commenting. Did I manage to keep away from the desperate?

Update: The Cat2Tags feature does remove category info. Glad I saw this post. I'd want to make tags of categories without destroying the categories (I'd want to destroy them manually!)


Via xkcd I learned of a new idea called 'Geohashing' geohashing

Essentially the idea is that based on some seed data, some complicated sums are done to give a location.

People get to that location for a meetup.

A map tool is available which does the sums for you. You set the date, click your area and it gives you a location.

Due to problems with the seed data (US stock market) and time zones a new rule has been introduced today for people east of 30 degrees west. This is taken care of automatically by the map tool. There are several pieces of code for implementing this - though most have yet to be updated to reflect the 30W rule.

The idea is that the seed data is processed using an algorithm called md5. This algorithm produces a 'hash' of the data. it is difficult to find alternate data which produces the same hash. A small change in the data produces a big change in the hash.

The idea of a hash is a way of producing a 'fingerprint' of a file. I.e. I could send you a file, but how would you know it hadn't been tampered with? Well, I could phone you, you could recognise me and I could read you the hash of that file (which you can then generate and check).

A hash can also be used as a zero knowledge proof. I.e. I wanted to prove to you that I had discovered some fact. I might not want you to know the fact (yet). For example, I might know the first line of the 'Times' editorial for next saturday. I could generate a hash of that line and give it to you - when the paper is published that information can be checked.

In this case, the md5 algorithm is used to give a reasonable pseudo-randomisation of one number into another. It's just a bit of fun.

I've not gone to a geohash event myself - but I like the concept.