Apr 12, 2013

Shake to debug

When trying to debug UI glitches caused by asynchronous events, I’ve found it useful to simulate an asynchronous event with a shake. It’s easy to hook into iOS device shake notifications with:

More »



Jul 1, 2011

Step 4: File upload as a pluggable component

In this final post of the series, I’ve morphed the code I’ve presented so far into a pluggable upload component: NAFileUpload. I’ve created an example component NAFileUploadExample to illustrate how to use NAFileUpload. There are six callbacks and one configuration id which should be set:

More »



Jul 1, 2011

Step 3: Using Nginx upload progress module

In this step we describe how to add an upload progress bar to the file uploads. The Nginx documentation for the upload progress module can be found here. This post builds on the code described in the previous two posts.

More »



Jul 1, 2011

Step 2: Hidden iframe for ajax-like file upload

In this step we upload the file in the background in an AJAX-like style. Note we are not using the AJAX XMLHttpRequest as at the time of writing it was not possible to use an XMLHttpRequest for multipart form uploads. The work-around is to use a hidden iframe to submit the form. The main render method becomes:

More »



Jul 1, 2011

Step 1: Nginx upload module

Nginx upload module allows Nginx to be configured to write uploaded files directly to the disk, completely by-passing the Smalltalk image. This step explains how to integrate the upload module with Seaside.

More »