XTech 2007
From Deobald
XTech 2007
physical hyperlinks
reasoning: marketing, retail (barcodes, rfid beyond sale, say avoiding allergies or assisting the blind)
space: signs, street art, everyday objects, cultural significance
tech:
- bluetooth - distance, potential for spam
- SMS - network, yellow arrows
- barcodes
* different standards (QR codes, etc), UPC ubiquitous * human & computer-readable stamping * inkbyte (invisible digital ink) * 2kb
- rfid - unreliable, phones can read/write, 4kb
- cue cat
- QR codes used for advertising
- artistic, machine-readable patterns
nearfield.org
you are here
paul hammond
- geotagging photos -- flickr open API
- html geo-tagging
- google maps accepts rss urls in the search box
- gps -- in phones
* gps not reliable in cities * most phones lack gps * gps isn't that accurate (few dozen meters) * alternatives are worse * cellspotting.org -- gps-to-cell ID * most people don't have data plans * lat & long isn't that useful by itself * only provides distance from 0.0, 0.0 * geonames.org -- open global mapping dataset * even commercial datasets not that accurate * all the above problems must be solved globally * neighborhood-granularity, minimum
- dopplr -- locating people
- georss.org
connecting first and second life
matt bidulph -- dopplr
- bruce sterling - spimes ("Shaping Things")
- http API to second life -- llHTTPRequest
- WiiRemote hacking
- "Everyware"
web app access to sensors on mobile devices
- locationaware.org
practical ubiquity for mobiles phones
- Julian Bleeker, practical alternative to Sterling's Spimes
- geolocation by time coordination (sync gps and camera by time)
- imity.com -- identifying near objects online
* bluetooth * identifies surroundings and coordinates labeling of your device by time coordination * slow (good - hard to fake 3mo worth of personal history) * takes time to arrive at meaning * more physical than online data such as flickr (history is identity) * conference spatial awareness -- "last.fm for people" based on concert location * imity client is on Google Code * imity.com/blog - Claus
- security & privacy, always a social contract
the papernet
- overuse of internet as replacement for paper
- index cards for recipes
- the ease required to make a system useful enough to put data in and take it out
- mobile: "premature monetization is the root of all platforms"
- Aaron wrote a Google Maps app to print out 2-size maps of locations
- wine: grape.spum.org ?
* semantic web based on microformats * mobile UI for phones
- www.aaronland.info/talks/papernet
cesi n'est pas une pipe
- www.designswarm.com
- alex@designswarm.com
- open design (germany)
- internet of belief (bluetooth jesus fish)
Wednesday ----------
microformats
- XML RDF, mechs vs. microformats, nanorobots
- 80/20, low hanging fruit
- mfs for relationships, licensing, people, and events
bucky balls:
- href's rel attribute (relationship)
- rel-license: <a rel="license" href="http://creativecommons.org/blah">
- XML (XHTML Friend Network): <a rel="friend met colleague" href="sinfield.com">
- class attribute
- hCard:
- <a rel="friend" class="fn url" href="x"> (fn = formatted name)
- uses vCard spec for class names
- hCalendar:
- uses iCalendar spec for class names
- dates, such as dtstart are marked with <abbr title="2007-05-15" class="dtstart">May 15th</abbr>
- NOT microformats
- too many defined on the fly ("POSH" -- plain old semantic html)
using:
- technorati/yahoo store/search microformats now
- operator
- convert using x2v (to vBlah formats)
the future
- portable social networks ?
- syndicated contact details ? (an address book like an rss reader)
- initial semantic web
Jeremy Keith http://adactio.com http://microformats.org
javascript
- not covering js-generating tools like GWT
- issues
- DOM API sucks (document.getElementById ....uh.)
- event handling inconsistent, historical remnant of browser wars
- animation, drag & drop difficult, coordinates difficult
- IE leaks memory (IE GC vs. JS GC)
dojo
- started in 2004
- huge
- has its own dynamic packaging system
- dijit: dojo widget system
- dojo.storage -- local offline data storage
- Dojo Offline Tookit, a 300kb proxy run locally to run web apps offline locally. Sweet.
YUI
- focuses on browser issues
- utils and controls
Prototype & Script.aculo.us
- prototype: event handling, make js like ruby
- script.aculo.us: effects, widgets, drag & drop, easier DOM building
jQuery
- cross-browser hacks to avoid 'document load problem'
- great node selection: CSS 3 and XPath support
- designed around 'chaining' methods
namespaces
- prototype: terrible
- YUI: great, but ugly
- var $E = YAHOO.util.Event
- jQuery: $(...) is an alias for jQuery(...)
- $(...) can be given to Prototype by 'jQuery.noConflict();'
- you can still get around THIS by passing $ to functions passed to jQuery:
jQuery(function($) { ... // $ is local here
Yikes.
Progressive Enhancement
- Neighborhood Fix-it
- js
- plain HTML
- text-only
- Yahoo Developer Network has "Interaction Design Patterns"
- Smart node selection is important, but jQuery and Prototype are the only two libraries that do this well.
- YUI animations done as DSLs
- speed
- minification (stripping whitespace, etc.) -- all 4 do this
- hosting on a content delivery network, such as yui.yahooapis.com or dojo on aolcdn.com
- Law of Leaky Abstractions dictates that understanding these libraries is essential
nabaztag
- cute, human appeal
- normal people don't care about ubiquitous computing or connected devices
- not having a purpose actually helps adoption
pipelines
- Ian Forrester
tools
- particls
- attention mechanism, not the pipelining application needed
- automator
- apple, proprietary
- non-XML (apparently this is a problem)
- yahoo pipes
- rss, atom, json
- graphical, easy to use
- no local access
- flow*
- hypothetical -- doesn't exist
- application which combines online/cloud feeds and desktop data
- attaches to widgets
- when the pipeline app is shut down, there is a desktop API to talk to
RSS Bus -- Apache Cocoon -- Yahoo Widgets
potentially offload work to a pipeline server?
interface: code -> pipelines -> forms advanced -> power user -> novice
http://www.cubicgarden.com/blojsom/blog/pipelines
thursday -------------
google data
- atom publishing protocol
- open, freely extendable permitting the customizations which create gdata
- optimistic locking
- developer tools: a whole bunch of languages
- customized APIs for
- google apps (only Java, .NET)
- base
- calendar
- spreadsheets
apps by developers:
- physical clock (gcalendar-linked)
- photo editor (picasa web)
- outlook, excel integration w/ google office equivalents
- www.mobilegcal.com -- live access to google calendar
- www.spanningsync.com (costs money) -- sync iCal & gCal
- Guyimo -- mobile ebay using google base
- bloghud -- post to your blog through Second Life
user generated content
- kevin anderson, guardian unlimited
- Strange Attractor: http://strange.corante.com
Basically, adjust the perception of news and journalism to facilitate the obvious communication (that isn't happening yet) between human interfaces like websites. Additionally, look at how we can build infrastructure to share data between sites and organizations where it is currently locked by format (the "one CMS to rule them all" problem).
Some French guy during Q & A: "Lies are nice. Lies are necessary for life."
3D worlds created from photos -- quakr
alternatives:
- google earth
- ms virtual earth
images on maps mashups: loc.alize.us, Zooomr. The problem with this is it's all 2D and non-representational.
the goal of quakr is to create a 3D world out of geolocated photos the problem with this is that it requries 3 degrees of rotoation to construct 3D models automatically (it sounds like these are manually inputted for now, but certain camera phones have a notion of tilt and there do exist 3D digital compasses.)
all if this data is punched into flickr (or equivalent) as semantically appropriate tags alongside the image
tried:
- java applet
- vrml/X3D (apparently X3D is the new vrml?)
- sandy (flash)
Sandy worked, obviously and unfortunately.
XMPP in web apps -- massiliano
- XMPP is cool.
scaling rails apps.
- http://smokeclouds.com/scalability.pdf
- caching is good
- don't run production apps on shared hosts
- don't buy slow hard drives
mysql tuning
- good commercial support
- don't use query cache
- use suggested network settings (maybe available on his online slides after?)
- show full process list
- you don't need to use activerecord (example: insert delayed doesn't work out of the box)
rails:
- swifticore?
lightning talks
WAY AWESOME.
- tinker.it
- hackday.org
- (pre)Internet time - fighting the loss of information through death - gavinbell.com (Nature)
- video for the internet: (1) <video> tag (2) Ogg Theora format. (Wikipedia is already using this.) - Opera
- labs.opera.com
- javascript/css powerpoints - http://labs.opera.com
- XForms is good.
- HTML5 - webforms, cool stuff, <canvas>, <video>, <audio>, etc.

