Web Mash-ups and Patchwork Prototyping: User-driven technological innovation with Web 2.0 and Open Source Software