facebook connect – Stay N Alive

The Next "Facebook Platform" for the Modern Web, and Why Twitter’s Running the Wrong Way

I’ve talked previously about “the web with no login button”, a vision of the Building Block Web that follows the user where they go, knowing who they are and adapting as they move.  With the advent of mobile, entire operating systems running on the browser, cloud-based personal information stores and APIs such as Kynetx to manage both user and application data for the user, we are so close to being where we want to be!  There’s one hurdle we have to jump before we get there though, and I’m concerned Twitter just ran the wrong direction with their new UI.  The hurdle we’ve got to get around is that of allowing a user’s social connections to also follow them wherever they go, uninhibited by any single corporation.  Not a single big player seems willing to take this step yet, but when it happens, I guarantee you’ll see a revolution at the scale of when Facebook Platform launched in 2007.  The first person to do it gets the opportunity to lead the pack, and hundreds of millions will follow.

I mentioned earlier on Twitter that something about Twitter’s new UI (which I’ve actually only seen screenshots and demos of since I’m not on their Press list) really bugged me but I couldn’t put my finger on it.  Perhaps it was hearing Ev emphasize “yet” when talking about CoTweet-like functionality. Perhaps it was hearing Jason Goldman talk about improving their “following” interface to something that I think could potentially threaten some of what I’m doing with my business.  Perhaps it’s the feature they just asked me to kill on SocialToo that I haven’t announced yet.  Perhaps it’s their lack of a solid roadmap like Facebook has to warn developers of what’s ahead and who will be replaced next.  As a developer, every step like this Twitter makes is certainly a threat to my business model and anyone else like me.  It’s definitely a token to their closed nature.  However I think it’s much bigger than that.

I think Alex Payne, of whom I just became a big fan after his recent post on his perceptions of the new UI (a must read), said it perfectly, “all communications media will inevitably be decentralized, and that all businesses who build walled gardens will eventually see them torn down.”  Now, I don’t think all walled gardens will die – Ev William’s own original startup, Blogger.com, remained closed in a time where sites like LiveJournal and WordPress were going completely open source and it was still bought by Google.  In those days, going open source and giving people the opportunity to own their own data stored on each blog was the equivalent of federating social connections would be today – instead of owning content people would now have the opportunity to own their own relationships and port those from site to site if they choose, or host the relationships themselves if they also choose (I’m kind of doing that at http://community.staynalive.com/jesse).  Blogger obviously survived and is now one of the largest blogging platforms on the planet.

Twitter’s new UI, while I’m sure it will increase page views for them and bring them lots of money, is too late for Twitter to do any sort of innovation in this space.  Facebook already did this, and they were called a “walled garden” as a result and are now trying to break out of this reputation as users were getting ready to revolt.  Maybe that’s what Twitter wants, and I’m sure it will make them a lot of money.  They may even gain a large segment of the masses.  Businesses will still flock and so will the money.  I’ve mentioned Twitter’s need to own the UI before, but I argue it’s now too late to be focusing on that.

Twitter could however, have an opportunity to create a new wild west – a new playing field if they choose, a new canvas.  If they do so they need to focus not on the UI, but on the platform and decentralizing it significantly.  Then new opportunities arise such as payments, new service models, search, ad platforms and more that can still make them profitable.  The difference is they’re now spanning the entire web instead of their own walled garden.

I think Facebook started to make moves in this direction as they released Facebook Connect last year, and then Graph API this year along with no restrictions, redacted term limits on storage, and a push further and further away from building on their own UI.  They introduced a new protocol in fact that enables websites to be indexed more properly and enables those websites to more easily bring Facebook connections into the experience.  Facebook is moving from the walled garden approach out into the open web.  Twitter, it seems, is moving in the complete opposite direction, which seems perplexing.

Even Facebook hasn’t hit the nail on the head yet – maybe they’ll make the first move at the next F8 conference.  The next revolution of the web will be when one of these players that currently owns your Social Graph completely federates, creates a standard for others to follow, and then other companies are forced to follow as a result, forcing all the others to rush to find what they’re good at which wasn’t owning your data or social connections.  Then at that point you will truly be allowed to bring your social connections with you wherever you go, allowing for a web with not only no login button, but one where your family and friends follow with you along the way.  That’s a really powerful concept!

Kevin Marks (who led the OpenSocial platform at Google) mentioned the irony in a tweet earlier today of installing the open source social network Diaspora as we were discussing Twitter’s very centralized real time streaming API and federated environments.  I think that Kevin may be part of the revolution and we just don’t know it yet.  If none of these players make a move, it will be the next open source project like WordPress, or LiveJournal did in the early 00’s that will emerge from the dust, gain traction, and the landscape will naturally adapt.  It has to happen – it’s going to happen, and the first big player to do it will lead the way. I’m excited to find out who makes that move and I’m already thinking of ways I can jump on that bandwagon as a developer.

Picture courtesy http://www.thesun.co.uk/sol/homepage/news/article571291.ece

Facebook Kills Connect, Makes App Creation Easier, Simpler

As I’ve been writing Facebook Application Development for Dummies (now available on Amazon for pre-order!), there has been one thing I have been noticing: Despite all the new focus on Facebook’s Graph API, Facebook has still had a lot of conflicting focus on their old, more complicated, Connect APIs, making it a fun thing to try and explain in a Dummies book.  That confusion was evident especially in the application creation screens, where Facebook had page after page of options to fill out that they were no longer focusing on, “Widgets” to configure (which Facebook doesn’t even link to any more), and odd terminology that just doesn’t make sense any more.  Add to that the fact that, just announced, Facebook is killing the FBML versions of apps in favor of the iframe (and FBML itself in favor of Social Plugins), a lot of stuff just didn’t make sense in their app creation process any more.

Some time recently it appears Facebook finally fixed that.  Now Facebook has just 5 categories to fill out when creating your application or Facebook-integrated website, and there are no confusing terms such as “Connect”, or “Widgets”, or “Canvas”.  Facebook is focusing on 5 things: “About”, “Website”, “Facebook Integration”, “Mobile”, and “Advanced”.  I think from the titles of the sections these things are obvious, and it also shows that Facebook is putting an increased focus on external use of their applications on websites and mobile and less on Facebook itself.  We also see this with the removal of custom tabs on personal profiles (they will still be available for your business Page, have no fear!).  In addition, Facebook has removed the long Application key, and is now putting focus on just the Application ID and Application Secret – this is a move they have been pushing towards since the launch of Graph API at their F8 developers conference earlier in the year.

The new Facebook Application Screen is simpler and easier than the old

In addition, Facebook has added 3 experimental new features you can turn on, to focus more on their new OAuth 2.0 authentication process.  One of my biggest frustrations in trying to document all of this in my book has been the lack of consistency.  Getting graph API to handle authentication on a Facebook.com-hosted app in the past has been a horrendous experience, pretty much forcing developers back to the old way of authorization.  Now it should be easier for developers to fully focus on the new Graph API methods, both in and out of Facebook.  It is completely clear that Graph API is the future, and Social Plugins are replacing FBML (unfortunately for my second book).

Facebook also added 3 new features, making OAuth 2.0 easier to manage on Canvas pages.

While frustrating as I try to adapt my book, these changes are welcome, and should make creation and configuration of apps much easier for developers in the future.  Especially with the future removal of the need to configure FBML or iFrame, along with Profile tabs, setting up an application should be a piece of cake for both novices and experienced developers alike.  I’m sure it also makes the support process for Facebook a lot easier as well.

I hope other app platforms can take Facebook’s lead on their API.  Out of all of them, Facebook’s new focus is dirt simple and easy for the most novice of programmers to learn.

Are you working on a Facebook app?  How does this affect your development on Facebook platform?

I’m a Dummy! My Next, and Third Book

It’s been 2 years since the release of my second book, FBML Essentials, and everyone keeps asking me when I’m going to write my next.  I admit I’m a little addicted – it’s why I write on this blog.  I hated writing for others in High School and College, but since I started writing for myself I have really gained a sincere appreciation for writing.  Once I wrote my first book, I’m on Facebook–Now What??? with Jason Alba, I was addicted.  I love writing!  That’s why I’m proud to announce that I have signed an agreement with Wiley to write Facebook Application Development For Dummies.

What will it be about?  To tell you the truth, I’m still working that out.  My thought is to keep this one extremely simple.  I want it to be so simple even marketers and brand managers can learn at least a few ways to integrate Facebook Connect on their own websites, or find ways to integrate their brand straight into Facebook.  I’d like to hear from you though – what would you like to learn about Facebook Application Development?  What would you like to learn about the Facebook Platform?

I’m honored to be working with Wiley in this effort.  They are my biggest publisher yet, and from my dealings with them thus far they are going to be a joy to work with.  My wife has agreed to not see me for the next 6-9 months (I love you honey!), and I’m still keeping my day job and running SocialToo.  Yes, I’m crazy.  I think in the end though, based on my interactions with each of you, we need a completely simple instruction on how to get started with the Facebook Platform and what it means for developers and brands.  My hope is that with the time I spend on this book I might be able to benefit each of you in getting started with this incredible platform.

Facebook Application Development For Dummies will go to print some time at the end of this year, and, having learned from my last 2 books, you can bet this book will be very up to date and will have ways of remaining up to date long from its publish date.  Tell me what you want it to include!

I’ll be at Facebook’s F8 developers conference tomorrow (I’ll be one of the only guys with a FriendFeed T-Shirt on) – come look for me!  The first 4 people to mention this post to me at the conference get a free, signed copy of FBML Essentials.

In the meantime, be sure to become a fan of FBML Essentials and I’m on Facebook–Now What??? on Facebook, subscribe to this blog, and I’ll be sure you get updated when we have a home for my new book.

Facebook to Launch SideWiki-like Recommendation System for Websites

On Saturday I broke news of a few specific XFBML tags Facebook will be releasing as part of its OpenGraph API, as revealed by their open source Javascript Client libraries.  I held back one announcement that I think is almost just as interesting as their Insights for websites, or the SocialBar, which will provide Meebo-like functionality for Facebook on any website (I think it’s no coincidence Meebo, Google, and Yahoo announced XAuth shortly after I wrote that post).  Facebook, in conjunction with F8, is getting ready to launch “fb:recommendations”, a tag which enables users to provide recommendations to other Facebook users on any OpenGraph-enabled website.

Currently in Facebook’s open source Javascript client libraries, the tag can be placed on any website, and, according to the check in for the code on Github, something like this:

“should be replaced by an iframe showing recommendations for the abc website.”  Rendering the code currently just displays an iframe with the Facebook.com website in the frame.  I am assuming when they turn it on to the world that will render something completely different.

If my theories (and a few sources close to Facebook) are correct, Facebook will soon be releasing the ability for any Facebook user to provide recommendations and advice on any website that integrates the recommendations widget.  Think Google Sidewiki, but at the discretion of each website.  The functionality I am guessing will work similar to that of Foursquare’s “Tips” feature.

What makes this feature even more interesting is what this could bring if some of the rumors of GeoLocation being launched are true.  Is this just a sidewiki feature, or could Facebook be getting ready to launch a Geolocation feature, enabling “Recommendations” that go beyond just websites into real-life locations and places?

Be sure to read more about FBML, including a very beginner lesson on XFBML, in my book, FBML Essentials.

More "Insights" on the Facebook Open Graph API Surface

With Facebook’s F8 Developer’s conference right around the corner, there is a flurry of activity happening as the Facebook team rushes to prepare for many launches at the Conference.  While I know more than I am saying, there is some evidence in plain view, open for all that we know for sure will be launched at the conference which you should prepare for.  Specifically, I’ve already shared information about Facebook’s XFBML tag to enable any website on the web to be “liked” and shared amongst a user’s friends.  While not currently functional, this information was made clear in Facebook’s Open Source Javascript Client libraries available here on their GitHub open source repository (and available to all).  There is much more those libraries reveal though (some which have been there for months), hinting at what could very well become a “Facebook-less” connection to the entire web, making it much less necessary to go back and forth between the Facebook.com website to interact with Facebook on a day-to-day basis.  Here is what we know:

There will be a tag that website administrators and developers can stick onto any website that enables a live stream of just that website’s activity on Facebook.  According to the check in on GitHub, the tag accepts the following parameters:

- site (string): mandatory, site url (ie : facebook.com)
- activities (int): number of activities to display.
- width
- height
- header (boolean): indicates if the header should be displayed or not.

Assuming I understand it right, if you use the sample from the GitHub check in, code like the following would display an activity stream for all posts to Facebook from the CNN.com website:


It’s quite unclear what these are going to do exactly.  One has to expect it is something like the Meebo bar, which puts a bar at the bottom of any Connect (or Open Graph API) enabled website.  The two seem to work together, and, from the code, the fb:connectBar tag seems to prompt each visitor with text that says,

“Hi {firstName}. {siteName} is using to personalize your experience.”

There is an option to click to learn more.  My guess is that is just a way for website owners to spread more word about Facebook Connect to their visitors.  I’m assuming uses as part of the bar website owners place at the bottom (or elsewhere) of their website.  Right now it seems the way to implement is to just place “” or “” in your website somewhere after calling the Facebook Javascript libraries.

Insights for Websites

Perhaps the most intriguing part of the and tags is that they both make a call to a new API method, FB.impression.  The interesting call in the Open Source Client libraries source code is:

FB.provide('Insights',{impression:function(e,a){var b=FB.guid(),g="//ah8.facebook.com/impression.php/"+b+"/",c=new Image(1,1),f=[];if(!e.api_key&&FB._apikey)e.api_key=FB._apikey;for(var d in e)f.push(encodeURIComponent(d)+'='+encodeURIComponent(e[d]));g+='?'+f.join('&');if(a)c.onload=a;c.src=g;}});

In the summary for the check in on Github, they state, “Add new method – FB.impression – for pixel-based impression tracking.”  So, based on that, it would seem that whether released at F8 or not, there may be an Insights component to this OpenGraph API released.  Insights is the product used by Fan Page owners on Facebook to track activity on Facebook Pages.  Ideally, by enabling the above tags, it could enable website owners to gain added social graph data in addition to impressions, visits, and page views for each user that visits their website, including demographics, ages, nationalities, and even names of users.  That would be a very powerful statistics engine, unrivaled by the likes of Google Analytics and other solutions!

While none of the above work outside the Facebook, Inc. Firewall, it is exciting to know they could be coming.  My expectation is that on or around F8, Facebook should turn on the backend code that powers these, and then, the OpenGraph API will be available for all.  While this stuff is all very powerful, I can’t help but wonder if this is the tip of the iceberg.  None of this encompasses open standards of any kind, yet David Recordon and the Open Standards team at Facebook seem to still be preaching “open”.  I’m assuming there will be something very open and distributed, unreliant on Facebook alone, about all of this coming up this F8.  I can’t wait to see what happens.  Keep watching here, as there is even more out there in the open surrounding the Facebook API that I think is pretty cool.

If you’re coming to F8 on Wednesday, come by and say hi to me!

Twitter’s @anywhere and Why it May Be Too Techie for Their Audience

In just one day, we’ll all be sitting in front of Ev Williams and Biz Stone as they announce Twitter’s new Facebook Connect competitor, @anywhere.  This is Twitter’s big statement in the developer ecosystem, stating that they are shifting from a script and backend-focused model of developer integration, to a very front-end, javascript-centered focus that centers around any brand or developer’s own site.  However, I’m worried that Twitter may actually be focusing too much on developers, considering their audience of large brands.

I wondered, just after @anywhere was announced at South-by-Soutwest in Austin, TX, how similar @anywhere would be to Facebook Connect.  Facebook Connect, a Javascript-focused set of libraries that sits on top of any website, enables just about any brand manager, marketer, or even developer from the new to the very advanced to simply copy and paste a piece of code and have it immediately create widgets that integrate tightly with the Facebook environment.  With Facebook Connect also comes a tag language, called FBML (I wrote the book for O’Reilly about it), which enables HTML-like tags to be placed anywhere on a website and also get similar functionality.  So basically, no Javascript knowledge is required.  Know how to write a little HTML?  You can integrate Facebook Connect into your website.  At least that’s the message Facebook wants to send to Marketers and Brand Managers (and it’s true how simple it is).

Twitter seems to have the same audience in mind for their @anywhere platform.  After just launching an Ad platform, you can bet more Enterprise features are about to be announced very likely at Twitter’s Chirp conference along with developer tie-ins to those features.  Twitter wants the brands just as bad as Facebook does.  Running a site that targets Brands, I know first hands that the Brands are where the money is.  Enterprise, and contractual relationships with big companies and brands is big money in this industry.  Twitter wants to be on each and every one of these major websites – that’s why they’re launching @anywhere.

I’m worried that Twitter is trying too much to please developers in this case though.  In a conversation I had with Ryan Sarver back in March, he asked what questions we had about @anywhere.  I asked if it would have an FBML-like tag syntax.  His answer surprised me:

“@Jesse think more @jquery than FBML 🙂 very developer-friendly”

I’m not going to say how, but I’ve been looking at some pieces of the @anywhere Javascript source recently and he’s right.  It’s a very jQuery-focused platform.  The problem with jQuery is no marketer or Brand manager in their right mind is going to want to touch it.  It’s too difficult to understand.  It’s going to take developers to convince the marketers, and I’m just not sure that’s the right approach.  Working with large organizations I know how it works – a marketer or product manager can’t get past the bureaucracy to bring a developer onto their project, so they try to do it themselves.  With Twitter’s jQuery approach, none of these guys will even try.

We’ll see what actually gets announced, but if I’m right, Twitter should really consider adding on a tag-based language on top of all of this.  Something that looks like HTML is going to be much simpler to understand than jQuery in the eyes of a marketer that just wants to try this stuff out.  I’m not sure this is the right approach, but we’ll see.

One good thing we can say about all this is that jQuery, as a framework, is going to have an amazing day in the sun on Wednesday.  Let’s hope they can get the developers to sell this to the big guys like they hope.

Twitter Launches Facebook Connect Competitor, @Anywhere

I’ve long talked about the MVC model of the Building Block web.  Data Repositories like Amazon Simple Storage, Facebook Data Store, Google Data, and others comprise the Model of this new platform.  APIs like the Twitter API, the Facebook server-side APIs, or other REST-type APIs compose the Controllers of this web.  Then you have the View – something pretty much only Facebook and OpenSocial/Google Friend Connect have covered thus far.  The View enables developers to easily integrate and access code from a user’s Client, the web browser.  Today Twitter added their entry to that game, @Anywhere.

@Anywhere strives to provide a solution for a huge weakness in the Twitter API Platform thus far.  It provides an entire Javascript, Client-side platform for developers and website owners to integrate Twitter easily and simply right on top of their website, no server-side code involved.  This is the missing link Twitter has needed to have a truly competitive solution against Facebook’s Connect platform.

Facebook Connect relies on Javascript to provide an immersive experience into the Facebook environment right on top of any website owner’s site.  With a few lines of Javascript, and an HTML-like tag language called XFBML, website owners can pretty much copy and paste pieces of code in place and immediately have access to comments, become a fan boxes, post to their stream, and even more if you know a little Javascript as well.  It’s unclear if Twitter will be releasing an XFBML competitor (I’d love to help Twitter test if this becomes the case – I wrote the book on Facebook’s FBML), but Twitter is clearly going up against Facebook Connect to provide similar type tools, and I think it’s a very smart move.

I mentioned earlier I was excited about the entry of Josh Elman as product manager at Twitter.  I’m unclear if he had anything to do with this, but you can clearly see the Facebook influence in Twitter’s new API.  With not only Josh, but several others from the Facebook team now working at Twitter, you can bet they’ve compared and contrasted how they could obtain some of the millions of Facebook developers out there.  Making it as easy as possible is the smartest way to do this, and Twitter has already signed on several very big players in the Facebook Connect space, Huffington Post and Yahoo, to be launch partners in this effort.

In addition to those, the most significant partner that I think should not be ignored is Amazon.  Amazon, IMO, is the holy grail in Social E-Commerce, and despite not having a Facebook Connect solution, they seem willing to integrate Twitter into their environment.  Why they are choosing Twitter over Facebook is beyond me – maybe they have a Facebook deal in the works as well?

I’m very excited about this new announcement.  Soon, it will be easy for any developer to very seamlessly, in a single, well-understood language (Javascript), integrate Facebook and Twitter all on a single website with little effort.  As a developer, I’m drooling a bit over this.  I can’t wait to start playing with it.

Web 3.0: The Building Block Web

lego bricksTim O’Reilly is well-known not only for his successful publishing company (which I have written for), but also for his definition of the term, “Web 2.0”, in summary defining the web as a platform, moving from the desktop to the cloud. I’d like to propose we are in the process of taking that one step further, perhaps even moving to our foundations, taking components of that platform, and enabling others to use those components in their own applications. Some talk about the “real-time web” being Web 3.0, or the 2010 Web, but when you look at it “real-time” is just using the web as a platform, making it real-time.  The web still hasn’t really changed in essence to something else beyond the web becoming “the platform”.  The web needs to shift to something else for that to happen. I think that shift is happening in a form I call “the building block web”.

When I think building blocks I think Lego bricks.  Each one has its own unique size and shape, and when you take the basic lego bricks you can add your own, making something unique and powerful.  The web, as a whole, is evolving towards this state.  We see Twitter, with its open platform enabling others to share in ways they were never able to share before in their own applications.  We see Facebook and Facebook Connect enabling businesses to incorporate Facebook activity, relationships, and more right in the bounds of their own brand (Jeremiah Owyang suggested we might call this “farming”).  Recently, we saw Google Wave producing ways for users to collaborate in ways they were never able to before, and embed these in new ways into external environments. We see Facebook implementing Facebook credits amongst various applications and enabling some developers to charge using Facebook credits, Facebook taking a cut along the way.  Each of these “components” is a building block.  They’re each basic foundations, or Lego bricks that have organized the web into components developers can now build new and interesting things with.  The new platform is on top of these foundations, which are built on top of the web, and viewable via a desktop or browser.

Robert Scoble, as he was interviewing me and Louis Gray last week, mentioned he thought Facebook should implement reviews similar to Yelp, and they could then profit from the deals made surrounding those reviews of retail and other physical purchase locations.  It’s a great idea, but I suggested Facebook doesn’t need to do this.  Facebook seems to understand the building block web.  They are providing means for Yelp and others to take what Facebook is good at – building relationships and sharing activities and content with your close friends and family, and incorporate that content and social graph into and out of Yelp’s own environment.  They are even providing for some developers (as mentioned earlier) the ability to integrate their built in credit system.  Facebook provides their own foundations or Lego bricks, provides a means for those people to pay for things, and Facebook takes a cut of every piece of that along the way.  Seems like a much better model than reinventing the wheel if you ask me.  Now imagine if Yelp joined the building block web by providing their own “blocks” giving other apps the power of what Yelp is good at: organizing great reviews around physical purchase locations around the world.

Now look at Google.  Google understands this well.  They are providing Friend Connect, OpenSocial, Android, Wave (on 3 different levels!), and letting Developers decide what to do with them.  Google is adding to this new platform giving developers new building blocks to play with and create cool things with.

This new web is surrounding us as we speak.  Each of the major players is in a race to see who can create the most building blocks for developers and entrepreneurs to incorporate into their own products.  No longer are entrepreneurs focused on building for the web.  They’re focused on building around these building blocks. The building blocks are the platform. This is Web 3.0.  Who will win?

FBFoundations Facebook Connect Plugin for WordPress

lego bricksOne of my biggest frustrations in adapting Facebook Connect into WordPress blogging has been the fact that most plugins out there either have too much, or too little incorporated into them.  When you add more than one, you end up calling the Facebook Javascript Client libraries more than once, and often reinvent the wheel for what other people have done.  I mentioned this in a wish-list I posted earlier.  I want building blocks – I should be able to add a foundation, and add basic building blocks on top of that foundation to get what I want out of Facebook Connect on my blog.

Today I’m giving you that foundation.  I’ve written a WordPress plugin called FBFoundations which sets up the bare-bones necessities of any Facebook Connect install.  Once you have installed this plugin, the user can log in, and you have access to their login credentials from then forward to do whatever you want with. It’s a foundation – something to build a house on top of, and my hope is that many more FBFoundations-compatible plugins can emerge from this.

For instance, my next step will be to create a simple plugin for WordPress that uses the stream.publish API to post your blog to Facebook, and enable others to do so (tracking the number of comments and likes along the way if possible).  There will be no need to add a user log in to that process, nor do I have to load the XFBML init scripts to render XFBML.  It will all have already been loaded for me.

The script works a lot like Richard Miller’s “What Would Seth Godin Do” plugin from a UI perspective.  At a default (you can configure this in your preferences) the first 3 times a user visits your blog they will be presented with a popup dialog box encouraging them to connect with Facebook.  After those 3 times the popup no longer appears.  There will also always be a “Connect with Facebook” login button above your comments (assuming they’re wrapped in a #commentform div) that will appear until the user clicks on it and logs in.

Using this plugin encourages each reader to log in through Facebook (remember – there are over 300 million Facebook users.  Chances are most of your readers are on Facebook), and enables you to do cool stuff with each of those readers.  Hopefully this will inspire others to make other FBFoundations-compatible plugins so we’re not re-inventing the wheel any more.  Stay tuned for more plugins from me – what will you build with this as your foundation?

You can download the plugin here.  Just download it and unzip it into your plugins directory in WordPress, activate it, and then add the API key for your website.  (You’ll need to go to http://developers.facebook.com to add the developer app and add an app for your website if you haven’t done so already)

Or click here to download:


Please let me know in the comments if you see any issues.  This is 100% GPL so please make your own adjustments and let me know if I can fix mine!

UPDATE – v0.4 – 10/26/2009: The popup is no longer default and can be turned on/off. Also added meta tag support and better compatibility with 3rd-party comment systems.  See this blog post for more info on 0.4.

Here are some screenshots:

Screen shot 2009-10-10 at 6.21.49 PM

Screen shot 2009-10-10 at 6.19.47 PM

Screen shot 2009-10-10 at 6.19.13 PM

The Open Web – Is it Really What We Think it is?

OneWebDayYesterday was OneWebDay, a day to celebrate the open web and bring more awareness to technologies. I just wrote about one thing Google is doing to make the web more open, something I strongly support.  I want to touch on something Facebook is doing which I don’t think is being fully appreciated.  And it’s not what you think it is.  First, I want you to watch this video – it’s Mark Zuckerberg’s keynote from Facebook’s F8 conference for developers last year.  Don’t read on until you see it or you may not understand what I’m trying to get at here.

In the video, Mark Zuckerberg states that Facebook’s mission is in “giving people the power to share in order to make the world more open and connected place.”   I want you to give that some thought. We’ve always talked about the open web being the opening up of content so everyone has access to it.  That’s the essence of the web. It has no borders or boundaries, and has no controls over it.  That is how it was built and how it should be.  The web is about linking documents to each other, and indexing those documents so they are easily accessible and retrievable by those that want to find it.  The traditional open web is about the power to receive.

Enter the social web.  Now we have all these social networks – Facebook, MySpace, Twitter, Orkut, Hi5, LinkedIn, and many others all striving to redefine the web, each in their own way.  In the end each of these networks is giving a layer to the web which connects people instead of documents and in the end brings people together.  At the same time we’re indexing people, and from those people comes relevancy and documents which others can share with one-another.  Many argue that this method of indexing is even more accurate, because it is spread from person-to-person, and it’s real-time.

There’s one problem with the social web in terms of openness.  People don’t want their lives exposed.  They just want the documents they prefer to share with the world exposed.  In the end, because we’re dealing with people, there still needs to be some bounds of privacy, yet people should still have the control to make what they want open, open. Without these controls, there is no freedom, as people are required to completely expose their lives to reveal even a bit of content with the rest of the world.

This is why I think on the Social Web, “Open” is defined much differently.  I think Facebook sees this. In a social environment, the role of technology should be in making relationships more open, making the ability to share more open, not necessarily the documents people are sharing themselves. In a Social Web “Open” is about how “Open” you are to enabling your users to make the decision whether they want to make their documents public or not, and fully enabling them to do so if they want to.  The thing is, a Social ecosystem is not “Open” if it doesn’t give users the freedom to keep those documents private if they want to as well.

Facebook takes this new layer of “Open” to another level though. As of last year they have been branching out of their walls, enabling other websites to take these tools, giving each website the control to extend this level of control to their own users.  Now websites can take the existing social graphs of users and enable those users to automatically share what they want with their friends, respecting the privacy controls of those friends.  I should note that Google Friend Connect is doing similar things in that realm (albeit with less privacy controls, IMO making it a less “open” or “free” ecosystem to allow users full control of that data).

I think what we may be defining as a “Walled Garden” or “closed ecosystem” may indeed be the actual definition of “Open” on the social web.  Remember, it’s about opening up the control of the user to share all, some, or none of the content they want to share.  The more “Open” a system is to doing this, the more open users are to share data, the more open it is to having their friends see that data, and the more open it is to allowing others search for that data, while at the same time being open to letting the users that want to control that data keep it under closed wall.  The web has lacked this ability until recently.  In a true “Open” Social Ecosystem, if data is not available via search and other means, it is the fault of the users, not the network itself.  Data that is available to the web is the responsibility of the users, not the responsibility of the network itself. I think Facebook is the closest to this definition of “Open” out there right now.  I think that’s why they have over 300 million users and are still growing.

On the Social Web, “Open” is about the power to give.

<img class="aligncenter size-full wp-image-2489" title="I <3 the web." src="http://staynalive.com/files/2009/09/3929246011_9776c72b28_o.png" alt="I