Read on and leave a comment
or return to our portfolio.

Archive for December, 2007

7 Dec 2007

by Noel

Corporate Blanding

Amusing interaction on the last.fm forums. Concerning bugs in the current last.fm client on Leopard, a member of staff writes:

We’re aware of there being a fuckload of problems concerning the client and Leopard. Fear not, for work shall be focused on ironing these bugs out in the coming days.

Which brings the following customer responses:

Is this what passes for professionalism on Web 2.0?

and

Paying or not, we’re customers, and we deserve to be treaded with some professionalism.

As a testament to how poorly that language can be received, just witness how this support thread has degraded since the post.

Seeing this, I’m now a FORMER last.fm customer. While one customer may not matter in the short term, every customer does count to a healthy business.

The same last.fm staff member then makes things just a little bit worse with the following rather sarcastic apology:

I hereby apologise to the tiny fraction of the 5% of our userbase who are Mac users for offending them by the use of the word “fuckload.” We’ll try and be more corporate and sterile in future.

To be fair there were at least as many posts from people who didn’t find the language offensive, or even liked it. But the whole mess could have been avoided by simply using, say, “shedload” in the original post, which would have kept the character of the post without causing offense. It pays to remember that on the big old Internet not everyone shares the same values.

Posted in Business | No Comments »

7 Dec 2007

by Noel

Announcing: Delirium

Delirium is a web-browser automation toolkit, which means it’s a Scheme library that provides a bunch of functions that you can use to control a web browser. We expect the primary use will be for web testing, and Delirium can be used inside SchemeUnit like any other Scheme library.

For the Schemers Delirium isn’t anything special, but we believe the use of continuations make Delirium a major advance over similar web testing tools like Selenium. If you write your server code in Scheme you can directly test how your server side responds to web tests with tests running on the same server. That is to say a test can interleave calls to the web browser and to the server side code, which is impractical without continuations. This features makes it much easier to write reliable and comprehensive tests.

Delirium is on PLaneT. Note the documentation was translated by hand from Scribble source. Some errors may have been introduced during the translation.

Posted in Web development | No Comments »

7 Dec 2007

by Noel

ICFP 2007 In Review

At last — the long awaited ICFP post! In summary: ICFP was awesome. Freiburg is lovely, the German beer is fantastic, and everyone at the conference was very friendly. It was great to put faces to people we’ve conversed with for years, to meet old friends, and to make new ones.

We gave two talks, one at ICFP on our work building web sites in Scheme (paper here), and one at CUFP (PLT Slideshow slides PDF slides). Both were, I think, well received: a few people expressed some interest in having us come and talk to their groups, and the CUFP organisers invited us to join them at dinner.

There was a definite buzz about ICFP. It seems functional languages are beginning to take off — CUFP doubled its attendence over last year, and ICFP strained the capacity of the hotel. There was something of a reality distortion field in place though. After a few days at the conference you could begin to believe the entire software market consisted of either program verification tools in Haskell or telephony apps in Erlang. There was little representation from web developers, who I think must make up the largest group of commercial developers. I believe this is because Haskell users really dominate ICFP, and Haskell doesn’t have a particularly good web development story as far as I know.

It was interesting to see how the other communities are developing. The Haskell guys had a 3-day Hackathon right after ICFP, which is pretty impressive, and there is a practical Haskell book in development, something which is needed for Scheme. Erlang seemed to have slightly better industry representation and also has several recent practically-oriented publications. I heard that many people had arrived just for the Erlang workshop, which was held the day after CUFP.

Of course the conference revolved around the paper presentations. There were too many to review them all, so I’ll just note the ones that were particularly relevant to our work at Untyped.

Matthew Flatt’s talk on Adding Delimited and Composable Control to a Production Programming Environment was a great presentation on a new feature in PLT Scheme, delimited continuations, that will be very useful in the web server. Matthew hacked Slideshow (something you can do when you’re the core developer) to support animations by quickly fading between slides. His 1028 slides made for some slick animations that quickly and clearly got across the concept of delimited continuations. This was perhaps the best presentation I saw at the conference and it was on something we’ll definitely be using.

The iData toolkit is a Clean library that uses meta-programming to generate code for viewing and editing arbitrary data online (like Ruby on Rail’s scaffolding, but better). At ICFP this year the followup,iTasks: Executable Specifications of Interactive Work Flow Systems for the Web, was presented. Essentially it is a combinator library for specifying workflows, including higher-order workflows. At is happens we may soon be involved in a project that deals with workflows, in which case we’ll review this work.

I really liked Advanced Macrology and the Implementation of Typed Scheme by Ryan Culpepper, Sam Tobin-Hochstadt, and Matthew Flatt. Typed Scheme is pretty cool, and we’ll probably use it when it has matured a bit more, but my favourite bit of this paper is the first half which is essentially a tutorial on intermediate to advanced macrology. There is precious little material available on this corner of Scheme, so it is very welcome addition.

Also of particular interest to us were Applications of Fold to XML Transformation, and Software Transactions Meet First-Class Continuations. We’ve already had occasion to use ideas from the former, while the later gave us some food for thought with regards toSnooze We had an interesting conversation with Adam Wingo, author of the paper on folds, about the advantages of distributed version control. Something we need to look into. Adam also has a great job that allows him to spend two days a week hanging out in Barcelona’s cafes. Some people get all the luck.

One point from ICFP that is particularly relevant for this blog: Dave Herman told me he’d like to see more technical posts. I’ve tried to make the content a bit more technical of late, but if there is anything in particular you’d like me to write about drop me a line.

Posted in Code | No Comments »

7 Dec 2007

by Noel

ICFP 2007 In Fashion

Naturally no meeting of computer scientists would be complete without some mention of fashion. The satorial pinnacle of ICFP was easily claimed by Adrien Pierard who was rocking a bowler hat and pipe combo. I was pleased to find his hat was indeed sourced fromJames Lock & Co. I saw several Threadless t-shirts: The Communist PartyDark Side of the Garden, and Well This Just Really Sucks. (Follow the first link to Threadless, buy a T-Shirt, and I get $3.00 towards a tee. Follow the other links and I get nadda. Threadless is a great example of a business model that is only possible over the Internet. If you’re not familiar with them, check ‘em out.)

Computer scientists pay almost as much attention to their computers as they do to their clothing. From an informal survey of the conference Apple is continuing its rise in popularity amongst the geek crowd — the ratio of Mac to PCs was about 1:1. Of course a Mac is about as close to a fashion statement as a computer can come, so it isn’t surprising to see this adoption.

Posted in Fun | No Comments »