

Ask YC: How would you teach a Facebook Apps course? - bkrausz

A while back I was given permission to run a course at Carnegie Mellon entitled "Creating Facebook Applications".  I have free reign to do what I want with the course, but from conversations with people in the industry, I have narrowed down a few specifics.  Here's the info:<p>* The course will have 20-30 students in each section and will meet once a week for 80 minutes<p>* Students will work in groups of up to 3, and will develop 3 applications over the course of the semester (one sample "learn the API" application and two legit applications)<p>* There will be a product fair towards the end of the semester showing off the apps.<p>Since I'm sure most people here are pretty familiar with the past/present/future of the Facebook API, I figured I'd ask what you would like to see if you were taking such a course.  Specifically:<p>- What topics would you like to see covered besides virality, monetization, and scaling?<p>- How should I measure success of an app?<p>- How much should I guide the application concepts, should I restrict one of the 3 apps to "education themed", or should I let the students run wild?<p>- Any speakers I should get in touch with to see if they'd like to give a talk (I have a few in mind already)?<p>- Is it worth inviting VCs and other influential people to the product fair?  It's much further for most of them to travel than going to, for example, Stanford...<p>I'll be spending the summer preparing for the course, so any input to help direct my lectures would be greatly appreciated.
======
bjclark
Why make them create 3 apps? You want 30 super-extra-cool poke apps?

Why not make them make 1 app that actually does something? That means, no
pokes, gifts, quizzes, walls, etc.

Haven't you noticed that people HATE these apps? And that there are literally
tens of thousands of them? That's about all you're going to be able to create
in 1/3 of a semester, as a 1 day a week class, having no facebook experience.

Also, the api is not so difficult that they need to make a throw away app. You
can figure it out as you go along. It could all be covered in 80 minutes of
lecture.

Is it worth inviting VCs? No. If they make ridiculously useful apps, they'll
get attention without a VC circle jerk.

"virality, monetization, and scaling" How about you teach scaling, but only
when someone actually needs it. Monetization, I'd hope, is taught in a
business course, and virality could be covered with about a 10 minute
powerpoint. Instead, I'd talk to them about how to leverage the data and
social connections of their users, and how to use that to solve practical,
every day problems.

~~~
bkrausz
While I agree that I _hate_ those apps, the good ones do have a massive
userbase. While I do intend to discourage stupid pointless apps, I won't
explicitly ban them. Though 3 may be a little high, I may switch it to 2.

Keeping in mind that the course is meant to give a taste of something that
wouldn't normally be taught in an average course (forgot to mention that), I
think giving a taste of everything is a fair gameplan. Though talking about
leveraging the "social graph" is a good idea.

------
tlrobinson
Honestly, I don't think this is the type of course people should be taking in
college. At most it should be a component of a web technologies class.

~~~
bkrausz
It's a relatively light course, worth 1/3 the units of a regular course. It's
meant to give people a taste of something, and isn't a full-fledged course.

------
rantfoil
You should get in touch with BJ Fogg at Stanford. He taught a class recently
that was similar.

[http://www.readwriteweb.com/archives/what_stanford_learned_b...](http://www.readwriteweb.com/archives/what_stanford_learned_building_facebook_apps.php)

~~~
bkrausz
Already spoke to him a few weeks ago, he gave some great advice.

------
pius
I'd broaden the scope of the class to tackle the more general topic of
scalable viral applications and how to develop, integrate, and monetize them.

1\. Development. Introduce microframeworks designed for rapid development of
small footprint apps. Tackle initial product design issues with viral
applications.

2\. Integration. Show the students how to (1) integrate their apps with
Facebook and other services and (2) bridge their small apps to larger legacy
apps and other web-based services.

3\. Monetization. Here you can cover metrics, user feedback, virality, etc,
etc.

------
okeumeni
I don’t want to sound negative here. I personally don’t think Facebook itself
has any cool feature or technical challenging stuff for college student. I was
a grad student 15 years ago, I don’t think then it would have been a kick for
me.

I guess anything around the concept of Facebook and how it impact users
experience or usability stats; in short anything related to the frenzy around
Facebook will be much useful and educative to student.

To the question how much can you achieve with Facebook API? Very little
technically

------
danielrhodes
Some thoughts:

You should let the students run wild on at least one of the projects. Don't
limit their creativity. While it would be great if Facebook users were
interested in education themed apps, they are not. Just have them make apps
based on things they wish they could do on Facebook. Crazy and stupid ideas
can actually work, so mind as well not focus them in the wrong direction. The
more times they get to try these ideas, the more they will learn what works
and what does not.

Successful apps so far are all about connecting people in different ways and
allowing self-expression, so that should be emphasized. Multi-player games are
also getting big. From what I've seen, tools have not been so successful.

Since presumably not all the users will be adept at design, giving them a run
through of various interface/design elements of Facebook's design would help
in making better apps that users become comfortable with faster.

Facebook's platform has a number of different bugs and quirks (like its crazy
implementation of Javascript) which merit discussion.

Don't forget to talk about other services like OpenSocial, even if it's a
Facebook class.

------
alex_c
One subject you could explore is how the metrics given by Facebook affects the
perception of a "successful" app. The primary metric for applications is daily
active users, while Facebook itself defines an "active" user as someone who
logs in at least once a month - I always thought that distinction is
interesting. The secondary metric are total installs. Things like repeat
users, page views, pages/visit aren't as used. This has the strange effect
that large quiz apps - which tend to rise and fall in a matter of about a
month - are usually seen as more "successful" than applications with a steady
returning user base.

------
mrtron
I think success is easy to measure - the number of users for that app.

Regardless of how they do it, what it is, that is the 'success' of a facebook
app.

I wouldn't put any rules like no poke apps, if they can create a super-duper-
cool-elite-poke app that still takes off now, they are doing something right
on the marketing/viral side.

~~~
foulmouthboy
Measuring success that way is really just turning the class into a seminar on
viral marketing in facebook. If the class were for credit and one were the
competitive sort, it would be "easy" enough to send out spam mails and to
advertise the app as doing something amazing that it doesn't really do.

Rather than look for "success" metrics, I think the students might appreciate
a qualitative assessment of their efforts from bkrausz.

