Comiker is a cartoon maker I wrote to learn Python programming. I am an avid reader of webcomics like Dilbert or xkcd where the drawing is quite repetitive and I thought it would be great to let people create their own comics even if they cannot draw.

I used the Flask microframework after reading that Quora makers would have used it instead of Pylons if it had been there at the time they started.

Comiker uses twitter OAuth for login. I initially wanted to make it with Facebook Connect but recent evolutions (like the removal of post-authorize callback) made development on a local machine a real pain.

Comiker is hosted on Google Appengine (GAE) which provides a great service for free as long as your site does not get millions of visitors per day. The datastore API is great and my code was much lighter after I ported it from sqlite3 to the datastore. The main issue though was for image manipulation because GAE did not provide the standard Python Image Library. Instead it had its own images API which did not allow text rendering. I had to use pybmp module which is a pure Python bmp module with TTF rendering, tweak it and mix it with Google images API.

Eventually Comiker allows comic ranking like (now defunct), but uses Microsoft TrueSkill algorithm which is an improved Elo system, especially in that it handles new players in a much cleaner way.

En lire plus sur : projets