Posts tagged as:

Social Software

The Facebook/.NET SDK

by Joey deVilla on November 10, 2009

facebook sdk

Facebook has announced official support for the just-released 3.0 version of Microsoft’s Facebook SDK (also known as the Facebook Developer Toolkit). The kit was written with one goal in mind: to make it easier for .NET developers to write applications that integrate with Facebook.

I’ll leave it to the Facebook SDK Overview to do the talking:

The main entry point is the API (Facebook.Rest.Api) class in the Facebook.dll assembly. This class wraps the Facebook REST API and provides an easy to use interface for calling the different methods currently available in the Facebook API. We’ve also provided samples and tools for helping develop Facebook applications in the various .NET platforms including: ASP.NET, Silverlight, WPF and WinForms. Additionally, we’ve provided all the source code for the API, components, controls, and samples for you to explore.

The toolkit is comprised of the following core assemblies:

  • Facebook.dll: This is the main assembly that will be used by all applications. This has all the logic to handle communication with the Facebook application. This assembly also has specific support of XAML applications (Silverlight and WPF) to enhance the Facebook platform to make databinding and data caching easier.
  • Facebook.Silverlight.dll: This is the Silverlight version of the main assembly that will be used by all Silverlight applications. This has all the logic to handle communication with the Facebook application. This assembly also has specific support of XAML applications to enhance the Facebook platform to make databinding and data caching easier. The REST API in this assembly is Asynchronous only.
  • Facebook.Web.dll: This assembly should be used by Canvas applications. The main functionality supported in this assembly is to encapsulate the handshake between the Facebook application and a canvas application (both FBML and IFrame)
  • Facebook.Web.Mvc.dll: Provide a support building canvas applications using ASP.NET MVC. Separated from Facebook.Web.dll to avoid all developers from needing to install the MVC bits.
  • Facebook.Winforms.dll: This assembly provides support for writing Facebook applications using Winform technology. This provides a Component that wraps the API to make it easier to use from Winforms. This also contains some user controls to help display Facebook data easily.

To get started, download the SDK, then consult these docs:

If you create any Facebook apps using the SDK, let me know by dropping me a line. I’d love to feature it here!

This article also appears in Canadian Developer Connection.

{ 0 comments }

Social Software Venn Diagram

by Joey deVilla on September 8, 2009

Yeah, that’s about right:

social_software_venn_diagram

And better yet, it’s available as a T-shirt!

venn_diagram_t-shirt

[Found via Kevin Kelly.]

{ 2 comments }

Lessons from an Air Pump

by Joey deVilla on August 10, 2009

This article also appears in Canadian Developer Connection.

The Incident

I live in Toronto’s High Park neighbourhood, which puts me at that magical distance where biking downtown takes a half-hour, about as long as public transit. If weather isn’t downright terrible and I don’t have too much to carry – say, laptop, change of clothes and even an accordion — I tend to take my bike.

Cycling is much easier with a pair of properly-inflated tires, so I often make use of the air pump at the gas station near my house:

air_pump_1

Gas stations used to give you air for free, but these days, you have to pay to use an air pump – presumably to cover the cost of their upkeep. At the gas station near my house, a dollar gets you enough time to inflate all the tires on a car, which is plenty of time for a bike’s tires. You can use either a loonie (that’s “dollar coin” to you readers outside Canada) or four quarters.

Take a look at  the coin slots for the air pump at the gas station near my house:

air_pump_2

Although the left and right coin slots are identical in size and appearance, they are for different types of coins:

  • The left slot is marked “dollar coin” and is for loonies (that’s “dollar coins” to you non-Canadian readers) only.
  • The right slot is marked “4 quarters” and is for quarters only.

It’s the worst combination of usability factors: identical slots that serve different purposes.

I reached into my pocket and pulled out some quarters. Without thinking, I put quarter in the dollar coin slot, realizing my mistake a little too late. The machine accepted the coin and didn’t route it to the “coin return” compartment. In fact, the machine didn’t even have a coin return compartment.

I wondered what would happen if I put three more quarters in the dollar coin slot. After all, the sticker might be wrong.. It wasn’t – I put in the remaining quarters and the air pump remained off. Luckily, I had four more quarters. I put those in the quarter slot and the machine came to life, providing compressed air for my tires.

Out of principle, I went to the gas station attendant and asked for the dollar I’d lost to the air pump back. He was resistant at first, but as soon as I said “Geez, you guys are a rip-off. I should post that on Twitter,” he quickly capitulated and reimbursed me.

The Lessons

Because I am in the business of talking about software development and design, I was inspired to turn the experience into a blog article (eight years of blogging will do that). I took photos of the air pump and derived two lessons.

Lesson One: Interface Matters!

If two things expect different input, they should appear different. The coin slots on the air pump are the same size. Although the sticker on the machine has markings that say that the left slot is for loonies and the right slot is for quarters, those markings are almost identical. Possible solutions include:

  • Differently-sized coin slots: a larger slot for loonies, a smaller slot for quarters. Older coin-operated machines made use of these:

old_school_coin_slot

  • A new sticker, perhaps with some colour coding to make it very clear that each coin slot expects very different kinds of coins. 

    new_coin_slot_sticker

Be forgiving of user mistakes:

  • Both slots should accept either loonies or quarters. This solution is even better than differently-size coin slots or a new sticker. The constraint that one slot is for loonies and the other for quarters is a convenience for the manufacturer, not the user. Go the extra mile – after all, coin recognition technology isn’t anything new or hard to get.

    Most coin-operated machines that provide more than one coin slot, such as videogames and pinball machines at arcades, don’t “care” which one you use. Either coin slot will do, as long as you provide enough coins:

    arcade_coin_slot

  • There should be a coin return slot. The current design simply takes your money and doesn’t let you cancel the transaction.

Simplify! Once you put in a coin slot that accepts loonies and quarters, there’s no need for a second coin slot – a single one will do.

The lesson of “interface matters” doesn’t just apply to user interface; they’re just as applicable to application interfaces, from method signatures to whole APIs. It pays to be clear and comprehensible.

Lesson Two: Social Software Matters (at least to some people)

The second lesson? Never underestimate the power of social networking software. The gas station attendant wouldn’t budge, but I saw him constantly checking his smartphone and guessed that he might be into Twitter.

{ 5 comments }

Future Man Tried to Warn Us

by Joey deVilla on February 23, 2009

Early 1960s businessmen talking to man in astronaut suit: "So you're saying people will 'tweet' what they're eating for breakfast?" "And 'upload' pictures of their breakfasts to a 'Facebook'?" "And other people will look at the breakfasts and make comments?" "No offense, future man, but is everyone in your time retarded?" "Sorry to burst your bubble, dudes, but you asked. Yes, that's the future."
Click the photo to see its source.

{ 1 comment }

Danah Boyd giving her "My Friends, Myspace" presentation at the Berkman Center in the summer of 2007 If you were born in the 1990s, you fall into the “youth” demographic and are considered to be part of the “Generation Y” or “Millennial” generation (a classification applied to people born in the 80s and 90s). Chances are that you don’t remember a world without commonplace desktop computers, the world wide web and mobile phones – lucky you!

You’re also the generation that Microsoft Research’s danah boyd has been observing for the past couple of years. She’s been studying how youth use social networks, or “networked publics”, as she likes to refer to them. She completed her Ph.D. last year and in fulfillment of her promise, she posted her dissertation on her blog this past weekend. It’s titled Taken Out of Context: American Teen Sociality in Networked Publics.

Teens use social media and social networking software to do these things:

  • To present themselves to the world
  • To interact with their peers
  • To understand and navigate through adult society

If you want to understand how and why teens’ use of technology to do these things, danah’s dissertation is your must-read document.

Be warned that a dissertation isn’t a blog entry or magazine article; Taken Out of Context spans a whopping 406 pages. Although it’s quite comprehensible to someone not versed in sociology or ethnography, it’s still a lot to read. You might find my notes from her My Friends, MySpace presentation that I took back in the summer of 2007 a reasonable overview – perhaps even a “cheat sheet” — for her dissertation.

{ 2 comments }

Boomers Like Online Recommendations, Not Into Blogs or Social Networking

June 6, 2008

A ThirdAge/JWT Boom study has data that suggests that “people over age 40 participate heavily in word-of-mouth and value personal recommendations and expert opinions, but they have not embraced social networking or blogs despite being heavy users of other online services.”

Read the full article →

Facebookers Playing Fast and Loose with Canada’s Youth Criminal Justice Act

January 7, 2008

“You have an Angry Mob invitation!” mock-up

For the second time in a week, a group of Canadian Facebook users broke the law by publishing the names of youths charged under Canada’s Youth Criminal Justice Act

Read the full article →

Unwitting Facebook Spokesmodels

January 2, 2008

If you’re going to become a fan of a business on Facebook, you’d better make sure that your profile photo is a good one — you might end up as that company’s unwitting spokesmodel!

Read the full article →

Can Social Networking Co-Exist with the Workplace?

December 19, 2007

I’ve filed it in my “to read” list and forwarded it to a number of other people at TSOT (we make social software): a ZDNet article titled Can Social Networking Co-Exist with the Workplace?.

Read the full article →

Gift Idea: “RailsSpace: Building a Social Networking Site with Ruby on Rails”

December 17, 2007

Today marks the start of my fourth week at TSOT, a Toronto-based startup that develops custom social networking software in Ruby on Rails. The company’s first two products are FraternityLive and SororityLive, which as you might imagine are targeted at fraternities and sororities, with future plans for creating similar apps for other fields.
I was hired [...]

Read the full article →

It’s Complicated

December 10, 2007

Here’s the most recent XKCD comic:
Click the comic to see it at full size on its original page.
It reminded me of an idea I had for a simple Facebook app. It would go through your entire list of friends, and send a “please explain” message to anyone who had their relationship listed as “it’s complicated”.

Read the full article →

Want an Invitation to Join Pownce? I’ve Got 10.

July 29, 2007

Alex Albrecht and Kevin Rose, two of the people behind Pownce.Photo taken from the New York Times.
“JUST now, the hottest startup in Silicon Valley — minutely examined by bloggers, panted after by investors — is Pownce,” says the New York Times article A Social-Networking Service with a Velvet Rope, “but only a chosen few can [...]

Read the full article →

Your Boss Has “Friended” You. Confirm or Ignore?

July 10, 2007

Would You Like to Confirm Your Boss as Your Friend?
Transgender Jakob Nielsen isn’t my boss, but he thinks he is.
If it’s not one boss, it’s another. If you’re not freaking out because your mom “friended” you on Facebook, there’s still the chance that your boss might, meaning that he or she may be privy to [...]

Read the full article →

Notes and Photos from danah boyd’s “MyFriends, MySpace” Presentation

June 25, 2007

Last Tuesday, I had the good fortune of being able to attend a Tuesday luncheon session at the Berkman Center for Internet and Society at Harvard. Doubling my good fortune was the speaker, who was none other than danah boyd, who talked about her research into MySpace and other social networking sites and their use [...]

Read the full article →

The Tech News Story That’ll Never Get on Techmeme

June 11, 2007

If the purpose of technology is to make life better, then the big news isn’t about the so-called leaked outline of Steve Jobs’ WWDC keynote, General Electric’s and Microsoft’s discussions about buying Dow Jones or AIR being the name for the Adobe tool formerly known as Apollo.
It’s about a wedding that took place on Friday [...]

Read the full article →