- Build scripts unobtrusively!
- don’t mix script and HTML
- >script src=”something.js” type=”text/javascript”<>/script<
- only put in a script element to load a separate .js — DO NOT EMBED and (you’re doing the right thing)
- three separate layers
- JavaScript is a bit more effort than CSS due to hooks
Event driven
- user actions rock JavaScript’s world.
- Especially if your script is designed to make page elements wiggle and shake.
- Register with events
- Good scripting is unobtrusive - UNOBTRUSIVE!!!!!!
What can your code do?
- Anything!
- Anything you can think of that you can do with HTML, you can do with Javascript;
- can rewrite the HTML as you see fit (entirely)
- Instead of sending it back to the user via the server, you can do it directly in the client \/ on the fly ![]()
- I want the page to look like this. Rewrite on the fly.
- DOM + Ajax = no more waiting
People think that the web is “Click on something and wait for 10 seconds”
- An application that’s rubbish!
- No more! It teaches the public (in general) what the Web *could* be.
- Teach the public what the web is to geeks
Amazon reccomendations
- DHTML Utopia (im psychic)
- Make new features possible when they weren’t before.
DOM + Ajax
- use other people’s code
- mmmmm cherries. NO CHERRIES FOR YOU!!!! breakfast time in a bit! The expression is brunch and YAY!
- generic enhancements (think script.aculo.us (talk by the author in london sometime), dojo, atlas, Simon Willison’s (Harry Potter presenting later) entire site, Jeremy Keith’s entire site)
- Load pages without page load
- Standing on the shoulders of Harry Potter
- You don’t have to write gMail
- Compare Mac to Windows. (Oh no, I really wouldn’t. Or tell me so I can get cover)
- Make recommendations a viable marketing.
- We’ve learned our lessons from our mistakes.
- Evolution, rather than revolution - (r)evolution
- Take the existing web and make it better.
Just get out there and change the web\
- ???You can do it Ozzy, bite his fucking head off??? (Rob Sneider, ???Little Nicky???) snicker snicker snort
Questions:
What about events pre-DOM-load?
Moz: DOMContentLoaded
Saf: Dave Hyatt == t3h sex.
11:30 -12:15 Ajax and the Flickr API by Harry Potter aka Simon Willison
Simon’s only been working there for 3 weeks so he is a charlatan and didn’t build any of this
* API
* XML Web Services
* Flickr - everyone <3 flickr
* Web 2.0 buzzword compliant
- viral marketing. Everyone tells everyone else…
- tagging
- folksonomies
- Web services API
- Ajax
* Don’t want to trust data to a little startup
- Build an API and let users build tools around it
- Innovative new flickr-as-platform apps
- no-one ever built the originally intended use of the API.
Shiny, gratuitous demos:
* Flickr related tag browser - www.airtightinteractive.com
- by Felix Turner
- using Flash
- enter a tag, loads photos from flick with that tag, along with related tags
- Brighton -> Banksy -> Bridges/rats/police
- flickr not hosting - makes things confusing.
* 3rd Party/Community Produced Flickr upload tools
- iPhoto by Fraser Spiers
- Numerous linux uploaders
- FlickrFS virtual file system
* Geoblogger(http://www.geobloggers.com)
- ultimate geo-spatial mashup
- added ‘magic’ tags:
- geo:lon:??
- geo:lat??
- Geotagged XXX
- microformat
* Web Services
- SOAP (Simple Object Access Protocol) and XMLRPC (XML Remote Procedure Calls)
* Magic function calls
- REST architectural style
* Academic, based on URLs and XML
- Flickr somewhere in the middle REST style (URLs + degugging), but uses functions with params
* Methods and params
- (REST) requesting urls.
- params required: method, api_key
- utf-8, doh!
Every flickr photo includes:
- id
- server_id
- secret (shhhh! its a secret)
Authentication required for deletions etc:
- Many public methods
- Some authenticated
- many return different results when authenticated
API explorer (flickr.com/services/api):
- Allows investigation of methods et al.
- Allows playing with arguments and so forth from web UI, rather than messing with having to call functions.
- Currently supported API tools:
- Actionscript
- Delphi
- Ruby
- .Net
- Python
- PHP
-Scr??mjax! SCRUMJAX! (Scrumpy Jack, anyone? ooo Cider…. yay)
- Inline editing
- Notes
- Misc. niceties (Scones?)
- Slideshows/Organizr currently use Flash
Under the hood
- REST and XMLHttpRequest
- uses public API for internal stuff.
- Eating our own dog food (I don’t know what he’s into) - If the api breaks then flickr breaks too
- Ensures that the API stays up to date - we can’t build usefull …?
Tech demo:
- Mountain in Peru
- Add To Faves/Remove From Faves - ‘Classic AJAX’ (Quick - write down his API key! *snicker snicker*)
- Firefox Extension (Live HTTP Headers tool) < - http://livehttpheaders.mozdev.org/
The benefits of adding web services to an application are huge
- User trust
- Encourages better app design from the start
- XMLHTTPRequest + REST = t3h sex
- Feeds!!!
- Squirrels = good
1:00 - 1:45pm Backstage BBC - Ben Metcalfe
Presentation avail. as CC by:
* What is backstage.bbc.co.uk
- BBC doing scraping.
- Wanted to assist the community.
- Nothing done above board or sanctioned = Cease & Desists ![]()
- Opportunity for BBC + Community to connect.
- Want to allow legally licensed content reuse. (Robust licence, non-commercial)
Why are BBC doing this?
- ‘Open BBC’ push at the mo
- Support creativity and innovation
- identify and showcase talent
- public service for the 21st century
- Ben wants to steal licence fee payers’ money via the web
What’s on offer?
- RSS feeds, Web 2.0 formats (any idea what this might be if not RSS / XML ???)
- Travel XML
- TV Listings data
- Weather data via the Met (coming soon!)
- BBC message board threads
- MORE TO COME!
What’s the deal?
- Strictly non-commercial use
- ‘Remixing’ with other web services such as Yahoo, Google, Flickr encouraged
- Users retain their IP
- Showcase their work on backstage.
Fuzzy mic interference*
- sounds fuzzy
- high pitched
- noted and fixed
Going forward (never backward, upward, never forward, and spinning, spinning)
- BBC want to work with the producers of successful prototypes to help them
- Ultimately we want to implement compelling work back into the organisation - to benefit of our entire audience on bbc. co.uk
It’s possible because??
- All data is made available
- Data is rights-cleared
- Passionate user-base (how much “love” does your service have?)
- depends what sort of love
?? Cool(TM) points!
- support from the top
- Director of new media is keen on backstage
Prototype showcase
- Google Map + Travel XML feed = coolness
- Beeb doesn’t do this yet. Looking to steal the guy’s idea and pay him nothing. And kill his pets? They’ll send round the Mitchell brothers…
- Jamcams - good for watching as you spread strawberry jam on your toast.
- Alteratively, can be used to watch traffic.
- point of information: (Faruk: I gotta say that this is really bad-ass. I’m used to the Netherlands. The BBC-equiv. in the NL is much like “what’s an API?” or “Flickr? What do gay people have to do with it?”)
(point of information 2: “Flickr” in Dutch is pronounced the same way “fags” in Dutch is pronounced)
MighyV.com
- competition winner of Beeb competition
- Adding value and making value-added content available as web 2.0 funk.
- Good ajax example, too.
- Hover over program, TV listing shows more info in ‘tooltip’ type thing
- RSS feeds, JSON
- Prize was a rackmount server
- Suggest offering something good next time? :p (e.g. wimmens)
Web2.0 @ BBC
- Read/Write web in a read-only corporation
- Not many ‘proper’ APIs in the BBC ~yet~
- Rights - bbc doesn’t own all of it’s own data
- lots of data not in a CMS (does that mean it is likely to be more valid
)
Most legacy content of any large organisation is still not in any sort of CMS, but exists on the web solely as plain old HTML files (and no, they’re generally not valid)(!)
- BBC does “get it” (Web 2.0)
- Rights holders are beginning to appreciate alternative business models.
- We are slowly eeking out cool data from the BBC’s repositories
BBC Programme Catalogue - IMDB for bbc’s content
- No downloads, but allows lots of funky searching of the BBC archive
- Still in dev - demo off of dev server
- not a complete record of BBC programs
- Hope to launch early ‘06 as experiment
- BBC librarians don’t get out much and so have time to document everything ever done in the history of time Sssssh! No talking.
- “There will be a Web 2.0 offering alongside it”
- http://203b.picdiary.com:3000/infax/search/ requires authentication, though ![]()
- Zach has been on TV. Thinks he’s cool.
- Interrogable in Web2.0 ways (REST)
- Supplies FOAF info
- Wifi is slow because we’re fucking it with this. Right everyone log out!
Nah, this is ultra low bandwith I’d have thought
‘Rubberband’ net connections.
I’m glad this doesn’t eat bandwidth like honeymonster eats sugar puffs.
I love “available as Web 2.0″ - it’s like a file format or something
Faruk: that’s what I inquired about, yes. “RSS, XML and Web2.0″ …
ben.metcalfe@bbc.co.uk
http://backstage.bbc.co.uk/misc/dconstruct.ppt
http://benmetcalfe.com/blog/
Tech stuff
Ruby on Rails (first BBC app)
Questions:
Making media files available with the IMDB-esque thing?
No, but product next year that has that in scope.
Will ‘listen again’ feeds be available? Likewise BBC radio?
Paul Hammond nodding wildly. ???There are plans???.
Stuart Langridge: Lots of historical info, this is great.
Is the beeb pushing other companies to make data available, or not to make beeb look better?
Pushing others to, but don’t have rights and generate feeds themselves (so don???t have other channels’ data).
Sees no reason why others wouldn’t, but not that they don’t want to.
Big Ryan Carson: If they weren’t limited by licensing and all capabilities were there now, what would Ben do?
Every single page would have RSS feed.
Every repository (postcodes to broadcast databases) would be available.
Not a technical mission, all about rights holders loosening a bit.
BBC has potential to be a significant provider of data in web 2.0 environment.
Offtopic: Radio content in RealPlayer only. Any chance of the Beeb putting it into non-proprietary format?
Historically always used Real because it was the only tech available when this was launched.
BBC news console uses WMP instead.
If PodCasting takes off for all shows, probably looking at mp3. (Rights a billig issue still due to musical content)
1:45 - 2:30 Web Everywhere by Tom Hume
Working in web <2000
Blank stares ‘just for geeks’
??20m VC for gravel selling.
entered mobile market (?when?) - 50% market penetration.
Different perspective on Web 2.0 - not our Ajaxian view.
‘[Lots of bloody mobile phones]‘
Analysts are lying bastards.
Sile pmuprlpeo,s e devices bad for general consumer? Rich experience - PC
Bill Gates = sexy beast.
What’s web 2.0?
- What is Web 2.0?
- How do web geeks stay connected?
- Where do web and mobile overlap?
- Where do they diverge?
We’re not able to define Web 2.0, but we’re the geeks that should know.
- Differentiate the new funk from the old
(like ariel washing powder)
Lots of walled gardens in mobile networks.
- NTT DoCoMo/3 work well in walled gardens
User created data
- calls, SMS, MMS
Users own contacts, SMS, et cetera.
Using cross-device data is what mobile phones are about.
So mobiles therefore ARE Web 2.0 (Apparently)
Magic pixie dust + crap idea = 4t3hwin!
70% world population don’t have mobiles
Audience participation bit
~10% online now
~50% have laptop with them
1 hasn’t got phone
0 haven’t ever had a text message
What’s it all about?
- Communication
- Glancing, gifting = picture messaging (What the fuck do these mean?)
* desktop app which lets folks know you’re thinking of them
- Personal entertainment
- Conversations/user generated content being reclassified so that ‘content is king’ types look cool
- He believes the future of the net is mobile (Surprise, surprise)
On the mobile web: just look at Japan and see where it may possibly go.
- My bum still hurts - ditto Must buy battery and cushion. And, as we’re in Brighton, women too,
- TV on mobile phones is shit, but consumers drool over stupid things.
- Nokia are the largest camera manufacturer in the world (doesn’t make them the best, though)
* apparently, Apple are looking over their shoulder at Nokia, but they’re not gonna get beat. Apple = cool, Nokia = sux Nokia < banana < Apple
^^ that was news to me, too
Medium is the message.
- Implicit versus explicit communication.
Web on Mobile
- WML (Very, very, very shit)
- XHTML-MP (XHTML Mobile Profile, visually richer compared to WML, out there and growing)
- cHTML (NTT DoCoMo standard)
- HTML (Opera, MiniMo, also IE on SPVs…)
- Ajax
- Bear in mind quite alot of mobile web agents don’t have javascript support of any kind whatsoever, and there doesn’t seem to be much development towards it outside of Japan, either (so far)
- Typical Ajax = point/click/drag (not sure I agree) (Faruk: that’s how AJAX for desktop computers has developed, but there are many non point-and-click AJAX approached that will be useful and worthwhile to implement)
Google killed the pub quiz! (but they left the kitten alive)
Also see: http://iyhy.com/
Lots of similarities and some overlaps
- Java has been in Faruk’s bed. LOL
- HTML
- Flash
- Tiny slice of the pie (mmmmmmmmPie)
- Time spent writing markup is minimal compared to design
Trad web agencies treating the mobile web as the old web… similar to print design companies slicing up photoshop comps 10 years ago. It’s not that. It’s new and different, and comes with it’s own challenges
Differences
- Network operators (Orange, Voda, t-Mo)
- Diversity of devices
- Tight software/hardware integration
- True mass market
- Implicit commerciality
- Context of use
Does anyone else note a distinct ‘we’re better than you’ tone to this bit?
Network operators
- Wankers
- Vital wankers
- Wrap complex tech + support into ‘magic box in the palm of the hand’
- Take ownership of end-to-end experience
- Poor customer service (never gonna get it just right)
^ ^ does everyone agreee with that? ^ ^?
I certainly do, and can probably speak for about 10-15 others that
sorry, i mean the “never getting it right” - don’t see why not?
Ah, right… Could be hard. People are hard to please…
- Vodafone = pr0n ![]()
- Customer support - difficult job. Test on the network, give it to public, then support it.
- Subsidise the industry. Typical RRP of phone ~??500, typical street price ~??50.
- Billing management. Aggregating micropayments (buzzword), billing coherently, etc.
- Advertising content providers (iMode posters: lastminute.com) Proxying et al.
- loyalty to manufacturers, not networks
Diversity of devices
- 3-4000 types of browser, network, content, whatever
- Loads of vendors
- Customers are clueless
- No standard form factor
- WURFL open database of handset features
- blogs and vendors are your friends.
Tight software/hardware integration
- Closed devices
- 12-18 months upgrade cycle
- Have to adapt to users ‘cos people don’t upgrade software…
- Operators control/certify (applications)
Truly mass market
- 100%? penetration in the UK?
- HSBC think lots of people have two SIM cards
- >100% in other markets (finland, singapore…)
- Broad demographic reach (mums sending texts)
- Mother beating because she wouldn’t use the internet but would use
- Kids getting mobiles at stupid ages. Parents should be taken out of the gene pool.
- Language: doesn’t require techy introduction (think http:// et al)
* not the user’s problem if they don’t understand. Don’t even expect you to use it.
- Proper usability and interaction design becomes more important with mass market, write-once hardware.
Implicit commerciality
- no freedom of information thoughts unlike the net
-
“mobile has this reach that the internet *?desktop?* lacks?????
14:50 Flash: State of the Art (Aral Balkan)
What is Flash?
* Misunderstood?
* A platform (as defined by MM)
- Virtual Machine (runs Action Script Byte Code)
- Flash (the IDE) is just a small part of it… It has a thriving open source community.
- Viking Kittens! and interstatial ads. Magical Trevor
- Skip Intro
* Try to ignore ???Bad Flash??? in favour of RIAs (Rich tInternet Apps)
The State of the Art
* Has contained similar technologies to Ajax since 1990’s
* the ‘K12′ online school - a “Real School” = no bricks and mortar
* Requires Plug-in



