I've taken up the challenge of learning Russian with RosettaStone. Russian isn't one of those languages that you can learn in a month (IMO). RosettaStone is actually pretty cool software, though, what makes me mad is it doesn't give you the direct meaning. Sure, it'll show you a picture of a man and you match it up, but some of the pictures it's up to the users judgement.
I built my own CMS/wiki framework the other day, mostly built around a wiki. It even has modules, which are easy to build and combine in a site. Theme system is there, just by changing a CSS file. Once I found how to use zlib and PHP, I incorporated it into the script. So, once you save the page, it encodes it and writes it to the file. Then, for reading or editing, it decodes it for human-readable text. Here's an example:
<?php $content = gzcompress($content, 9); ?> ...which compresses the string. <?php echo gzuncompress(file_get_contents($page)); ?> ...which prints the contents of the uncompressed page.
I found that it compressed it to about 50%. So a 1.5KB page would be 700~ bytes. I'll release the script if I get around to.
Speaking about doing some crappy coding, WorkSimple's code really needs some cleaning up. It's terrible terrible code. If I get finally work on it a little bit more, I'll release it as 1.3.0, even though there's already a 1.3.0 beta.