1. technical fluency examples from the elmcity case study Jon Udell Marlboro College Graduate School October 2010 http://jonudell.net http://delicious.com/judell/marlboro1
2.
3.
4.
5. >>> s = open('marlboro2.xml').read() >>> s[0:80] '<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www' >>> xml = minidom.parseString(s) >>> xml <xml.dom.minidom.Document instance at 0x0159F7B0> >>> items = xml.getElementsByTagName('item') >>> len(items) 6 >>> titles = item.getElementsByTagName('title') >>> len(titles) 1 >>> title = titles[0] >>> title.toxml() u"<title>Developing intuitions about data - O'Reilly Radar</title>"
6. >>> title.firstChild <DOM Text node "u'Developing'..."> >>> title.firstChild.nodeValue "Developing intuitions about data - O'Reilly Radar" >>> collection = {} >>> for item in items: ... title = item.getElementsByTagName('title')[0].firstChild.nodeValue ... url = item.getElementsByTagName('link')[0].firstChild.nodeValue ... collection[title] = url ... >>> collection.keys() ["The principle of indirection - O'Reilly Radar", 'Collaborative curation as a service', 'To: elmcity, From: @curator, Message: start ', "Developing intuitions about data - O'Reilly Radar", 'A new answer to an old question', "The power of informal contracts - O'Reilly Radar"]
7. >>> collection.values() ['http://radar.oreilly.com/2010/09/the-principle-of-indirection.html', 'http://blog.jonudell.net/2009/02/26/collaborative-curation-as-a-service/', 'http://blog.jonudell.net/2009/10/21/to-elmcity-from-curator-message-start/', 'http://radar.oreilly.com/2010/10/developing-intuitions-about-da.html', 'http://blog.jonudell.net/2009/03/18/a-new-answer-to-an-old-question/', 'http://radar.oreilly.com/2010/08/the-power-of-informal-contract.html'] >>> for key in collection.keys(): ... print key + ': ' + collection[key] The principle of indirection - O'Reilly Radar:http://radar.oreilly.com/2010/09/the-principle-of-indirection.html Collaborative curation as a service « Jon Udell:http://blog.jonudell.net/2009/02/26/collaborative-curation-as-a-service/ To: elmcity, From: @curator, Message: start:http://blog.jonudell.net/2009/10/21/to-elmcity-from-curator-message-start/ Developing intuitions about data - O'Reilly Radar:http://radar.oreilly.com/2010/10/developing-intuitions-about-da.html A new answer to an old question:http://blog.jonudell.net/2009/03/18/a-new-answer-to-an-old-question/ The power of informal contracts - O'Reilly Radar:http://radar.oreilly.com/2010/08/the-power-of-informal-contract.html
8. >>> for key in collection.keys(): ... print '<a href="%s">%s</a>' % ( collection[key], key) <a href="http://radar.oreilly.com/2010/09/the-principle-of-indirection.html">The principle of indirection</a> <a href="http://blog.jonudell.net/2009/02/26/collaborative-curation-as-a-service/">Collaborative curation as a service</a> <a href="http://blog.jonudell.net/2009/10/21/to-elmcity-from-curator-message-start/">To: elmcity, From: @curator, Message: start</a> <a href="http://radar.oreilly.com/2010/10/developing-intuitions-about-da.html">Developing intuitions about data - O'Reilly Radar</a> <a href="http://blog.jonudell.net/2009/03/18/a-new-answer-to-an-old-question">A new answer to an old question</a> <a href="http://radar.oreilly.com/2010/08/the-power-of-informal-contract.html">The power of informal contracts - O'Reilly Radar</a> >>>
26. sources: delicious, twitter, wordpress, technorati effect: query for a tag across all sources result: rss feed merging results from all queries
27.
28.
29. 1. the elmcity service operates on twitter as @elmcity_azure 2. the curator for the westborough, ma, hub operates as @westborough 3. if the elmcity sees twitter=@NAME in a hub’s metadata, it follows @NAME 4. because @elmcity_azure follows @westborough, @westborough can send a direct message to @elmcity_azure 5. if @westborough just added a feed and wants @elmcity_azure to aggregate now, instead of waiting 8 hours, he can send the start message:
33. any item tagged with the subproject icalvalid is posted to delicious or twitter or wordpress receive authenticated messages from curators
34. jeannettewing’s manifesto To reading, writing, and arithmetic, we should add computational thinking to every child’s analytical ability. It is a universally applicable attitude and skill. other names for computational thinking digital literacy, systems thinking, 21st-century skills there isn’t an app for that to make the most of the local internet – and the global one! – we need to learn, teach, and apply core principles