Stanford Students Present Facebook Apps to Class
Mark Hendrickson
37 comments »

I had a chance to drop in on a session of the class being taught at Stanford this quarter for students who want to learn about developing applications for Facebook (briefly mentioned here). Today’s session was a bit unique since the students were expected to give presentations about the applications they have developed so far.
Of course, the existence of this class is now a bit ironic, since today more news emerged about Google’s OpenSocial, a new alliance that, among other things, allows application creation with basic HTML and JavaScript skills. With Facebook, developers need to learn a new markup language called FBML, thus, part of the need for a class. That said, much of the Stanford class is dedicated to the concepts that are pertinent to application development on any social network platform. For that reason, the class is hardly invalidated - and is perhaps reinforced - by recent developments with OpenSocial.
All in all, I learned about 25 applications for about two and a half minutes each. Most of them were quite simple, as their assignment had been to create applications that drew the largest number of users (their next assignment will be to focus on user engagement). Like Facebook apps in general, the majority of the Stanford apps were also intended for diversionary (dare I say trivial?) activities. That’s not necessarily a knock against them since many - and perhaps most - users obsess with Facebook because it simply amuses them. Plus, it’s impressive that these students were able to put applications together with any decent functionality in the time they were allotted.
Here’s a rundown of the applications created by Stanford students listed in the order they were presented. Links to most of them have been provided since they are actually live on Facebook now, but keep in mind that these are still in development so they may not work completely, or at all for that matter.
Commonalities - shows you how many things you have in common with your friends, based on the information you have in your profiles
Compliment Box - give and receive complements that display on both your profile and a canvas page. Use predefined complements or write your own
Cooties - “like zombies on crack”, you can spread “cooties” among your friends. When a cootie passes on from one user to the next, a new strain is created that reflects user profile information. In the future, they might map the spread of cooties geographically or over the social network.
Dodgeball - throw dodgeballs at your friends. If they respond within an hour of the throw, they can dodge the ball. Otherwise, they get hit and score is kept to reflect the hit. Users must invite more friends to buy more balls to throw.
Get Wasted - add drinks to your online “bar” and mix them. Look at your friends’ drinks, add them to your fridge, and find out what drinks you can make together.
Funny Images - put funny images on your profile and share them with friends. Profile widget has buttons that let you view more pictures and rate whether you find certain pictures funny or not. Developers are thinking about allowing users to upload their own funny images.
Good Eats - create lists of restaurants that you recommend to others; view restaurants that are most recommended among your friends, and sort by type of restaurant.
KissMe - kiss your friends, basically by inviting them to use the application. Apparently this is the most popular application of the whole class in terms of the number of users it has (100,000).
MASHWB - play MASH with your friends; pick two friends and decide what their lives would be like together (the car they’d own, where they’d live, number of kids they’d have, etc.).
MatchMaker - match your friends up in interesting ways (as “heavenly”, “closet gay”, “drunken mistake”, or “missed connection”). Respond to how your friends match you with others.
PhotoGraph - like StumbleUpon for Facebook photos; discover your friends’ photos that you otherwise would have missed. Click a button to save photos that you like and they will be displayed on your profile.
Pickup Truck - send your friends pickup lines or actions. When they respond in kind, the exchange will be threaded like a Facebook series of messages.
Polls - ask your friends anything you want, provide multiple choice answers. Write your own questions or click “surprise me”. Polls get displayed on your profile page and results are shown in a pie chart.
ScribbledPhotos - draw graffiti on top of Facebook photos; just choose a photo and scribble on top of it with a pink marker. Draw on both your own photos and others’.
Send Hotness - figure out your ten hottest friends; invite your friends to help you with rankings. You must invite at least ten people to see the rankings.
SocialBuzz - share items with friends and gain a reputation in a particular area by sharing things that your friends like. Focuses on music sharing purposes right now.
Super Status - just like Facebook status messages, except you don’t have to deal with the automatic “is” verb. Developers plan to add tagging of friends in status messages.
The Giving Tree (previously “The Gumball Machine”) - brings into Facebook information about businesses listed on Kiva, the lending site for 3rd world entrepreneurs. Developers will eventually make it possible to give donations to Kiva through Facebook.
Tournaments - set up brackets for tournaments you compete in with your friends. Comes with wall where you can trash talk your opponents.
Wall of Shame - list up to five things on your profile page that you think suck. Describe what sucks, why it sucks, and the URL at which it sucks. View the things most hated in your network.
War - play the classic card game with your friends on Facebook. The application has been marketed using Facebook’s video app, which gets prioritized in people’s news feed.
Animated Gifts - send your friends animated gifts.
Guess Who - play the classic board game online using your friends as pieces. Click on profile pictures to flip people down.
Car Overload - addition to online car enthusiast community. Add the car that you own and the parts that going along with it. Car parts brought in from online auto sellers. Share parts with friends, comment on parts, and display your car on your profile page.
In addition to the student presentations, Blake Commagere stopped by to give a bit of a lecture about what he’s learned from developing applications for Facebook (you can blame him for being bit by zombies). He stressed that while invitations are currently the key way to attract users to your application, the news feed will become the primary method of spreading virally once Facebook allows applications to display items to people who haven’t yet installed them (currently, you will only see messages from the applications you have installed).
He also discussed how many corporations are banging on the doors of Facebook developers because these companies need engineers who can create an applications for them that build brand awareness. Apparently, these companies are so desperate for talent that they are willing to pay large sums of money and give developers complete ownership of the applications they produce. His overall point was that developers need not currently worry about going out and doing things on their own, because their talents are in short supply.
Finally, he highlighted a few interested aspects of Facebook’s seemingly unsubstantial “poke” feature. He pointed out the importance of the feature’s sexual undertones and argued that poking behavior can actually be tracked to better understand courtship, since is not “binary” (it matters how long people wait to poke others back, etc.).
Blake’s view on OpenSocial: it will exhaust him by providing even more work. He thinks it looks a bit shallower than Facebook’s platform, but he expects it to improve with time. He approves of FBML’s power and thinks platforms that depend on API calls have significant weaknesses.





Where’s the, “haha we kicked USC’s ass” app?
It’s next to the “our top hoops player was so dumb he skipped the class about Facebook apps”.
Ask Dave when he is going to come over here and teach it at Berkeley.
jesus i thought stanford had some pedigree. i think devry does a damn good job already teaching php
Its official: Stanford is a overrated POS school.
It’s Official! Facebook is soo awesome, that every person, institution, organization and Sunday School that makes a Facebook application is going to get a Feature Story written about them right here on FaceCrunch….Er, uh I mean TechCrunch.
Wait a sec. My 6th grade teacher just signed up for Facebook. And his kid is designing a Facebook application that tells him what time it is. Oh boy!! Stop the presses everyone!! This is big news!!!!
I really get the impression that TechCrunch writers don’t understand how things like FBML work. FBML is essentially a set of template tags that developers use to access Facebook-specific functions or insert HTML that’s restricted for security reasons (such as iframes). FBML is only used in profile boxes and Facebook-rendered canvas pages - developers can also use iframe canvas pages or non-Facebook sites/applications. Pretty much everything else client-side for a Facebook application is HTML, CSS, etc. All of the backend work is done via languages like PHP.
Technologies like FBML and FQL are not proprietary languages meant to replace HTML or SQL - they’re simply standard ways of interfacing with Facebook’s features HTML/PHP/etc. code. It’s not really that different from WordPress theme tags, or Smarty, or hundreds of other similar technologies used on the Internet for years.
People keep talking about OpenSocial being “open, standard” HTML/JavaScript, yet that ignores the Facebook-specific functions allowed by FBML (i.e. a friend search box that looks up friends’ names a la Google Suggest) and security/privacy issues. I still wonder how OpenSocial is going to prevent security problems with their code - if they simply allow any HTML/JavaScript, they’re crazy. As a former developer and administrator for a large ASP forum script, I remember many developer threads about how to handle HTML/JavaScript security.
Anyway, I keep getting frustrated when I see TechCrunch talking about “learning new languages” for Facebook apps - in my opinion, that really misrepresents the situation. I’ve developed in HTML and server-side languages for years - writing my first Facebook app was simple. Most of the work is in writing PHP (or standard language of choice) code, not FBML.
“Anyway, I keep getting frustrated when I see TechCrunch talking about “learning new languages” for Facebook apps”
HERE, HERE.
Learn FBML before saying it requires a PHD to use.
It is simple, more simple than HTML.
Mark… typo alert: it should be Compliment Box, with an “i” instead of an “e.”
Nice article… gotta check out those apps and see what’s new.
Facebook? never heard of it. What is it?
Tks for attending and taking notes for us…
7 - Joey: I understand that FBML is not all that different than HTML and is in large part just a subset of HTML. Although I didn’t intend to suggest that FBML required a PhD, my apologies if that’s how it sounded.
Thanks for the reply, Mark. I didn’t take your characterization that far, but I have felt that TechCrunch writers (not you specifically) have made it sound as though learning to write a Facebook app is akin to learning a new programming language (e.g. learning PHP or Ruby for the first time), while OpenSocial apps only require the HTML/JavaScript/etc. skills most web developers already know. That’s simply not true - extensions like FBML tend to be minor parts of a Facebook app, Facebook apps don’t even require FBML, and all web-based Facebook apps render in HTML/JavaScript/etc.
Anyway, I appreciate the response to my venting.
I suppose my feelings would be more directed at some of Mike’s articles rather than this one. And btw, thanks for the round-up - I’ve already installed one of the apps to test out.
I found this article interesting because of the forward-thinking nature of classes at Stanford, which is why silicon valley is still at the leading edge in this game. Here in the UK we would have to go through several board meetings, stretching over the course of a year I imagine, before approval for a class like this could be gained. By this time the industry will have moved on. This practical-level work shows how innovative Stanford is.
Good article. It’ll be interesting to see the next set of applications from the class, since that one will be focused on learning and teaching. Here’s the class website: http://credibilityserver.stanf...../facebook/
So many Stanford haters. So sad.
I am one of the developers for the Kiva app on Facebook (listed here as “The Gumball Machine” but the name has been changed to The Giving Tree). It’s a really cool app which lets Facebook users browse through profiles of people needing loans in developing nations for their small businesses (in say amounts of $200-$1000), and basically allows users to allocate money to these businesses in small amounts (of $1 - $5) using our money. So basically it’s sponsoring businesses without actually donating money - we provide the money from companies who wish to make non-profit donations and users just use this money to allocate the money to the business they want.
I was wondering if the author of this post could please update the name of our app (The Gumball Machine) and name it “The Giving Tree” since we have changed the name recently. The app is not yet listed in the FB directory - but will be soon! We are ready to get real money soon and come out with The Giving Tree v. 2.0. Get excited! Feel free to email with questions at: raghav.h at gmail.
Amit @1
“Where’s the, “haha we kicked USC’s ass” app?”
That app only gets released once every 6 or 7 years. Haha!
7, 13 - Joey, has put in a very good point and it really seems techCrunch writers have portrayed the whole this buzz of social apps shallowly and havent given their analysis thoroughly.
TechCrunch, plz note this point.
This sounds like a cool, applied class. As a student at MIT, I know that there is no way we would be given credit for a class like this.
Besides, I think this teaches the students the wrong mentality in the first place. 99.9% of the time Facebook apps should be an extension of the product, not the product itself.
Thanks for coming in today, Mark. We’re really excited that the teams in our class managed to LAUNCH 25 apps in 4 weeks - the next 6 weeks will be fun as we move into App 2.
Our students have gotten about 150,000 installs so far in total, and we’re optimistic that as all the teams iterate on their apps we’ll start to see some more interesting and viral concepts emerge.
We’re going to start doing a better job of sharing the insights and lessons from the class online, so stay tuned. The class website/blog is at - http://captology.stanford.edu/facebook for anyone who is interested in following along as we go.
Re: your comment- “That said, much of the Stanford class is dedicated to the concepts that are pertinent to application development on any social network platform”……BJ, Dave and I are currently talking about v.2 of the class next quarter (potentially) and OpenSocial/MySpace are definitely part of that discussion. What we’re doing on Facebook is really exciting, but the real takeaway is that the lessons we’re uncovering can (and will) be applied to apps built on any social platform, not just FB.
Dan (Facebook Class TA)
http://www.ackermangreenberg.com
Kewl!
Do I know how to invest or what?
Just a few of our MS “special sauce” tweaks and Facebook will really purr!
http://fakesteveballmer.blogspot.com
It’s light stuff, indeed. But these days light stuff can go pretty far (alaFB). I was curious about the Matchmaker app — not b/c I’m looking for love — but from a ’stickiness’ perspective, it may have endurance. If they had an app like JackSawJane, or whatever… something with practical value, FB might actually fend off the shallow grave of superficiality.
@MIT student: surprised to hear MIT wouldn’t want to offer an applied class… am i missing something, or isn’t MIT famous for great engineers? isn’t engineering all about applied knowledge? your call, but i guess it’s up to you folks as students to make the case for what you want to learn. at Stanford, students in computer science & tech business want to learn about what people are using / doing in the real world, so an applied approach makes the most sense.
re: approach, we have each 3-person team to build 1-2 apps on facebook as specific class outputs, however in addition to those practical objectives our course covers the following related topics:
* how to build social web apps (on FB now; other platforms in future)
* understanding persuasive technology as applied to user experience
* understanding viral distribution using social networks
* applying web metrics for product design & marketing
* learning about the business & marketing of startups
obviously as one of the instructors i’m biased, but i think our class is more relevant to today’s software engineers & entrepreneurs than most traditional engineering curriculum, both for economics & educational reasons. the skills & theory we’re teaching are immediately practical for our students, and have real-world impact.
we’ve also been fortunate to have involvement in the class from people at Facebook, Google, Slide, RockYou, and many other tech-focused companies, as both guest speakers & educators. it’s been a tremendous opportunity to see how we can bring both industry & academia together to create a great learning experience for students.
Along with the rest of the teaching team, Prof. BJ Fogg & I are still learning how best to teach the course, so we know we’re still in “alpha” ourselves. as dan mentioned above, we’ll likely be adding / refining our approach next semester, and adding info on how to develop for the recently-announced OpenSocial API standard from Google as well as ongoing interest in the Facebook platform.
but so far, both instructors & students are having a blast
- dave “not a professor, just a visiting lecturer” mcclure
http://500hats.typepad.com/
Hats off to the folks at Stanford.
We’ve been trying to get a similar course off the ground at Purdue: http://cs490e.wiki.zoho.com
Most new web technologies are going in the direction of simplifying the user interface design and making the separation between the Model (data + business logic), View (presentation) and the Controller (processing of user actions) very distinct. The idea is to have a very loose coupling between the UI and the application logic.
Bringing the HTML back into the design is in fact a step back. Web software companies like Google, Micorsoft, Oracle, Sun, Yahoo are realizing that the best way to separate UI design from code is to allow Information Architects and UI designers be best at what they do and work with granular UI components and technologies like Java Server Faces and not HTML. With new standards like JSR227 in work, we will soon see a nice abstraction for data binding UI components to back end data sources which will make UI design even more declarative. HTML + Code just does not scale with the new application trends and modern software complexities.
So HTML really is a step back from UI Component model. FBML is right along the idea of Java Server Faces, which makes Facebook a lot more innovative in that respect.
To give you an example of how backward HTML is to FBML, consider adding a “Friend Invite” page to your application. In Facebook FBML, this can be accomplished by writing three lines of text. In HTML, this would translate to writing over hundred lines of HTML, CSS (style definitions), Controller/Validation logic (choose java, php..).
Facebook is clearly a winner in this one. The next logical step would be for them to try to standardize FBML into a widely adopted “social networking markup”.
i think it’s great to see colleges having applied courses like that — it certainly expands the mind and ones creativity rather than learning everything from the book. nothing better than learning something practically and it ends up prepping someone better for the real world too. i wish i had a courses like that when i was in college — education has certainly changed for the better. with where education is heading, i am not at all surprised how much younger an average tech entrepreneur is compared to years ago.
Hi, I am one of the developers for Social Buzz. I wanted to give a clarification for our application. Social buzz is NOT “focused on music sharing purposes.” Music is one of many categories you can share, and was just the example used in class.
Social Buzz is about sharing content that interests you with your friends with the purpose of receiving feedback. The goal is to share relevant content to the right friends to get positive feedback and show your expertise on a given subject.
Great to know FB is really popular.
http://www.meetingflex.com
Social Networking + Video - Crap
@dave mcclure: I would most likely take this class if it were offered at MIT. But, I don’t think MIT would ever give students a reasonable amount of credit for this type of class. I say this for three main reasons:
(a) Classes at MIT have a strong theoretical foundation. Putting this type of class on the same level as Artificial Intelligence, Algorithms, and Distributed Systems seems wrong to me in some way.
(b) Most MIT students that are interested in applied systems would just code up an application on their own. They wouldn’t need/want a class to tell them how to do it. Perhaps this is a cultural difference between MIT/Stanford.
(c) MIT tends to focus on more general skills instead of learning the specifics of FBML or other proprietary APIs.
I still stand by my previous comment that these applications need to be an extension of some larger product. As such, teaching HTML, Javascript, CSS, etc. makes sense, but why focus only on FB apps?
Nonetheless, great job with the class thus far! And, I look forward to using some of these sweet apps.
@MIT Student: How many successful entrepreneurs come out of MIT and risk their necks to launch businesses, despite the near certainty of failure? Don’t hate on Stanford just because they have chosen to trade theoretical focus for real world, this-is-what-it-feels-like-to-launch-something-that-could-potentially-be-financially-self-sustaining-or-better experience. FYI, I didn’t go to Stanford, yet many of the smartest, risk tolerant, entrepreneurial people I know did. I would have traded theory for entrepreneurial adventure any day, and likely gotten my start earlier, with those influences. The Stanford kids are lucky to attract the type of entrepreneurial, change making individual like Dave McClure, who will lend access to his/her networks and experience, to expose them to the real Silicon Valley and life outside the classroom.
After my recent interview with Dan I was really keen to see what the rest of the students released and it looks like there is some really good stuff there.
Nice work, guys. If any of you are interested in joining a ground-floor social startup, check us out at BuzzPal - The World Is Your Party http://www.buzzpal.com. Cheers, chrisco