Sunday, December 23, 2007

Victim of success

Much has happened in the last month with genetify and my life in general. It has lead me to a new job in San Francisco where I will continue my work on optimization. Unfortunately it has also aggravated my chronic wrist and hand injuries so it costs me too much to continue writing in this blog. The last thing I will say is that it will be interesting to look back on these entries in the months and years to come. The story is far from over.

Deja vu

More sore and more tired, I announce the addition of more dynamic graphs to genetify, this time using Google Charts API.

http://genetify.com/walkthru.php?p=goals

Friday, November 23, 2007

graphs

Sore and tired, I write this post to mark the addition of dynamic graphs to genetify. It was a lot of work, on the one hand, because graphic device drivers are uncooperative, and on the other hand, because my graphing library of choice, the R statistical programming environment, was new to me and it has been used rarely behind a web server. Graphing in R, as good as it is, was never meant to serve a webpage. If it all sounds like it is another lesson in choosing standard technologies to solve a problem, it's because it is. The payoff, I hope in this case, is the analytical power of the R environment (second to none) and the promise of better web server integration thru FCGI or an apache module, of which there is one I discovered.

Wednesday, November 14, 2007

Friday, November 9, 2007

More data

Other progress that I neglected to write about in the past week:

* Foreign key constraints
* "browscap" recording
* Geo location recording
* Referrer recording
* Switch to InnoDB

All this has to do with getting maximum possible data from a visitor when they record a goal. In the future, genetify may be able to do something intelligent with it!

Back to science

I'm eagerly working my way thru this book . It is opening my eyes to a 25 year-old field of study that is directly applicable to genetify. In fact, genetify may be misnamed! It may be more of a reinforcement learning algorithm than a genetic algorithm.

Thursday, November 1, 2007

Documentation is the final test of a design

Just a small observance: Writing documentation forces you to create a good API to your program. Several times today I was trying to describe in writing how to use genetify and I realized that it was unnecessarily complicated or unclear. It's hard to write good documentation because programs often don't operate the way someone would naturally expect. And that's bad.