Sunday, January 11, 2009

New Project: Inspired Algorithms

I am happy to announce my new hobby project for 2009: Inspired Algorithms located at www.InspiredAlgorithms.com. As I outlined in the first post and enshrined in the web pages title bar, the goal of the project is to write and offer the largest set of explained and executable computational intelligence algorithms on the planet.

I have been writing copy for this project for about a month with the intention of releasing a self published book. The new year rolled around and I looked at my mess of private LaTeX files locked away on my hard drive and knew that the project needed to change. The important change in direction I made was the decision to start to release the content of the book piecewise, online, and for free.

My intention is to release 2 or 3 'inspired algorithm guides' per week for at least the next 6 months (8-10 per month), with the goal of amassing no less than 50 good quality guides by July 1st 2009. I then intend to release a book version shortly soon after, both in the form of a free PDF e-book and a paid (print on demand) hard copy book.

It is an ambitious project that I expect to contribute to in the evenings and weekends, channelling my so-called cognitive surplus toward something real and potentially useful to a wider audience. Already having a backlog of copy provides me with some buffer and slack to ride through any meatspace interruptions. I am also drawing heavily on my previous open source computational projects and my PhD research.

Already I have noticed a natural refinement of the copy from the dry guides I had written for myself to the more human and readable forms posted online. I have disabled comments on the blog as I don't think they're appropriate, and I've setup an Inspired Algorithms Discussion Group which I hope will generate some discussion and feedback that works towards further refining the the quality and accessibility of the content. I have also setup an Inspired Algorithms Open Source Project to maintain all ruby source code from the guides.

One of my concerns with using a blogger blog to host the project was how to effectively manage source code examples snippets in posts. I arrived at a somewhat antiquated solution that importantly looks pretty. I'm following a mixture advice from here that exploits the google-code-prettify project that offers javascript and style sheets specialised for syntax highlighting of code snippets in a web pages.

The setup process involved my adding the prettify links to the head of my blogger template (linked from the subversion trunk) and calling the prettyPrint() function in the onload of the page. Code sample inclusion involves writing the copy of guide first then editing the HTML and inserting the pre tags with the formatted code inside, then publishing immediately. I find that if I add the code and then view the draft post in compose mode that it messes up the indenting of the code. This is a real pain in the ass for maintaining a set of pre-prepared posts. The code looks really pretty in the blog posts, although sadly the effect is lost on those who subscribe via their feed reader.

I'm really excited about this project and the potential for building and refining a useful knowledge base of computational intelligence algorithms and explanations. I look forward to the challenge off my aggressive post schedule!

0 comments: