Category Archives: Mashup

Social Graph Platform Wars

Borrowed this from Dave McClure of 500 hats. Originally saw this at GSP and thought it was worth sharing. Things are starting to get messy huh?

Social Graph Platform Wars

CodeMash day 1 wrap-up

As i put close to day 1 of CodeMash, I’m certainly glad I made the trip.  I’ve met lots of very smart guys (and girls) and, I may have said this before, but its great to see such a vibrant community of vendor agnostic, language neutral people getting together – ok the ruby guys do seem to somewhat dominate conversations, but everyone here seems to have legitimate, genuine interest in promoting the community, for the sake of technology and beaking down barriers.  It’s now cool again to be a .net developer (not that I ever thought it wasnt) as people from all backgrounds are mixing and “mashing” their favorite flavor, based on their assessment of what the right technology to use is, which to me is huge.  We’ve long known every application/requirement is different, yet many shops (admittingly ours to some degree) default to an existing language, partially due to comfort, partially due to standards, but also partially due to lack of knowledge about alternatives.  This conference aims to change that, atleast the last one.  Here, everyone is treated equally and encouraged to experiment with something new, seek best practices (e.g. AGILE), and get informed!  Its a very non-threatening environment with something for everyone.

In the past, at other conferences, you were an outcast if you were a microsoft (or java) guy trying to talk about edge technologies, or more specifically, dynamic languages.  The open-source advocates on “the coasts” tend to shy away from .net/java, my guess is primarily because the reps attending the conferences (which, respectfully very smart cats) aren’t working on large enterprise class applications, such as financial banking systems, SAP, PeopleSoft or manufactoring supply chain – which are the challenges facing most of us MidWesterners.  That said, the “coasts” also tend to have access to more innovate businesses models, whether its the latestest web 2.0 application featured on TechCrunch, digg or just the latest widget from Google, Yahoo or AOL.  Yet, that doesnt mean there isnt a time and place for .net/java – or more specifically, their respective platforms.

Either way, these “un-conference” style events is clearly gaining momentum. I did find it almost shocking at dinner, where I had the liberty of sitting with several of the conference organizers (Dianne Marsh, Bruce Eckel, Bill Wagner & Dick Wall to name a few) that they were not familiar with some of the other “un-conferences” i have attended the past couple years.  They are nearly identical, however with all due respect to the others, I believe CodeMash does raise the bar, the conference has a very polished feel, yet NOT AT ALL stuffy, dull or unproductive.  It’s very much designed by devs for devs, with minimal if any corporate koolaid.  I would like to see more energy around Open Spaces, while available, i dont know that the midwest is familiar with this format yet, as to-date most conference attendees are used to paying big ticket prices and having formal tracks or session paths – Open Spaces builds on the community appeal, turning the focus to attendess (with content actually provided by attendees).  Am sure it will continue to get more popular as people become familiar with it, and everyone realizes they have the opportunity to customize the event into something that is potentially more meaningful for them.  That said, i personally do enjoy some sense of structure and pre-canned sessions, particularly from the industry vets here. 

Lots of great stuff in day 1, my only regret is that I wasnt able to attend all the sessions i wanted, as some overlap existed and I tend to want to learn more than one should in a given day.  Time to recharge the batteries for day two, physically and mentally.

CodeMash v2.0.0.8 – on the map!

I arrived at CodeMash Wednesday eve, after a short drive from Michigan (about 2 hours!).  Kalahari is a pretty nice place for a conference.  Sure, its got tons to offer families/kids, but as an attendee, the location is a nice change as compared to hotels and more formal convention centers.  I’m here for a couple of reasons, firstly to support the local DEV community, can’t tell you how happy I am to see this take place in the MidWest.  Equally important, as the CIO I’m scouting for talent.  We’ve struggled to find good devs in Michigan, people really passionate about technology, able and willing to push the envelope forward.  Lastly, I’m hear to learn!  I do my best to keep abreast of emerging technologies, but in my daily life I rarely have the time to dive as deep as i’d like, so I hope to take this opportunity to learn from some of the guys that are making this happen (right here in our backyeard) – specifically with regard to AGILE!  

First things first, my initial impressions for CodeMash are awesome.  I under-estimated the volume of midWest developers actually involved in the latest iteration of “web 2.0” technologies (i.e. ruby, groovy, RIA, etc.)  They are expecting just over 300 developers this year, up 40% from last year!  Also cool is the mix of backgrounds here, all the major camps are represented, msft (.net) , sun (java) , ibm, adobe, plus rails, python, php, and lots more.  Its certainly a change from a few years ago where you aligned yourself with one or the other (and typically spoked negatively toward those not as cool as you).  To me, its very refreshing.  An early theme I’ve already observed is advocating for platform standardization, yet choosing your favorite flavor (language) based on the task/user requirements.  Am guessing Neal Ford will dive deeper into that tomorrow at the keynote.  pretty cool stuff.

Actually funny to me, is in the Conference Guide they acknowledge – “Why should the East and West coast have all the fun” – my thoughts exactly!  I’ve attended several “mashup” conferences over the past couple years, and yes, they’ve always been on the coasts, boston and/or the SF bay area.  A couple quick observations, firstly the format is slightly different, but more on that later.  Initially, (as expected I suppose) the coasts are represented by more “open source” folks, lots of php, mysql, ruby… almost no .net or java reps.  Also, (as expected) more participation by Google, Yahoo, AOL – here it’s slightly different, equally exciting, but a wider array of technologies (and big corproate sponsors).  Which is just fine for me, the coasts are always going to push he latest and greatest – lets face it, thats where most the innovation occurs, but not to be outdone, the midwest, with CodeMash, has provided a fantastic venue in our backyard to get exposure to edge technologies. 

well, out of time – off to the pre-conference session.  more soon.  I’ll do my best to summarize the sessions I attend for the folks back home and post some pictures over at Flickr (http://www.flickr.com/photos/22676788@N03/2182664921/in/set-72157603681472550/) when i get a chance.

Drinking the M$FT juice – using Agile!?

Like most 30-something techies, I grew up with Microsoft.  I earned my stripes in the NT 3.5 days, moving from token ring to ethernet and installing/creating drivers the old fashioned way.  Those days are gone, thank god.  Today I hang my hat in a more developer-centric capacity.  In late 2005 we moved to Visual Studio Team System (VSTS) and Team Foundation Sever (TFS).  First, let me say TFS/VSTS offers vast improvements to the old visual interdev/source safe days – namely, it works.

VSTS (Team Edition) offers distinct “roles” representing the contributors on a typical development team, project management, dev’s, testers, db folks, etc.  We got exposure to the suite using a go-live license late in beta.  We had a large project which required our team to ramp up to about 15 DEVs for about 9 months with quite a few being overseas.  We immediately put VSTS through the wringer, and I’m happy to say looking back, I believe we made a good choice.  VS has long been known for its rich IDE and its latest iteration (vs2008) can now even target multiple .net frameworks (back to 2.0) and even has javascript debugging, which is a first for me. 

Fast forward to today – we’ve now moving forward with TFS 2008 and I’m very anxious to put it’s MSF for Agile stuff to the test.  Next week I’ll be attending CodeMash (my first) which looks to be a great event covering several items on my current “to do” list, namely AGILE!  Our DEV team has loosely followed an Agile-like approach (meaning not waterfall, with short interations) however, I’m excited to now take it to the next level implementing a more formal adoption, from project management through TDD & CI. 

The challenge now becomes embracing Agile using our current VSTS/TFS investment (which hasnt been small.)  It’s all there on the surface; code-coverage, automated testing, stress/load testing, automated builds – but, part of what I’m looking to get out of CodeMash is some REAL WORLD exposure.  Now, its safe to assume, M$FT isn’t going to necessarily provide the best tools for Agile purests – but my hopes are they’ll get us a step closer to supporting (and promoting) what I have come to believe is the right direction for our development efforts .

Our team is currently small, some say thats good.  However pair-programming may become a challenge for us, and I’m still interested to evaluate if TDD becomes a 100% requirement?  Needless to say, I’ve got more questions than answers – but I’m hopeful to get some assumptions validated next week @ CodeMash.  Hopefully I’ll see you there!

CodeMash here I come!

I was recently turned on to a local conference called codeMash – taking place in Ohio which I’m actually pretty excited about.  I met a couple of Agile guys (Nayan & Patrick) through our product manager, doug – whom told me about the conference.  I do my best to stay abreast of tech conferences, especially the latest “mash” formats, including attending several of the past mashup Camps

At most of the “mashup” conferences I’ve attended to date have been very open-source friendly, with almost no representation by the microsoft or sun/java communities, so this will be a first for me with actual sessions covering each of the respective offerings.  Plus, as per usual lots of ruby and am sure php/my sql.  Needless to say, I’m pumped to attend.  Am really interested to take away some AGILE knowledge, sounds like a great group of guys attending and aptly timed with some inhouse Agile-inroads we intend to be making with our development team.  More on that later. 

If you happen to be making the trip, be sure to stop by and say hi.

Site: http://codemash.org
Google Group: http://groups.google.com/group/codemash �
CodeMash – I'll be there!

Mashups Dymystified

I get asked occasionally “what is a mashup?”  This is typically after a “what is web 2.0” conversation, and similarly, it can be interpreted differently by different people.  Sure, maybe there are no right or wrong definitions, it is still an emerging concept, but being the purist that I am, I’ll attempt to define a mashup the most technically sound, business applicable way.

Before I get into some technical examples of a mashup, perhaps I can describe it contextually in a way many people will understand, reminiscent of another term of long ago – “portal.”  A mashup essentially represents several distinct views (technologies/pages/services/what-have-you) combined into a single application presenting data in a new way.  Put another way, it “mashs up” several disparate services into a new, more meaningful service.  This new service may be more productive, a single repository of information, or just extensions of a service which intend to leverage someone’s expertise.

A couple good examples can be found over at mashupCamp where developers come together to showcase their use of or offerings of mashups, which can also be considered APIs and even SDKs.

Ok, great, so you understand what a mashup IS, but what is the business model behind them?  Well, many at this stage don’t have one.  They effectively serve as a developers playground, enabling rich functionality with nominal effort.  Mashups today serve the ‘bleeding edge’ developer community.  No mashups aren’t just about AJAX, but they share similar tendencies in that most of the underlying technology has been around for awhile, just not exploited, or made readily available as it has become today.

So it stands, everything old is new again!  What the “portal” (arguably) failed to deliver upon last time around is back again, this time under the guise of mashup.  So what makes it more compelling this time around?  Well, a couple of things.  Firstly, unlike last time, you don’t need to robust platform with intrinsic support between vendors.  You don’t need complicated interfaces, in fact you don’t even really need to be a good programmer!  The real kicker now is the simplicity; consistent with other web 2.0 tendencies, user-generated content and rapid, low-cost development makes it sexy.  Creating a mashup of flickr, youtube & google maps can be done in literally hours with your favorite [programming] language of choice.

Ok, so its easy to use.  Why is it going to stick around this time?  First off, who knows if it will ever hit critical mass, however, based on the patterns of the previous few years it wouldn’t surprise me to see some successful services emerge collaborating content from several sources.  The principals are fairly sound, you do what you do good at and I’ll stick to doing what I’m good at and lets just agree to play nice together.  Here’s where things start to get interesting.  Everything is fine and dandy when your “borrowing” content and nobody is really noticing (hence your little site isn’t yet obtaining 10K new customers each day).  However, if/when you do happen to draw some attention, maybe even make some money, that is when things start to get muddy.  We’re already seeing this kind of activity within mySpace, content providers are making it so easy to consume their services and embed it into other sites that the hosts actually have to block, stop or restrict access.  This isn’t always easy.  Remember a while back when PayPal infiltrated eBay?  Here we go again.  On the other side of the fence you have intellectual property protection.  Who owns what, who has rights, permissions, authority not to mention who gets compensated or royalties.  This is just tip of the iceberg.

Take the simplicity, power and flexibility of mashups (glorified APIs) derive something new and you may have yourself a potentially valuable website.  What if I said you could (with several readily available tools), consume data (content, feeds, articles, etc) from what are considered restricted sites – either those you protect behind a login or those that may require payment for access – combine it all together and make it available for free to other users?  Sounds scary huh?  It is, and its being done everyday.  With one valid user account, a program can be written to infiltrate your “secure” data, pull it out of your site, repackage it and offer it up to a whole new audience.  Yep, its probably illegal, but until it gets mainstream attention its not exactly being discouraged, hell, most businesses don’t even realize its happening.

Mashups to me, really represent a new paradigm for the web.  This hodgepodge of technologies, vendors, services, platforms, tools, acronyms and yes, even expectations is exactly what we aimed to solve several years ago with STANDARDS.  Back when Netscape was battling with IE, EDI became XML and interoperability, cross-platform compliant software was all the rage – technology shops finally wised up and said, hey its in everyone’s best interest for us to all get along.  Standards bodies then drafted guidelines for HTML, CSS, XSL and the major vendors started playing nice, applications could talk to one another consistently, we didn’t have multiple instances supporting different platforms and we could all live happily ever after.  Well, at least we thought.  Mashups represent the wild-west again, rouge developers deploying new technologies without due diligence, with (in our defense) for the better of the “community” – let users decide what they want we cry.  Let the markets work in other words. 

Its clear to say the jury is still out on what exactly mashups represent, it does however offer suggestions that with every step forward, we must take a step back.  Every advancement (even web 2.0) comes with some baggage.  Making technology so easy to use/deploy its bound to fall into the hands of those less disciplined, less  knowledgeable as to how things “should work” and frankly, surface others with malicious intent.   As of now, its up to us to self-regulate ourselves, as the tools have become so powerful there’s no simple “easy button” to protect ourselves.  Knowledge is key.

On the positive side mashups can represent significant breakthroughs.  Innovative companies can now interact with sites/services they never before could.  If a site doesn’t offer an API, no problem we’ll create one for them.  This is a practice formerly referred to as screen-scraping and its becoming easier to do and you no longer have to roll your own.  Literally any standard HTML can be “lifted” from site A, tunneled to site B and repurposed.  Some tools harvest by CSS tags, others use micro formats – whatever the flavor, it’s the newest technique to interact with remote sites/services.  The reverse is also true, if you have data you can programmatically inject it into remote sites, now I’m not talking maliciously or sql injection here, but rather remote form submissions, such as a login.  One simple application I saw demonstrated how a developer liked a girl on facebook, however her status was not “single”.  So he wrote an application that would programmatically log into facebook, scan her profile and alert him when her status changed!  Just think about the power this represents!  Monitor your competitors, incorporate new business workflows, review sale prices of your next plasma tv – the uses are only limited by your imagination!

Billhighway – from Technorati WTF

I recently wrote a WTF about Billhighway over at Technorati, which showcases Where’s The Fire (WTF) communications.  After getting some inital feedback, I thought I’d post it again here for the archives.  enjoy.

While flying well below the radar for the past few years, billhighway has been investing heavily in a community-oriented payments platform.  The “platform” has been built upon an SOA and GRID architecture, which is theoretically infinitely-scalable.  Having recruited experts in the emerging payments space, billhighway is well positioned to serve the needs of today’s finance 2.0 audience.

With no formal marketing effort, this boutique payments provider has quietly amassed over 500k members!  Its “platform” is resident in several commercial offerings; namely billhighway.com, billhighway.net and billhighway.org – which the company intends to showcase the power of its “platform” by serving several unique, yet demanding audiences.

Billhighway emerged as a leader in shared bills back in 1999, with its then APH for Roommates service (which has since been re-mastered as billhighway.net.)  Billhighway has had the luxury of refining its services and online presence for some time now.  Its flagship product, formerly known as APH for Chapters, is a well established financial system for managing distributed offices, chapters or business units – namely in the nonprofit sector.  Large organizations, regional offices, junior leagues,  property management firms, condo associations, and alumni groups are using the system to streamline finances using Business Process Outsourcing (BPO) techniques, allowing a central, consolidated system to bridge operations from local member-levels all the way up to the executive offices.  Everything from budgeting to membership management, invoicing to collections, even real-time financial statements, payroll integration and tax preparation, not to mention a full general ledger package exists to optimize  various requirements of financial transactions within an organization;  or it can be scaled down to accommodate simple cash management services for a single local chapter/association or office.  Billhighway is essentially a layer of software that sits on top of a bank to offer more flexible financial solutions, catering to community-based organizations and individuals alike.  Think salesforce.com for financials.

Most recently, Billhighway extended its platform in a consumer flavor, available at billhighway.net.  Here the emphasis is on the individual, whereas he or she is managing adhoc finances within various friendship circles that they may participate in, referred to as “crowds”.  While services available at billhighway.com & billhighway.org cater to the “organization”, therefore managing finances on behalf of an entity, billhighway.net empowers us, the end-users.  The intent is to make informal debts more manageable and most notably to address real-world challenges we may face each day.  For instance, collecting money from a group for a vacation, chipping in for a gift at the office, reimbursing a friend for lunch/dinner or planning a group outing, such as a golf trip – these things can now be managed with ease, from contact and event management – all the way to the physical collection of money, all done rather seamlessly online.

The real power of billhighway is in its transparency.  It currently serves a diverse audience, each with its own perception of what “billhighway” is.  While its true, many unique uses exists, they do however all share one common thread – a native payments platform.  That means no clunky bank software, no pay pal accounts – just plain old unadulterated online payments, which translates to flexibility!  Enabling such dynamic services on top of a single “platform” enables our teams to concentrate on extending features and functionality instead of re-engineering business processes and constantly addressing scalability concerns.  The eventual offering of an API will bring billhighway to the masses.  Companies, websites, and even hobbyists will soon be able to derive new revenue models due to the financial flexibility resident in our platform.  Split bills, partial payments, over-payment management, stored value, royalty and referral compensation programs – all take on new meaning.  Website owners can mashup services now tying in payments, whether macro or micro, and bestow a whole new level of service (or perceived value) to their customers.  Consider myspace, facebook or youtube users easily monetizing their content.  Content providers can soon incrementally charge for varying levels of service/access or divide a single payment between several parties.  The notion itself may represent a watershed type event permitting things currently not perceived as possible.  Think eventful.com wanted, where members contribute money to sponsor their favorite band at a local venue, athletic teams gathering money for jerseys/trips or contributing to your favorite fund-raising events – all can be modernized to simplify management and begin collecting money online.  The limits are seemingly endless.  And yes, of course, the patent process is well established.

The future is bright for Billhighway.  I encourage you to become more familiar with them, either for managing membership within your organization, helping with personal finances among your crowd(s) or as a website proprietor  – there’s truly something for everyone.

To reach Billhighway, visit http://www.billhighway.com/; email us at info@billhighway.com or call us direct at 866-BILLHWY.  Cheers.

MashupCamp 3 @ MIT

Coming off the heels of , was even more impressive. The [un]conference moved down to the Hotel @ and pretty much took over the 3rd floor, containing 8 or so conference rooms. For those of you that haven’t attended a , as this was my first, I greatly welcomed the format.

At 9:30am, aprox. 200 developers, evangelists and even a few VCs packed into the welcome room. After a few announcements, and two key principals (below), we began selection of topics to be covered in the several conference rooms. It essentially starts with volunteers, those proposing topics come to the front, give a quick blurb about the intent of the conversation and gage audience interest, assuming there is, a time slot in one of the conference rooms is reserved and the topic is slated. This continues until all slots/conference rooms are booked. The range of topics include technology tools/platforms/vendors to tutorials, demos and even philisophical modeling of virtual currencies.

The two core tenents of the conference are:

  • Law of two feet

– If you are not learning or contributing it is your resposibility to respectfully go somewhere you can learn or contribute

  • Principals:

– those who are in the room are the right people

– what ever happens is the only thing that could

– when ever it starts is the right time

– when ever its over its over

– Oh, and document on the wiki.

Next, we began attending the sessions of our choice, a few of which i sat through entirely, others, i excercised my vote by walking into another room as my input (or interest rather) had expired. After lunch is where the real fun began, speedgeeking. works just like it sounds, mashup developers and vendors have 5 minutes to persuade on-lookers they’ve built the most compelling mashup. Each developer gets one vote – the coveted wooden nickel. You give your wooden nickel to the developer of the mashup of your choice, the dev with the most wooden nickels wins. – Sponsors supply swag to the winner(s), and its actually some pretty cool stuff, such as a dual-core laptop to the winner, along with other various prizes for top placement.

Aside from the great conversations, presentations, and demos – i managed to learn a few things. Most notably were some emerging technologies. I met many talented developers from all facets of the web; , , , , , , , , , – you name it. Notice i didnt say or ? 70% of the devs sported and I was anxious to see these tools/technologies in action and they were quick to offer some insight. Probably the most impressive to me was . For a quick tutorial showcasing the power and dynamic nature of ruby and why its playing such an active role in this arena check out: Creating a weblog in 15 minutes.

Special thanks to Frank, , , , , , , and of course . And without further ado, here’s todays [mashup] links of interest:

In summary, I found to be a great success. Having not attended others I had no basis for comparison, however the format was refreshing, ideas and conversation stimulating and overall I not only learned a few things, but equally important made some new friends. I, along with several others, built my first mashup there and will now begin my preperations go make a run at the 2008 mashup competition. hope to see you there!

Mashup University @ MIT!

Well, my first came to a close today, not without resisting the urge to rollup my sleeves and sling some code competing in the . While, overall I ejoyed the [un]conference, attendance did appeare to suffer abit from a cold snap that hit Boston the first day. Mashup University is an extension to , (which I’ll be writing about soon) whereas API providers/vendors provide classroom style instruction to developers. The format was good, as this was my first Mashup event, i was a little unsure what to expect. These first two days covered presentations from MIT, AOL, Microsoft, Adobe, Sun, AutoDesk, as well as eventful.com, lignup.com, and kapow technologies.

As I expected, the majority of mashups concentrated on maps, as they’re bar-none the easiest to mash. I confirmed this observation by writing several [map] mashups myself while listening to the speakers. I must admit, while not having created an offical “mashup” prior to the conference, i was shocked at how easily the map providers have made it. , and have each made their APIs extremely easy to use/consume, each with good documentation, samples and cross-platform support. AutoDesk also deserves a nod, however, their implementation appeared slightly more complicated.

I found several of the presentations both interesting and educational, being a moderate follower of mashups to date. While the concept of APIs have obviously been around a while, mashups present a new opportunity. While most “mashups” still lack true real-world value, the excitement within the community is sure to continue to push the envelope until more developers take notice. Each year Mashup Camp holds a competition for the best mashup, vote upon by the attendees, and it appears this years contenders have set out to test new waters moving away from the traditional geolocation or spatial data rendering. More on that soon.

A few quick notes on the presentors, firstly, i thought did a great job to get things kicked off. He touched briefly on the machup tenents, XML, JSON, YAML, SOAP, XML-RPC, REST, AJAX and of course RSS. He went on to discuss some of the pain points, which included:

  • – API Abuse/Metering
  • – API Versioning
  • – IP Copyright
  • – Reliability& TOS
  • – Monetization
  • – Privacy/Security

John then finished up with his take on the future of mashups, which included: mobile mashups, more AI, increased use of microformats and openID. The guys over at had an intersting demo in the converged communications space, with several APIs available for immediate use. also offered some details of their and showcased their new “By Eventful Demand” feature that looks quite promising.

Another interested presentation was by Adobe, which featured their and Apollo technologies. The highlight of the show, in my opinion however, was . Open Kapow offers a tool called RoboMaker, which is a visual scripting tool that allows for an easy point and click interface to mashup anything on the web that has a URL. Seriously. Andreas Krohn did a great, fully functional demo, wrapping an around whois.org – not-scraping, but actually programmatically interfacing with the website that had no public API. The toolkit looks almost infinantly extendable and in my humble opinion just upped the mashability ante. It essentially makes any site/service mashable and in his words makes “HTML the worlds most common API”!

Whew, lots of new stuff in just two [long] days. I myself thouroughly enjoyed the [un]conference, specifically the people, it was a pleasure meeting and learning from the many talented developers and their technologies of choice. One of the coolest aspects is that the conference almost intentionally represents an open-source type community, while sure there were .net and java folks there, they didnt dominate discussions, in fact quite the opposite. I had an opportunity to conversate with fluent , , , – even connousouers. The event helped introduce me to some new things and I look forward to the next couple days.

For those of you just getting started with mashups, or APIs for that matter, here are a few links to get you started: