Facebook App Woes
Tuesday, November 24th, 2009I’ve been working on a Facebook iframe app for the last few weeks, and it’s been an adventure to say the least. For those that don’t know, there are two ways to develop Facebook apps, the iframe method, and the FBML method. The iframe method allows you to basically embed content from your own server in an iframe within Facebook’s chrome, while passing back and forth the necessary Facebook data. The FBML method provides you with a markup language that allows you to more tightly tie your app’s design in with the native look and feel of Facebook. This route keeps all your content on Facebook’s servers.
For our app, we went with the iframe option, because we had lots of data exchanges going on with our own database, and users needed to upload pictures as part of using the app. During testing, (in various flavors of IE, Firefox, and Safari on both major platforms), no real problems were encountered with the functionality of the app that weren’t resolved before deploying. Once deployed, however, some users were encountering problems that seemed to be random glitches that we couldn’t really troubleshoot. The API methods for getting a user’s photos sometimes didn’t return anything, no errors, no photos, nothing. This actually seems to be a known problem, and an obviously annoying one. Also, sometimes the user would be taken outside of the iframe, and directly to our server, which is obviously not ideal. This was fixed with a kludgy workaround, where all links were pointed to the app’s URL on Facebook, with our URL parameters appended. This, however, is going to make tracking less accurate with Google Analytics, since they are technically not links within the iframe any longer.
So I’m curious, has anybody else had problems when developing Facebook apps? Does it feel as messy to you as it did to me? It’s been an interesting experience, and I just hope I’m not the only one that feels this way after my first real Facebook app.

I’ve been reading up a bit on Python lately, which is a pretty popular high-level programming language used for a variety of applications – including web and desktop apps. It’s used extensively in a lot of Linux applications, and Google utilizes Python in a lot of their work. The performance of the language seems to be a key selling point, as does its refreshingly simple syntax. Naturally, I’m curious about using the