Information wants to be free (and services don't)
Tim Bray just posted a blog post on how information wants to be free and how that's not actually a problem, economically speaking.
Two choice quotes: "the distinction between bits-as-bits and bits-as-a-service may not always be obvious. But it’s crucial, because people will pay for only one of the two." and "» I don’t sell information ... I sell services. «"
This is the kind of thing that Web services ultimately should be about.
AppleScript to export all Stickies to text files
I was looking for a way to put my Mac Stickies on my Android phone, as as the first solution, I just save the text of all the stickies into a bunch of text files that I can then copy to the phone.
To save the stickies on OSX Lion, I found an AppleScript script that does that, except it has problems with double quotes in the stickies, so I tweaked it, see below.
One remaining limitation is that it can't handle spaces, so I run the script manually on every space that has some stickies on it - the script creates new files for all the stickies. This also means that if you already saved some stickies and you rerun the script on the same screen, you'll get duplicates. If you know how to fix the access to stickies on all spaces, please let me know.
Here's the script:
set theName to ""
set i to 0
set n to {}
set L to {}
set destFldr to ""
set mydestFldr to ""
if destFldr = "" then
set destFldr to (choose folder with prompt "Choose a destination folder:") as text
set mydestFldr to POSIX path of destFldr
end if
tell application "Stickies"
activate
tell application "System Events"
tell application process "Stickies"
set L to name of windows
try
repeat with awindow in L
set m to value of text area 1 of scroll area 1 of window awindow
set end of n to m
end repeat
end try
repeat with acontent in n
repeat
set i to i + 1
set theName to mydestFldr & "stickies" & "_" & (i as string) & ".txt"
set existsFlag to ""
tell application "Finder" to if exists theName as POSIX file then set existsFlag to "yes"
if (existsFlag = "") then exit repeat
end repeat
try
set theFileReference to open for access theName with write permission
write acontent to theFileReference
close access theFileReference
end try
end repeat
end tell
end tell
tell application "Finder"
activate
open destFldr
end tell
end tell
WSMO-Lite W3C Submission
The W3C has acknowledged WSMO-Lite, a lightweight set of terms for describing the semantics of Web services that builds on the standard SAWSDL. According to the W3C's own Team comment, WSMO-Lite "is a useful addition to SAWSDL for annotations of existing services and the combination of both techniques can certainly be applied to a large number of semantic Web services use cases."
So now, if you were interested in what SAWSDL could be useful for, here's an answer. We are using WSMO-Lite for semantic Web services automation in the project SOA4All, and especially in the SWS registry iServe.
We also apply WSMO-Lite to RESTful Web services - through the microformat hRESTS we structure the HTML documentation that every RESTful API has, and then it's easy to add SAWSDL/WSMO-Lite annotations.
So that's what's been keeping me busy.
Permalink | Comments (0) | TrackBack (0)
What are virtual worlds good for?
If you've ever wondered about what virtual worlds (like Second Life) are good for, beside games, Greg Pfister describes a better way to do presentations:
Living in a presentation. It cannot be done in two dimensions. You cannot even do it in real life. It's something virtual worlds are, uniquely, good for.
Erik Naggum, R.I.P.
Apparently, Erik Naggum died. I never knew him, but words of his death reached me and I've learned a lot. Two excerpts from his entry on wikiquote (these are his signatures, not necessarily quotes):
- In a fight against something, the fight has value, victory has none. In a fight for something, the fight is a loss, victory merely relief.
- Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.
Rest in peace, Erik Naggum.