This blog has been a project in itself for me. I was inspired by Chris Done's blog which sets up a nice workflow for a static site. I wanted to include Haskell in more of my projects, so having a site generated by Haskell was a big incentive.

This blog is generated by Hakyll, hosted on Linode by an Apache server, and stored on github

The server setup was perhaps the most difficult for me, so I took the easy way out and installed one of the pre-made configurations available for linode which installs a LAMP stack. The only configuration change I made was in /etc/apache2/sites-available/ where I set the default directory to /var/www/itscomputersciencetime.com.

The Hakyll part is fairly easy. I created a cabal file (so I can use cabal sandboxes) but the main thing is just building and running the sample Hakyll file. At least initially I have made no changes to the sample site and sample site generating code.

The Hakyll preview command is quite useful for checking out posts before committing them. Once they look the way I want, I commit them to github and then pull them from the linode server. This isn't as fancy as Chris Done's approach, which was more automated and worth looking at.

Finally, on the linode server I build the site into the _sites directory which is a symlink to /var/www/itscomputerscience.com.

This process is more complex then I would like. I need to perform multiple steps before adding a post, which will likely turn out to be too much work. I would like to do everything locally and have the site update and build itself.

Thats it for now. I'm glad to be blogging again, and this time with a personalized setup that involves Haskell.