Feed Sign in with OpenID OpenID

Simon Willison’s Weblog

51 items tagged “ajax”

Going Postel. Jeremy points out that one of the many disadvantages of publishing JavaScript dependent content on the Web is that a single typo can render your entire site unusable. 40 9th February 2011, 2:18 am

Breaking the Web with hash-bangs. Mike Davies explains why Gawker’s new Ajax fragment-tastic redesign is a web architecture error of colossal proportions. 30 9th February 2011, 2:17 am

Side-Channel Leaks in Web Applications. Interesting new security research. SSL web connections encrypt the content but an attacker can still see the size of the HTTP requests going back and forward—which can be enough to extract significant pieces of information, especially in applications that make a lot of Ajax requests. 3 23rd March 2010, 4:24 pm

flXHR. I was looking for something like this recently, glad to see it exists. flXHR is a drop-in replacement for regular XMLHttpRequest which uses an invisible Flash shim to allow cross-domain calls to be made, taking advantage of the Flash crossdomain.xml security model. 6 26th November 2009, 12:52 pm

Deep Tracing of Internet Explorer. dynaTrace Ajax looks like an awesome tool. For once, Internet Explorer has a development tool that other browsers can be jealous of. 6 18th November 2009, 8:06 am

Official Google Webmaster Blog: A proposal for making AJAX crawlable. It’s horrible! The Google crawler would map url#!state to url?_escaped_fragment_=state, then expect your site to provide rendered HTML that reflects that state (they even go as far as to suggest running a headless browser within your web server to do this). Just stick to progressive enhancement instead, it’s far less hideous. It looks like the proposal may have originated with the GWT team. 7 8th October 2009, 5:52 pm

breaking links. Mike complains about sites such as Twitter and WordPress.com which mess around with Ajax and links and hence breaks the ability to command-click to open a new tab in Safari (and Chrome). I just realised that I’ve subconsciously retrained myself to right click and select “open in new tab” to avoid that exact issue. 13 8th October 2009, 8:26 am

rather baffling finding: POST requests, made via the XMLHTTP object, send header and body data in separate tcp/ip packets [and therefore,] xmlhttp GET performs better when sending small amounts of data than an xmlhttp POST

Iain Lamb 5 18th August 2009, 12:27 pm

Announcing Alice and Wonderland. Continuing the RabbitMQ “stuff to do with rabbits” naming convention, Alice is a RESTful interface to RabbitMQ which exposes information about vhosts/queues/users/exchanges/etc as JSON. Wonderland is a web UI for RabbitMQ implemented as a pure Ajax application which calls Alice. 0 17th July 2009, 9:12 am

Building Fast Client-side Searches. Flickr now lazily loads your entire contact list in to memory for auto-completion. Extensive benchmarking found that a control character delimited string was the fastest option for shipping thousands of contacts around as quickly as possible. 0 19th March 2009, 3:35 pm

AJAX APIs Playground. Ferociously useful collection of executable and editable example code for all(?) of Google’s JavaScript APIs, including Google Maps and the increasingly interesting Visualization API. 0 22nd January 2009, 6:38 pm

Sloppy—the slow proxy. Java Web Start GUI application which runs a proxy to the site of your choice simulating lower connection speeds—great for testing how well your ajax holds up under poor network conditions. 3 13th January 2009, 4:17 pm

A Snapshot of The Yahoo! Photos Beta (from 2006). Scott Schiller shares an internal retrospective on the Yahoo! Photos interface from 2006, which was years ahead of its time (they started building it before the term Ajax had even been coined). The material on memory management and event delegation is particularly interesting. 0 12th January 2009, 10:21 pm

jQuery history plugin. I used this plugin to add back button support to a small Ajax app today, with great results. I tried it a while ago and it didn’t work in Safari, but someone has updated it since and now it works perfectly. 2 7th November 2008, 5:32 pm

CSSHttpRequest (via) Devious cross-domain Ajax hack that uses CSS for transport (@import rules with data URIs, but it still works in IE). Similar to JSONP but safer, since JSONP can cause arbitrary JavaScript to execute. 5 23rd October 2008, 6:25 pm

When Ajax Attacks! Web application security fundamentals. Slides and notes from my talk on web application security at @media Ajax last Tuesday. 0 20th September 2008, 4:16 pm

If we see good usage, we can work with browser vendors to automatically ship these libraries. Then, if they see the URLs that we use, they could auto load the libraries, even special JIT’d ones, from their local system. Thus, no network hit at all!

Dion Almaer 4 27th May 2008, 5:58 pm

Google AJAX Libraries API (via) Google are hosting copies of jQuery, Prototype, mooTools and Dojo on their CDN, with a promise to permanently host different versions and an optional JavaScript API to dynamically load the most recent version of a library. I wish they’d stop capitalising Ajax though. 9 27th May 2008, 5:56 pm

Google Maps now shows photos and Wikipedia articles. Click the “More...” button. My first thought was “how do they get so many photo markers on the map?”—Firebug shows that they’re generating tiles on the server containing multiple photo markers, then when you click on one an Ajax call checks which photo is in that particular spot. 0 14th May 2008, 7:10 pm

Google AJAX Search API: Flash and Server Side Access. Over a year after Google shot down their SOAP Search API, they’ve quietly released a JSON based one under the guise of supporting “Flash and other non JavaScript environments”. Comes with the strange requirement that an HTTP referer be sent with every request; the API key is optional. 1 22nd April 2008, 7:16 pm

Reading binary files using Ajax. There’s a simple trick for Firefox, and (amazingly) you can get IE to play along using a function written in VBScript. 0 22nd April 2008, 7:02 pm

Mibbit (via) Excellent web-based IRC client, should be great for when pesky firewalls get in the way. Also a good candidate for use with a site-specific browser. 0 19th April 2008, 3:53 pm

Simple Exception Response for AJAX debugging. Neat solution to the problem of Django error pages showing up as raw HTML in the Firebug Ajax log. 0 19th March 2008, 4:44 pm

Cross-Site XMLHttpRequest (via) “Firefox 3 implements the W3C Access Control working draft, which gives you the ability to do XMLHttpRequests to other web sites”—you can mark a document as available for cross-domain requests using either an Access-Control HTTP header or an XML processing instruction. 0 9th January 2008, 11:57 pm

$.comet (via) The first Comet (with Bayeux) plugin I’ve seen for jQuery—currently only handles long-polling over XMLHttpRequest, but still a promising start. 1 9th January 2008, 8:31 am

Why we switched to Jetty. Zimbra (recently acquired by Yahoo!) are using Jetty for Comet. It sounds like they are using Bayeux as well. 0 8th January 2008, 5:12 am

ExtInfoWindow 1.0: Ajax powered, CSS customization. Finally, a semi-official way of creating customised info windows for the Google Maps API. You lose the default shadow but gain the ability to style the entire info window using CSS. 2 15th December 2007, 12:22 pm

Two-Faced Django. Excellent Django tutorial by Will Larson that shows how to build a polling application with an interface both on the Web and in Facebook. Also touches on unit testing and Ajax using jQuery. 0 14th December 2007, 2:44 pm

The Future of Comet: Part 1, Comet Today. Absolutely the best summary I’ve seen of all of the current Comet techniques in one place. 0 11th December 2007, 1:13 pm

Ten New Things in WebKit 3. Does “incremental updates for persistent server connections” for XMLHttpRequest mean Safari now has native support for Comet? 1 16th November 2007, 1:19 am

google-axsjax (via) “The AxsJAX framework can inject accessibility enhancements into existing Web 2.0 applications using any of several standard Web techniques”—including bookmarklets and Greasemonkey. The enhancements conform to W3C ARIA, supported by Firefox 2.0 and later. 0 14th November 2007, 5:18 pm

Comet Daily. New regularly updated site covering Comet, the Ajax-like umbrella term for JavaScript server-push techniques. Already a bunch of great stuff on there. 0 7th November 2007, 10:53 am

How to make Ajax work for you. Slides from my three hour Ajax tutorial, presented at Web 2.0 Expo Berlin on Monday. 3 7th November 2007, 10:35 am

Bust A Name. Smart Ajax powered domain search; you give it some words, it shows you available combinations. It’s still almost impossible to find something that doesn’t suck though. 0 20th August 2007, 3:40 pm

SproutCore (via) MVC JavaScript framework used to build the new .Mac Web Gallery application. 0 7th August 2007, 11:35 pm

The Geni “contact us” form. As you type your message, Geni pulls in likely entries from their FAQ using Ajax—with pretty decent results. 0 3rd July 2007, 9 pm

jQuery Taconite Plugin. Lets you serialize jQuery DOM manipulation commands as an XML document for retrieval via Ajax. 0 2nd July 2007, 6:29 pm

The sliding scale. Jeremy’s write-up of my panel at the Web 2.0 Expo, with illustrative photograph. 0 25th April 2007, 7:09 pm

Death and Taxes (via) Beautiful massive zoomable/pannable infographic of the 2008 Federal Discretionary Budget. 1 19th April 2007, 2:37 am

Google AJAX Feed API (via) Simple cross-domain proxy to allow JavaScript to access any publically addressable syndication feed, with the same logic as Google Reader providing normalisation. 0 18th April 2007, 5:29 pm

Flash vs. Ajax: It’s time to expand your toolbox. Dan Webb offers his smart, pragmatic take on the Flash vs. Ajax permathread. 0 20th March 2007, 9:49 am

Ajax3d Demo. Really impressive Virus clone, using the canvas element. 1 9th March 2007, 7 pm

John Resig: Thoughts on OpenAjax. I hadn’t looked in to OpenAjax—from John’s analysis it seems like they need to make it easier for open-source projects to participate and do a bunch of work to modernise their core library. 0 22nd February 2007, 10:20 pm

Which is the real explanation of where the name XMLHTTP comes from- the thing is mostly about HTTP and doesn’t have any specific tie to XML other than that was the easiest excuse for shipping it so I needed to cram XML into the name (plus- XML was the hot technology at the time and it seemed like some good marketing for the component).

Alex Hopmann 1 24th January 2007, 8:48 pm

AJAX Debugging with Firebug. Great Firebug tutorial from creator Joe Hewitt himself. I didn’t know you could trigger profiling from your own code using console.profile() / console.profileEnd(). 0 12th January 2007, 11:21 am

macrumorslive.com. The MacRumors ajax keynote coverage gets better every time—now they have live photos in addition to the text updates. Simple but effective. 0 9th January 2007, 5:11 pm

XMLHttpRequests using an IFrame Proxy (via) Another scary hack abstracted away by Dojo. 0 1st August 2006, 5:40 pm

An S3 AJAX Wiki. Les continues to innovate against S3. 0 22nd April 2006, 7:09 pm

TurboDbAdmin. Ajax phpMyAdmin clone built on Dojo. Worth trying the live demo. 1 4th November 2005, 3:27 pm

Yahoo!’s new twist on mapping APIs

One of the most exciting things I’ve seen at Yahoo! since starting here has finally been made public: the new Yahoo Maps. The map application itself differs from many other recent map sites in being rendered entirely in Flash. This leaves far more scope for interface niceties, but doesn’t it reduce the scope for hacking that made things like Google Maps so much fun? [... 623 words]

Why the term Ajax is useful

Software design patterns are useful mainly because they provide a shared vocabulary: rather than discussing the intimate details of a three layered application architecture, we say “MVC”. Rather than describing an object that tracks your progress while looping over a collection, we say “Iterator”. [... 152 words]

A django site