I can’t think of anybody who actually likes spam. Well, aside from spammers, of course. After all, those guys obviously make thousands, if not millions, of dollars from gullible, attention-starved sellers looking to get noticed by any means, no matter how disreputable. And those being advertised obviously keep coming back because they’re making dough off of the few idiots out there that actually buy spam-advertised products. But the rest of us–the poor, innocent Internet users just trying do our thing, not looking for trouble–we’re the ones getting caught in the deluge. We’re the ones paying for the bandwidth, the filtering, the time sorting through all their mess, trying to decide whether we should reclaim our inboxes or abandon them altogether.
Personally, I have a three-tiered spam filtering solution. It’s a bit convoluted, but it works with a minimum of false positives. Currently, all my mail from their various sources is first redirected to my Pobox.Com account. I’ve been a happy Pobox user since college, when I realized that I was going to graduate soon and I’d have to tell all my friends and family to change their contact lists. Pobox lets you keep the same virtual address while your real address can change behind the scenes, so you never have to give out a new one. This was actually a great idea… before the advent of spam. Honest. Now, not so much. These days, I keep my Pobox address mostly because of their incredible spam filtering, which combines dozens of blacklists and other rules that you can customize. Pobox bounces the most blatant spam offenders, holds most of the rest in case of false positives, then sends me the rest along with a report of what was bounced or held. Anything that gets through Pobox is then forwarded to my GMail account, which has its own very excellent filters. (It’s Google. If anyone knows anything about indexing and analyzing text, it’s them.) Finally, I POP my GMail down to Thunderbird, which filters the incoming message even further. This whittles the thousands of spam messages I get per week (at least 3000 at my last count) down to virtually none, with only a handful that I have to handle manually each day.
None the less, there’s a good bit of humor to be found in spam. I often double-check my Pobox discard report and my GMail and Thunderbird spam folders for false positives, scanning subject lines to make sure I don’t lose the odd piece of fan mail or legitimate commercial message from businesses I actually choose to interact with. And I often find a few gems in there, the odd little quirk that for whatever reason gives me a chuckle. Let me share a few….
I’m not sure if anyone cares, but I’ve been doing a tiny bit of dabbling in releasing Open Source software lately. Since I don’t particularly care to announce them on the GPF News (it isn’t, after all, GPF news), I’ll announce them here. For those of you who might complain that working on these has taken precious time away from the comic, fret not. The tiny bit of time I’ve been able to squeeze in here and there to work on these have been during periods when working on the comic would be impossible, so there’s no way for there to be any conflict.
The first one I’ll announce is the most recent. WinHasher is a Microsoft .NET Framework 2.0 application for generating cryptographic hashes of files. It is both a Windows GUI applet and a console (command line) program, and it operates in two possible modes. The first mode generates the hash of a single file, which you can then use to verify a download or check to see if a file has been tampered with. The second mode takes the hashes of multiple files and compares them; in this way, you can see if two or more files have the same binary contents regardless of their names, locations, and time stamps. The Windows app supports drag-and-drop functionality, and the installer lets you also build shortcuts in your Windows Explorer “Send To” context menu so you can just right-click a file and get its hash.
So why did I build this? Well, the full details are on the site, but the quick version is that I’ve grown tired of not being able to validate the hashes of downloaded files because Windows doesn’t have a built-in hashing program. Linux and the other free UNIX clones have OpenSSL; heck, even Mac OS has OpenSSL under the hood. Not Windows… of course. So instead of downloading a file on a Windows machine, copying it to the Linux box, validating the hash, and moving it back (or worse, just not even validating the hash at all and taking my chances), I hacked together this little program. Then I thought it might be useful enough to share, so I did. If you find it useful, please let me know.
For the really technically inclined out there, most of the hashes are built-in to .NET 2.0, so this was obscenely easy to implement. In fact, 2.0 has an abstract hash algorithm class (System.Security.Cryptography.HashAlgorithm) that all of the built-in hashes implement. The two non-standard hashes, Whirlpool and Tiger, were taken from the Legion of the Bouncy Castle Crypto API, which is actually .NET 1.1 based. I (rather crudely) ported these classes to be subclasses of HashAlgorithm, so they can technically be used as a drop-in replacement of any .NET 2.0 hash. I plan to add additional hashes over time, provided that (a) the original source code is free and (b) I can port it to be a HashAlgorithm subclass.
The second program to mention is actually a bit of an oldie now. (I actually released it back in June.) The Windows version of Mandelbrot Madness! is back, also in a .NET 2.0 edition. I wrote the original in Visual C++ 4.x, but have long since lost the source code. Then the Java version came into being and rapidly surpassed the Windows version, leaving it to suffer from bit rot. Both eventually languished as I lost time to work on them. Well, in December of 2005, I released the not-quite-complete-but-close-enough 4.0 version of Mandelbrot Madness JAVA!, declaring it abandoned. It always bugged me that I never went back and revisited the Visual C++ code, but without the source I was stuck.
Well, to make a long story short, my new job had me learning a new programming language: C#. That had me programing Web sites, but I knew you could also do Windows GUI apps in it as well. So somewhere down the line I got a wild hair and started the agonizing work of porting the Java code from the last version of MMJ! to C#. Actually, Java and C# are similar enough that the porting work wasn’t all that hard. Not only is MM! 2.0 now pretty much identical in functionality to MMJ! 4.0, but I introduced a number of new features that I hope to eventually port back to the Java version. While I still prefer the platform independence of Java, I’ll readily admit that the .NET version is a lot faster on Windows. I think that anyone on that platform that has actually bothered to play with the Java version (both of you) should make the switch. Anyone still using the decrepit old 1.0 version of Win32 MM! should enter the 21st century and upgrade too.
Both programs have been released under version 2 of the GPL (haven’t had time to really review version 3 yet), so the sources are also available. If you have any suggested changes, feel free to pass them along and I might incorporate them into the official builds (giving you credit, of course).
Ordinarily, I don’t go about announcing underlying technology upgrades (for example, I just upgraded iptables and Apache this morning), but I thought this was mildly amusing and I thought I’d share. As the observant among you probably know, I’m running WordPress, which just released version 2.3, nicknamed “Dexter”. It is so named after the “great tenor saxophonist Dexter Gordon.” Darn… I was being hopeful….
My wife got me (not Ben) this a while back, and now Ben’s just big enough to start wearing it. The, um, backside reads “Powered by Perl.” I’m hoping this strip will be prophetic.
UPDATE: And, of course, not long after I post this, the “Powered by Perl” onesie is no longer for sale. Curse you, ThinkGeek, for having dynamic inventory!
Recently, I received a surprise in the mail. My good friend Wally (who accompanied us to our very first con, Dragon*Con 2000) and his wife sent me a much belated birthday card. I say much belated because it was several months after the fact, although I certainly wasn’t expecting it and would have been perfectly content with the knowledge that they simply remembered me on that day. (Sadly, many of our old friends are scattered across the country now, and seeing each other in person is becoming a rarer and rarer occurrence.)
Enclosed with the card was an iTunes gift card. Obviously, Wally had been reading the blog and found out about my recent iPod acquisition. After a reading over the note in the card (which was written in orange highlighter; Wally is anything but conventional), I stopped and examined the gift card itself. My first thought was that I doubted that I would take advantage of the free That’s So Raven episode download advertised on the front. (If it had been Kim Possible, maybe.) My second thought was that I hadn’t a clue what in the world I would spend it on. My brief excursions to the iTunes store in the past had borne little fruit, turning up very little that I was actually interested in. At that point, every single song stored on my iPod was either ripped from a CD I (or my wife) already owned or was a freely available download collected from somewhere else.
My first purchase choice came quickly thereafter. When I browsed the store before, I noticed my nifty little fifth generation device was capable of playing specially formatted games. Lo and behold, Ms. Pac-Man was among them. I had already downloaded the one-level demo and played it, which brought back waves of nostalgia. (For some reason, I had always enjoyed Ms. Pac-Man over her masculine predecessor, probably because of the “super speed” version that doubled Ms. Pac-Man’s speed and made it more difficult to play.) So the first thing I bought was the full game. For some reason, my thumbs have been much more tired lately.
That done, I was at a loss of what to purchase next. I searched and searched to no avail. Perhaps it’s just my eclectic tastes in music, but I had trouble finding anything that either piqued my interest or I didn’t already have on CD. (Naturally, I’d much rather have my music in physical form so if a hard drive crashes (since that’s such a rare occurrence) I’d have a handy backup.) I saw a couple things I seriously considered, but I waffled back and forth on because I’d much rather have them on CD first.
Then some little dormant trigger fired in my brain.
I’m sure that everyone has one. You know, that dirty little secret. That one album you keep squirreled away, hidden from prying eyes, that you secretly relish but you hope that no one every finds out about. It might be that one Mozart symphony stuffed between gansta rap discs, or that one bubblegum pop boy band stashed among your vast country collection. You know what I mean.
Personally, my CD collection largely consists of motion picture soundtracks (or, more appropriately I suppose, instrumental scores) from the likes of John Williams, Danny Elfman, James Horner, and Jerry Goldsmith. It also contains my wife’s and my combined collection encompassing most of “Weird Al” Yankovic’s discography and a smattering of contemporary Christian albums I’ve grown fond of over the years. Lately, a couple of lullaby CDs have been added for placating Ben in the car, but I consider those largely transient.
It is also worth noting that I have a rather adamant distaste for country music. Perhaps it’s because country is so pervasive here in West Virginia that I had difficulty avoiding it while growing up, but as soon as a country song starts playing, going on about how somebody’s spouse left them, their hound dog died, or their pick-up truck has a flat tire, my brain enters some sort of dormant protective state and shuts down. I block it out like some devastating traumatic experience and usually can only be resurrected by playing the Star Wars or Star Trek themes. About the only country artist I can really stand is Ray Stevens, and that’s because his humor is catchy enough to override my self preservation urges and let me actually enjoy the music.
However, during the days after Wally’s gift card arrived, I caught myself unconsciously humming a song I hadn’t heard in years, if not a decade or two. I was surprised at first that I remembered it so clearly and that I could recall most of the words. I was also surprised that it stirred up other musical memories, to the point that I was able to mentally reconstruct most of the album from which it came. The music became so conscious in my mind that I caught myself singing one of the songs to Ben at bath time one evening. And that album is the dirty little secret I’ve come to reveal.
You see, my dad, being a child in the 1950s, grew up on the two staples of television and films geared toward boys of that era: science fiction and Westerns. Thus, it was natural for me growing up to find classic sci-fi novels lying around as well as Dad’s favorite Gene Autry or Roy Rogers films in the VCR. And one of his favorite tapes to listen to in the car on those long family road trips was Marty Robbins’ Gunfighter Ballads and Trail Songs.
Technically, I suppose this album should be considered a “Country & Western” album, as the genre was known as back in the day. Of course, the “Western” part has long since been dropped from the genre’s title, probably because that sub-genre fell out of favor at the same time the Western started disappearing from TV and the big screen. Most of the songs retell stories of the Old West, of gunfighters, cattle rustlers, and Arizona Rangers, although they are largely the work of fiction from the romanticized West of Hollywood than the real thing. Many of the melodies are very simple and singable, but the tales can be as graphic and violent as the period in which they are set. And as I pondered whether I should actually spend Wally’s gift on such a purchase, I caught myself humming these songs over and over. Eventually, I gave in to a combination of nostalgia and frustration over the few lines of songs that I couldn’t remember.
So now my dirty little secret has been revealed. If you’re interested, here’s the link to the album in iTunes. The link above will let you find the CD on Amazon. Either place should have samples you can listen to if you’re curious enough. Now I’m going to go hide under my desk and listen to “Big Iron” one more time.
It’s been a while since I’ve made an update here on the state of all things GPF-ish. Of course, the official state of the comic stuff should come only from the GPF News, but I tend to occasionally give those of you who visit this site (both of you) more nebulous, wishy-washy updates that may or may not come to pass. I guess the blog has taken the place of the old Rumor Mill, only not restricted to just Keenspot PREMIUM subscribers. (Man, I feel guilty for not keeping that up. But truth be told, I honestly haven’t had any “rumors” worth posting there for ages.)
Things are moving along slowly but surely. I will assume everyone has read the September 3rd News update by now. The important thing to pull out of that one is that Miscellaneous Fridays will be the Book 1 bonus story until the end of October. This wasn’t my first or best choice, and I was very reluctant to use “exclusive” content from one of the books as main page filler. Still, that content is now a good seven years old and will not remain permanently archived on the site in a freely available form (you have to have access to a physical copy of the book to access the online archive), so I will assume this is okay. I also didn’t have much else I could pull of the old archive DVDs that would buy me enough time to play catch up. I’m still sitting on the Book 2 bonus story, which at twelve pages could last me a good three months of weekly updates, and I’ll pull that out of the hat if I have to.
However, the extremely ambitious plan is to get GPF back to three real comic updates per week by November. This, of course, will mark GPF’s ninth anniversary and will be a perfect opportunity for an at least partially triumphant comeback. Fortunately, this is looking a lot more possible that it was several months ago. It’s still going to be difficult, but at least it looks more obtainable than it has for the past year.
The biggest obstacle to upping the frequency has been Ben’s sleep schedule, which has been very erratic and difficult to manage pretty much since he was born. However, we’ve had a major success in getting him on a pretty regular schedule lately (although he’s only been complying while literally kicking and screaming). This has freed up some of my evenings again; I managed to get almost an entire old-style week’s worth of comics (one color Sunday and six dailies) done last week. We’ve also finally started making some headway in cleaning up the basement, which for over a year after our move back to West Virginia has remained a catch-all of unpacked boxes of stuff we haven’t found storage for. Now most of the moving stuff is packed away or discarded, my GPF corner is an organized and semi-efficient workspace, and the remaining unpacked boxes are lined against the walls, making much of the floor space actually usable. More storage space is on the way (once I put those do-it-yourself cabinets together) and many other home improvement tasks should be relatively easy to complete.
What remains to be seen is what will happen to Tuesdays and Thursdays if GPF actually does return to a three-updates-per-week schedule. The two primary options are to (1) let the T-days lay fallow as they currently are or (2) move the Sketchbook reruns there and update them twice per week. Option #2 has the obvious benefit of increasing page views and thus ad revenue, but with the detriment that it depletes the backlog of sketches twice as quickly as they are generated (as new Sketchbook updates occur only once per week). I suppose Option #3 would be to make one day Sketchbook reruns and the other Miscellaneous Thursdays or somesuch, but I’d rather not go that route; I’m running out of miscellaneous stuff as it is. I think the most likely scenario is Option #1, with the possibility of Option #2 leading to the ultimate goal of GPF returning to at least five updates per week (M-F). (Six or seven updates shouldn’t be likely for the foreseeable future.)
As for story line stuff, that’s pretty much up in the air. I have a number of loose ideas of where I want to take the comic once To Thine Own Self… finally comes to an end. I think I have only one or two really major story arcs left unresolved that I want to complete before I can comfortably see the strip end. I might take a diversion from the main comic and move Surreptitious Machinations II into the main archive; as awesome and ambitious as the idea was to make it an exclusive pay-only feature, I think it might be more practical to simply finish it and get it out into the open. Since it’s already scripted, it would just be a matter of finishing the art, which I’m already over a fifth of the way done with anyway. It would also provide an excellent diversion for both me and you, the readers, as we take a break from the main cast and from TTOS’s weighty length.
(Note: The above paragraph should not be misconstrued as rumblings that GPF is coming to an end any time soon. I’ve always kept the option open that if I had to I would end GPF if the needs of my family were too great to let it continue. My family has and always will remain my top priority and will always come before the comic. However, I still have plenty of ideas and I’m sure more will present themselves as time continues. At the moment, I only have two major stories I’d love to see published before I brought the strip to a comfortable conclusion, but that doesn’t mean there aren’t tons of smaller, lighter story arcs I could pursue. When I started Surreptitious Machinations, I was afraid I would have to end the strip once it concluded because I would run out of ideas. Quite to the contrary, SM seeded even more story ideas and kept feeding the comic all the way up to today.)
I suppose that’s all I have to tell you for now. I’ll try and give you a greater feel for how likely the schedule increase will be as the time draws closer.
I was getting tired of the modified default WordPress theme I’ve been using, so I decided to do a little cosmetic surgery. I’m now using the Upstart Blogger Minim theme from Upstart Blogger, modified for my personal tastes. Still doing some tweaking, but I really like the very clean look of it.
I’m pretty busy today, but I hope to post some interesting stuff soon.