Back from FOWA... totally shattered... nothing but croissant, salad and coffee to keep me alive for 2 days! It was _very_ interesting but due to the extreme pace of the thing my brain had turned to mush by the end of Friday! Anyhoo... I have a massive pile of notes here. TBH I doubt I'm going to sanitise them so here they are straight from my Crackberry.
* digg - news, tries to connect users, their diggs/buries and other users to provide "news"
services. Effectively data mining in "realtime". Interesting bit - there are users that are very
good at predicting what will be "hot" e.g. What's upcoming. Problems - eclectic tastes, taxonomy
parlance differs around the world.
* AOL - not much - just "crowded biz space" and "many apps yet to be written"
* Joe Stump, Blaine Cook. "Languages don't scale"... Ruby - anti-ruby-zealots (well it does
suck!). "PHP sucks"! Probs - decade for OOP, no closures, no namespaces, no unified DB layer.
"Ruby sucks" probs - loops (bad implementation e.g. Whole conext switch per loop), dreadful
syntax, Loadsa C extensions needed (no async networking). Python - Guido sole developer
(dictator), no protection mechanism, dreadful syntax.
PHP vs Ruby - simple RSS/XML reader. Same run time(ish). Both solutions blocked by IO time not CPU.
Whatever language we've got how do we scale? Scaling up vs out.
"Up" -> upscale boxen (faster tech), not necessarily a "single box problem" - may need to
distribute prog. (Avg box @ digg has 16gig o ram)
"Out" -> Distribute load. RAIC. Scaling is a matter of "throwing more cheap boxes" at the problem
"Web2" - user content... Scales badly. People make "a lot of crap". Make no box a bottle neck?
Don't want a server with 50 HTTP servers but only 1 DB server. "Don't Share"
"Happy coders" - give 'em tools, let 'em do what they want.
Bandwidth isn't latency - that is speeding up your code _may_ not increase bandwidth but may
Parallel search - across machines innit.
Parallel access often better than single access. Stops blocking - often faster than 1 machine.
MemCacheD - in memory cache. FB - nearly 7TB of distributed memory cache.
Parallel cache invalidate... Painful (what about in-flight requests?). Time stamped cache (garbage
expiration jittering (boltzmann machine?) When spread across servers should mean that servers
spread there invalidation not all at the same time. Queus - "starling" - Queue everything - RoR in
particular is non async comms, limited socket connections.
Partiton data... Scale reads - distribute DB reads. Writes a problem. H - split table in 1/2, V -
split table by fields (extreme = 1 table per field)
"Languages don't scale, architecture does"
* Future of Enterprise Webapps (Kevin Marks - google)
"Clouds" - the cloud connects all - why? Cos' the phone (P2P) type system is not the internet.
"The young are unaware of an un-networked world" - well... Duh!
"The kids" - email is formal - SN is what they use to communicate with each other. Email is
somewhat physically based e.g. Somebloke@somecorp.com.
Enterprise apps - lotsa forms! Why can't the computer do this work? "Real people" are often the
interface between the. User and a form (kinda stoopid).
Too many forms and fields mean users will lie! E.g. "Mickey mouse", location "the moon".
Users willing to give data away... Often crazily (username, password)
Lots of sites store copies of your personal detail... So unify right? Hmmmm... Back to forms...
"OpenSocial" - Data, Friends, Activities. "Portable Contacts" portablecontacts.net
Data Store - you own apps extensions to the open social info.
Activites - things people do with your app...
Persist your data not all data. Your site neednt know who someone is but just stashes a I'd
(abstracted away user -> details in code).
Orkut - cal company big in brazil - just cos' of "organic" growth. Word of moutj, face to face
recommendations. (Orkut probly tied down to portugese). Once a site has a culture of it's own it
will appear alien to people of other cultures (unusual, uncomfortable)
"Open Social" - framework+abstraction does not mean LJ,FB etc...
"Viewer" + "viewers friends"
"Owner" + "owners friends"
Idents -> idents (per container not web wide). Idents not necessarily people, could be website,
company or a real thing.
On _my_ site the viewer(me) is the owner.
"Social Object" - pic.vid.snd e.g. Youtube, flickr, myspack.
CRM - owner is site. Viewer is you (customer?). Pfffttt...
* Mobile Web will Change Everything
Network proliferation - too many networks. Blocks on messaging etc.
Vendor lock-in... "Sucks"!
Exchanging data is hard (differing platforms)
Microformats, JS, Web2.O, OAuth (link sites without passing user/password stuff) OpenID?
Startups - purpose is to break down barriers (surely means high failure)
"we are creationist"
"the best way to predict the future is to invent it" - Alan Kay
* Ron Richards - "bringing internet TV to the masses" - Revision 3 (diggNation broadcasters)
The TV.... Ubiquitous.
TV/PC convergence. Watching vs Interaction.
AT&T "you will" advert
"Play move 'now'" - how do 'puters use video. - olden days... 386 "my god it plays video".
2005 - video in 2 directions. Youtube vs PodCasts... (What's the fucking difference? Quality
Simply (perceived) amateur vs professional.
New field - video created for internet. No lower bound for video content creation (well, very low
2005 onwards HD (big thing?). Actually TV is now more like monitors (gone up in rez + colour)
User perception is that internet tv is not _real_ tv...
Obstacles to delivery - small screens on mobile devices. Wiring up is a nightmare (ethernet,
audio, video etc). Tivo gets it right (easy to setup - virtually nil)
Simple "download this file" isn't enough. More than simple RSS. Delivey of shows via damn near
evrything (mobile, other internet sites etc) - Rev3 have become content providers?
The fork... Pro delivery, hi-def, large files vs low def, augmented, streamed
"Lean forward" vs "Lean Back"
Running commentaries in realtime on video (wine library tv - you stream) - intetractive as
produced... Realtime feedback.
Hollywood - Huloo? NBC.COM (powered by huloo). Starz.
Advertising - intrusion to watching video. R3's model is advertising. "This episode bought to you
by..." 50's stylee...
* Ben Huh - "I can haz Cheez burger"
"Spend an extra few quid" - 'keep a collection' - by misspellings!
Site got backers because of community. No community no value.
"Community base unit" - as simple as 2 people.
"It's funny, I'll tell someone else"
50% will never return. 1% will be there all the time. 1% are vocal but not a lot of money. Hit
casual users. Make 'em fans. Let 'em share - encourage it... Make a sensible self statement such
as "we'll make you happy 5mins a day". 45% casual users (important for their money)
Vast majority of traffic is direct e.g. Via email links, I'm etc.
Number of "shared experiences" vs members...
Goodwill? WTF? All content comes from users. Powered by goodwill.
'Starting' - Start easy. Don't over engineer. D'oh...
'Infopr0n' - narcissistic tendency to want to introspectively analyse our data. Users have 'fans'
based on creation... Kinda simple, not really fans but.... What the hey.
"Thefting" we know who puts which picture in which blog. Let 'em link to your content. Old world
publishers are obsessed with this IP theft.
* Tony Fish - taking your web app mobile.
* Tim Bray - Sun
"Getting through tough times"
Will the bad times giant collaps and recovery? Is he wrong?
1 - Your Work - more effort? You could cause your employer to "fail" (haha). No large capital
expenditure. No waterfall. Go "Agile". No software license (GPL/BSD will win?) Pay support costs
after building SW (no future for enterprise SW?). Get in the cloud - analogy in the old days firms
had their own generators and C-electrical-Officers. This migrated to a utility model. Avoid vendor
lock-in. Be part of the online conversations about your company (good or bad). Yamaha social
network? Or just big forum thing.
2 - Opportunities - out of work? Do a startup! "Regulatory tech". High visibilty, open rule
system. Think about basic needs (too much drinking, eating, going out) Archway-London!!! Telecoms
- 100% addicted to mobiles! IPhone apps... Lots of mone there. Mobile apps... GO! Program for
youself (muso type thinking). VC? Fear VC?! Goals/aims may not match between you and investor.
"Make money now not later".
3 - You - position youself to survive the "hard times". No technology religion. No break down
between designer and developer. Don't do it - expand you horizons - you'll keep your job. Lots of
tech out there - do not specialise on a single development route (e.g. Just C++). Build Skills.
Make contributions (get your name on google) - blog, contribute to OS project etc. Contribute to
web or employers won't bother with you. "Network". Contribution is networking.
* Adam Gross - salesforce.com
"Cloud" - salesforce - no software - enterprise apps in browser - subscription model. virtual
virtualisation. Demo of CRM. Smart stuff - CM plus DB manager all in one.
** O'Reilly also Apress
* Simon Wardley - innovation the future and why nothing is ever simple...
Process behind change... Commoditisation & innovation, Drivers, why nothing is simple....
C&I - yesterdays hot stuff - todays boredom.
New - bespoke - product - services
Where does new stuff come from? Discoery/invention.
Drivers.... Novel/new = scope for competition.
Salaman & Storey
* Gavin Starks - Amee - pracitically heretical - you iPhone is about to become landfill (ghasp!
Aggregate all energy data on Earth.
"VidConf vs flights. But, the flight is a perk desired by employees. How can that attitude be
changed. Greed it may be (and keeping up with the Jones')... But it happens. It's a social
attitude. A job with travel is better than a job with vidconf.". Consumption is wealth. How do you
fight that attitude?
* Lunch session. - Mike Ormand - MS dev evang. http://mikeo.co.uk
* What's this SL stuff
* Beyond Google Maps. Andrew Turner - Mapufacture.
Sqlite has geospatial types. Blimey!
All linuxy cgi stuff. Web based I'm. Beaut.
* 10 tips for a distributed team success. www.yuuguu.com
Instant screen sharing. Meet online travel less. 1 or 2 people to get together immediately and
discuss this, that, the other.
"What makes for constructive teams?" Tech problem?
Right people... Will this person enjoy working on their own. Will they actually pick up the phone?
What's their motivation? Does this person want to change their life?
Work to a clear vision. They won't be present everyday so you must have commonality. Side by side
co-workers are effective... How do we replicate this?
Have an open culture - people free to pipe up. Don't play politics. E.g. Those not in the office
then they may feel outside the decision process.
"trust you people" - "don't track time" (trust) don't even track holiday. Say "hello" ;-) talk to
everyone in the team oce a day. Every other day at worst.
Stamp out stroppy email.
Q - Holidays. No tracking!. How did that work out?
Q - Also hours kept - problematic e.g. Night workers (me)
Q - distributed teams slow down decision making (see don't make decisions in meetings)
Project teams just "sort iot out" "core hours" etc but people realise they need comms with each
Q - code/doc review over distance? Did it work out well?
Q - what good SW did you find?
"Passive comms" - where does it fit - skype etc "I'm doing 'this'"
Don't meet up to work.
Conference calls are for debate (not just listening) don't make decisions in meetings.
* What ingredients make for successful distributed teams.
* How to build a desktop app from a web app - Jeremy Baines, Howed Baines.
'Bout the 10% of time they write hobby apps. "Human Moods". Designing, building + distro of
"Publish API" - let other write the app??? Good idea? Not quite...
"Always on" - useful desktop app characteristic. "Better integration with desktop/file system".
Transient vs fully immersive? Use it a little bit like MSN or full on experience like
Get a good icon!
Tech. AIR, WPF, blah (wot no Qt?)
Distro... Cost? Bandwidth?
Distro from places websites dont make it like apple.com, adobe.com, downloads.com
Another way??? Alertthingy - V2...
* How to survive ouside silicon valley.
"Starting a biz is hard"
Those investors in SV will understand your pitch (tech minded) - outside - good luck!
"Community - Team - Passion"
Opencoffee.ning.com - likemind.us - meetup.com - workatjelly.com
"Looking for good (or cheap!) Talent"
"Competition" - other firms will steal your employees!
Distributed team - interntational - skype, email, I.M. And wiki's!!!
Team + passion = good company.
* "Huddle" email@example.com
How do we prosper (not just survive)
Community, Team, Customers, Money...
* to borg or not to borg.
"No longer just individuals"? Mass audiences - somewhat anonymous. "All people all the time" problem.
Email/im "task focussed" not socially focused.
Design metaphores - UCD - task goal generated. What is the "goal" of flickr/fb etc?
"Add as friend" - unhelpful term. Might be interested in your work but not you! 2nd wave HCI -
"activity theory" - lev vygotsky.
"Activity theory" ISBN 0-262-11298-1
OpenId - OAuth _keeps_ cropping up. Interesting.....
"Hinternet" - peeps who just aint involved in the net. Dialuppers - non-geeks etc.
"People as composites" - there's their stuff already out there....