<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-6563580</id><updated>2009-04-01T07:09:47.445+02:00</updated><title type='text'>Philip's Files</title><subtitle type='html'>My first attempt at blogging.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://philipstaffordwood.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>19</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6563580.post-115616527840195171</id><published>2006-08-21T14:57:00.000+02:00</published><updated>2006-08-21T15:01:18.403+02:00</updated><title type='text'>Blendermania</title><content type='html'>I'm currently interested in visualisation and animation of 3d graphics using Blender:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.blender.org"&gt;http://www.blender.org&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-115616527840195171?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/115616527840195171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/115616527840195171'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2006_08_01_archive.html#115616527840195171' title='Blendermania'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-112422300862380654</id><published>2005-08-16T21:42:00.000+02:00</published><updated>2006-08-21T14:50:57.186+02:00</updated><title type='text'>Memex</title><content type='html'>The computer as extension of thought.&lt;br /&gt;This, the previous (and probaly the next few posts) are an experiment - an attempt to formulate and communicate a paradigm that has seeds and even roots everywhere.&lt;br /&gt;&lt;br /&gt;I read an article about the Memex idea a few days ago.&lt;br /&gt;&lt;br /&gt;One thought, probably the central thought I want to communicate is his idea of "associative trails" - I might not be using the same word used in the article, or even in his original essay.&lt;br /&gt;&lt;br /&gt;The original Memex article was one of the shaping factors in hypertext.&lt;br /&gt;What I find missing in the web, however, is exactly this concept.&lt;br /&gt;To me what should be achieved is the ability to relate, to annotate not only to refer or link.&lt;br /&gt;&lt;br /&gt;I've recently come across bitty browser at &lt;a href="http://del.icio.us"&gt;del.icio.us&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I like the concept (would like to fiddle with the implementation - something which bitty browser expressly forbids -as far as I can tell-).&lt;br /&gt;&lt;br /&gt;A number of ideas and concept that have been surfacing every once in a while has finally resulted in the rough journey which should (might :) ) start with this post.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-112422300862380654?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/112422300862380654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/112422300862380654'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2005_08_01_archive.html#112422300862380654' title='Memex'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-111497729483571705</id><published>2005-05-01T21:50:00.000+02:00</published><updated>2005-05-01T21:54:54.836+02:00</updated><title type='text'>Language Watch</title><content type='html'>Fortress&lt;br /&gt;An attempt to be for fortran what java is for c.&lt;br /&gt;&lt;a href="http://www.sun.com/presents/minds/2005-0302/"&gt;http://www.sun.com/presents/minds/2005-0302/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Nemerle&lt;br /&gt;"&lt;b&gt;Nemerle&lt;/b&gt; is a high-level statically-typed programming language for the .NET platform. It offers functional, object-oriented and imperative features. It has a simple C#-like syntax and a powerful meta-programming system."&lt;br /&gt;&lt;a href="http://nemerle.org/Main_Page"&gt;http://nemerle.org/Main_Page&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-111497729483571705?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/111497729483571705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/111497729483571705'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2005_05_01_archive.html#111497729483571705' title='Language Watch'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-111467771815895739</id><published>2005-04-28T08:54:00.000+02:00</published><updated>2005-05-01T21:49:15.890+02:00</updated><title type='text'>Desktop fusion</title><content type='html'>&lt;a href="http://msnbc.msn.com/id/7654627/"&gt;http://msnbc.msn.com/id/7654627/&lt;/a&gt;&lt;br /&gt;Fusion done on a small scale!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-111467771815895739?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/111467771815895739'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/111467771815895739'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2005_04_01_archive.html#111467771815895739' title='Desktop fusion'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-110711690209700491</id><published>2005-01-30T22:23:00.000+02:00</published><updated>2005-01-30T22:28:22.096+02:00</updated><title type='text'></title><content type='html'>Currently interested in Mobile Development, specifically J2ME, more specifically targetting the Sony Ericsson K700i.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-110711690209700491?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/110711690209700491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/110711690209700491'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2005_01_01_archive.html#110711690209700491' title=''/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-109428452681916074</id><published>2004-09-04T09:52:00.000+02:00</published><updated>2004-09-04T09:55:26.820+02:00</updated><title type='text'></title><content type='html'>Currently interested in the idea of adding semantic meaning to documents and diagrams. XML, SVG, .. the technologies are there.&lt;br /&gt;I'm thinking of extending standard OO:&lt;br /&gt;OO: objects have properties and methods..&lt;br /&gt;Now add layered semantic metadata.&lt;br /&gt;The Model-View-Controller pattern can be extended to this domain.&lt;br /&gt;Anyway thinking of playing with SVG when I have time..&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-109428452681916074?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/109428452681916074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/109428452681916074'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_09_01_archive.html#109428452681916074' title=''/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-108360524407134100</id><published>2004-05-03T19:23:00.000+02:00</published><updated>2004-05-03T19:31:35.310+02:00</updated><title type='text'>Currently Interested in</title><content type='html'>&lt;b&gt;Physics:&lt;/b&gt;&lt;br /&gt;The Physics of Computation.&lt;br /&gt;The Thermodynamics of Computation - a Review&lt;br /&gt;Charles H. Bennett&lt;br /&gt;&lt;a href="http://www.aeiveos.com/~bradbury/Authors/Computing/Bennett-CH/TTOCaR.html"&gt;http://www.aeiveos.com/~bradbury/Authors/Computing/Bennett-CH/TTOCaR.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A Mathematical Theory of Communication&lt;br /&gt;By C. E. SHANNON&lt;br /&gt;&lt;a href="http://cm.bell-labs.com/cm/ms/what/shannonday/shannon1948.pdf"&gt;http://cm.bell-labs.com/cm/ms/what/shannonday/shannon1948.pdf&lt;/a&gt;&lt;br /&gt;  	&lt;br /&gt;Signal entropy and the thermodynamics of computation&lt;br /&gt;N. Gershenfeld&lt;br /&gt;&lt;a href="http://www.media.mit.edu/physics/publications/papers/96.isj.ent.pdf"&gt;http://www.media.mit.edu/physics/publications/papers/96.isj.ent.pdf&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Quantum theory, the Church-Turing principle and the universal quantum computer&lt;br /&gt;DAVID DEUTSCH&lt;br /&gt;&lt;a href="http://www.qubit.org/oldsite/resource/deutsch85.pdf"&gt;http://www.qubit.org/oldsite/resource/deutsch85.pdf&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-108360524407134100?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108360524407134100'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108360524407134100'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_05_01_archive.html#108360524407134100' title='Currently Interested in'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-108197646198893293</id><published>2004-04-14T22:56:00.000+02:00</published><updated>2004-04-14T23:04:59.000+02:00</updated><title type='text'>Currently thinking about: </title><content type='html'>&lt;b&gt;Physics&lt;/b&gt;&lt;br /&gt;Entanglement, GHZ entanglement.&lt;br /&gt;Visualizing the geometry of special relativity.&lt;br /&gt;Entanglement and what it implies about our picture of spacetime (hence the above).&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Mathematics&lt;/b&gt;&lt;br /&gt;Surreal Numbers.&lt;br /&gt;Category Theory.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Code&lt;/b&gt;&lt;br /&gt;Templates and automatic code generation.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Security&lt;/b&gt;&lt;br /&gt;The use of obfuscation or the virtual machine idea applied to a source program to defeat toolchain perversion attacks. (letting rice's theorem work for you).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-108197646198893293?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108197646198893293'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108197646198893293'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_04_01_archive.html#108197646198893293' title='Currently thinking about: '/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-108197614171815315</id><published>2004-04-14T22:52:00.001+02:00</published><updated>2004-04-14T22:59:37.966+02:00</updated><title type='text'>The direction of this blog</title><content type='html'>I was considering switching from Blogger to Livejournal.&lt;br /&gt;&lt;br /&gt;(I'm clearly spending too much time creating web accounts.&lt;br /&gt;&lt;a href="http://www.seedwiki.com/page.cfm?doc=PhilipStaffordWoodWiki&amp;wikiid=4989"&gt;Wiki's&lt;/a&gt; blogs, etc.)&lt;br /&gt;&lt;br /&gt;Blog decision&lt;br /&gt;Everyone and their dog seems to have a blog specifying their mood, the music they are listening to, who they met yesterday, etc.. There is value in that...&lt;br /&gt;&lt;br /&gt;So here is my plan:&lt;br /&gt;My &lt;a href="http://www.livejournal.com/users/philip_s_wood/"&gt; livejournal&lt;/a&gt; will be that. Arbitrary stuff.&lt;br /&gt;&lt;br /&gt;Stuff that seems like content will go to by blogger account.&lt;br /&gt;&lt;br /&gt;That is the plan for now.&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-108197614171815315?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108197614171815315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108197614171815315'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_04_01_archive.html#108197614171815315' title='The direction of this blog'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-108197613924825289</id><published>2004-04-14T22:52:00.000+02:00</published><updated>2004-04-14T22:59:35.500+02:00</updated><title type='text'>The direction of this blog</title><content type='html'>I was considering switching from Blogger to Livejournal.&lt;br /&gt;&lt;br /&gt;(I'm clearly spending too much time creating web accounts.&lt;br /&gt;&lt;a href="http://www.seedwiki.com/page.cfm?doc=PhilipStaffordWoodWiki&amp;wikiid=4989"&gt;Wiki's&lt;/a&gt; blogs, etc.)&lt;br /&gt;&lt;br /&gt;Blog decision&lt;br /&gt;Everyone and their dog seems to have a blog specifying their mood, the music they are listening to, who they met yesterday, etc.. There is value in that...&lt;br /&gt;&lt;br /&gt;So here is my plan:&lt;br /&gt;My &lt;a href="http://www.livejournal.com/users/philip_s_wood/"&gt; livejournal&lt;/a&gt; will be that. Arbitrary stuff.&lt;br /&gt;&lt;br /&gt;Stuff that seems like content will go to by blogger account.&lt;br /&gt;&lt;br /&gt;That is the plan for now.&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-108197613924825289?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108197613924825289'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108197613924825289'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_04_01_archive.html#108197613924825289' title='The direction of this blog'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-108189632206735327</id><published>2004-04-14T00:42:00.000+02:00</published><updated>2004-04-14T00:55:20.640+02:00</updated><title type='text'></title><content type='html'>Saw &lt;a href="http://www.shatteredglassmovie.com/index_flash.html"&gt;Shattered Glass&lt;/a&gt; tonight. I really enjoyed it. I did not know it was a true story until the end and even then (in light of the subject matter), I had my doubts. Enough to make a conspiracy theorist out of anyone. &lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-108189632206735327?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108189632206735327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108189632206735327'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_04_01_archive.html#108189632206735327' title=''/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-108185617299220702</id><published>2004-04-13T13:24:00.000+02:00</published><updated>2004-04-13T13:40:07.750+02:00</updated><title type='text'>Back after some time off.</title><content type='html'>Back developing after taking some off time.&lt;br /&gt;Slept a lot. Saw a lot of friends. Watched some movies.&lt;br /&gt;&lt;br /&gt;Saw &lt;b&gt;Cat in the Hat&lt;/b&gt; (they made me watch it), &amp;lt;no comment&amp;gt;&lt;br /&gt;Saw &lt;b&gt;Brother Bear&lt;/b&gt;, cute, but Disney's magic seems to be fading.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-108185617299220702?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108185617299220702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108185617299220702'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_04_01_archive.html#108185617299220702' title='Back after some time off.'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-108155273163764666</id><published>2004-04-10T01:14:00.000+02:00</published><updated>2004-04-10T02:04:39.200+02:00</updated><title type='text'>Code generation with Templates</title><content type='html'>I have to write a &lt;strong&gt;ton&lt;/strong&gt; of application layer stuff that should be simple to auto-generate. So I went looking for free-as-in-beer open-source code generators. Hello &lt;a href="http://sourceforge.net/"&gt;SourceForge&lt;/a&gt;!....&lt;br /&gt;&lt;br /&gt;I finally (very quickly) settled on &lt;a href="http://ncodegen.sourceforge.net/"&gt;ncodegen&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;ncodegen is implemented in .NET with c#. It is a code generating system that can use different template engines prefferably &lt;a href="http://nvelocity.sourceforge.net/"&gt;NVelocity&lt;/a&gt;.  It uses templates and takes its input data used to customize or fill the templates from XML.&lt;br /&gt;NVelocity is a .NET port of the &lt;a href="http://jakarta.apache.org/"&gt;Apache Jakarta&lt;/a&gt; project's &lt;a href="http://jakarta.apache.org/velocity/"&gt;Velocity&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Velocity is basically a pluggable template engine component (designed with web page generation in mind, but fully general nonetheless). It parses templates that contain text mixed with VTL (Velocity template language). The engine processes the template and spits out the resultant file. The language is simple, but flexible and bound through reflection to Java (in NVelocity .NET) allowing the engine to access simply and neatly from the template (in VTL), data that is exposed from the hosting component.&lt;br /&gt;&lt;br /&gt;Edris Hasani Nasab the author of ncodegen put together a good looking design for a code generator that can plug into many template engines. I only looked at its NVelocity use. The documentation is good looking but minimal (the english could do with a bit of improvement, given time I might offer to help out - it is not his first language) and the examples are too simple. To use it I needed to read the original Velocity Documentation (both user and developer), NVelocity source code and ncodegen source code as well as experiment quite a bit.&lt;br /&gt;&lt;br /&gt;Excellent infrastructure and good looking code (can be understood while containing no comments = quite good).&lt;br /&gt;&lt;br /&gt;I don't think it has been used to generate much. The current implementation is a bit limited. If this was a closed source product I would not touch it would be unusable for real complex work. But as an open source (GNU Lesser public licence) it is a good project supplying solid infrastructure on which to build. The modifications needed are well locallized and easy to make.&lt;br /&gt;&lt;br /&gt;The criticism is that I have with the current implementation is that the way it exposes the input XML to the template engine is &lt;b&gt;WAY&lt;/b&gt; too simple with a bit of a hack. Basically it exposes any node to VTL in its path form eg. &lt;code&gt;$Input.Whatever.ChildOfWhatever&lt;/code&gt;. VTL can do nothing with that, but find the child of  &lt;code&gt;ChildOfWhatever&lt;/code&gt; (like so: &lt;code&gt;$Input.Whatever.ChildOfWhatever.ChildOfChildOfWhatever&lt;/code&gt; or access an attribute of whatever e.g. &lt;code&gt;$Input.Whatever.Attribute&lt;/code&gt;.&lt;br /&gt;Now for the hack: if the Node (e.g. &lt;code&gt;&amp;lt;Name&amp;gt;&lt;/code&gt; has a name that ends in "s" it is assumed to be a collection and return a collection of all of its child nodes to VTL (which can access it with a &lt;code&gt;#foreach&lt;/code&gt; loop).&lt;br /&gt;Since my XML input contained nodes like &lt;code&gt;&amp;lt;Class&amp;gt;&lt;/code&gt; I was quite confused by the results until I looked at the sourcecode.&lt;br /&gt;&lt;br /&gt;Any modification to this is made quite simple through good design by all involved. A single method in a single class in ncodegen can be modified to behave as desired. Very complex behaviour could be very simply implemented. For example: exposing full XPath queries from VTL should be a few minutes worth of  work and most of that will be testing.&lt;br /&gt;&lt;br /&gt;I'm interested in making some modifications while using it and giving them to the author if he is interested. &lt;br /&gt;A plugin for Visual Studio also seems like it would be very nice. And syntax highlighting for VTL templates would be stellar.&lt;br /&gt;(However: The thought of all that COM interop and using Microsoft MSDN documentation   : (    ).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-108155273163764666?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108155273163764666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108155273163764666'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_04_01_archive.html#108155273163764666' title='Code generation with Templates'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-108155243774569856</id><published>2004-04-10T01:13:00.000+02:00</published><updated>2004-04-10T01:17:47.890+02:00</updated><title type='text'>Problems Gone</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-108155243774569856?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108155243774569856'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108155243774569856'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_04_01_archive.html#108155243774569856' title='Problems Gone'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-108131715276786972</id><published>2004-04-07T07:51:00.000+02:00</published><updated>2004-04-07T07:56:18.593+02:00</updated><title type='text'>Having problems with Blogger</title><content type='html'>My posts are not appearing.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-108131715276786972?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108131715276786972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108131715276786972'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_04_01_archive.html#108131715276786972' title='Having problems with Blogger'/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-108131629881315243</id><published>2004-04-07T07:35:00.000+02:00</published><updated>2004-04-07T07:54:52.340+02:00</updated><title type='text'></title><content type='html'>Read an interesting transcription of a &lt;a href="http://shirky.com/writings/group_enemy.html"&gt;keynote address&lt;/a&gt; concerning social software.&lt;br /&gt;What I found most insightful are the default or built-in social behaviour which humans exhibit in groups, even when the groups are not mediated by normal face-to-face interaction.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-108131629881315243?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108131629881315243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108131629881315243'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_04_01_archive.html#108131629881315243' title=''/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-108014494383296422</id><published>2004-03-24T18:01:00.000+02:00</published><updated>2004-03-24T18:19:11.576+02:00</updated><title type='text'></title><content type='html'>Work is hectic.&lt;br /&gt;Coding a like a lot (at least it feels like it).&lt;br /&gt;&lt;br /&gt;I'm lucky to be online almost all the time at work.&lt;br /&gt;In between I have been checking out Orkut a lot.&lt;br /&gt;Really enjoying the experience so far.&lt;br /&gt;&lt;br /&gt;I'm disturbed by my unconscious mind's -not so hidden- agenda.&lt;br /&gt;I find myself drawn to the she-geeks/she-nerd/girls with glasses topics.&lt;br /&gt;And I've noticed that if I check a profile (or a blog or a webpage) it&lt;br /&gt;is almost always a female one.&lt;br /&gt;&lt;br /&gt;I've obviously been single WAY TOO LONG.&lt;br /&gt;(It is really a shame that all of these really interesting women are so geographically far away).&lt;br /&gt;I'm in Johannesburg South Africa.&lt;br /&gt;Anyway.&lt;br /&gt;&lt;br /&gt;I'm very interested in the way social presence on the internet seems to have changed.&lt;br /&gt;&lt;br /&gt;Everyone has a photo (or an avatar).&lt;br /&gt;&lt;br /&gt;I'm disturbed by the fact that I'm evaluating people according to what they look like (ancient wetware&lt;br /&gt;is good at that).&lt;br /&gt;&lt;br /&gt;I remember when AOL joined the internet there was a sudden "racism" that depended &lt;br /&gt;on your email address. A lot of AOL people joined, had no idea of netiquette, seemed quite rude&lt;br /&gt;and (for a while at least) earned anyone with an aol in their email address a bad name.&lt;br /&gt;&lt;br /&gt;BTW&lt;br /&gt;does netiquette still exist?&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-108014494383296422?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108014494383296422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/108014494383296422'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_03_01_archive.html#108014494383296422' title=''/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-107848492427344670</id><published>2004-03-05T13:07:00.000+02:00</published><updated>2004-03-05T13:11:45.716+02:00</updated><title type='text'></title><content type='html'>We had a successful internal demo of our product (Synap-c)  for our MD.&lt;br /&gt;&lt;br /&gt;He was satisfied.&lt;br /&gt;&lt;br /&gt;Now scenarios of doom can disappear.&lt;br /&gt;&lt;br /&gt;Yeah!!&lt;br /&gt;&lt;br /&gt;Now we can sleep.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-107848492427344670?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/107848492427344670'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/107848492427344670'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_03_01_archive.html#107848492427344670' title=''/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry><entry><id>tag:blogger.com,1999:blog-6563580.post-107826125515035348</id><published>2004-03-02T22:55:00.000+02:00</published><updated>2004-03-02T23:03:53.140+02:00</updated><title type='text'></title><content type='html'>Philip, starts blogging today.&lt;br /&gt;My personal website is currently at &lt;a href="http://www.geocities.com/philipstaffordwood/"&gt;http://www.geocities.com/philipstaffordwood/&lt;/a&gt;.&lt;br /&gt;I'm on orkut, and if you are given a chance to join I reccomend it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6563580-107826125515035348?l=philipstaffordwood.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/107826125515035348'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6563580/posts/default/107826125515035348'/><link rel='alternate' type='text/html' href='http://philipstaffordwood.blogspot.com/2004_03_01_archive.html#107826125515035348' title=''/><author><name>philipstaffordwood</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='02064259782478579579'/></author></entry></feed>