I've completely rewritten the back and front ends of my website.

My old website theme was based off of one of the first desktop themes that I used. I didn't have any other idea to base a website design for myself off of. And there is no way I'd ever use a stock website template. Unfortunately since it was based off a desktop theme it wasn't the best design for people to read posts from. Even after I dropped the 'wine' color scheme from the blog people still had trouble.

When I wrote the old website I also tried to keep programming and personal stuff separate in an attempt to separate a personal website from a portfolio for work. Unfortunately I never added much content and this lead to a confusing mess of multiple domains, broken analytics, and the inability to use my homepage as an authorship page.

Unfortunately I don't have much time at all to work on stuff like this. So it's taken me several months to slowly put together a new website.

So I've rewritten everything, almost entirely from scratch. Naturally I imported all the post files from the old site (same format), used the old code as a reference so that I don't miss anything I didn't intentionally remove, and made sure that all the old content is properly redirected to new urls.

  • I went with Python this time instead of JavaScript for writing the website compiler code.
  • I setup some media queries to change the layout of the website on different screen sizes. The old website design was really hard to try and do this in. This time around my website is actually usable on a mobile device (which is good ;) since I use my cell phone to double-check my own collection page sometimes)
  • This time around I used a /blog/ subdirectory instead of a separate domain so that I can point rel=author to my homepage and put any necessary rel=me authorship urls there.
  • The new blog handling code creates a checksum for new articles and uses that to automatically add an 'updated:' timestamp when I modify a blog post.
  • Syntax highlighting is done beforehand with pygments this time instead of done using some random client side script.
  • Tags are all in a small tag cloud in the sidebar/footer instead of on a dedicated page now.
  • The blog is better integrated with the website, with access to it in the sidebar/footer of every page.
  • Links are also not broken up into different areas of the sites.
  • I used JS to load the recent posts thinking of making it so you don't need to re-download the entire website just because a new post was made. But I may re-think that and drop that later.