about this site

This is the personal website of Daniel P. Wright, a games programmer living and working in Japan. My main interests are in functional programming, automation, maths and games, so I mainly blog about those. The two tools I probably make the most use of are vim and git, so when I come across a useful tip for either of those I’ll often note it here, for my own benefit more than anybody else’s!

I mostly blog in English, but given that I live in Japan and am involved in the functional programming community in Kansai I will sometimes post in Japanese as well. This is particularly true of writeups for any talks I give here. If you are interested in Japanese content in particular, there is a tag for that.

Profile

Here is a summary of my presence on the various social media networks:

Literate Programming

Another topic of interest for me is literate programming, a technique by which program source code and documentation are fused into a single blog post / article / book, intended for humans to read but also directly compilable into actual, working code. Making use of literate programming when writing the blog posts on this website is useful if for nothing else than to check that the examples I include actually work – nearly all the code you see on this site will at least compile, a fact which is checked whenever I rebuild the site.

In fact, this site itself is a literate program, being generated by the unimaginatively titled generating this website series of posts, which is ongoing at the time of writing.

All literate programs on this site can be seen by checking the literate-programs tag.

Licence

The text portions of this site are all released under the Creative Commons Attribution-ShareAlike 4.0 International License. Images, unless otherwise noted, are released under the same licence.

All code, including examples and full literate programs, is released under the Simplified BSD License, reproduced below.

Simplified BSD (2-Clause) License

Copyright (c) 2012-2015, Daniel P. Wright.
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.