Enjoyed Played Reflected

Happy 1 Year Birthday, VJ Army

[this is being crossposted on both my blog and the VJ Army forums]

A year ago today, I completed my most ambitious coding goal of my life – VJ Army. I had turned what was originally a single user score tracking script into a multi-user, competitive score site. It was (and still is) rather rough around the edges, but it certainly worked.

Since then, I have been pleasantly surprised again and again by what the site has become. I find myself fortunate on two fronts:

I’m shocked at how easily I’ve made my code adaptable and open to change. Yes, it’s rather messy to look at, but I really lucked out with much of the initial database design, the flexibility of the code, and a few of the algorithms I ended up writing make me look back and wonder what I had done that day to come up with such inspired coding. (There have also admittedly been portions of code where I wondered what I was smoking.) The code was adaptable enough that I could adapt it into another score site – for Pop’n Music – with minimal work.

But more shocking is how the site has restored my hope.

Understand the following: I’ve been in the Bemani community since the end of 2001. In the just over two years between when I started playing DDR and when I launched VJ Army, I had grown incredibly jaded and hateful of anyone who played music games. The drama, the flaming, the reputations that some sites had versus others…it was hellish, beyond anything I had dealt with in a gaming community before.

I had picked up Beatmania IIDX in early 2003 because I wanted to get away from the DDR players. IIDX at home can be a hugely isolating game, and at the time, it was just what I needed. The community at the time was – no offense to those involved, and I certainly joined this at times – a bunch of elitist assholes.

When I got requests from friends (John Stiles and Ryan Madeksho are the two most responsible for the requests) to make a multi-user site, I coded it with some trepidation. My fears that the site would turn into a massive penis-waving competition made me wonder over and over if I was doing the right thing.

I’m so very happy I was wrong. We’re currently 1,063 users strong – not all active, but far beyond what I expected to see. Over 25% of these are on the forums, which are amazingly trouble free and surprisingly useful.

And while all this was going on, something amazing happened in Japan. There had been a nearly two year hiatus of IIDX home releases – 9th Style had been released, and we were still playing 6th at home. But as the community started to rally, Konami started to listen. In the span of one year, we will have had three home releases, spanning from 7th Style to 9th Style. Konami has once again gotten serious about IIDX at home, and while I know it’s really not the case, I’d like to think we all had something to do with it.

Before I get to indivdual people I’d like to thank, I want to thank the user base as a whole:

If you’ve ever posted a score, thank you. You’ve helped to make the site what it is.

If you’ve ever posted a bug report, thank you. Without you, I’d never catch the holes in my code and never be able to catch them all myself.

If you’ve ever posted a feature request – even if I rejected it – thank you. The passion you all have to make the site grow is unbelievable.

If you’ve ever PMed me, or emailed me, or even IMed me just to thank me for the site, thank you. I really do appreciate it, and it keeps me going.

If you’ve ever bought something from the VJ Army store, thank you. You’ve helped to keep my gaming addiction in check, and my wallet (and my wife) thank you just as much as I do.

If you’ve ever referred a friend, or said kind things in public about VJA, thank you. This site couldn’t thrive without word of mouth.

Okay, now onto specific people:

To John “mafiaboss” Stiles – thank you for kicking my ass about the features. You’re always spot on with your requests, you’ve more than helped out with the coding (percentile sort, live grade adjustment), and it’s always a pleasure to watch your progress, even if it means you’ve passed my skill level in far less time. Cheers, my friend.

To Ryan “ryan2dx” Madeksho – you are truly a fantastic IIDX player, and without your help collecting note counts and difficulties, I couldn’t have the site as ready for each home release. Thank you for driving me to get the site built in the first place. …./

To Aaron “rmz” Ramsey – you are incredibly helpful between bug reports, helping out on the forums, and keeping people in check so I don’t have to repeat myself quite so much. I’m very happy to have you around.

To Malcolm “Reo” Cuffie – if I couldn’t bounce ideas off of you, I don’t know what I’d do. Thanks for listening.

To Random and Ransai – I know this isn’t related to VJA, but thanks for trusting me and believing in my coding. I promise, there’s still more to come.

To my wife, Katie – thank you for putting up with my shit. For those of you who don’t know, I frequently end up coding and managing the database at strange hours, and she tolerates it with the patience of a saint. Without her understanding and support, I sure as hell wouldn’t have the opportunity to work on the site as much as I have.

To Paul Kehrer – your donations of time, server space, bandwidth, and understanding are immeasurable. Thank you so goddamn much. gg sir.

Before I get onto the meat of the goodies today, here’s some fun with numbers.

Over the first year, VJ Army has received:

  • An average of 2.9 new users a day.
  • One new score entry – not including updates, just flat out new entries – every three minutes.
  • One new course score entry every two hours.
  • An average of 545 scores entered per song, across all difficulties.
  • An average of 36 scores per expert course, across all difficulties.
  • Top 5 Songs AAA’d on L7:
    1. 5.1.1 (319)
    2. Nothing Ain’t Stoppin’ Us(247)
    3. Burning Up For You (226)
    4. Comment Te Dire Adieu (178)
    5. Spica (162)
  • Top 5 Songs AAA’d on 7:
    1. 5.1.1 (312)
    2. Nothing Ain’t Stoppin’ Us (273)
    3. Burning Up For You (190)
    4. Comment Te Dire Adieu (182)
    5. Love Will… (161)
  • Top 5 Songs AAA’d on A:
    1. Don’t Stop! (103)
    2. i feel… (92)
    3. Burning Up For You (97)
    4. Comment Te Dire Adieu(97)
    5. World Wide Love (87)

Here’s to having another great year of IIDX.


Christmas By The Terabyte

An alternative take on the blog-what-you-got-for-Xmas meme.

Assuming the following mappings to be true:

The average PS2 or Xbox DVD game has a capacity of 4.5 GB.

The average Gamecube game has a capacity of roughly 1.3 GB.

The average CD – be it audio or game – has a capacity of 700 MB.

The average movie DVD has a capacity of 9.0 GB.

The combined data capacity of my Christmas presents – just mine, not including Katie’s – is 288 GB. Now, I don’t know what percentage of that capacity is actually filled, but my impression is it’s close.

Ten years ago, the computer I was using (the infamous SE/30) had a 30 MB hard drive. Were I to segment all of the data I’ve acquired over the last 48 hours into 30 MB chunks, I would need 9,600 Mac SE/30s to contain it all.

Just a wee bit frightening.


Blinded By The Lights

I need to preface this by saying that while I’ve blogged through many major event in my life, what follows is not only major change but affects a number of people who have been my friends, peers, and coworkers for the last four years.

Over a week ago, I declared that my 24th birthday was going to be “most unremarkable”. Life, thankfully, has a way of making me eat my words.

Last year, while I was working remotely from Ithaca, I was making occasional trips into New York City to help out at the Freeverse office, usually during a time when the office was going to be short-handed. Somehow, in the middle of one of these trips – one in late June – I was pulled into a sudden interview at the Cornell Medical School. I wasn’t prepared, I wasn’t aware of what I was interviewing for, I was just there and trying my best.

Over the following year, a bizarre series of events continued to unfold at a slow rate – slow enough to simultaneously make me both anxious for resolution and to forget about the process entirely at times.

But, as you may have figured out by me now posting about this, the process has in fact come to an end.

I have been offered – and accepted – a position with the Office Of Academic Computing at the Cornell Medical Center. The position will have me playing a number of roles relating to the distance learning program for the school in Qatar.

To a number of people who are so used to me being a part of the Freeverse equation, I’m sure this comes as a bit of a shock. At the very least, it’s been a difficult concept to wrap my own head around, despite having done the mental math and seen that this is undoubtedly a good thing. Having been with Freeverse since March of 2000, there’s a large lump in my throat as I have to disconnect what’s been a fairly constant part of my life for the last four years. From the bizarre position of “distance intern”, through a drought, then back for occasional work, then to CTO, then to CTO/Webmaster, and then to some weird amalgamation of so many roles I would often make up new job titles as needed, I think I’ve probably done everything possible at one point or another. When you’ve been that entrenched in something, it’s hard to move on.

This is beginning to sound like a break up letter, isn’t it? I don’t want it to be read that way. I’ll still show up on GameSmith, I’ll still keep my ear in the Mac gaming industry, and I’ll still be willing to give you all the same shrill advice I’ve become known for over the last four years.

There are roughly a thousand people who I’d like to thank, and I think most of you are going to get yours over IM as I can’t possible drag this blog entry any longer.

But to Ian and Colin – you two took a ridiculous chance on a kid you didn’t know, and gave me so much more leeway and room to grow than I ever could’ve hoped for. You put up with my devotion for minutiae and went out of your way to help me out, and for all of this I am eternally grateful.


I will not be leaving NYC, and I’m not moving back to Ithaca. The Cornell Medical School is on 69th & York Ave, in the Upper East Side. It’s actually closer to my current apartment than the Freeverse HQ is.

I will not be traveling to Qatar. Incidently, It’s pronounced “Cutter”, not “kah-tar”. I still consistently get it wrong.