HTTP 200 testing Django applications with Facebook

I've been writing a simple Django application for Facebook these days. I'm really enjoying how clean Django's code is and its very well thought classes and methods. It really makes web development faster.

I started with some simple HTML running locally on Django's development server and then updated my templates to output FBML based on the value of a variable I called IN_FACEBOOK and inserted into my settings.py.

After adding PyFacebook to talk to Facebook's API from Python I configured my new application according to Facebook's instructions.

Finally I changed my router's port forwarding settings to allow Facebook to see my home server's public IP, which is dynamic and provided by my ISP.

Everything ran ok up to this point and then I started noticing that after each change on my application's code Facebook returned a blank page with an HTTP 200 message.

It seemed like a connection issue and I moved the application to my real server, which has a fixed public IP, but the problem persisted. After every code change Facebook returned a blank page with the HTTP 200 message. I needed to refresh the browser three or more times to get my application loading.

My application is still on development but even so I decided to replace Django's server with an Apache and mod_python setup.

Presto¡ That was the source of the problem. It seems Django's development server response time is too high for Facebook.

Some hints about overriding themes in Drupal 6

There's a lot to read and absorb on the new Drupal 6 but the good news is that if you've spent a while hacking version 5 you will need just a few days to get up to date.

One of my favorite changes is on theming. Now every module can provide its own .tpl.php files. To override them you just need to copy them to your theme directory and start hacking around.

First ten years of Google

Yep, happy birthday Google.

Let's celebrate by visiting the timeline of the first ten years, a historic document including from the first days at Stanford and the now famous Bechtolsheim's US$ 100000 check up to Chrome.

Fix redirect problem when signing up for Google App Engine

Google App EngineIf you want to sign up and start playing with Google App Engine and already have a Google Apps account (like a Gmail box using your domain) you may be experiencing redirect loops on your browser. I saw it with Firefox and Opera on Ubuntu and it seems to happen on Safari for Mac too.

Piwik, a replacement for Google Analytics?

One of my client's sites stopped tracking statistics with Google Analytics and I decided to look for alternatives. During my research I found that many people don't like hosting their visitors stats on external servers or waiting 24 hours to see them updated.

My first try has been Piwik, it runs on PHP 5, it's easy to install and uses Ajax for its widgets.

Piwik is open source and even if it's on a very early stage of development I suggest you to take a look.

Mark Boulton and the redesign of Drupal.org

Mark Boulton is working on the redesign of Drupal.org, that's great news. I've been following Mark's work for many years and I really enjoy his writing, his series about grids and typography are fantastic pieces.

But what's even better is that Mark and his team have decided to open their design process, a very brave and risky move, and they've called it design by community.

I don't know if this will work or not but in any case I'm sure we will all learn a lot from it.

How To Delete Invisible Layers In Gimp

While working on the new design for Ventanazul, an slightly more complex project than usual, I started to notice a small but very important detail missing from Gimp: there's no way of removing, with just one action, all invisible layers.

Finally, A New Ventanazul Design On Its Way

Yep, I can confirm the new design is finally progressing. I have a total of ten mockups planned, with three already done. The concept is complete and all wireframes are in place.

This week I'm on the final touches with Gimp and should start hacking HTML and CSS next week to later move everything to Drupal 6. I don't want to throw a release date yet but I'm pretty sure it will be before leaving to Cancún.

I'm documenting all the process and will have some interesting articles about it when the site is launched.

I can't, well, I don't want really, tell you more but here's a small preview.

Ventanazul - Chancho de madera

First Problems For Mygazines

Mygazines, the site for sharing magazines, just needed a few days to start attracting legal problems from the major players in the publishing industry.

Magazine Publishers of America has sued Salveo Ltd, the owner of Mygazines, and the Periodical Publishers Association, in the UK, is suggesting its members to do the same.

Mygazines, Sharing Magazines Online

Mygazines is a new service that allows sharing magazines (scanned versions with a nice resolution) and read them using a simple but practical Flash viewer.

According to the press release this is similar to what you dentist does when he puts a few magazines on his waiting room. If you say it that way it sounds quite natural and legal, isn't it?

Is Mygazines testing the waters to see which problems attracts? There are many copyrighted magazines on the site, PC Magazine, The New Yorker, Cosmopolitan, to name just a few, and I think it's illegal to share those, to reproduce them actually.

We all know that the big money for many magazines is in advertising and Mygazines is helping them to reach a bigger audience; however, I wonder what will publishers like Marvel, who offer their Digital Comics service, do if a few issues of Ultimate X-Men appear on Mygazines.

What about Zinio?

magazines online

Is Mygazines part of the next revolution in digital content or just a new idea about to fail?