Matt and I presented a session on LiveClipboard and SSE today at MIX, and it went pretty well. The demo gods were with us for two out of three demos we had planned on showing, but the last demo failed due to network issues (doh!). I should've seen the signs that something wasn't going to work when our secondary demo machine wouldn't boot.
Minor issues aside, I think the we were able to spread the word on how LiveClipboard and SSE can help "wire the web", and hope that some interesting discussions will ensue.
We got a lot of good questions on LiveClipboard and SSE, here's a few that are fresh in my mind:
Q: What JavaScript is used to copy/paste content to the clipboard?
A: No JavaScript is used (see detailed explanation). In a nutshell, we have a hidden text field that has focus where content is placed, and then leverage the browser commands to perform copy/paste.
Q: If you are using a hidden text field for the Live Clipboard contents, won't you run into size limits (depending upon the OS)?
A: Yes, you can run into size limits (e.g. 32K on Win98). Our recommendation is to try to keep the Live Clipboard content size small when possible (e.g. urls to images instead of base64 encoded representations).
A: You can provide optional UI on the appropriate page/elements like the different resolutions and move the LiveClip icon as the user moves the mouse. But keep in mind that you want minimize cases where the user needs to make choices during the copy operation (e.g. do I want the low res image or high) - have the copy operation result in Live Clipboard data with as many formats as possible, and then you might prompt the user upon the paste operation about what should be pasted.
Q: SSE keeps information about the update history for an item, but not the actual data for past versions - how can we address this issue?
A: Option 1 is to keep older versions of the data in a separate namespaced element when performing update/merge/delete operations. Option 2 is to never update data, but instead mark the older version item as deleted, create a new item with the same content, and add an attribute on the new item that represents the id of the older version item.
8:47:09 PM
|