« Random 5 Bot Rewritten | Main | The Real Red vs. Blue »
August 19, 2004
Back Online at Home
It's been what, six weeks?
Today at work we found a really awesome program: TeleCrapper 2000. The intent of the program is to behave sort of like Eliza for your phone: you record a bunch of waves of you talking to nothing and it plays them back for telemarketers over the phone whenever they pause for input. The example stacks are pretty hilarious.
The Yahoo! transport was down on Jabber for a few weeks there. I am apologetic to those who use the Clan Spum Jabber server. They rotated back to sms.msg.yahoo.com from sms.msg.yahoo.com (or whatever).
Dialup is true pain. I love having internet access again, but at what cost? It seems like a lot to put up with. At least I'll have a chance to perfect my synchronized Clan Spum Sites folder AppleScript magic. I'll post it after I get it to work.
For my birthday, Alex got me a couple of CDs yesterday: the new Evergrey album, “The Inner Circle” and the second Avantasia album. Unfortunately, I don't have much to say about the second Avantasia album. It just isn't as good as the prior one (“Metal Opera Part 1”). The new Evergrey, on the other hand, kicks all kinds of ass. :) They are starting to sound like themselves in places, but they still turn it up to eleven; it has some of the most beautiful passages I've heard in metal, while retaining all class and not falling to cheese. It also has some really fast, hard, heavy stuff. Everyone who liked their older stuff should get it, definitely.
SpamCrime Analysis
At work, we've been doing a lot of Spam Crime Analysis lately. We picked one domain semi-randomly from the top 30 spamming domains for our analysis, cutprice12.com. We traced the IP and and bubbled back up to find other domains of theirs we had seen. We had seen, in total, about 12 different domains of these assholes. Then we did a WHOIS query and found 68 other domains of theirs, of which 67 were aliases for their internet pharmacy. The other was for an online casino, bay-casino.com, or Phoenician Casino as they like to think of themselves. I thought this was pretty amusing.
I did a bit more digging and found that they were using casino software written by a particular company (I can't recall the name, BogCasino or something). Looked up that company and found links to about 50 online casinos. One of them even looked somewhat legitimate, based in Canada. Apparently, Canadian law dictates that gambling is illegal, but leaves prosecution up to the provinces. Some provinces choose not to enforce the law, and these guys were apparently based out of one of those. I called their 800 number, it was very open and professional sounding.
Other Languages
I have found that I miss Ruby and Python. My boss asked me to write a little script for him the other day, just to take a file that looks like this:
2398238 foo bar other fields here 9838388 other foo other bar other fields here . . .
And make a bunch of files with names like “2398238” with all that record's data in it. I found myself taking a little longer than I should have, because I missed dicking around in these other, more expressive languages. You never write something like “x = [x.strip().split(",")[1:] for x in stdin if x.split(",")[0] = "keep" ” in REALbasic. You also never see anything like “bar = (files.each {|f| file.read.split("\n").collect(",") }).strip.” After a while you come to see why these languages are so popular in the hacker community and so reviled in the business world. Yet I have to wonder how Perl got to be so popular when it's much worse than Ruby or Python could ever be. These are the things I worry about…
Project SOULTRAIN
I am working on an ERD for Project SOULTRAIN. I have decided I want to store as much data as possible. I don't care if entering the data for a CD takes 30 minutes and ripping and encoding it only takes 5. I want to be able to do bad-ass queries like these:
- Give me all the songs performed by this artist (regardless of band).
- Give me all guitar music without synths.
- Give me all additional tracks off remastered albums.
- Give me all tracks performed exclusively by musicians older than 40 at the time of the performance.
- Give me all bands that this musician was in.
- Give me all bands who have had more than three genres on one album.
It's incomplete, and I know where most of the bugs are, but here's the image:
Here are the problems I've noted:
- Every release is the same album exactly, just on either a different medium or with differing release-specific information. This is wrong. Maybe tracks should be associated with the release rather than the album? Or maybe there should be some kind of track diff thing with releases.
- What to do about lyrical/melodic/timing differences between compositions and tracks?
- Is it possible that other artists will re-release the same album as another artist? If so, we will need to permit more than one artist to release the same album. Perhaps this should be a three-way relationship?
- Should we differentiate between brands of instrument? Personalized instrument? What about keeping track of which instrument is used on a per-track basis? Maybe that should be considered a player in the track/composition/musician relationship?
- How should we account for lineup changes?
- What constitutes a genre? Should genre modifiers be just genres or do we need a heirarchical tree type deal?
- Should genres be done at the artist, album, and track levels? At which level should we stop? Should compositions have a genre? Should upper levels simply aggregate the genre of lower-level items or should they have their own, separate genre?
- Where should lyrics and artwork be stored?
These sorts of things always work out better when there's a second pair of eyes looking at them.
New Mac Software
Most of this stuff is butt, incomplete, and poorly-documented. Nevertheless, I am working on it and I intend to see this shit through 1.0 at least. Anyway, here it is:
Password Generator
It generates secure passwords using /dev/random or /dev/urandom, your choice. Actually you can put whatever you want in for the device, but you probably shouldn't put in /dev/zero or it'll probably lock up your machine.
The algorithm is deceptively simple: I read blocks out of the device and keep all the typeable characters. Look at that! Anyway, the disk image is available. Let me know if you can think of a device one would want to use other than /dev/[u]?random or if you find a bug or anything. Generic bitching will be accepted.
SSH Options
Right now, it pretty much works as long as you don't want to do one of those ulta-obscure things with more than one local-to-remote or remote-to-local or application port forward, though all of the drop boxes don't work yet because I don't see how to do them with Cocoa Bindings. I'll be making that work pretty soon. Also, my AppleScript needs a little work since it seems to open more than one window when you click on Connect. Otherwise, it's my most-complete app and I had a lot of fun writing it (it was also basically my first app). Let me know what you think, and download it here.
I still have lots of other dormant software which I intend to release as soon as I'm good and ready. It is, however, almost ten and I have lots of housework type chores I need to do. Uploading all this shit is probably going to take forever and goddamn software update is wanting to download something like 30 MB of software, which will probably take two or three hours at this rate.
Here's hoping the posting keeps going this time. :)
Posted by FusionGyro at August 19, 2004 03:58 AM