Integrating Yahoo Search in a Django site in 5 easy steps

I have been experimenting with various search options for the eutveckling.se site for a while. Google Custom Search is nice and very fast, but the number of ads appearing in the search result page makes it difficult for users to separate result items from ads. (Update: I am sticking with Google Custom Search until I figure out how to get Yahoo search to present proper excerpts).

Twitter synchronicity

Everyone is celebrating this friday in a different way, apparently:

Tweets from different people about how they spend their friday. Schyffel is celebrating buy nothing day, Johan lind is ordering books and Isac is hung over.

What Sun Should Do

Tim Bray has an interesting post titled What Sun Should Do where he lists some suggestions. I have been thinking about Sun for a while and how my own image of the company has changed over the years. A long time ago I was working for Cambridge Technology Partners (later acquired by Novell). We did a lot of interesting projects, some of which were deployed on Sun hardware. At that time (around ’97-’98) my image of Sun was that it was a huge company selling huge hardware at huge prices.

The Gnostic Nihilist

The Gnostic Nihilist

Modelling by Niklas Lindström who also knows a lot about SPARQL, RDF and Brilliance.

Improving Django performance with better caching

The Django cache middleware is great, but has one drawback. If you are caching views (which can give a nice performance boost) Django will only use the path segment of the URL to create a cache key. If you are an avid reader of RFC 3986 you may remember that a URI consists of multiple components; path and query being of special interest here. The problem is documented in ticket 4992 (Update: it is not in Django).

Stuff I learned over the weekend

November 3: Twitter friend icon impersonation week begins

For a long time I have been amazed how much expression you can get into the twitter icon. It is only 48 by 48 pixels but many of my contacts manage to squeeze a lot of style in there. So, starting on monday november 3 I will change my twitter icon once every day trying to impersonate people who follow me on twitter. At the end of the week I’ll publish all icons side by side for your viewing pleasure. Anyone else up for the challenge?

(note: if everyone in my feed does this there might be a slim possibility to see all my followers looking like me. Apart from me, who will look like someone else. Ah, the excitement!).

Serialization formats don’t matter

I mean, if working with RDF has taught me one thing, it’s that converting between two different forms of serialization is trivial—it’s the underlying model that matters.

Exactly! And still, many who are in the integration business think that XML schemas is the only product required to exchange data between multiple parties. The serialization format(s) should be based on the use cases of the information. And even in a small organization use cases tend to pop up all the time demanding new formats. Most SOA-people see a problem with multiple serialization formats but I am thinking that it is almost insignificant these days if you have a well defined model.

Slitscan soccer

Slit-scan Photography (Stockholm Geekmeet presentation)

Last night, Robert Nyman hosted yet another successful Geekmeet in Stockholm. I got one of the lightning talk slots and decided to skip my planned presentation and instead show some of my experiments with slit-scan photography. The presentation slides (in swedish) are available (8 Mb PDF) here.

Hello OpenGL World in Ocaml

I swear, if I read one more programming tutorial that starts with a recursive factorial function instead of a simple “Hello world” I’ll pray for perpetual nigerian spam on their inboxes. So, I was delighted to try out some Ocaml stuff today that didn’t involve factorials.

Friends

Constraints make photography more fun

We went to Goult in Provence on vacation in August and had a great time. While there, we met Bertil Hansson, artist and photographer. We got talking about digital cameras and how they take excellent pictures that can be viewed immediately. I have been sort of bored with taking pictures lately, but Bertil lent me his Holga for a week and I had a really great time with it!

The broken state of EU legal information on the web

In my pet project eurlex.nu I find a lot of weird stuff when scraping documents from the official website eur-lex.europa.eu. The most recent specimen – Final adoption of amending budget No 4 of the European Union for the financial year 2008 – has the publish date 80/80/2200. That’s almost two hundred years into the future with an invalid day/month combo on top. This leads me to believe that the system is in such a broken state that even simple date validation isn’t implemented.

Someone delivered a really poor software project for our tax money. I would love to redo the european legal information website with proper standards (e.g. validating HTML, RDF and proper semantics).

Oh well…

ODF approved as Swedish Standard

Without making a press release or public announcement the Swedish Standards Institute has formally approved ODF 1.0 as a national standard. Only the “SS” prefix in SS-ISO/IEC 26300:2008 give away the status of the document.

The increasing number of concurrent browser connections

While I was catching up on the development of IE8 I found this over at the IE blog:

Dear Microsoft, please allow resume of large downloads

Dear Microsoft, when updating to Office 2008 SP1 for Mac I am asked to download a 180 Mb update file. While I appreciate you continuous improvement of software through the release of service packs, I must object to the poor implementation of the automatic update handler.