Higgs boson

There are few things more lovely than the expressions on the face of scientists who have been working many, many years towards a goal, and have just seen it realized. Better by far than sport — it’s a collaborative effort where nobody loses.

Huge congratulations to the ATLAS and CMS teams at CERN and to the many international collaborations that brought about this result, and to all the people who for so long worked on making these projects possible.

The Glorious 60-Year Rain

I’m not exactly of the royalist persuasion, so what I’m doing down near the Tower of London waiting for the Queen’s Jubilee boat parade can only be explained as some kind of aberration or alternatively just the desire to be able to say ‘I woz there’ to people who will probably be annoyed with me if I miss the opportunity. Or perhaps a forelock-tucking vestige of personality remains deep-down; deary me, how we Brits are trained to bob and curtsey before a bit of pageantry and a title or two.

The night before saw glorious rain and today is no different: the crowd gathered in and around Tower Hill Terrace and Petty Wales huddle together under a grey, overcast sky with umbrellas close to hand. It’s crowded but not painfully so; many people seem to be moving around trying to work out where the best place is to see from; the riverbank here is closed off to all except a select few. There’s plenty of flags being waved, many of them decorated with the logos of OK!, Hello magazine, or the Daily Mirror, which seems somehow at the same time both awful and awfully appropriate. A few people are dressed in costume; the one that sticks in mind is the young woman both dressed and made up in red, white and blue, whose white-painted face makes her look either like a sad clown or an 18th century rake.

Everyone has turned up with much time to go, and is eagerly standing on tiptoe to peer at the cold, brown river just in case anything happens. Nothing will for quite some time, but people are peering anyway. Even I’m doing this, which is daft; there’s a bunch of artillery guns down on the riverside which are obviously there for a salute, and those will surely go off before any boats go past. A wicked streak of imagination rises up as I picture these guns being mis-fired: wouldn’t it be the most truly British way of doing things, in the best traditions of Dad’s Army, to finish off the Jubilee parade by accidentally sending the Queen’s boat to the bottom of the Thames?

As the rain finally starts to fall, umbrellas surface all across the crowd, followed swiftly by cries of ‘We can’t see! Get yer brollies down!’ The latter turns into a refrain: ‘Get yer brollies down! GET YER BROLLIES DOWN!!’ Slowly people get the message and the forest of umbrellas thins, with cheers greeting each one lowered. A ginger-haired young man in front of me protests good-naturedly, ‘There’s nothing to see!’ But of course, even if there is nothing to see, people want to be able to see it. It all feels much like the Sermon on the Mount scene of Life of Brian, with Jesus at the top of the hill speaking beautiful words while all the way at the back of the crowd people are shouting ‘Speak up!!’

The artillery guns start to fire off, BOOM BOOM BOOM. It goes on for a while before I think to start counting; it sounds like they’re doing a shot for every year of the reign. The rain starts up a bit more heavily, and the umbrellas reappear, together with the return of the refrain: ‘Get yer brollies down! We can’t see bugger all! Bloody selfish!’

When the boats finally start to come past they are at first barely visible; there is an angle through the crowd where you can see through to HMS Belfast and just catch a glimpse of them, and a little while later they can be seen over the heads of the crowds in the open water leading up to Tower Bridge. The second or third boat is bedecked with all the flags of the United Kingdom and at the front stands someone, dressed in what looks like a Beefeater’s uniform, waving to all the crowds; you can see people wondering, sometimes aloud, ‘Was that the Queen?’

More boats, and nothing confirmedly royal. A little girl on her father’s shoulders asks, ‘Can we go home now?’ When she realizes that the Queen hasn’t yet gone past, she starts asking after every boat; and then when she’s told that she can see better than her parents, every boat contains the Queen. More flag-bedecked boats go by; perhaps the flags of the Commonwealth nations?

Suddenly people get excited — there is a vibrant flash of colour visible in front of HMS Belfast, a flag that is unmistakeably the royal standard, and on the boat, a tiny white blob. A Scottish fellow in the crowd behind me is ecstatic: ‘Oh, it’s her, it’s her! Ohhh, it’s so lovely!’ And he dances off into the crowd to get a closer look, though whether he’ll succeed is doubtful; the crowd in front is crushing up as close as they can get to the riverbank, which is still some way distant, and only the people on the towers can possibly really see anything clearly. The boat becomes visible again, heading on towards Tower Bridge, bedecked in its bright royal insignia. There again is the little white blob, though whether it’s really the Queen you couldn’t tell for the life of you. Personally I think that if I’d been on the throne 60 years I wouldn’t want to be here on this rainy, windy day; I’d get a lookalike to do it and sit at home with a cup of cocoa, watching the whole thing on TV.

Rather aptly, the weather decides that it too has had enough of waiting around and chooses this moment to begin the rain in earnest. If people weren’t already starting to wander off, this decides it, with just about everyone turning round and heading for the tube station. We came; we waited; and finally we saw, as a white blob in the far distance, the Queen of England. And it most definitely rained on her parade.

Mankind Walks is on SoundCloud

SoundCloud wasn’t around, or at least certainly wasn’t well known, when Jo Collins, Cheikh Diop and I recorded the Mankind Walks material. So, we made the music available to stream from MySpace and Facebook and left it at that. And that seemed fine, as things go.

Then some months back Facebook decided to alter the functionality of band pages and just unilaterally removed all the music (how nice). We really meant to do something about it for ages, but life was busy (we all have other jobs, you know) … so nothing got done — until now. Happy days: Mankind Walks is now on SoundCloud.

Everything we recorded is there to stream. First of all, the album/extended EP, Mankind Walks:

… and our small instrumental number, Cry, recorded a year later:

SoundCloud players for this stuff are also available on the Mankind Walks homepage and on the Mankind Walks page here on braingam.es.

So … share, comment, follow and generally enjoy to your heart’s content. And we’ll see what we can do about adding more stuff, as and when we can. :-)

Programming fun

Where programming and development is concerned it’s always good to get some time to just play, to mess around with new tools, languages or libraries just for the fun of it to see what you can do. I don’t really do this often enough, but the last few days were an exception. Here’s what I got up to …

C, C++, D …

I can’t remember when exactly I discovered the D programming language, but if my posts on the project mailing lists are anything to go by it must have been in early 2010. This overlapped very nicely with the period in which I became properly enthusiastic and confident with C++, and I was delighted by D’s much more elegant and intuitive syntax compared to the older language.

I’ve played with it on-off ever since then, but never with the commitment that the language really deserves. There were various reasons for that; one of the major ones was that the only up-to-date compiler was the partially-proprietary reference implementation, with the GCC and LLVM-based ones lagging behind.

However … the last release of Ubuntu (11.10) saw the GCC 4.6 based GDC compiler included, and the upcoming LTS release (12.04) has promoted this to being the default GDC install. In fact this is a straight import from Debian, meaning that all upcoming Debian-derived distros are available. So, it seemed an opportune moment to dive back in.

The results are quite nice. Back when I was first trying out D there was a big speed gap with C++ which the latest GDC seems to have closed. The GDC dev community is full of beans and doing excellent work. With any luck the LLVM-based LDC compiler will catch up soon and also be available in distros.

My explorations in the next weeks will probably be to do with things like template mixins and other ways in which D differs from C++ in its approach to class templates, inheritance, polymorphism and so on. I’ll also be looking into how easy it is to use D with C and C++ libraries, surely essential at this point when there is not a widespread range of D software available in Linux distros.

Clang!!!!

Looking into D made me think of LDC, which in turn reawakened my casual curiosity in the LLVM compiler project. I’ve never really worked with any of these tools beyond LDC, so thought I’d have a play with Clang, the LLVM-based C++ compiler.

A couple of tweaks to a Makefile later and … oh dear oh dear! Compiler error messages abounded. But once I’d got past the ‘But it works fine with g++!’ panic, they turned out to be useful, informative, and easy to resolve. The code in question was a policy class-based program with a ton of template metaprogramming, and it turns out that Clang/LLVM is much stricter than GCC when it comes to certain potential ambiguities in C++ templates.

In fact, the error messages gave precise instructions for resolving the problem — in this case, to insert ‘this->’ keywords in front of various function calls. Compilation itself was noticeably faster than g++ and produced code that, while slower, was not so much so as to be unpleasant.

On this basis, I’m quite tempted to switch to Clang as my development compiler, using these nice features to ensure code correctness and to avoid long compile times, and pull out g++ only when building a finished program.

Fixed(ish)

CSS for the site has been tweaked.  It still triggers Internet Explorer’s Compatibility View, but at least now that doesn’t bugger up the layout.

Thanks to the developers of the Toolbox theme, whose CSS this updated theme incorporates.

Let me know if the site is still embuggerated for you. (Oh, and: use a proper web browser. One that can support standards-compliant HTML and CSS without choking:-)