Archive

Archive for the ‘web2.0’ Category

Stephen Wolfram on starting up a company.

November 25th, 2007

Marc Andreessen recently pointed to a great talk by Stephen Wolfram, CEO of Mathematica at the Y Combinator Startup School back in 2005. There are almost too many gems in this talk so I’d recommend the full read. Here are two pieces that seem to really apply in the fast paced world of web application development though:

I’m not sure if writing a detailed business plan would ever once have been worthwhile. I’m as analytical as anyone. But somehow there are always variables one doesn’t know. That can just turn numbers and things upside down.

Get-rich-quick schemes almost never work. Even if they sound really clever. It takes actual hard work to build things. And usually at the core of anything successful is something difficult. It may not be what people talk about. It might be something technical. It might be a business structure. But there’ll be something there that’s sort of a hard idea.

The first is a feature of this business that can be pretty difficult to explain to some potential investors :-o The second is probably more important but often overlooked in practice.

(Aside, there’s a link right at the end of Marc’s piece to WolframTones – the book behind the concept, A New Kind Of Science, looks interesting…)

aehso business, mathematics, startup, web2.0

Alex Iskold on Read Write Web.

October 17th, 2007

I completely agree with Brad and Fred – Alex Iskold’s The Structured Web and Facebook: What If More Is Less? contain some great concise analysis of the how the web and the networks within it are evolving.

Well worth a read if you’re looking for some food for thought and can spare 10 minutes….

aehso atom, blogging, rss, social, web services, web2.0, xml

Future Of Web Apps London 2007 – Notes.

October 5th, 2007

Update: More comments on the copy of this post syndicated toReadWriteWeb.

First up, its worth noting that there were two tracks/sages – developer and entrepreneur stages so I only saw half the talks (if even, I skipped a few while in the exhibit hall)

Wednesday

“High Performance Websites” – Steve Souders Steve is Chief Performance Yahoo! at, well Yahoo!.  He has worked extensively on improving the page load performance of various Yahoo ‘properties’ including the main search engine homepage.  His talk centered primarily on the topics covered in his new book which covers how following his 14 different ‘rules’ will improve the page load times, leading to a better user experience.  His book concentrates on optimizing the front end HTML/script/resource loading and layout.  His point is that big gains can be made by optimizing how pages are generated for and loaded/parsed by browsers.  Other, system level optimizations of backend application server/database layers are equally valid but can take weeks or months.

Steve demoed YSlow, an extension to the popular Firebug web page debugging plugin that measures page load performance, grading it from A(good) to E(bad) under the 14 different rules (understanding expires headers/caching, gzip, reducing no of http request, script locations within the page, etc).  He presented some interesting measurements of page load times for some of the top 10 US websites page – suffice to say CNN, Amazon & co were rated poorly while yahoo.com came out with an A.

“How to take your Apps Offline” – Dion Almaer

Dion works in the Google Developer Porgrams group (as well as doing ajaxian.com), primarily on Google Gears.  Lots of architecture slides on the 3 components – Local Server, Database, WorkerPool, nothing new there.  There were two areas that he was reluctant to be drawn on:

  • mobile support.  Questions asking which mobile devices would get Gears support met with a “expect announcements from handset vendors in the near future, not just iPhone” – apparently many are working on integrations.  Said that browsers based on opera/gecko (firefox core) are prime candidates
  • synchronization.  Before he hit this topic he mentioned that Google have developed “Cross Origin API” support in the new Gears Worker Pool implementation, allowing Gears Worker based JS to talk to servers *outside the origin server domain*.  This is apparently safe as the workers have no access to the page DOM or browser window.  He then had a very vague reference to synchronization in one of his last slides that also had a screencap of iSync on it and I suspect that is strongly tied to this Cross Origin API support in workers – sync with lots of sites would presumably need this feature.  Suspect Google will use this to do sync between their properties (calendar, gmail address book etc) and other sites/applications?

Also worth noting Google have contributed a free text search extension to SQLite (the database used by Google Gears) back to the SQLite community.

“The Future Of Funding” – Dan Waterhouse, 3i

Mostly VC funding oriented, standard enough stuff.

“The Architecture Behind Wordpress.com” – Matt Mullenweg, wordpress.com

Matt presented “Matts Magic Mini Cluster” a hypothetical configuration of 7 boxes (2 load balancers, 3 web servers, 2 db hosts) that cost about $1500 per month on Layered Technologies.  Referred to it as a “mini me” version of the wordpress.com back end, minus some custom pieces they have developed/integrated themselves (e.g. CDN). 

Not too much else earth shattering in this one, though he did admit that he doesn’t like ads (and runs adblock in his Firefox) and explained that Wordpress.com started experimenting running ads on their site by first targeting them by User-Agent, primarily at the AOL Browser users who are far more likely to click on ads apparently.  Says he doesn’t want ‘core users’ (bloggers) to ever see ads to show on wordpress.com pages, rather they are mostly shown when someone arrives via search engine referrer…

Taking Your Application Mobile – Heidi Pollock, BluePulse

Heidi seems to be a veteran of this space so her talk was keenly attended, after all mobile is one of the next big things.  Unfortunately her message was a scary one – lots of problems getting pages to render on what appears to be about 1300+ browser/handset combinations means developing XHTML Mobile content is a tough job.  She did cite some interesting experiences that the vast majority of users who use mobile internet do not have high end phones – PDAs, iPhones or even Series 60 handsets.  Instead she is amazed that most are using handsets that have an effective pixel width of 176 pixels – 30 characters.   This introduces all sorts of restrictions with even internationalization having to be considered early (to make sure navigation links will still fit!)

She also made one key recommendation – never try scale an existing site onto a mobile device.   It just won’t work in practice.  Instead she suggested identifying which pieces of the main site would be used on mobile and just develop pages for them.

Cross Platform User Interfaces – John Resig, Mozilla Corp

John is one of the javascript developers working at Mozilla, mainly on the Firefox javascript runtime.  He started with an overview of the future of firefox, highlighting a couple of enhancements:

  • SVG support.  He mentioned that Joost is built on the Mozilla javascript runtime, with most of the Joost UI generated by SVG.  Lots of enhancements coming, including 3D web page canvases (though I don’t know how useful that would be!)
  • Offline Support.  He mentioned three offline development projects that are running in parallel:
    • Mozilla are working on there own (which ties with their HTML 5 support which is tracking the HTML 5 working groups effort)
    • Google Gears (see above)
    • WHATWG are doing some work in this area.

      His hope is that they’ll be able to eventually coalesce these efforts, with the browser providing the following features that things like Google Gears can reuse

  • Offline/Online detection
  • File Upload Queuing
  • File Caching
  • Cookies++ (Global Storage).  This is a basically a larger cookie repository within the browser, that can store multiple name/value pairs for each site (HashMap)
  • Some ‘SQLite-like stuff’.  Basically they see the value in having a local database to store offline content (rather than using filesystem).  Google Gears uses SQLite for this, he suggested that maybe eventually Google would be able to build Gears on this instead
  • XMLHttpRequest++
    • Cross Domain XMLHttpRequest (in Firefox 3)

  • JSON (De-)Serialization (object_to_JSONString() and string.parseJSON() type APIs)
  • Desktop Integration.  This is basically a way for a user to take a web application URL and create a desktop shortcut just for that URL that will launch a completely separate Firefox runtime just for that application.  Basically the thinking here is to allow that web application to exist without the Firefox browser menu/toolbars and also to give it a OS process of its own to work in.  The underlying technology was referred to as XULRunner

John then moved onto JavaScript support in Firefox:

  • Firefox 3 will have JavaScript 1.8 support, with FF4(?) aiming to have Javascript 2.0 support
  • Three new “Monkeys”.  These monkeys are codenames for three new components that will integrate the Adobe ‘Tamarin’ Javascript runtime into Firefox (Adobe donated this to Mozilla a while back).  The three monkeys are for different purposes:
  • ‘ActionMonkey’ will integrate Tamarin into SpiderMonkey for FF 4 (Javascript 2.0)
  • ‘ScreamingMonkey’ will ‘force’ Tamarin into Internet Explorer (‘kicking and screaming’)! Not really Firefox related but the project will be run by Mozilla
  • ‘IronMonkey’ will bring Pythin and Ruby support to the Tamarin runtime.  Basically the goal seems to be to turn Tamarin into a multi-scripting-language runtime so rather than writing JS in web pages they developer could write python or ruby code…

He also mentioned that Server Side Javascript is experiencing something of a resurgence with some web application developers using Helma (as an web app dev framework) and Phobos.  Also mentioned other applications (not web apps) using SpiderMonkey and Rhino (their Java based JS runtime).  Rhino will apparently soon support JS 1.7 and he mentioned the idea of bringing the page DOM into the server (whatever that means!!!)

“Lessons Learned from Launching Web Apps”  – Kevin Rose

Kevin gave an entertaining talk on the ins and outs of launching 3 startups in 4 years (Digg, Pownce and ???).  There really wasn’t anything revealing in his talk, though he did express some regret over how Digg handled the whole HD-DVD key DCMA C&D notice and their subsequent u turn because of the community reaction.  He mentioned that he’d recommend better visibility to the user community whenever handling issues like this in the future, referring the community to ChillingEffect to help the community understand why they sometimes have to take content down.

Diggnation – LIVE

Wednesday evening saw the live shooting of an episode of Diggnation, in front of an absolutely packed hall of well over 500 geeks, most with free drink on board – apparently quite a few people came out to the ExCeL center just to watch this and it proved to be their biggest live audience ever. Alex and Kevin got suitably drunk while presenting – in fact they may have been drunk before they even got on stage!  I’m not sure it’ll all make it onto their site unedited as some of the discussion would probably prove offensive to some but it is definitely one to keep an eye out for, even if you don’t watch Diggnation regularly.  The buildup and reaction from the crowd was, to put in their terms, ‘awesome’.  Those guys have a cult-ish fanbase though I don’t think I ‘get it’ but it was certainly an experience watching the crowd, some of whom were waving their arms in the air while holding their open MacBooks!   

 

That was followed by the ‘Carsonified‘ party in the local bar, hosted by Ryan to promote the rebranding of Carson Systems as ‘Carsonified’.  That ended up going on until the wee hours.

Thursday

Web Apps Dos and Don’ts – Leah Culver, Pownce

Leah just did a quick overview of getting Pownce up and running with a small team (4-5 people).  She mentioned that they were always ’self funding’ and only spend in the ‘tens of thousands’ in completing the initial site using Python & Django.  She did make references to the emerging O-Auth standard, sounds like they will be using it.

The Story Behind the Facebook Platform – Dave Morin (Platform Manager @ Facebook)

Dave gave a pretty high level overview of the platform, reiterating that Facebook view themselves as a utility/technology company – very Google sounding!  Some interesting stats:

  • 60 billion page views per month
  • 50% daily return rate for users (phenomenal)
  • 1500 page views per user per month
  • 80% of users have added at least 1 application

Some tough questions from the audience at the end of the talk that he couldn’t really give straight answers to

  • Can Facebook do anything to stop the big FB app vendors from cloning apps developed by others that appear to be gaining traction? Answer was they would continue to innovate.
  • Would Facebook ever allow application vendors to ask the user for permission to get details from their profile?  The use case was for billing/shipping if the FB user has just bought something in the application. Answer was they would continue to innovate.
  • No details on how Facebook scaled their system so quickly (‘We have a lot of servers’)
  • No details on the future.  Ironically Dave actually said they don’t like talking about the future (which kind of left me wondering why he was talking at the Future of Web Apps conference!)

Short on Cycles, Long on Storage – Simon Wardley

Brilliant presentation by Simon on “Competitive Utility Markets” and how utility computing may move in that direction as barriers to switching utilities are slowly removed (through efforts like OVF – Open VM Format).  Simon got through what looked like several hundred slides while talking (I’m not kidding!).  Best slide deck at the show, by a mile!

Practical Semantic Web – Jon Aizen & Eran Shir, Dapper

This was primarily a talk on how the web is evolving towards a rich semantic web through use of Feeds (with GData, GeoData extensions), REST, Ajax and Microformats.  Their focus was on Dapper, calling it a “user generated semantic web”.  Interesting talk, there were some skeptics in the audience at the end that voiced concerns about how fragile Dapper might be (if the HTML pages it is pulls content from change structure)

Smart Web App Integration With Third Party Sites & Services – Matt Biddulph, Dopplr

The popular travel site Dopplr is built using Ruby On Rails.  Matt covered 5 areas he felt were worth talking about

  1. Matts aim is that users should be able to get their data without using the site so he placed heavy emphasis on producing a rich RSS feed for each user, with embedded GData (+ hCalendar microformat) calendar data, GeoRSS cordinates etc.
  2. User Identity.  He covered the current ‘issue’ of verifying identify when trying to match identities from different social sites.  He mentioned that he is using Mofo and hpricot to do screen scraping when absolutely necessary to try match the users friends from various social network sites.  He has opensourced his code at as he figured others would go through the same pain.  He also mentioned that Dopplr will support OpenID (multiple per account in fact)
  3. Delegate Authority.  Another one of the ‘current issues’ is how to manage delegating authority to another site.  The big players all have their own APIs for this – Yahoo! BBAuth, Google AuthSub, Flickr Auth, AOL OpenAuth etc).  He’s looking forward to O-Auth
  4. Widgets.  Matt demoed a few Doppler widgets – a facebook application that he did in a day and some web page sidebar widgets.
  5. Utility Computing. Although not using them in production yet he could see the value in using EC2 for hosting his apps, and plans to do so – I think he mentioned they had it ‘in the lab’.

An Insight into FireEagle – Tom Coates, Yahoo!

FireEagle is a code name for a geo tagging platform that yahoo will shortly be making available via lots of free APIs.  The general idea is to provide a single place for various devices to report your geo location via APIs (cell phones s cell ids, GMS units reporting lat/long coordinates etc).  Then 3rd party applications can be built to use this data in interesting ways – route finding, social networking etc, all controlled by delegated authorization via the FireEagle web UI by the user.  Obviously here are all sorts of privacy concerns surrounding this so Tom went through how they plan to help with some of the potential issues:

  • Allowing the user to view and expunge all data – logs etc
  • Potentially using wasabi-type encryption within FireEagle so that even Yahoo! employees couldn’t misuse the data
  • A “Hide Me!’ control
  • A “Private Places” feature that allows the user to mark regions within which the FireEagle platform should not collect any geo data from their devices (even if it is reported by the users devices)
  • Periodic checks with the user (via email) to make sure they havn’t forgotten they have enabled the service

Launch Late to Iterate Often – Dick Costolo, Feedburner

Unfortunately Dick only had 1/2 hour for his talk which was a shame as he was delivering a great pep talk on how to plan for the first year or two of a startups existance.  Some notes that I gathered (he was going very fast!)

  • Dealing with VCs who ask the “why won’t google/MS eat your lunch?’ question with a response that focusses on speed, flexibility, agility and single minded focus of small startup company
  • Don’t hire sales/marketing/bus dev folks too soon.   They’ll want something to sell/market/develop which will interrupt the critical early development iterations
  • Don’t rush out a v1.0 in order to get ’something’ out to market.  He highlighted that doing so only forces you to maintain that version (and its customer base) while trying to fix it and devlop the features that should have been in the 1.0.  Better to wait…
  • Providing APIs allows the market to tell you what business model your company should have.  Don’t procrastinate on developing pricing plans too early, go with something simple/free and change it later.  Good APIs also create barriers to entry for later competitors.
  • Be competitive on your own merits, not on how bad the competition is.  Customers like this, projects a better image from the company.
  • Make sure your website has a bit of personality, a voice.  Helps user relax a bit when using it.  Mentioned the silly “Here are your dripping wet feeds” type banner that appear in feedburner pages.
  • Don’t kid yourself when developing revenue plans.
  • Don’t worry about exit strategy – the market ultimately controls this, not you.
  • VC Term Sheets – Study the lingo, don’t accept ’standard’ vc term sheets as they don’t really exist.

All in all, very sound advice.

Wrap Up Panel Discussion

The final panel was a low key affair, i suspect because many of the delegates were dripping away – it was past 6pm.

aehso fowa, future, london, web2.0

Brad Fitzpatrick’s Social Graph Problem.

August 22nd, 2007

Ronan pointed me to an interesting Wired blog entry on Brad Fitzpatrick’s social graph problem. The social graph problem requires many of solutions that Dion’s Dream River needs so I was going to just comment that it will take a long time for any of this to happen (thankfully Brads essay openly calls this out).

Then I read that Brad might be joining Google. So I’ve changed my comment to “it might happen just a little bit sooner”.  This is just the type of problem that the folks at Google love to try solve…

aehso api, facebook, internet, openid, social, web2.0

Web2Ireland Week DemoBar.

August 22nd, 2007

It looks like Web2Ireland Week will now also be hosting the previously mentioned FOWA Dublin road trip alongside their Web2Ireland DemoBar event at Ely HQ (on Hanover Quay).

It’ll be a busy evening!

aehso ireland, web2.0

Going To MashupCamp Dublin & FOWA London.

August 17th, 2007

Not too often an unconference like this arrives on my doorstep so I’m heading to MashupCamp Dublin in Trinity College on Sept 12-13th.

Coincidently, FOWA Dublin is happening on the evening of the 13th so I’ll pop into that too as I am off to FOWA London in October. They have an amazing lineup, as ever…

Update: Here’s the FOWA Dublin Event Page for all you Facebook users…

aehso dublin, fowa, ireland, mashupcamp, trinity, web2.0

Dion’s Dream River

July 29th, 2007

Now that I’ve been using Facebook, LinkedIn and Twitter for a while I’m beginning to notice fragmentation of my contact network and event streams.  The problem goes a little deeper than “should I twitter this or/and update my FB status?” or “should I add her as a friend in Facebook or LinkedIn?”. 

Then there is also network replication to deal with – I’m getting multiple friend invites for the same people, many of whom are already in my (private) contacts list.  Don’t get me wrong, I like connecting with people!  I’m just finding myself wishing that there was a better mechanism through which all this stuff can be synchronized though.  It turns out Dion Almer is finding himself dreaming up a solution he calls The River:

In the dream I developed an application called “The River” that was a filthy rich UI that showed your one main river of events, and various rivers that would run into the main one. The river would contain: Incoming email, Status events from fb, twitter, pownce, Cool.Next, Event invites, Blog entries via rss, Photos uploaded, etc.

Dion adds a nice kicker when he suggests the following feature:

When a user signs up, they are asked for their FB/gmail/linkedin id to find people / invite them. Most services do that right now. However, there is an extra check box which states “if you see me connected on another network, automatically connect me here”. This means that you don’t have to keep accepting friend invites from the same people again and again. You should virally, quite quickly, get all of your contacts sync’d up.

I think this is an excellent suggestion but I’d take it one step further.  The River needs to do this continuously, effectively acting as an intelligent agent.  Unfortunately there are two major barriers to this ever happening:

  • The agent needs to be able to verify user identities.  For example it needs to be sure that the John O’Shea in your network is me, not the footballer, the filmmaker or the humanitarian.  I can and do play football, shoot home movies and donate to charities but I’m not those people.  One problem here is none of the major social networks support associating an OpenID with a user profile so by consequence none have the required APIs.  A second problem is not many people have OpenIDs yet (that reminds me…)
  • The agent needs read/write  to the users contacts and event streams within each social network.  Read can be done via RSS feeds, but write needs HTTP API access.  Of the networks I mentioned above, Facebook(api) and Twitter(api) provide this LinkedIn doesn’t (yet – they are working on APIs though).  The walled garden social network sites like MySpace and Bebo really won’t want to ever provide this.

If OpenID gains more momentum then I think all of the above is do-able.  I am of course ignoring the walled garden networks but over time they will seem more and more antiquated to their users and their influence will diminish.

This is, of course, all an extension of the older problem of synchronizing contact information between multiple email accounts and mobile phones and that nut still isn’t completely cracked.  iSync solved this to an extent but it (still) doesn’t have any decent Google mail/calendar integration. (I’ve tried ABGMerge but it created a mess to the extent that I had to revert to backups. This is becoming a real pain for me as I ditched my .mac subscription last year and I’m mainly using gmail now – suggestions welcome!)

Meanwhile something is going to have to give, and I think the first service I’ll drop is Twitter…

aehso api, facebook, mac, openid, social, web2.0

Joined Nooked.

July 27th, 2007

I have been quiet haven’t I!  The recent blogging hiatus was for two very good reasons though – I went on vacation to the US with Aine (hi sis!) and since getting back I’ve been up in Sligo meeting the good folks at Nooked whom I’m joining as their new CTO. 

Exciting times ahead, Nooked already have great products but they also have the vision and plans to deliver a truly disruptive feed commerce platform – more on that later.

This is going to be great!

aehso atom, nooked, rss, web2.0

Annotating a trail of web pages with Trailfire.

June 21st, 2007

If you regularly need to cite sets of web pages (URLs) and annotate them with references (perhaps to ask questions or offer opinions) then you should check out Trailfire. It allows you to create a single URL that leads the reader to a subsequent set of pages, each annotated with balloon text with your comments.

No need for screenshots, here’s a trail I just created about Web Service API Keys that spans Amazon, Flickr, Google and Facebook API signup pages. Trailfire also host a trail view/summary page for each trail.

I created the above using their Firefox extension in just a minute – quite nifty! A small UI usability suggestion for the Trailfire folks though – don’t automatically add buttons to the main Firefox navigation bar by default! That is sacred screen real estate that people don’t want to have to clean it up after installing an extension. This also applies for the del.icio.us extension folks by the way! A dedicated Trailfire toolbar that I can hide the 99% of the time that I’m not building trails would be far more appropriate.

aehso firefox, internet, web2.0

Babelgum Public Beta now open.

June 5th, 2007

Hot on the heels of Joost, Dublin based Babelgum have opened their public beta.  They are imposing a daily download limit at the moment though.  Content owners can go here to find out why they’d want to use Bablegum to distribute video content.

Initial impressions are good, the fullscreen UI employing floating transparent dialogs and widget panels that are all the rage these days.  Picture quality is excellent and they have some decent original material like Jesus Children Of America.

Let the content race begin…

Update: I forgot to also give a shout out to Democracy 0.9.6 – it is their last version before changing name to Miro.

aehso content, internet, media, p2p, web2.0