Sunday, 5 December 2010

Semantic subtyping with an SMT Solver

After what seems like a very long time, I'm happy to report that - just in time for the holiday season - the extended version of our ICFP paper is now available (here). Enjoy!

Thursday, 25 November 2010

XML vs the web...

According to James Clark, the web is winning. Or rather, JSON is winning.

[Speaking as someone who's spent a long time dealing with XML in programming and query languages, I'm not surprised. XML comes from good intentions, but what was delivered was broken. As Phil Wadler and Jerome Simeon put it:

So the essence of XML is this: the problem it solves is not hard, and it does not solve the problem well.


Wednesday, 5 May 2010

The joys of SQL

Verity Stob on SQL: here

(I think if you use your favourite search engine you'll find quotes from my database course where I have less than complementary things to say about SQL! These quotes were taken without my knowledge by the students in the audience.)

Tuesday, 13 April 2010


Yesterday, Microsoft launched Visual Studio 2010 (in particularly nice boxes!). I just finished installing it on all my machines - I recommend you do too:-) Amongst many features, you get a nice improvement to C#: dynamic types (as detailed in our forthcoming ECOOP 2010 paper). You also get a whole new language: Visual F#. Congratulations to Don Syme for probably the biggest tech transfer out of our research lab.

(Unlike other companies, Microsoft clearly loves multiple programming languages!)

Wednesday, 17 March 2010

Design matters!

Please, somebody, start marketing this!

Tuesday, 9 March 2010

Congratulations Chuck!

MSR's Chuck Thacker has just been awarded the 2009 ACM Turing Award - which is the "Nobel Prize" for Computer Science. This is richly deserved - Chuck essentially built the first machine that we would recognize as a PC (The Xerox Alto) and the first Tablet PC, and many other contributions besides. A worthy winner (and the fourth recipient from MSR!).

Friday, 26 February 2010

Project Natal

I've been surprised to meet up with people recently who haven't heard about Project Natal. Err...guys...this is like the coolest thing ever!! [Even better is that some of the key technology comes from our lab!]

I just found out that we have a nice webpage full of cool videos here. Once this comes out, it's time to buy an XBox!

Thursday, 25 February 2010

F# milestone

I've blogged earlier about important F# milestones. Here's another one. I went to make a mug of peppermint tea this afternoon, and it seems that F# has reached the important milestone of Mug Manufacture. Whoo! Congrats Don and co!

Monday, 15 February 2010

Windows Phone 7 Series

Like many people I was anxiously waiting for news from Barcelona concerning the next generation of MS Phone.

I have to say I'm pretty impressed. You can watch a nice video at Channel 9 here.

I blogged before about how nice the Zune HD UI is, so I'm really pleased to see that this look-and-feel has been deeply embedded.

Sunday, 14 February 2010

Modern Times

I took the girls yesterday to see the latest exhibition at Kettle's Yard: Modern Times responding to chaos. We all really enjoyed it - the girls sat on the floor with their sketchbooks and copied the pictures they liked. It's a very interesting collection of drawings and film, combining some well-known artists (de Kooning, Mondrian, etc.) with some lesser-known artists (including some very recent work. My favourite was a lovely piece by Katharina Hinsberg.)

Apparently the subtitle refers to the times that the pieces were made. I'm not sure this really works, as many of the pieces don't seem to refer to that chaos at all. However, as an exhibition it's really very good. (I'm already planning to sneak out one lunchtime and see it without the kids!)

Thursday, 11 February 2010


I take my hat off to this chap for his interior design of his 19.5m2 apartment!

F# news

Hot on the heels of the RC release of Visual Studio 2010 is the latest release of F# (here). The version number has now been bumped up to 2.0, so this represents a big milestone in the productization of F#. Well done Don and Co!

[If you plan to install it, please read carefully Don's advice about deprecated features at the bottom of the post.]

Monday, 8 February 2010

Mobile madness

There's been some discussion in the blogosphere about the screens that will be appearing on mobile phones in the near future. Much of this has been thought to be impossible, but take a look at this phone, just announced. OMG: a 1280x1024 4-inch screen! That's crazy!

Friday, 5 February 2010

I'm off

OMG! Muji have made a village? I need to move.

Wednesday, 3 February 2010

Lost in translation

Some people will know that I'm quite keen on source-to-source language translators. I read today that the facebook guys have just built a translator from php to C++, called Hiphop. By doing so, they get a 50% reduction in CPU usage.


Last weekend, Mateja and I went with our artist friend, Jo, to see "Red", a play about Mark Rothko by John Logan. It was fantastic! It's intense theatre: just two actors (Alfred Molina and Eddie Redmayne) and a very spartan set (the inside of Rothko's studio). However, you are completely spellbound for 100 minutes.

It's essentially like a philosophy lecture: it tackles very interesting questions about art and artistic intent. Why make art? Who's art for? What is art for? How can art be subject to fashion? At least for me, the heart of the matter is exploring the paradox in Rothko's work: that from a distance it looks simple, but when you study it closely, it is intensely complex.

The performances are astonishing - the scene where both characters "prime the canvas" is particularly memorable, with both ending up drenched in blood-like paint.

Another fantastic play at the Donmar!

Tuesday, 2 February 2010

Interesting bug

One of my research areas is verification of software. We'd like to check that software does what it is intended to do. This is tricky. Part of the problem is specifying what your intent was in the first place. Picking the right language to do this is important. A recent example in Birmingham shows a different language problem surrounding software bugs.

Monday, 25 January 2010

Researcher language

This (from XKCD) is so accurate, it's scary :-)

Monday, 18 January 2010

Cambridge experience

It's very easy to take for granted living in Cambridge. But then something happens and you realize how lucky you are.

On Saturday I took the girls to Evensong at Kings College Chapel. It was a special Evensong to honour Sir David Willcocks' 90th birthday. Sir David himself conducted, including some of his own compositions. It was a beautiful occasion with three choirs (Mateja was singing in the CUMS choir).

The girls found it a little long, so I distracted them by getting them to look at the dragons and dogs carved on the walls. Of course, the interior of the chapel is one of the greatest interiors in the world! Sitting there, listening to some wonderful music, in the magnificent surroundings of the chapel, made me think how lucky we were.

On Sunday evening, we went to the light show which formed the finale for the University's celebrations for its 800th Anniversary. It was quite stunning:

Appropriately for a finale, the light show focused on current work taking place at the University.

Friday, 8 January 2010

Form vs function

Here's an interesting mobile phone form factor from Motorola.

Thursday, 7 January 2010


The family breakfast is the one meal I worry about (although only a little). We're always very tight on time, especially as Mateja and I need espresso coffee to wake us up. The girls are keen on cereal, but I recently watched a documentary on breakfast cereals which revealed that they are pumped full of salt, sugar, and generally don't have the health benefits that some advertise.

The breakfast du jour is porridge. Everyone's talking about it - I noticed last night that even M&S carry porridge pots, where you just add boiling water... Unfortunately the girls are not that keen on it. I have been wondering whether I've been making it correctly, so I was interested to read this in today's paper. [Even though it's one of Satnam's favourite, I may well skip the nip of whisky!]

Wednesday, 6 January 2010

New year, new phone!

Happy New Year!

I have celebrated the new year by upgrading my mobile phone. I confess to agonizing over my choice, and I apologize to my colleagues who I have bored silly with my research into phone size, processor specs, and endless review comparisons. My previous phone, an HTC Touch, has served me very well, but I really wanted to get a new contract with a decent data component so I could fit the "3 screens and a cloud" model that everyone's talking about.

Of course, I could have followed half the planet and gone with an iPhone. But there were three things against it: (i) the contracts are expensive; (2) its Outlook support is not quite rich enough for me; and (iii) it actually doesn't work that well as a phone. (All my friends with one, comment that it frequently drops calls and reroutes calls straight to voicemail.)

These three constraints are quite hard to solve :-) In the end, I am essentially stuck with needing another Windows Mobile phone. Luckily HTC have been working hard to make WinMo a more sexy proposition. So, I have gone for the HTC HD2. It's a very nice phone - HTC have re-skinned WinMo 6.5, making it much more finger friendly. Moreover, the HD2 has an amazing 4.3", 800*480, capacitive screen. Yes, that's right: multi-touch on a WinMo phone!

So far, it's been a nice experience. The only downside I've noticed is that the 3G coverage for Vodafone is a little patchy. There are a few bugs that I've tripped over, but I'm looking forward to version 2 of the ROM, which has been leaked here; it looks great.

[I have treated mine a bit better than this guy!]