wonko.com

Hi! I'm Ryan Grove: Sorcerer at SmugMug, lover of movies, eater of pie, connoisseur of awesome.

Older posts

Displaying items 141 - 150 of 662

Xbox Live is a delicate flower

When I got home from my trip to Portland late Friday night, I had a grand plan: I would use the gift cards I'd received for Christmas to buy a crapload of Xbox 360 games and then spend the remainder of my holiday vacation sitting on the couch, having a massive 360 gaming marathon.

Instead, I spent all day Saturday trying unsuccessfully to recover my Xbox Live user account, which I had transferred to Loren's 360 in Portland while I was there so we could play Rock Band and Madden '08. Apparently lots of other people had the same idea over the holidays and the Live servers couldn't handle the load of all the accounts being recovered.

Major Nelson spent the day updating his Twitter feed every few minutes with helpful and informative status messages like "I can't stress enough that Account Recovery should ONLY be used in emergencies" and "Just played some H3 with a few of you". You might expect him to know what's going on over there seeing as how he's the Xbox Live Director of Programming (whatever that is), yet every fifteen minutes or so he'd say something like "Everything appears to be working now" only to follow it up a few minutes later with, "Fooled you! Everything's still broken." I'm sure he means well, but Jesus Christ it's infuriating.

The most infuriating thing about all of this, though, is that Major Nelson, Xbox Live customer service, and some of the Xbox Live support personnel commenting on the forums seem to be blaming the account recovery problems on users who used the feature to temporarily move their accounts to a friend's 360. They say account recovery is meant only for "emergencies" and not for roaming. The implication is that by misusing the feature, we overloaded Microsoft's fragile little servers and brought all this pain upon ourselves.

If this is true, and if account recovery really isn't supposed to be used for roaming, then it would probably be a good idea not to encourage people to use it for roaming right there on the account recovery screen.

Anyway, as a result of all this nonsense I went out and spent my Christmas money on PlayStation 3 games instead. My PS3's online features are working just fine.

WordPress sucks

More than two years ago, I wrote a scathing, obscenity-filled tirade about WordPress's misuse of addslashes() to escape user-supplied strings used in SQL queries.

Lots of people posted comments. Some said I was being pedantic, some said I was downright wrong, and one person linked to a diff showing a fix that was supposedly going to be in the next release.

Apparently they never got around to releasing that fix.

Header photos

I recently added a bunch of new random header photos to the site and it occurred to me that even though they've been up there for years, I've never actually mentioned them in a blog post.

So, for the curious: the header photos are the product of a Ruby script that sifts through the thousands of photos I've taken since I bought my first digital camera way back in the 20th century. It creates a 720x170 crop of a randomly-chosen section of each image. Then I go through the resulting mess and manually weed out anything that isn't interesting. There are currently 127 photos in the pool, one of which is displayed at random on each pageview.

In addition to providing a bit of dynamic color for the page, they have the pleasing effect of triggering fond memories each time I look at my website. Since this tends to be one of the first and last websites I look at every day, that can be rather soothing.

Internet Explorer 8 doesn't matter

Microsoft's complete silence on the status of Internet Explorer 8 has resulted in much wailing and gnashing of teeth from web developers, but ultimately it's not an issue worth getting worked up about (note: the Ryan G. quoted in that article isn't me).

The status of IE8 is unimportant. Whether or not IE8 will be less of a piece of shit than IE6 and IE7 is unimportant. What is important is that in spite of the release of IE7 over a year ago, IE6 is still the world's dominant web browser, and it's holding the web back.

Even if Microsoft were to release a fully standards-compliant IE8 tomorrow, it wouldn't solve this problem, because IE users have no interest in upgrading until they're forced. The people who are still using IE6 are grandparents and casual computer users — people who don't necessarily know or care what a web browser is — and corporate users who have no control over what browser their IT department lets them use.

Microsoft needs to figure out how to get these users to upgrade, and they need to do it now. They botched the IE7 release utterly by giving it a horrid, unfamiliar UI that alienated casual users and by failing to address many of the concerns of web developers, thus providing virtually no incentive for anyone to upgrade to it or develop for it. They also tied IE7 too tightly to Vista, which has itself been an utter failure, so Windows XP and IE6 are still shipping on many (possibly even most) new PCs.

Unless Microsoft relearns how to develop usable, marketable software, it won't matter how good IE8 is or how soon it arrives, because web developers will still have to develop for the lowest common denominator.

War Rocket Ajax takes a hit

Driving home on highway 101 during rush hour every evening is a lot like playing with fire, only not nearly as much fun, and when you get burned it costs a lot of money. It sure does light up the night sky real pretty though.

Tonight, just as I was settling into my evening commute, the car in front of me hit the brakes, I hit my brakes, and the guy behind me hit his brakes. None of this is really newsworthy, since it happens about 18 times a second on the 101. What made it interesting was the guy behind the guy behind me, who didn’t hit his brakes. Car #2 and I came to a complete stop, but car #3 hit car #2 hard enough to slam him into me, creating a nice car #2 sandwich. Car #2 hit me so hard the impact actually knocked the hat off my head (the driver of car #2 later told me that his hat ended up in the back seat).

As car #2 and I limped to the shoulder, car #3 caught fire.

There happened to be an ambulance a few hundred yards behind us. It joined us on the shoulder and the paramedics called the fire department. By this time, the other two drivers and I were exchanging information and watching car #3 burn as traffic swerved to avoid it. The paramedics seemed strangely disappointed that none of us was injured and had us each sign a statement saying we had refused care and wouldn’t sue them. Lovely society we live in. Meanwhile, car #3 burned bigger and brighter and there wasn’t much we could do about it.

After another ten or fifteen minutes, two fire engines arrived nearly simultaneously (one from each direction) and the firefighters had the fire out in a jiffy. They were followed shortly by a CHP officer, who began trying to figure out how to get the mangled, smoldering wreck out of the middle of the highway. What they ended up doing was brilliant:

The firefighters attacked the wreck with their axes, pounding down the crumpled hood and peeling back protruding bits of metal to make enough room for one of them to squeeze into the driver’s seat. Then, after stopping all five lanes of traffic on the 101, the cop got in his cruiser, nudged up against the wreck from behind, and floored it. There ensued a cacaphony of squealing tires and a cloud of smoke, and somehow the firefighter managed to steer the wreck (with wheels pointing in opposite directions) onto the side of the road. It was great fun to watch.

This was followed by lots of boring statement-giving and report-taking. Luckily the damage to my car was minor and seems to have been limited to the rear bumper, so I was able to drive home. The guy in car #2 was also able to drive away, but just barely, and accompanied by a lot of unhappy grinding noises. Car #3 wasn’t going anywhere, so I assume he waited around for a tow truck.

Now I get to deal with insurance and hope my headache (which existed before the accident, but which the accident didn’t help) doesn’t get worse.

Gaia Online is doing awesome things with LazyLoad

Jakob Heuser wrote to let me know about this big meaty blog post describing how he and the other folks at Gaia Online have implemented an impressive just-in-time CSS and JavaScript loader based in part on LazyLoad.

They've made some very nice improvements (such as replacing LazyLoad's queue-based loading with method chaining, which ends up being much faster) and fixed some bugs, all while keeping the library down to a slim 5.6K (minified) without any external dependencies. Very nice.

Rock Band is almost perfect

Yesterday afternoon, after waiting for what I hoped was a long enough time for the Black Friday morning crowds to abate, I headed out in search of Rock Band. The huge new Best Buy down the road was sold out, but the huge new Target next door had two left, crammed into a tiny space on the bottom shelf near the Xbox 360 accessories. The box this thing comes in is pretty huge, so I can see why stores are having trouble keeping it in stock. There's just not enough room.

Anyway, I got it home, set everything up, and Loren and Felicity and I rocked out until the wee hours of the morning. For the most part, the game is absolutely awesome, and even after hours of continuous rockage we didn't experience any of the hardware problems some people have been reporting. However, there are three things about Rock Band that really, really suck:

  1. When you start a band, one player must be designated the leader. This player is now the band leader for all eternity, and the band can't play without him or her. Period. The game won't let you change who the leader is, it won't let you swap the leader to a different instrument, and it won't let your band play without the leader. This sucks epic amounts of ass.
  2. I was totally digging the drums until about halfway through the medium progression, when I just couldn't deal with the damn foot pedal anymore. It's uncomfortable to use, impossible to position well (for me anyway), and I seem to have a complete inability to control both my feet and my hands at the same time. While Felicity and Loren were rocking out without any problems on the medium vocals and bass, I was being thwarted by that damn foot pedal. If I ignored the foot pedal, then I had no trouble being awesome on the drums, but our score suffered horribly due to all the missed kick drum notes. I'm sure there are plenty of people who have no problem with it, but it was a dealbreaker for me. I want a "no foot pedal" option.
  3. For some reason, the first three or four songs end up getting repeated over and over and over and over again, both in new venues and in random setlists. By the end of the night, we were so sick of Weezer (and even Nirvana) that it sucked all the fun out of the game every time we had to slog through those songs yet again in order to progress. There are plenty of great songs, but for some reason it's the mildly annoying ones that get repeated endlessly until you want to stab yourself in the eardrums with your drumsticks. Lame.

Aside from these gripes, the game is huge amounts of fun. I just wish Harmonix had gone a few steps further and made it perfect. Nothing ruins a nearly-perfect game like a few dumb flaws.

Ports freezes suck

While FreeBSD is, on the whole, a lovely server operating system and the ports collection was, at one time, a lovely software distribution mechanism created in an era when such things weren't at all common, the ports collection has been showing its age for quite a while now.

One of the most infuriating things about the ports collection is the ports freeze. These occur for periods of several weeks (sometimes even a month or more) during the runup to every FreeBSD release. Since ports is entirely dependent on CVS, and since, for reasons I don't understand but nevertheless find utterly baffling, the ports management team aren't willing to create a stable branch of the ports tree from which to do the release and would rather freeze the trunk, this means that there is a long, dead period when software managed via the ports collection cannot be updated through ports.

Invariably, ports freezes seem to be the time when all manner of security vulnerabilities are patched, particularly in PHP. Of course, since the ports tree is frozen, these patches can't be committed, so FreeBSD server administrators are left with the choice of waiting out the freeze and hoping nobody bothers exploiting the vulnerabilities or patching the affected software manually, which can (in the case of something as huge and with as many dependencies as PHP) be an enormous pain in the ass.

I'm not sure what malevolent entity is responsible for ensuring that ports freeze announcements are always followed by a plethora of vulnerability announcements, but I sure wish they'd stop it. It's annoying.