Simon Willison’s Weblog

Subscribe
Atom feed for stuart-langridge

23 items tagged “stuart-langridge”

2024

Making a Discord bot with PHP (via) Building bots for Discord used to require a long-running process that stayed connected, but a more recent change introduced slash commands via webhooks, making it much easier to write a bot that is backed by a simple request/response HTTP endpoint. Stuart Langridge explores how to build these in PHP here, but the same pattern in Python should be quite straight-forward.

# 14th January 2024, 10:56 pm / stuart-langridge, discord, webhooks, php

2022

Don’t Read Off The Screen (via) Stuart Langridge provides a fantastic set of public speaking tips in a five minute lightning talk remix of Sunscreen. Watch with sound.

# 4th November 2022, 4:02 pm / stuart-langridge, speaking

Farmbound, or how I built an app in 2022. Stuart Langridge describes the architecture and decision process behind his new mobile web game, Farmbound.

# 31st August 2022, 11:23 pm / stuart-langridge, web

2018

What we need to do is come up with a way to help people understand that there are ways to never be lost again, and to listen to any music you want, and to video chat with someone on the other side of the world, without them having to feel disquieted about it. That it's not OK that you're made to feel weirded out. That it's possible for there to be alternatives. That having to feel someone rooting around in your life is not a price you should have to pay.

Stuart Langridge

# 1st February 2018, 2:03 pm / stuart-langridge, privacy

2009

Desktop Couch initial code. More from Stuart Langridge on the project to make CouchDB available as a desktop service, providing free synchronisation between machines and a way for different applications to interrogate each other’s structured data.

# 9th July 2009, 11:34 am / couchdb, stuart-langridge, desktop, synchronisation

2008

It’s a purple world. Stuart Langridge made a purplish map of the US election results, using JSON data from Google and an SVG map of the US from Wikipedia.

# 6th November 2008, 8:26 pm / stuart-langridge, uselection, svg, wikipedia

UnicodeDictWriter—write unicode strings out to Excel compatible CSV files using Python. Stuart Langridge and I spent quite a while this morning battling with Excel. The magic combination for storing unicode text in a CSV file such that Excel correctly reads it is UTF-16, a byte order mark and tab delimiters rather than commas.

# 20th August 2008, 12:19 pm / excel, csv, internationalisation, i18n, byteordermark, python, stuart-langridge, unicode, unicodedictwriter, utf16

The end of LugRadio. Wow. LugRadio was a podcast before the term podcast had even been coined. It will be sorely missed.

# 30th June 2008, 2:03 pm / lugradio, stuart-langridge, podcasts

2007

Negative numbers in the Google Chart API. Stuart has some ingenious tricks for showing negative values on Google Charts, based on transforming the data to positive values and then relabeling the axes.

# 8th December 2007, 9:03 am / google-charts, google, stuart-langridge

Cruciforum (via) Stuart’s new PHP forum—single script, stores threads as static HTML on the filesystem (no database), installation is a one-step process.

# 16th October 2007, 9:08 am / php, forums, cruciforum, stuart-langridge

hasAccount. Stuart proposes a light-weight API for letting any site know if a user has an account (and is signed in) on another service. I wouldn’t want to deploy this without being confident that my CSRF protection was in order.

# 28th September 2007, 9:10 am / csrf, stuart-langridge, crossdomain, json, api, accounts

DOMContentLoaded for IE, Safari, everything, without document.write. Stuart has taken Hedger’s recent IE technique, combined it with the others and compressed it in to a short-as-possible code snippet that you can paste in to your scripts without having to include the whole of jQuery/YUI/Dojo/Prototype.

# 26th September 2007, 12:19 pm / ondomready, safari, ie, documentwrite, javascript, stuart-langridge, domscripting, unobtrusive-javascript

DRM-free MP3 downloads from Amazon. The good: they have what looks like the entire Universal and EMI catalogues in DRM-free 256bit MP3s. The bad: you need a US billing address! So close...

# 25th September 2007, 4:30 pm / drm, mp3, amazon, universal, emi, stuart-langridge

I'd like to ask readers of this site which you're more interested in, Sun's JavaFX or signing up for TissueWorld 2008, the Premiere Exhibition and Conference for the International Tissue Industry.

Stuart Langridge

# 9th May 2007, 7:46 pm / stuart-langridge, sun, java, javafx, tissueworld, funny

Writing a Jokosher extension. I like the way API calls are made through an API object passed to the extension’s startup function.

# 7th January 2007, 10:25 pm / python, api, jokosher, stuart-langridge

2005

Stuart’s book

I meant to mention this earlier, but Stuart’s book, DHTML Utopia: Modern Web Design Using JavaScript & DOM, has been published. I worked as a technical editor on the book, and I’m proud to have been associated with it. Don’t worry about the hairy title (apparently you have to have DHTML in it or bookshops won’t know where to put it / people won’t know what it’s about), the inside is pure gold. In their usual style, SitePoint have posted the first four chapters online for your perusal so you don’t have to take my word for it, you can try it out for yourself.

2003

More Vellum

Vellum 1.0a4 is out, and features comment support via a new Comments plugin and an Audience generic object type that abstracts the concept of “responses to your post” and is also used for Pingback support. Different response types within the same interface is a very neat idea, as Sam Ruby has demonstrated with his integrated comments, referral tracking, Pingbacks and TrackBacks. Stuart also suggests auto-discovery of You-Know-Me information from the URL of your weblog, presumably by another link element. This is a great idea, but I have reservations about the performance trade off as unauthenticated comment systems will have to retrieve the poster’s home page in the background every time they make a post.

First deployment of Vellum

Oooh... Stuart has moved his blog over to Vellum, his brand new sparkly Python powered blogging system. The full post is here, but his archive / permalinks aren’t working yet. It’s going to be fun watching the system develop.

Stuart’s pingback roundup

Stuart has a good summary of the recent advances being made in the Pingback/Trackback implementation sphere.

2002

Testing Pingback client

This post exists partly to list the blogs I know of that support PingBack, but mostly to help test my new PingBack client implementation.

[... 68 words]

Pingback specification

Stuart has published the first draught of the PingBack specification, detailing how PingBack works and how it should be implemented. PingBack is brilliant—it just works. What could be simpler than just quietly telling someone’s blog that you’ve linked to them?

Pingback implemented

I’ve implemented PingBack on my blog. PingBack is a system for tracking who is linking to your blog in a controlled way, based on a post by Stuart a few months ago. The idea is that when you link to a PingBack enabled blog you (or your blogging tool) should send an XML-RPC “ping” to that blog’s PingBack server telling it where you have linked to and where you linked from. The PingBack server can then grab your page, check that the link is there and extract a title and short description from the blog. The system is an alternative to (and was inspired by) MoveableType’s TrackBack feature. Stuart and I are actively developing the idea and will be releasing code and documentation to help other people experiment with the system in the near future.

Tree from unordered list

The amazing tree generator (via webgraphics, who in turn got it from CSS Discuss). This is just the kind of DHTML I really like. Place a simple nested unordered list in your document and this external javascript can use the DOM to convert the list in to a hierarchical outline style tree, with each node expandable to show the child members. It looks great and works in both IE and Mozilla—I haven’t tested it in other browsers but it should degrade gracefully, leaving them with a static nested list.