Confoo Conference (Montreal, QC)


confoo.ca Web Techno Conference

From March 10th to 12th, 2010 I will be in Montreal, Quebec (Canada) for Confoo at the Hilton Montreal Bonaventure Hotel. I’ll be presenting a few topics while I’m there:

 

Browser MVC with YQL and YUI
The Yahoo! Query Language provides a rich and dynamic method for obtaining and manipulating data from any source or API on the internet – with YQL the internet becomes your database. Coupling the data backend of YQL with the extensive visualization and flow techniques of JavaScript through libraries such as YUI, a developer can build powerful widget and data systems using the simplified SQL syntax that YQL is based in. The marriage of YQL and JavaScript brings a robust MVC interface to the browser.

 

This talk will cover the core techniques within YQL, including server-side JavaScript with native E4X support for manipulating data, key / value pair data storage and the process of creating your own YQL tables for accessing web based content. Building upon this core, design concepts such as those of a Model View Controller pattern will be introduced to display methods for taking the base data and merging that with front-end libraries to build out production level applications.

 

The Foundations of an Application Platform
Application platforms, such as the Yahoo! Application Platform (YAP), Facebook, or Myspace, have become a core foundation of social web infrastructures. When constructing a platform to run applications, numerous layers of security and technology need to work off of each other in order to generate a secure, versatile system.

 

This talk will cover the core technologies behind the creation of a platform to host 3rd party applications. We will explore open technologies such as OpenID and OAuth for user verification, OpenSocial for architecture implementations, and the use of front-end security implementations such as Caja. This will explore the benefits and exploits from each of the implementations and the importance of open source technologies.

 

If you’re coming out to Confoo or are in the area and want to meet you send me a message. You can reach me on twitter @jcleblanc

 

- Jonathan LeBlanc

  • Share/Bookmark


Pushing an Application Update with OpenSocial 0.8


Within the OpenSocial 0.8 specification is a definition available for pushing out a notification to the user stream automatically from an application.

 

What are updates and why should you care?

 

The update (or status) stream of a user is a listing of what they are currently doing or what they have posted for their friends and connections to see. What’s important to note here is that using this stream can drive quite a bit of traffic to your application if you use it. Personally, I never look through the application gallery of a platform like the Yahoo! Application Platform or MySpace. Most of the time I will only ever add applications when I see an app notification through one of the updates produced by one of my friends.

 

I mean – sometimes I just need to find out what Disney princess I am right?

 

In any event, using this update stream is going to push users to your application. This is one of the many tools that we can use to drive more traffic to your application.

 

How does this work?

 

Using standard JavaScript, let’s take a look at the steps that we will need to implement to insert an update. I would suggest that this JavaScript be inserted in a function that is driven by a user event, such as a click action.

var params = {}, activity;
params[opensocial.Activity.Field.TITLE] = "title";
params[opensocial.Activity.Field.URL] = "http://www.myserver.com/index.php";
params[opensocial.Activity.Field.BODY] = "body text";
activity = opensocial.newActivity(params);

First we need to set up the parameters that will define what will be pushed out in this update. In the above example, we assign a title string, the URL that the title string will be linked to and the body (content) of the update. There are a whole series of options available within an activity request that can be added to the above. These are listed on the OpenSocial documentation here: http://wiki.opensocial.org/index.php?title=Opensocial.Activity_%28v0.8%29#Fields. We then call the newActivity() method to define the activity that we want to build. The parameter that needs to be present in the method is the parameter list that we defined right before that request.

opensocial.requestCreateActivity(
	activity,
	opensocial.CreateActivityPriority.LOW,
	callback);

We then call requestCreateActivity to actually send the request and push the update out. There are three parameters present in this method:

  1. activity – The activity we defined in the first code sample
  2. priority – This is the priority that the update should use to send out. This can either be opensocial.CreateActivityPriority.HIGH (or the string ‘HIGH’) or opensocial.CreateActivityPriority.LOW (or the string ‘LOW’). The difference is in whether the user has granted your application permission to push updates out to their stream. If you define a HIGH priority and the user has not granted your application permission to push out updates, the application will attempt to load an authentication flow to allow the user to allow the update out. If you set a LOW priority, if the user has not granted your app permission, the update will be ignored and no authentication flow will be presented.
  3. callback – The function that will be executed when the update is inserted

With a few lines of code, you now have an application that can draw in more users using the update stream.

 

- Jonathan LeBlanc

  • Share/Bookmark