Bug in GTFO
Uh oh! If you've been browsing this site for the last few days, you've probably noticed some strange behavior. For some reason I'm getting a lot more hits than I was when I originally designed the framework, and it revealed a bug (a race condition, if you're interested). Or at least, I think that was the bug. I'm not totally convinced that's what it was, but that's my educated guess.
Anyway, I believe I've fixed the bug, and all should be happy now. Life is busy, busy, busy now that classes have started. I'm planning to do a century ride at the end of September, though, so I need to find time to keep riding :-)
The spam continues
Unfortunately, the spam on my blog appears to have continued. Thus, I've implemented an anti-spam procedure in GTFO: the dreaded CAPTCHA. In the spirit of the framework, though, I've tried to make it pretty easy... all it requires is that you type the word 'orange' in to the form. This wouldn't be enough to fool human attackers, but I believe there's a number of years left in AI/NLP research before my blog will start being spammed again ;-). Sorry for the inconvenience, but I don't like logging in every morning to delete the spam.
In other news, I'm back from the UK. Lots of photos were taken (both by me and by others), and I'm sure I'll have those up soon.
Spam on my blog!
In an interesting twist, you may have noticed that my blog received some spam posts the other day. This seems pretty amazing to me, since I wrote this page myself, and there is exactly one deployment of it (which is here). I can see writing spam bots for popular frameworks like Wordpress, Joomla, Drupal, etc. but this isn't exactly a popular framework ;-). The fact that I got spammed leads me to believe that spammers are applying some sort of machine learning techniques to figure out what looks like a comment form, and what doesn't. It never ceases to amaze me the lengths people will go to in order to spam.
How did I remove it? Well naturally I've been too lazy to code an admin interface (and why would I? I write the blog posts in vi). So, I had to fire up the sqlite driver (I use a database to store the comments) and manually delete them myself. If this keeps occurring, I'll probably try to build in some sort of simple spam filtering AI or at least an interface which makes it easy to delete the spam.
Either way, I'm flattered that people think my website is popular enough that they have to post their spam links on it ;-)
First post to the blog!
This my first post using the blog mechanism of the GTFO. Hopefully everything will work as advertised ;-).
First public deployment of GTFO!
Ahoy! This is the first public deployment of the new web framework "GTFO". I'll explain the name, design rationale, and other such things in a later post (suffice it to say that this is the framework which stays the hell out of your way ;-). For now, I believe I've got a reasonable stable and secure (i.e. protected against sql/html injection) version of it.
Of course with a new framework comes a new content format. This means I had to port all of my content from my old web page to this one. Although most of it was pretty scriptable, I've scrapped a few old and unnecessary pages in favor of the new format. In the process, I likely broke a few things that I'm unaware of. Thus, if you experience any broken links (or get any unexpected errors) /please/ send me an e-mail to let me know, so that I can fix them.
I'm also interested in folks' thoughts on the new layout. I'm experimenting with a few different layouts, and any thoughts would be welcome. I enjoy the simplicity of this one, but I don't like the fact that it is a fixed width. Anyway, I'll probably try a few more layouts before I settle on the right one, so don't be surprised if you show up and everything looks totally different. There should be more new content soon too (where soon is as soon as I can get the energy up to write it ;-).
Lastly, I hope to have more features (e.g. photo galleries) integrated into the framework. I'm developing it pretty actively right now, so it's likely that these things will happen in the near future. Please don't hesitate to suggest any features that you might enjoy using. I'm eventually going to release the code under a BSD-style (or perhaps beerware?) license, although it's not clean enough for me to do that right now. If you're interested in trying out the code, though, shoot me an e-mail and I'll be happy to send it your way.