Yet another linux nerd. Olivier Garcia's Blog

I’ve became recently interested in new types of data visualizations. Flight404 created some nice examples with music. Michael Ogawa created a program to view the history of software project : each modification of files, documentation, modules and such is animated, though time. He call that type of visualization “Organic information visualization”.

It’s pure eye candy.


code_swarm - Python from Michael Ogawa on Vimeo.


A few things about ruby

  • If you use emacs, live on the edge with the emacs-rails SVN trunk, that plays better with RoR 2.0+
  • The faker gem is handy if you have to create dummy data/pages
  • If you have trouble with the error unexpected tINTEGER after creating a new model, you may have used a ‘type’ column or another reserved word.
  • Test, test, test. If you don’t know Behaviour Driven Development (BDD for the acronyms junkies like me) check http://blog.daveastels.com/files/BDD_Intro.pdf

And a note about web security
I recently saw iphone-like slider that could be used as a captcha :



It consists in a javascript object that can be used to “unlock” forms (eg. by filling a <form> action), and may work against dumb bots. Unfortunatly, writing a function to bypass pure javascript protection is trivial (here by calling a simple handler) so this (cute) protection will be easily defeated. Client side / javascript protections won’t protect against specifically written bots. The only solution so far is a captcha based on image / heavily distorted text.



An excellent video work by So-Me / Machine Molle


Licenced under Creative Commons by-nc-nd


Danmaku (japanese : 弾幕) are shoot-them-up games where enemies fire at you loads of bullets. Screen can be filled with them, and playing such games requires great skills.

I just found a Gosu playing two players at the same time with his two hands.




As seen on Geektube.fr



It’s quite old, but it was a very interesting and disturbing idea : Virgin organized an art contest where submited artworks would be seen by more than 2.1 milion people from 26 different places.

A contest for the design of sickbacks. (Be sure to look at the gallery, some artwork are utterly good)


psyche

If you’re using the 1.2 beta of CakePHP framework and played a bit with Ajax, you may have encountered that problem. For the impatient folks, one way to fix it is to set the security settings to medium (you may put that in your config/core.php) :

// Ask CakePHP to be less picky about security
// notably to session timeout
// and session hijacking checks.
Configure::write('Security.level', 'medium');

Now, here’s the reason : with high security settings, CakePHP tries to prevent session hijacking by renewing and checking session ID for every request - ajax based request or not.

The problem is that Ajax requests launched at the same time have the same session ID. CakePHP will accept the first processed request and generate a new session ID, so all the remaining Ajax requests with the previous ID won’t have a valid session : CakePHP will think they are hijacking attempts.

It is a plain classic race condition problem.


web-design.gif
As seen on Frederic de Villamil’s blog