A Year in Tech Purchases

One the the promises I’m trying to belatedly keep is to give follow-ups on how various pieces of tech gear worked out this year. Some, like the iBox2Go, got road-tested and reviewed earlier. Here’s my take on some of the other notables:

LG GGW-H20L Blu-Ray Burner

True tech trivia: ComicBase Archive Edition was the world’s first computer program to ship on the Blu-ray Disc format (The first commercially viable Blu-ray burners appeared weeks before our ship date and we were able to use them to port our entire art comic book library to Blu-ray in just a few days!)

At the time, however, there was exactly one Blu-ray burner on the market: the $1,000 Pioneer BDR-101A. Sure, the publicity of having the first Blu-ray product on the market alone made it an easy purchase for a computer software company to justify, but the $1,000 price tag ensured slow adoption in the consumer space. That, and this drive didn’t even burn (or play) CD’s–that required a separate drive!. Worse, unlike almost everything else in the tech world, it took ages for the price to fall significantly, particularly into the key $200-$300 range where serious consumers might want to jump in.

This year—finally!—the Blu-ray burner situation improved enough that we decided it was time to upgrade. The choice was the $269 LG GGW-H20L, and it’s been problem-free ever since it was installed. Not only does it burn to every format and type of disk under the sun, but it does it faster than ever, and in multiple layers too! (This means that it’s conceivable that the future may see a 50GB disk version of the Blu-ray Archive Edition someday (if only the media price would come down from its insane $35/slice level!)

The iPhone 3G (16 GB)

As part of preparing Atlas, we acquired samples of virtually every major brand of smart phone and smart device. And—since it was clearly going to be the talk of the smart phone world when it was released just weeks before San Diego Comic-Con—it meant that I was one of those poor saps sitting around for three hours to buy my iPhone 3G on the day they shipped. I’ll tell you now that I don’t think I’ve ever felt so positively foolish during any consumer purchasing experience.

Luckily, the phone itself turned out to be great—so good, in fact, that it became my regular handset (and yes, I sprung for the data plan as well—there’s virtually no point getting the phone without it). The gestural interface is downright clever, the phone speed and reception are definitely acceptable, and the integration of a the iPod features made it a replacement for the iPod I used to carry everywhere as well. I’ll admit that I still haven’t managed to get it integrated with our office email (and I’m not sure I’d want to if it meant that I’d be typing everything on a tiny, one-finger keyboard), and I’d love to see a more open platform in terms of song storage and the like.

Still, despite the hype, it’s a phone that definitely delivers on what it promises, and its mere presence has been a game changer for the whole handheld internet space. Even if you don’t have an iPhone, the browser on the phone you do have is likely far better than it would be if the iPhone weren’t resetting expectations in the market. (Remember WAP? Ugh)

Sony PSP-2000

A very cool lawyer (not an oxymoron, apparently) at the office next door was showing off her PSP to me and my son Neil this year, and I couldn’t believe how different the reality of handheld gaming was from my preconceptions. I’ll admit: my impression of the whole handheld gaming space was colored by the ancient Mattel Football game I’d played to death in 1978, as well as the less-than-impressive games I’d seen countless folks play on their washed-out Nintendo Gameboy screens. As a grown-up-type-person, I just wasn’t interested.

But as it turns out, The PSP is actually a fascinating little computer system, complete with most of the elements you think of as belonging to a “real” machine: Wi-fi, data storage, MP3 and video playback, sound in and out…even a full (albeit sorta terrible) web browser. You can even use it as a Skype handset for goodness sake—all for just about $169.

That said, the PSP is a bit of an odd duck as a gaming platform. The games it has are fine, if scant, but I’ve yet to find something truly addictive to get me hooked (although Daxter isn’t bad—particularly with the hookup to a big-screen TV). I think for me what I find most interesting is its potential as a lightweight computing platform and a place to tinker. (Tellingly, I’ve spent more time using it to listen to last.fm than I have actually playing games).

The XBox 360 (Professional Edition)

Finally bought one at Christmas after lusting after them for years. Generally, my impression is quite positive, although there are certain aspects of it that apparently can make small children cry in frustration. This would make a pretty good topic for a full User Interface Review–particularly of their NXE (“New XBox Experience”).

Having previously owned a PS3, the XBox seems less centered on showing off itself as a multi-purpose tech platform, and more as a sort of online gaming/media hub. Software support is impressive, although it’s a surprisingly closed platform, coming from a computer company. This isn’t necessarily a bad thing, but it seemed a marked swing in the opposite direction from the chaotically freewheeling platform that Windows represents.

Other than it being Christmas, what finally made me jump into the XBox platform was the combination of a price drop, a bigger hard drive (making it usable for media) and the new integration of Netflix playback, letting me stream HD-ish movies directly onto the big screen in the living room. Watching “National Treasure 2” with the family just a minute or two after someone suggested it one night was a real treat—it really was one of those times where you spend half of the movie in sheer wonder of simply being able to do what’s now possible with technology in this Age of Wonders of ours…

Bam! Atomic Avenue Gets *Much* Faster!

If you read my previous post on the subject, you know that my tech-loving heart was broken recently by the goofy connector placement on the WD300 Velociraptor drives I’d ordered which made them refuse to fit in the servers for which they’d been ordered. With great sadness, I’d been forced to return the drives to NewEgg, and by hunting the whole bloody internet managed to scrounge up a single replacement drive in the “Backplane” model which was meant to fit in servers, albeit for a C-Note more than the more common version.

The replacement arrived about a week ago, and I ran a trial moving the Atomic Avenue database over to it. As I suspected, it resulted in an improvement, but it was relatively subtle: about .4 seconds saved on an intensive database search that normally takes about 4.8 seconds to complete. This sort of incremental improvement is the stuff that IT upgrades are made of, generally, but it’s nothing to write a press release about.

Still, I was encouraged and ordered a second drive. It arrived the very next day, and today we managed to get it loaded up with the ComicBase covers library. After redirecting the Atomic Avenue site to look on thew new drive, I started running some speed test on the site.

OMG! I couldn’t believe the difference! Individual comic detail pages now load in an average of about 1.3 seconds—almost twice as fast as before. And Title pages, which typically show up to 50 covers per page, more than doubled their speed. Right now, with three massive file copies going on with the server, as well as a full backup, there are only a couple of pages on the site which take more than 2 seconds to load!

Like an idiot, I of course have to push my luck with this. The big file copies mentioned earlier are in preparation for moving the actual Atomic Avenue.com and ComicBase.com sites over to Velociraptor-based partitions in the near future. I doubt it’ll make a lot of additional speed difference to the outside world, but our own tasks of pushing updates, doing site compiles, and the like, may get a bit swifter. Even if they don’t, the $300/drive I spent on these seems like money well spent indeed!

Pandora Comes to the Playstation 3!

The latest firmware update for the PS3, 2.53, comes with a note that it allows for support of full-screen Flash movies. What it doesn’t say—but which is far more important—is that it fixes their browser so that Pandora (www.pandora.com) now works on the PS3!

If you missed the previous post on it, Pandora is an amazing free internet service which specializes in bringing you music like the music you like. For instance, if you tell it you like the band “She Wants Revenge”, it’ll create a personalized radio station which features that band—along with dozens of other groups which share similar characteristics. You can even vote “thumbs up” to a given song to tell it to play more music like that one, or “thumbs down” to make sure it never plays that screechy Alanis Morissette tune or that meandering 9 minute electronica exploration again. In short, it’s everything you wished “real radio” was.

And now—thanks to the unlikely marriage of a game console and our living room’s AV receiver—we can now listen to our own customized internet radio stations in the main entertaining area of our home. Awesome!

The WD Velociraptor: The Wicked-Fast Drive that Doesn’t Fit in a Server

Ever since they were released, I’ve had a thing for Western Digital’s Raptor hard drives. Although these 10,000 RPM drives have always been both pricey and hampered by storage capacities about 1/4 of their contemporaries, they were just crazy fast: about 50% faster than the next-fastest drives in the consumer sector.

When NewEgg ran a sale on the newest version of the Raptor: the 300 GB Velociraptor, I decided to bust out my credit card and see if I couldn’t buy myself some more speed for the ComicBase and Atomic Avenue servers. The drives arrived two days later, and I spent the morning conferring with various IT folks about the best way to stage the upgrade to our various servers (the RAID configurations we use make any drive upgrade an adventure; trying to schedule the maintenance window for the servers was another challenge). Still, after a bit more than an hour on the phones, I had an upgrade strategy mapped out, and I was ready to start the upgrade prep work…all of which stopped cold when I realized that the new drives don’t actually fit in a standard SATA drive bay.

The deal is this: in order to pull off their speed tricks with this version fo the Raptor, WD used a 2.5″ (notebook-sized) drive form factor, and surrounded it with a big heat sink to let it fit into a 3.5″ drive slot (as well as keep it cool and reduce vibration and noise from the rapidly spinning disk). unfortunately, the arrangement has the side effect of moving the relative positions of the SATA plugs about 1/2″ away from where they would otherwise be. So, when you try to slide the drive into a hot-swappable drive bay like those used on…well, pretty much every SATA-based server in existence…it won’t fit.

Belatedly, it looks like WD figured out that this might be a problem, and designed a “backplane ready” version of the drive some months ago which restores the relative positions of the SATA connectors to their normal placement. Unfortunately, this version of the drive (model WD3000HLFS) is harder to find than a parking spot in Manhattan. Even WD’s own online store didn’t carry them.

Frustrated at having been thwarted after all this, I began to look seriously at even SSD (Solid State Disk) and SAS (Serial Attached Storage) drives, despite their ruinous costs and difficult upgrade paths. In the end, I managed to track down one “backplane-ready” Velociraptor from an online retailer, which we’ll try out to see how much of a real world difference we’ll see in terms of server speed. If it works out, we’ll weigh the investment in buying more.

Realistically I only expect to only shave some portion of a second off most of our database requests, but every little bit helps, particularly as the user loads climb. Benchmarks show Velociraptors performing about twice as fast as our current server drives do, but I really don}t know how much of a difference even the Fastest SATA Drive in the World will make in terms of total web page load times, since so much of the total transaction is bound by other factors. I just can’t believe that I couldn’t even get the first batch of drives plugged in, for goodness sake!

Happy V.I. Day!

A long overdue “Thanks!” to everyone who served over there (including my brother). Come home safe, guys!

Thanks (an early Thanksgiving Post)

It’s been a crazy week, fully of 3:00 am programming sessions, server restarts, tech calls, web sites in need of updates, and a dozen other things that go into preparing for the final holiday sales push at this little software company that’s been my home for the past 15 years. As if that weren’t enough, today was update day, which means I not only needed to push out the update for this week’s new comic indexing, but also handle as many as possible of of the content corrections and updates that have been flowing in all week.

My own desk is piled with work and half-finished projects, but with everyone else in the office busily  working on their own deadlines, I started tackling the queue that had grown by some seven hundred new submissions in just three days. “Man!” I thought. “Why do I do this job? I could have gone into writing medical software, but nooooooo…“. I was ready to bang my head against the desk out of sheer exasperation.

But then, in between editing the appearance notes, cover colorists, and countless other entries sent in by dozens of people from around the world in the past few days, I had one of those quintessential ComicBase moments where I was simultaneously stressed out by the workload, ferociously proud of what our little company has built over the past decade and a half, and utterly humbled by the amount of effort, care, and goodwill that causes relative strangers from half a world away to deluge us covers for a hundred issues of Martin Mystere, or hold raging forum battles over the proper way to denote character names in anthology storylines.

Like I said, sometimes I don’t know why I do this job. And I don’t know why so many other people are willing work so hard to help us. But man, am I glad you do!

I’m a big believer in work, and I respect the heck out of anyone, in any job, that gives it their all. On a personal level, I’m incredibly proud of what we’ve managed to with ComicBase and Atomic Avenue—projects that started with me wanting to find a way to catalog and sell my own comics, then got well and truly out of hand.

But as proud as I am of all that our little company has managed to do over the years, I still have to stand back occasionally and simply marvel at the sheer volume of effort that’s been donated by people I may never even meet, much less have the chance to buy a round of drinks for at San Diego. From helping moderate the discussion boards to correcting the spelling of “Sienkiewicz”, to driving the editors here collectively mad with your insistence that we start crediting cover inkers and colorists, you folks are the one who made ComicBase and Atomic Avenue what they are today. This isn’t some kind of false modesty on my part, it’s simply the truth.

Thank you. For everything.

-Pete

Stopping “Invalid Callback or Postback” errors when using Ajax with dynamically filled dropdowns

This is one of those posts I’m just putting out there in the hopes it saves some other poor programmer the hours and hours worth of headaches that we just went through.

When we were developing the new search control panel for Atomic Avenue, we set it up so that several of the dropdownlists fill up with data based on other selections. For instance, if you choose to search by artist, a list of artist names will appear to choose from. As it turns out, such data-driven fields—particularly if they’re not always made visible until a later action (such as indicating you want to search by Artist) unhides them—is a great way to generate “invalid postback” errors under Ajax. This is especially true if you combine them with the AddHistoryPoint method in Asp.Net Futures’ July release to enable Back Button support.

The problem is that the new security controls in ASP.NET 2.0 can’t validate that the postbacks on the page were generated by those controls in the first place since (a) the contents can change as a result of the postback, and (b) the event validation may not have been set up in the first place if the control in question was hidden to start.

For the best rundown on the issue, here’s  the critical blog post by K.Scott Allen (check out part 1 as well)

Three options for getting around the situation presented themselves:

1. We could just disable the event validation checking, but that would open us up to new and fun injection attacks from folks faking postback data and using it to trick our web page into doing various inconvenient things.  In particular, we didn’t want to do that with our search since it was meant as a system-wide facility, meaning it would be used on virtually every page in the system.

2. We could avoid Ajax altogether and use traditional, full-page HTML rendering. This wasn’t a good option for us, since the Ajax-enabled version is *much* faster (and better looking) than the traditional HTML architecture which would require full page redraws after every control selection.

3. We could try calling Clientscript.RegisterForEventValidation and supply all the possible values of each dropdown prior to validation, but since there were often thousands of possibilities, this was impractical in the extreme.

So what was there to do? The answer was to roll our own version of the Dropdownlist control, leaving out the (non-inheritable) SupportsEventValidation attribute. By replacing the three problematic dropdownlists with the new control (“DynamicDropdownList”), we were able to get things working (including back button support) without tripping all over this rather thorny problem.

-Pete

Code Sample

Instructions

Amazing Bullet-Time Commercial

From Toshiba (courtesy of Gizmodo). Check out the “how it’s made” part as well!

http://gizmodo.com/5083099/toshiba-advances-bullet+time-to-next-level-in-ad-filmed-by-200-camcorders

Quote of the Day

“There are three things I’ve learned never to discuss with people: religion, politics, and the Great Pumpkin.”

— Linus

Road Trip Report: Home Again

After spending some time with family in northern Florida, we headed west again through New Orleans (still a mess, although the Cafe Du Monde’s beignets were terrific), Texas (amazingly vibrant, and home to some of the best barbecue I’ve ever had), Roswell, New Mexico (exactly like the TV series set, sans actual aliens), Flagstaff, Arizona (where I finally saw the Grand Canyon!), Las Vegas (mind-blowing, especially taking Neil to see the Blue Man Group at the Venetian), then finally… home.

31 days on the road, over 9,000 miles, more cities than I can count, and more amazing things seen than I’ll be able to process for a long, long time. I took over 2,200 pictures during that time, shot a boatload of video, and heaven knows when I’ll ever be able to organize or edit it all down to something reasonable.

A vacation is meant to take you away from your daily life, with all its cares, and let you see something new and refreshing. This vacation certainly did that.

This is an amazing country, and every part of it has something special to offer. I know I spent a lot of time daydreaming about what it would be like to move out to different states, whether that meant soaking in the fresh air, open land, and beauty of Wyoming; living in the midst of the rush and excitement of Manhattan; or setting up my own spread outside of Houston.

But maybe the most unexpected insight I had this whole trip was that Silicon Valley may be exactly where I ought to be. There’s a lot of things about the Bay Area that drive me crazy, and a lot of things that I miss from when I lived in other places I’ve lived, and envy about the places I’ve seen…but as a whole, for me, for this point in my life, I think I’ve chosen a pretty good home, all things considered.

And for now, at least–even with piles of laundry, and hundreds of items in my In Box, it’s good to be home again.