Simon Willison’s Weblog

Subscribe

Entries

Filters: Sorted by date

Lisp special forms

Special forms are generally exceptions to normal Lisp syntax that make coding easier and more convenient for the programmer. They are expressions that do not follow the normal rules of evaluation. Examples we have met so far include quote and if.

[... 1,253 words]

EuLisp

EuLisp gives programmers the ability to define their own error handlers. The default error handler used by the interactive interpreter displays a description of the error and starts the debug loop.

[... 970 words]

Googlebad

Mark Pilgrim explains why Google’s latest update tweaks (mentioned yesterday) are a lot less harmless than they first appeared.

RDF query-o-matic

Mental note: Read Burning Bird’s RDF Query tutorial and have a play with the Query-o-matic.

Write on

A year ago, Mark Pilgrim’s manager told him to stop blogging. He refused, and was fired a week later. Today Mark celebrates.

Newspaper sites and the link element

Adrian Holovaty advocates the usage of next/previous link elements on newspaper sites to add optional linear navigation. His comments include some interesting discussions on whether or not this feature would really be of use on that kind of site.

Googledumping

It seems Google have tweaked their algorithm a bit, resulting in several high profile webloggers losing their top ranking positions for a search on their name. Scott Andrew summarises the situation nicely:

[... 100 words]

MySQL on Linux or FreeBSD?

Jeremy Zawodny: FreeBSD or Linux for your MySQL Server? Jeremy explains the differences in threading implementation between Linux and FreeBSD, and explains why Linux is a better option for MySQL databases running under a high load. Link via Scott who got it from Keith. I wonder if anyone has played with the idea of syndicating link-found-on information in an RSS feed? Tracking link trails could be quite interesting.

Applications

The above (badly drawn) ASCII diagram shows a traffic system. Traffic flows from A to B to C to D and back to A again, with new items flowing in to A, B and D at 10, 20 and 40 items per timeunit respectively. Items flow out of the system at point C at the rate of 70 items per timeunit. We assume that the flow in to each of the nodes on the system is equal to the flow out of that node.

[... 933 words]

Gauss Jordan Elimination

The steps of the Gauss-Jordan elimination process are as follows:

[... 870 words]

Basic Lisp

Typically, Lisp is run as an interactive interpreter. People write a whole load of Lisp in a test file and then load it in to the interpreter and try it out to see if it works. Lisp is a very dynamic language—functions can be redefined on the fly and it is perfectly possible to shoot yourself in the foot (by redefining Lisp internals for example) if you really want to.

[... 905 words]

Languages and grammars

These notes are from a lecture on the 26th September.

[... 806 words]

Managing data

These notes cover chapter one of “Data Management” by Richard T. Watson.

[... 974 words]

Aquarionics backups

Aquarion explains how his automated backup scripts work.

Maths for apps problems class

I didn’t quite understand this part of the lecture as we arrived late. These are the notes copied from the board.

[... 1,060 words]

Pingback and Trackback

Hixie has written a whitepaper comparing Pingback to Trackback, and answering pretty much every question that has been asked about Pingback in the past week.

XML transformations with CSS and the DOM

Scott Andrew: XML Transformations with CSS and DOM. Forget about XSLT, Scott demonstrates how CSS can be used to visually style XML documents while a bit of Javascript can add additional behaviour such as clickable links. Unfortunately the demonstration document doesn’t seem to work in my 1.1 version of Mozilla (the styles work fine but the clickable links don’t work at all).

Utter muppets

KPMG.com still sucks in Mozilla.

Taming lists

In CSS Design: Taming Lists, Mark Newhouse explains in detail every CSS list trick in the book, including inline lists, nested breadcrumbs and a variety of other useful techniques. He also links to Eric Meyer’s essential DevEdge article Consistent List Indentation which explains how to deal with the differences between list indentation in Internet Explorer and Mozilla.

CSS in the real world

Adrian Holovaty: CSS in the real world. Adrian uses CSS to reduce the markup for a list of news headlines by 75%:

[... 56 words]

Peter Gabriel

Today’s weird blogging observation: Bloggers love Peter Gabriel. Jeremy Zawodny is a big fan, Scott Andrew can’t wait for his new album, Jeffrey Zeldman praises his sophistication and daypop returns 44 blogs currently talking about him. Despite being good friends with his nephew I’ve never really listened to him that much, but with glowing reviews such as these I’m tempted to grab the new album and see what the fuss is about.

XFML 1.0 soon

Peter Van Dijck: Future XFML news will be posted on the XFML.org site. XFML 1.0 will be with us soon.

Usability and interface design

This course covers HCI with a heavy emphasis on implementation. We will be developing the interface/interaction components of software using Java, in particular the AWT and Swing toolkits.

[... 441 words]

Functional programming

These notes cover the first two lectures of Dr Bradford’s Function Programming course.

[... 1,210 words]

More lecture notes

As you can see, I’ve posted some more lecture notes. The second set uses a HTML entities to display greek letters, as listed on this page of the HTML 4.0 recommendation.

[... 234 words]

Deng—HTML rendering in Flash

DENG (via WaSP) is a W3C compliant XHTML/CSS/XForms rendering engine written entirely in Flash MX Actionscript.

[... 35 words]

String rewriting systems

These notes are from the second lecture in Dr Richardson’s Formal Systems course.

[... 824 words]

Formal systems

These notes cover the first lecture in Dr Dan Richardson’s Formal Systems, logic and semantics lecture. I missed the lecture so these notes are being made with the help of the course notes from Dr Richardon’s homepage (which can be viewed using DVI Viewer for Windows).

[... 568 words]

Fluid thinking

Peter-Paul Koch explains graceful degradation in Fluid Thinking:

[... 41 words]

ESF

RSS 3.0 was a joke. ESF is serious, and is already getting a fair bit of attention from the blogging and syndication communities.