To use the Scheme code for a cliched intro to programming. If you are bored enough to want to know who I am, go to the "about" page (which should be up shortly if it isn't now). As this is the inaugural post to an inauspicious blog by an inauspicious person, this first post will be about this blog's manifesto.
1. Computer science and techniques are interesting in and of themselves. You can find pragmatic snippets of VB code all over the internet, but that is not really the point here. Here, I intend to post questions and thoughts regarding the more theoretical aspects of compsci as well as thoughts and results from various experiments. I am an experimenter by nature, and I will try things for no better reason than to try them. In short, I believe firmly in learning through discovery (another name I thought of for this blog was "For the Heck of It"). In addition, my various coding projects also act as laboratories for ideas and curios. I will post with regard to them. Code snippets are far more likely to be in bash, Scheme or Haskell, then anything else.
2. Theory is good, but in order for it to be truly useful it must be applied. Virtualization theories are little good if they cannot be realized in superior virtualization software. Programming languages are useless unless they can be useful. A toy language is either a hobby or the spawn of a grant/academic paper. Toys may grow, but if they stay toys they will be forgotten.
3. Zealotry is a negative for the advancement of technology. There are Linux fanatics, Mac fanatics, Windows fanatics, Haskell fanatics, Scheme fanatics, functional programming fanatics, ad infinitum. There will always be different ways of getting tasks done, but rather than getting overly-hung up in one camp, it is far more useful to experiment and then draw conclusions from those experiments.
As said in point 1, I will post with regard to my various pet projects from time to time (in fact, it will probably be pretty regular). My main projects at the moment are the following:
1. Ocean - Scheme for .NET (http://oceanscm.sourceforge.net/) I have not yet put up a SourceForge web site for this yet, but the essential idea is this: I like Scheme. I like it a lot. It's neat (as long as you don't start using those stupid 's) and very elegant. Then I tried to create Latrunculi (see item 2) and I hit on a snag: as nice as Scheme is, the libraries are bare to the extreme.
If Python is the "batteries included" language, then Scheme is the "make-your-own-batteries" language. About this time the first draft for the R6RS came out. It standardized a lot of the idiosyncrasies between Scheme implementations and one of my favorite features to be added was standardized byte vectors. So, I decided to write myself a Scheme -- and do it natively on the .NET framework. This would kill two birds with one stone: I would get a jump on the latest Scheme and would give me instantaneous access to a wealth of libraries which is still growing (and probably will be for the forseeable future).
2. Latrunculi (http://latrunculi.sourceforge.net/) - a nice, OpenGL version of an ancient Roman board came, something like Chess or Checkers, but more similar to the game of Henafatafl. Started one boring day at work to get a chance to implement the MiniMax (though I later switched to the more elegant NegaMax) algorithm and grew from there.