Home > Store

Developer's Guide to Social Programming: Building Social Context Using Facebook, Google Friend Connect, and the Twitter API, The

Register your product to gain access to bonus material or receive a coupon.

Developer's Guide to Social Programming: Building Social Context Using Facebook, Google Friend Connect, and the Twitter API, The


  • Sorry, this book is no longer in print.
Not for Sale

eBook (Watermarked)

  • Your Price: $28.79
  • List Price: $35.99
  • Includes EPUB, MOBI, and PDF
  • About eBook Formats
  • This eBook includes the following formats, accessible from your Account page after purchase:

    ePub EPUB The open industry format known for its reflowable content and usability on supported mobile devices.

    MOBI MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

    Adobe Reader PDF The popular standard, used most often with the free Adobe® Reader® software.

    This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.


  • Copyright 2011
  • Dimensions: 7" x 9"
  • Pages: 336
  • Edition: 1st
  • Book
  • ISBN-10: 0-321-68077-4
  • ISBN-13: 978-0-321-68077-8

In The Developer’s Guide to Social Programming, Mark Hawker shows developers how to build applications that integrate with the major social networking sites. Unlike competitive books that focus on a single social media platform, this book covers all three leading platforms: Facebook, OpenSocial, and Twitter. Hawker identifies the characteristics of superior, highly engaging social media applications, and shows how to use the Facebook platform, Google Friend Connect, and the Twitter API to create them.

You’ll find practical solutions and code for addressing many common social programming challenges, from site registration to search, blog commenting to creating location-based applications. Hawker concludes by walking you through building a complete, integrated social application: one that works seamlessly across all leading platforms, and draws on powerful features from each. Coverage includes

  • Working with the Twitter API, including the Search API, Lists API, and Retweets API
  • Authenticating users with Twitter OAuth
  • Mastering the Facebook API, FQL, and XFBML
  • Utilizing the Facebook JavaScript Library for creating dynamic content, and animation
  • Exploring the Google Friend Connect JavaScript API, and integrating with the OpenSocial API
  • Using Facebook’s tools for sharing, social commenting, stream publishing, and live conversation
  • Using the PHP OpenSocial Client Library with Google Friend Connect
  • Creating, testing, and submitting Google Friend Connect gadgets

Sample Content

Online Sample Chapter

The Developer's Guide to Social Programming: Application Discovery, Tabbed Navigation, and the Facebook JavaScript Library

Sample Pages

Download the sample pages (includes Chapter 8 and Index)

Table of Contents

I: Twitter

1 Working with the Twitter API 1

Twitter API Essentials 1

Twitter API Methods 3

Twitter API Parameters 6

Twitter API Return Formats 10

Accessing the Twitter API 11

cURL 12

Twitter-async 14

Twitter API Rate Limiting 17

Twitter API Error Handling 18

Summary 19

2 Diving Into the Twitter API Methods 21

Twitter API Methods 21

User Objects 23

Status Objects 26

Direct Message Objects 28

Saved Search Objects 29

ID Objects 30

Relationship Objects 31

Response Objects 32

Hash Objects 33

Twitter Search API 34

Introducing the Atom Syndication Format 34

Twitter Search API Methods 38

Summary 43

3 Authentication with Twitter OAuth 45

Introducing Twitter OAuth 45

OAuth Benefits 46

OAuth Definitions 46

Implementing Twitter OAuth 48

Twitter OAuth Workflow 48

Test Tube: A Sample Twitter Application 50

Summary 59

4 Extending the Twitter API: Retweets, Lists,

and Location 61

Extending Twitter’s Core Functionality 61

Retweet API 62

Lists API 64

Geolocation API 68

Twitter Community Evolution 71

Platform Translations 71

Spam Reporting 72

Future Directions 74

Summary 76

II: Facebook Platform

5 An Overview of Facebook Platform Website

Integration 77

Facebook Platform for Developers 77

Facebook Platform 78

Registering a Facebook Application 79

Referencing a Facebook Platform Application 81

Facebook API, FQL, and XFBML 84

Facebook API and FQL 84


Summary 98

6 Registration, Authentication, and Translations with Facebook 99

User Authorization and Authentication 99

Logging In and Detecting Facebook Status 101

Logging Out, Disconnecting, and Reclaiming

Accounts 107

Connecting and Inviting Friends 109

Translations for Facebook 111

Preparing Your Application and Registering Text 111

Administering and Accessing Translations 113

Summary 114

7 Using Facebook for Sharing, Commenting, and Stream Publishing 115

Content-Sharing and Live Conversation 115

Facebook Share 116

Facebook Widgets 118

Social Commenting and Stream Publishing 120

Comments Box 120

Open Stream API 123

Summary 135

8 Application Discovery, Tabbed Navigation, and the Facebook JavaScript Library 137

Application Dashboards and Counters 138

News and Activity Streams 139

Games and Applications Counters 143

Navigating and Showcasing Your Application

Using Tabs 145

Configuring and Installing an Application Tab 146

Extending an Application Tab 149

Dynamic Content and the Facebook

JavaScript (FBJS) Library 157

Facebook Animation Library 157

Facebook Dialogs 160

Handling Events with an Event Listener 162

Summary 164

III: Google Friend Connect

9 An Overview of Google Friend Connect 165

Components of Google Friend Connect 165

Google Friend Connect Gadgets 166

Google Friend Connect JavaScript API 167

Server-Side Integration 167

Google Friend Connect Plug-ins 168

Using the Google Friend Connect JavaScript API 169

Installing and Configuring the JavaScript Library 169

Working with Google Friend Connect Data 171

An Overview of the OpenSocial API 173

OpenSocial API Methods 173

The DataRequest Object 174

Fetching People and Profiles 176

Fetching and Updating Activities 177

Fetching and Updating Persistence 178

Color Picker: A Google Friend Connect Application 181

Summary 191

10 Server-Side Authentication and OpenSocial Integration 193

Server-Side OpenSocial Protocols and Authentication Methods 193

Google Friend Connect Authentication Methods 194

OpenSocial Client Libraries 196

Using the PHP OpenSocial Client Library with Google Friend Connect 197

Google Friend Connect Authentication Workflow 197

Setting Up a Server-Side Application 198

OpenSocial Data Extraction Principles 201

Summary 207

11 Developing OpenSocial Gadgets with Google Friend Connect 209

An Overview of Google Gadgets 209

Anatomy of an OpenSocial Google Gadget 210

OpenSocial v0.9 Specification 214

Advanced OpenSocial Gadget Development 217

Creating a Google Gadget 222

Color Picker, Revisited 222

Testing, Tracking, and Directory Submission 230

Summary 233

IV: Putting It All Together

12 Building a Microblog Tool Using CodeIgniter 235

An Overview of CodeIgniter 235

The Model-View-Controller Architectural Design 236

Installing, Configuring, and Exploring CodeIgniter 237

CodeIgniter Libraries 240

CodeIgniter Helpers 245

Building the Basic Sprog Application 246

Stage 1: Creating the Registration, Login, and Home Pages 247

Stage 2: Extending the Sprog Application with Updates, Comments, and Likes 257

Summary 266

13 Integrating Twitter, Facebook, and Google Friend Connect 267

Implementing Twitter Functionality 267

Setting Up Twitter and Twitter-async Support 268

Stage 3: Extending the Sprog Application with Twitter Functionality 270

Updating a User’s Twitter Account 276

Implementing Facebook Functionality 279

Registering a Facebook Application and Adding Facebook Support 279

Stage 4: Extending the Sprog Application with Facebook Functionality 281

Implementing Google Friend Connect Functionality 292

Registering and Adding Google Friend Connect Support 292

Stage 5: Extending the Sprog Application with Google Friend Connect Functionality 294

Summary 301

Index 303


Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership