July 2008 Archives

Pay to Play

Facebook released a bit more detail about its Application Verification Program today. While it did not offer specifics, there is one big piece of news that wasn't divulged at F8: there will be an application fee and it will be non-refundable.

The application fee may as well be an application fee because it won't be long before the "Verified by Facebook" logo will be the deciding factor in a user's mind about whether to authorize an application. Facebook applications have a certain taint at this stage because of the hokeyness of a large number of them. Those lacking the badge will bear a stigma, especially if Facebook includes the badge on the authorization popup.

At some point, you will pay to be verified because otherwise your app won't be used. I hesitate to call this a shakedown because we don't know the price of the application fee. They could not have instituted the fee at the inception of the developer platform because it would have limited the number of applications. Adding it at the tail end of a rich ecosystem really strikes me as mining. So again I have to wonder why Benjamin Ling didn't mention it at the keynote.

I suspect that it was because the fee would have undercut the user-centric theme at this year's F8. The new profile design, the statement of core values, and the changes to the application developer program all were justified as being necessary to re-establish trust and value for the end user. But this fee plus some of the punitive measures points towards a more "business of Facebook" rationale. Not that there's anything wrong with that, but it'd be nice if it was stated frankly.

F8 Wrapup

Prior to attending F8, I believed that the new Facebook profile redesign was motivated by de-emphasizing third-party applications, making more room for ad space, and enabling more integrated ad placement. It was such a radical change and I was aware of the pathetic CPM of the Facebook ad inventory, so I concluded that this move was about Facebook the business.

Having been through three sessions and two keynotes, I now think that the changes are truly user-centric. The justifications presented today by very earnest and sincere Facebook developers and designers ring true to me. In case you didn't want to wade through my copious (and possibly inscrutable) notes from the sessions, the basic rationale behind the radical revamp is to emphasize the feed as a social stream and build user trust by limiting and segregating third-party applications.

They made the excellent point that the current profile easily becomes unwieldy and forbidding after adding just a couple of applications. The tabular nature of the new profile gives the user control over what to emphasize and what to display. The more time I spend with the new profile, the more I like it.

At the same time, I've been working on the open-source framework Facebook.NET in anticipation of the concomitant API changes. At the API level, Facebook has frequently dropped the ball. There are breaking changes, insufficient documentation of other changes, and frequent revisions that aren't discussed unless you happen to notice slight alterations to the documentation. It's truly frustrating due to the flux even though it's supposedly stable and released. I'm hoping that this is the last significant API change for awhile, or, better still, the Facebook platform team realizes the cardinal rule of API design: maintain backwards-compatibility at all costs.

[UPDATE (7/27/2008): I had written this on the plane coming back from F8 but I forgot to publish it when I got connected back on to the Internet.]

Dennis Miller on Barack Obama

"The only thing I worry about Barack Obama is his reaction whenever he's chided. I don't even notice the color of his skin, I do note the thinness of it though." — Dennis Miller, "Miller Time" segment

[NOTE: This is the inauguration of a brand new category—the first new one in years—and one that I hope will be productive as I come across quotations I like. My commentary will be spare.]

Feed and Social Distribution Session

Talk with Jerry Cain, Ari Steinberg (Manager of News Feed Team), and Tom Whitnah.

  • Use the right channel to deliver the right message. Overview of the old ways of communication with users. Requests: when one user wants another user to take a specific action. Notifications: user-to-user to tell a user an action has been taken towards her, app-to-user to tell a user about something important to her from the application. Feed story: when a user wants to share actions they've taken.
  • Feed is the center of communication on Facebook. Old: single stream, not interactive, only 25 slots. New: top stories as highlights, multiple streams of news, more room for application stories to appear, commenting on stories.
  • feed.publishTemplatizedAction: disaster, user-specific token sets made aggregation very difficult.
  • New methods: feed.registerTemplateBundle and feed.publishUserAction
  • Allow template bundles to include several templates per story size, ranging from user-specific to more general. You can define different templates within a bundle to handle 1, 2, and many aggregated stories.
  • Before you launch your application, think about the sort of templates you're going to be using. Calling the API method only allows for one-line stories. Feed forms: FB.Integration.showFeedDialog()
  • Great communications = happy users. Respect users' attention and their friends' attention.
  • Higher acceptance, lower ignore = more requests allocated.
  • Notifications: user-to-user, can be sent to any non-friends who are also users of the app; app-to-user, allocation is approximately seven per week per user.
  • More read, fewer hidden / spam = more notifications allocated.

Q&A

  • Allow access to News Feed? Nope.
  • Handle instead of a bundle ID? Not yet.
  • Facebook applications versus Facebook Connect? No differentiation.
  • (me) Disclose allocations per user instead of aggregate? Can put it on the short-term roadmap, but wary of disclosing who is a tattletale.
  • Statistics data available via an API call? Someone was working on that but he didn't know the status of that work.
  • Set privacy in News Feeds? Not at this point but hopefully someday.
  • Timeline for new statistics to appear? In the next week or so.
  • Give visibility into an app's spamminess? Talked about it with the Reviews application but have found some spamminess within the Reviews application itself.
  • What kind of history for allocation reductions? Spamminess metrics last about a month.
  • Expand News Feed on friends to see more of a story? Haven't really thought it.
  • In stories themselves, possible to see how many times one was read in News Feed? Would like to, but not a high priority.
  • Add or view comments, available through API? Probably through fb:comments, not allow to add comments programmatically due to spam concerns.

Talk by Ruchi Sanghvi and Josh Elman. Here are my rough notes on the presentation:

  • The never-ending profile was the motivation behind the redesign.
  • Emphasizing feeds: increases engagement and encourage content creation
  • Simpler, cleaner profiles: easier profile navigation, clearer identity, more control
  • More control over profile: users decide about tabs, when to publish, and look of stories
  • "It all starts with the Wall": feed, publisher, profile boxes
  • Stories: one-line, short, or full (up to 500x700). Done with feed forms, using FBML or Javascript.
  • Publisher: different versions for user and friends,
  • Info tab: deep integration with structured information, should represent information about what the user's done. Info stuff is enabled through canvas page button using FBML or Javascript.
  • Tabs: provides the richest expression, hybrid of a profile box and canvas page (solely FBML, no advertising), no caching, 760 pixels wide, no autoplay, fb:visible-to-owner
  • Profile boxes: profile_main -> narrow, on Wall, wide and narrow appear on Boxes tab, Bookmarks will be migrated, must manually add a bookmark otherwise.
  • New permissions/lack of adding: reduces friction. First access provides user ID, friends, pic and names, publish feed stories, send requests. Add require_login to links to trigger permissions solicitation.

Q&A:

  • How do users first get into the app if they're not adding?: About page much more static.
  • Should apps offer all integration points and let users decide or pick some?: Both, but mostly the latter.
  • Is user info going to be available to all? Still limited to privacy settings.
  • What can the Publisher do?: Rehashed already shown options
  • Smiley app? Uses shared preferences, which has been available for 9 months
  • Can you detect whether a user is in new profile? Yes, part of API.
  • Widened Wall, is it final? Yes.
  • (from me) Extended permissions, is the Wiki list definitive? Yes.
  • Engagement metrics, what are they? Bunch of them. User can reorder boxes.
  • What are these info sections? Not a mini-feed, opposite of one. More for static information. Button on canvas page shows example, the user allows it, adds it to profile, and edits inline.
  • What new stats will be available, users who have added tabs? Yes.
  • Logged in user for tabs is viewer or user? Viewer. Tabs focus should be on the user.

Benjamin Ling Presentation

Benjamin Ling, Facebook's Director of Platform Program Management, gave a talk about the state of the platform. Here are my raw notes while listening:

  • Ecosystem isn't just devs and users. It's also ad networks, app dev companies, and academics
  • Guiding principles: meaningful, trustworthy, well-designed
  • Meaningful apps are: social (apps make the best use of the social graph. Example Lil' Green Patch), useful (solve real user problems. Example Carpool), expressive (helps users share about themselves. Example Graffiti), engaging (sustain user interest. Example Who Has the Biggest Brain?)
  • Trustworthy apps are: secure (protect user data and honor privacy), respectful (value user attention and time), transparent (clearly explain features)
  • Well-designed apps are: clean (intuitive and easy to use. Example Local Picks from tripadvisor), fast (allow users to engage more), robust (stable and reliable)
  • Waiting for the hammer to drop about the consequences of these principles…
  • So what they're going to do: 1) partner more closely with developers (garages, forum, hiring community manager—no mention of Wiki, damn); 2) keep ecosystem safe for users, fair for developers; help you create more, better apps.
  • Announcements: a) new and improved developer site; b) fbFund recipients; c) new fbFund ($2 million over next two months -> 25 semi-finalists get $25K -> users select 5 finalists, who get $250K); d) recognize apps that embody our principles (Facebook Verification—applications accepted starting September 1st, Facebook Great Apps program—more integrated experience, more content, early access—iLike and Causes); e) kill apps that violate policies; f) Facebook Connect for iPhone; g) supporting and contributing to the Open Web Fondation
  • Beta of Facebook Connect in summer, open to all users in fall

Zuckerberg Keynote

Here are my notes on the Zuckerberg keynote.

  • Start: boring.
  • Important to have a purpose behind the mission of the movement. *snore*
  • He calls it a "vacation" but he's describing a "vision quest."
  • An hour and a half of this. Uh oh.
  • "Mission: Give people the power to share and make the world more open and connected"
  • 90 million people are on Facebook as of July 23rd
  • 32% US, 68% international
  • Opening up the translation tools to application developers!!
  • 400,000 developers
  • Billion dollar ecosystem surrounding Facebook, if VC equaled real money
  • "Virtuous cycle of sharing" around feeds
  • iLike primarily spread and shared through feeds
  • Lessons learned from the last year: a) listen to developers more; b) build the right tools; c) need to reward good citizens and punish the bad behavers; d) simplicity and scale are important for sharing
  • Goals of next evolution: a) give people more powerful tools to share; b) Reward applications that help people share; c) Make things simpler
  • Feed sharing is contingent on enabling sharing
  • The new sharing paradigm will enable apps to allow friends to post stories to friends feeds
  • Showed the Bill O'Reilly Flips Out video
  • Demoed the new profile—without a hitch.
  • He thinks decentralization is the future. It sounds like using the Facebook API as a glue, which sounds like even less monetizable to my ears.
  • Facebook Connect is the product behind that vision
  • Goals of Connect: a) build the same kinds of apps across the Web; b) share information across the Web; c) Control your information across the Web
  • Facebook Connect demo time: Digg's up first
  • Digg's going to use Facebook as OpenId, essentially—an authentication source
  • Six Apart's up: MT plugin to integrate FB with comments, also auth source, publish it onto your feed using Publisher.
  • Citysearch demo: see friends' reviews, publish reviews to profile
  • Profile launched Monday, switchover over a period of time
  • Facebook Connect API keys available today, beta soon

Off to F8

I'm getting ready to fly out to San Francisco for the F8 Conference put on by Facebook. We're leaving Phoenix at 7:20 AM and returning to Sky Harbor by 10:30 PM, so it's going to be a long day but very much worth it—I hope. I plan to blog my raw notes for each session throughout the conference for my colleagues that couldn't attend as well as posterity.

Quick Review of The Dark Knight

I saw The Dark Knight on Friday morning but I don't feel comfortable reviewing it just yet. I want to see it again just to make sure of a few salient points. I plan to see it again in a week or so at an IMAX theater to get the full experience. Until then, let me just say that I think it is the best Batman film ever. I loved Batman Begins and this one was much, much better.

Heath Ledger's portrayal of the Joker was amazing. He played the nihilism perfectly. Michael Caine as Alfred describes him thus: "Some men just like to watch the world burn." Ledger makes you believe that that is his exact motivation. I think he really stole the show and would deserve any Oscar that he'll surely be nominated for—even though the Academy would just do it because of his untimely death.

In the end, I highly recommend that you see this movie if you like Batman at all. It's audacious, visually stunning, and exceedingly well-acted. I'm seeing it twice and I can't remember the last movie I saw twice at the theaters.

The Future of Conservatism

This presidential election feels significant to me and I've stepped up my political blogging because of it. But I just can't shake the sense of futility of it all. I think Barack Obama is the most liberal candidate we've seen in my entire generation. He scares the pants off of me and I worry that he might cause serious harm to the nation's economy, medical system, and psyche. It can't be irreparable because it is, at root, all man-made and thus reversible, but there's been a lot of programs that have been implemented that won't be rolled back anytime soon.

But John McCain is no great shakes and there's plenty on his platform that worries me almost as much. His repeated calls to service and self-sacrifice are nothing but trouble. His stance on global warming is nearly a match of Obama's. He lambastes business at every opportunity and his campaign finance regulations have been the definition of chilling.

So when I attended the Goldwater Institute's panel discussion on The Future of American Conservatism, I wasn't particularly hopeful. While I wasn't expecting an answer of "there isn't one," I didn't see much of one left. The panelists were David Boaz of the Cato Institute; Mickey Edwards, an author and a founder of the Heritage Foundation; and Al Regnery, president of Regnery Publishing. It seemed to be a pretty stellar group, each of whom have, at various times, played important roles within the conservative movement.

For David Boaz, conservatism is fusionism, the style of conservatism popularized by Bill Buckley and the National Review. It is an unholy alliance between the traditional conservatives, commonly thought of as social conservatives, and libertarians. The movement reached its pinnacle under Ronald Reagan, when it effectively acquired access to political power. Boaz thinks that the fusionists wouldn't like today's big-government conservatism.

For Mickey Edwards, conservatism is rooted in American exceptionalism and, more specifically, the Constitution. For him, Barry Goldwater freed the movement from the more European-style conservatives and that is what led Edwards into politics. But he is amazed at far the movement has degraded: Bush's signing statements are de facto legislation, assertions of executive privilege by Bolton and Miers are unprecedented abuses of power, and McCain et al.'s outrage at the outcome of the Guantanamo case is reprehensible. His conclusion: "Unless we fight back, the conservative movement is gone."

Al Regnery was the most optimistic of the bunch. He cited such promising signs as the wonderful students he's met working with the Intercollegiate Studies Institute, the ubiquity and prominence of the Federalist Society, and the fact that Justices Alito and Roberts were not Bush's original choices—he buckled to pressure from the conservatives.

As you can see, the discussion didn't really settle the matter. I went there thinking that now was the time for political action and I wanted to hear their take on how that might best be achieved. So I asked them separately after the panel if meaningful political change could ever occur without a cultural change. And each of them looked at me like I was completely nuts, as if the two were entirely separate and had nothing to do with each other. For me (and Ayn Rand, incidentally), political change of a lasting sort must be moored by a supportive culture. The history of America is one of a great cultural shift that led a significant political one. I think the culture of today is much more hospitable for American liberalism than free-market capitalism.

So I've decided to become more activist. I've given up on any notion of changing the GOP from within—I think they're largely a lost cause—and plan to focus my efforts on making the case for capitalism and egoism. It's a hard battle that will likely outlast me, but the political fight is premature and would just be rolled back with the next conservative or liberal win.

[UPDATE (7/21/2008): I forgot to mention my best piece of activism that night. I asked Mickey Edwards if he had read C. Bradley Thompson's "The Decline and Fall of American Conservatism" and he hadn't. But I had come prepared with a printed copy of it, which he gladly accepted with interest. He mentioned that he was a fan of Ayn Rand and had read all her works, although he's one of the ones that denied my cultural support theory. We'll just have to see if my activism bears any fruit.]

Guess I'll Google

The 404 page for Apple's search forums helpfully offers a link to search their forums. If you click it, you get this less helpful screen:

Search Denied!

I thought I had noticed something missing recently in the discussion forums, but I figured that the search capability was a figment of my imagination. Now I know that it was there at some point and then taken away at some later point. Very bad form!

[UPDATE (7/16/2008): Oh. They could have at least put a link to that announcement on every page so I would've seen it. Oh. They did. Sorry, Apple Discussions Administrators!]

Garnered a Chuckle

I love it when I come across evidence of a sense of humor when reading technical documentation. I bet someone at Apple had a good time crafting this:

Listing 1  An hour and a half from now
NSDate *today = [NSDate date];
NSDateComponents *offsetComponents = [[NSDateComponents alloc] init];
[offsetComponents setHour:1];
[offsetComponents setMinutes:30];
// Calculate when, according to Tom Lehrer, World War III will end
NSDate *endOfWorldWar3 = [gregorian dateByAddingComponents:comps toDate:today options:0];

For those that don't get the reference, watch this video of him performing it. (My familiarity with the song was from countless Sunday nights listening to Doctor Demento on the radio.)

Review of Wall-E

I expected Wall-E to be an anti-materialist, anti-capitalist, and environmentalist piece of tripe that I was going to regret seeing or exposing my children to. But I have not found a Pixar movie yet that I didn't enjoy to some degree. (The Incredibles was my favorite followed by Ratatouille and A Bug's Life. Least favorites: Monsters Inc. and Finding Nemo.) I had these expectations because the liberals I follow raved about it and the conservatives I follow despised it. I think that means that the actual meaning of the movie is deeper than it appears, which allows viewers to see on the surface what they would like.

The movie, in case you're not familiar with the basic story, is about a small robot that's been left on Earth to clean up its trash for the last 700 years. The robot, Wall-E (who is given voice by Ben Burtt, the same guy who did R2-D2), develops something of a personality as he scours the trash for interesting items. One day, a spaceship lands and emits another robot called Eve, a probe robot (designed by Jonathan Ive, the guy behind the iPod), who is on Earth looking for signs of plant life. She was sent there by the captain of a ship containing the entire population of Earth. The humans, having consumed Earth right into inhospitableness, abandoned the planet and left robots to clean up the mess in preparation for their eventual return.

So you can see why both groups see the movie as they do. For the liberals, it's a parable of humanity's future if we don't Do Something. For conservatives, it's a propaganda piece put out by Hollywood liberals completely out of touch with reality. On a superficial level, I think they're both right. The future in the movie is run by a single corporation that provides everything for the people; the luxury spaceship that they live in is completely automated and they needn't lift a finger; and the Earth is so uninhabitable that nothing grows there for centuries. That's pretty damning stuff, a sort of hyperbolic An Inconvenient Truth.

But it's not the central theme of the movie. For me, the core idea of the movie is summed up by the captain, who exclaims "I'm tired of surviving, I want to live" when faced with a choice between continuing life aboard the ship or returning to Earth and starting a new Jamestown without all of the resources or helpful Indians. In that moment, the captain has realized that life is about values and the struggle to achieve them. By having everything handed to him and letting his life be run on autopilot (literally in his case), he's missed out on a life proper to a human being. Furthermore, in a deliciously ironic twist, the robot is the value pursuer and it inspires the captain to reclaim his dignity.

For me then, the movie was about working for what you want and accepting responsibility for your life. There is always a temptation for us to take the easy way out: to let others do our thinking for us, to let others pander to us and become our masters, to let others provide for us. But that is not the good life: it is a betrayal of our very humanity. Sometimes it takes an unusual source to remind us of that.

(NOTE: It was Jennifer Snow's review that made me decide to give the movie a shot. Thank you, Jennifer!)

[UPDATE: My wife reminded me of one of the best parts of the movie. Whenever Wall-E, who was solar-powered, got his morning charge and started up, the chime is the Mac startup sound. I'm so proud of her!]

Movie Reviews, Twitter-Style

Here's the latest installment of my quick reviews, slightly larger than normal because I had forgotten to do this sooner. For a change, let's limit the review to a maximum of 140 characters—à la Twitter:

  • Duck, You Sucker (Netflix): Proof that even Sergio Leone made stinkers. I wouldn't have thought so had I not seen this. Absolute waste of James Coburn.
  • The Lives of Others (Netflix): Absolutely great movie about the corrupting influence of the Stasi, for both the people and the Stasi themselves. Five stars, two thumbs up.
  • Tom Green: Inside & Outside the Box (Netflix): Do not consume too much in one sitting. It will seriously distort your perspective. If you don't already like Tom Green, sit this one out.
  • Sullivan's Travels (Netflix): Hokey 40s movie about whiny director who wants to get in touch with the common man. Best part: reminded me how far we've come in movies.
  • The Assassination of Jesse James by the Coward Robert Ford (Netflix): Rambling, dawdling, meandering, and self-important epic that concentrates too much on Jesse James as folk hero and Robert Ford as idolator.
  • The Siege (Netflix): FBI can't stop terrorism. Army seals off Manhattan and imposes martial law. This is how Hollywood views us: chomping to intern them Muslims.
  • The Onion Movie (Netflix): The Onion cashes out. Watch the podcast, it's better. This generation's Kentucky Fried Movie? Perhaps. Best part: http://xrl.us/Cockpuncher
  • The Bucket List (Netflix): Damn it, you made me enjoy Jack Nicholson. Maudlin but mesmerizing. Sappy but sentimental. Ending is dreadfully, utterly predictable.
  • Death at a Funeral (Netflix): At funeral, kids find out dad was having an affair with a midget, who wants money to keep quiet but gets killed. You-know-what ensues.
  • My Beautiful Laundrette (Netflix): Ambitious guy steals drug money to renovate laundromat. Hires school chum turned tough. Screws same in back room. Why did I rent this?
  • Mad About You: Season 1 (Netflix): This is the reason why Helen Hunt was on my list for so long (and why I own Twister). Mercifully M.A.B.E.L.-free.
  • Duck Soup (Netflix): "Marx Brothers at their sidesplitting best." I'd hate to see their worst. Making fun of Hitler shouldn't be this bad. Couldn't finish.
  • Pacific Heights (Netflix): Michael Keaton rocks as a creepy renter who just won't leave. Good subplot involves oppressive San Francisco government and cost of housing.
  • Battle Royale (Netflix): Japanese bad kids dropped on island with weapons and only one can survive. I wouldn't be surprised if it were a true story, which it isn't.
  • The Americanization of Emily (Netflix): James Garner and Julie Andrews. That was enough for me, but the wacky plot kept it interesting and the anti-war rant wasn't overblown.

If you're interested in being Netflix buddies, feel free to follow me. I've rated a lot of movies.

About this Archive

This page is an archive of entries from July 2008 listed from newest to oldest.

June 2008 is the previous archive.

August 2008 is the next archive.

Find recent content on the main index or look in the archives to find all content.

Feedback to