Web Applications

Notes To Self: Twitter’s Website Rocks On Mobile Devices

Twitter’s mobile site rocks on my iPhone. Especially worth noting: they’ve figured out how to pin their header to the top while scrolling the content in the middle. They’re also using pushState() and other cool tricks to make the experience feel very native, but the scroll behavior is rare among web apps on iOS. Kent […] » about 200 words

Juice Your OPAC

Richard Wallace’s Juice project (Javascript User Interface Componentised Extensions) is a “simple componentised framework constructed in Javascript to enable the sharing of Ajax Stye extensions to a web interface.”

WordPress or Scriblio users might do well to think about it as a way to put widgets on systems that don’t support widgets, though as Richard points out, “the framework is applicable to any environment which, via identifiers contained within a html page, needs to link to or embed external resources.”

Way Cooler Than A Catalog

I got a little excited when Shirley Lincicum wrote to the NGC4Lib mail list: [O]ne of the most frustrating things for me about Next Generation Catalog systems as they currently exist is that they seem wholly focused on the user interface and can, in fact, actually hold libraries back from designing or implementing improved “back […] » about 500 words

Scaling PHP

This two year old post about Rasmus Lerdorf’s PHP scaling tips (slides) is interesting in the context of what we’ve learned since then. APC now seems common, and it’s supposedly built-in to PHP6. Still, I’d be interested in seeing an update. Are MySQL prepared statements still slow?

And that’s where Rasmus’ latest presentation comes in. We don’t learn anything about MySQL prepared statements, but we do learn how to find choke points in our applications using callgrind and other tools. In his examples, he can do a little over 600 transactions per second with both static HTML and simple PHP, but various frameworks — with many inclusions and function calls — can slow that to under 50 transactions per second (I suppose they’d explain that in a TPS report).

Browser-Based JSON Editors

JSONLint, a JSON validator, was the tool I needed a while ago to be able to play with JSON as format for exchanging data in some APIs I was working on a while ago. And now I like JSON well enough that I’m thinking of using it as an internal data format in one of my applications, especially because it’s relatively easy to work with in JavaScript. Or, at least that’s the promise.

What I’ll need is an easy way to manipulate the contents of a simple array, and these JSON editors may give me a start.

The Braincast JSON editor was the first I found, but it doesn’t allow creation/expansion of the JSON. Katamari‘s JSON editor seems to work and has a lot of features and a post 2005-looking interface, but that doesn’t make it simple. Worse, I don’t think it’s available for me to re-use, modify, or extend in my projects. Thomas Frank‘s JSON editor, on the other hand, does have the features I need and a GPL license. That’s the place to start.

Extra: a JSON diff.

Web Application Design Book Recommendation

I’ve learned to ignore contests on the web. Banner ads that promise prizes if I click the right pixel are the least offensive, but the contests that have me creating content (and then force me to give up my copyright to it) for another person’s gain infuriate me. So when I saw author and experience […] » about 300 words

Scriblio Integrates Google Book Search Links

(crossposted at Scriblio.net) Using the newly released book viewability API in Google Book Search, Plymouth State University’s Lamson Library and Learning Commons is one of the first libraries to move beyond simply listing their books online and open them up to reading and searching via the web. Take a look at how this works with […] » about 200 words