Lightning Strikes

Inexpensive computer versus Mother Nature

Being discouraged from access to my computers for a while by an intense electrical storm, I thought back to this interesting experience I had back in the distant past, in the earlier part of my career.

For a couple of years, ending in 1987, I was the Service and Support Coordinator for a local computer store, Midwestern Technical Products, now long deceased.  In addition to programming, which was (initially) not enough work to fill a full-time position, I also served as the Service Manager, overseeing 4 technicians, as well as administering the (nominal) internal network and handling various other technical duties.

One day, a customer came into the store with a non-working Texas Instruments TI-99/4A, which had been the victim of a lightning strike.  Apparently, his house had been struck directly, destroying most of the electronics, and while the insurance company had replaced his television and stereo, he still wanted to recover this inexpensive computer.  Keep in mind that the TI-99/4A was already obsolete by this time, and when it was last available for purchase the retail price was down to only $99.

While “checking in” the computer (filling out the work order, etc.), I explained to the customer that, at a service charge of $65/hour, with (usually) a 30 minute minimum, it was highly unlikely that we would be able to fix the computer for less than it was worth.  Nevertheless, the customer insisted that we take a look.

Later that day, when the technician assigned to the initial assessment got to that work order, I was summoned back to the service room so that he could take pains to explain to me exactly what I had already told the customer.  Of course, being the manager, I also got a question along the lines of “What exactly do you expect me to do with this?”

So, just combining troubleshooting with a little brainstorming, I asked how much had been done so far, and was able to ascertain that that the problem has been verified, i.e., the computer has been plugged in and did absolutely nothing.  The technician was guessing, based on the lightning story, that the power supply was fried.  I then asked whether we were able to confirm that electricity was even getting to the power supply.  He had been so anxious to tell me how unlikely an economical solution would be that he had not even gotten that far, so while I watched, he learned that no voltage was getting through the power cord.  Of course, it was possible that the whole computer was toast, but until we could actually apply power to it, there was no way to know.

At this point, the technician (who appeared to just want my permission to dismiss this job and move on) said, “Now what?”  I looked at the power cord and noticed that, unlike many cords that had (and still do) a “wall wart” at the plug end, this cord had a wart in the middle of the cable.  Since we knew power was not getting all of the way through the cable, I thought that we could, literally, divide and conquer.  Looking closer at the bulge in the cord, I saw that there was a seam, and if we could split it, we could determine which half was at fault, or maybe get lucky and find something repairable in the middle.  I took the risk of destroying the (already failing) power cord and pried the wart apart.

What I discovered was surprising, but also surprisingly logical.  To move the wart electronics away from the wall, rather than design and manufacture a new cord, some brilliant engineer decided to simply plug the wart into a short extension cord (designed to match the size) and just glue the two together into one cord.  (Actually, I cannot say with absolute confidence whether it was glued, deliberately melted, or fused by lightning.)  In any event, pulling apart the cord gave us a shorter TI-99/4A power cord, and a short extension cord, with no exposed electronics at all.

I must admit here to skipping a couple of steps in our excitement.  Instead of testing each half of the power cord, I simply had the technician plug in the power cord, without the little extension, and, lo and behold, the computer sprung to life.  The cheap little extension, provided (apparently) just to make the cord easier to fit into a wall plug, ended up serving as an unconventional fuse, protecting the computer by self-destructing when lightning hit.

Availing myself of my (questionable) authority, I went ahead and reduced the minimum charge, in this instance, to only 15 minutes, and for $16.25, we had a happy customer with a working TI-99/4A, and also a story I remember 27 years later.

“I can’t stop, I can’t stop myself…”

OUYA at First Glance

This inexpensive console has some real merit.

OUYALast week, as I was continuing to learn Android development, I was finally nudged into looking into the new OUYA console.  For those unfamiliar, the OUYA is an Android-based gaming console that sells for less than $100.  It got its start with a hugely successful Kickstarter campaign and, while it is not intended to compete with the PS4 and XBone launches, it is a legitimate player in the console market.

The reason that we considered the OUYA is that it is designed from the outset for open development, which makes it accessible not only for established indie developers like Digital Gamecraft, but also for anybody with an interest and just a little ability, and those who actually produce marketable games can find their titles listed right alongside AAA developers.  The unique thing about OUYA games is that all of them are free to try (so it is, in essence, a shareware console).

Acknowledging that it was a tiny investment, not to mention cheaper than most Android tablets or phones, we made our order on the spur of the moment, and 3 days later our OUYA arrived at the doorstep:

OUYA boxOf course, December is winter here in Michigan, which means that I had to wait a few hours for the electronics to come slowly up to room temperature.  During the wait, I contemplated how I had heard various complaints about the OUYA, but thus far, everything was very professional, exceeding my expectations.  Meanwhile, the contents of the box just sat on my auxiliary desk in anticipation:

OUYA package contents

The first thing that surprised me was how small the console itself was; it literally fits in ones hand, and it is smaller than the controller in two of three dimensions.  I was also surprised, and delighted, to find that the box included an HDMI cable, a very nice touch that is usually overlooked (cynically: deliberately left out to make more retail profits).  Indeed, if one counted the retail prices of the controller, HDMI cable, and batteries, the console itself was quite inexpensive indeed. 🙂

Finally, the time came to set everything up, and I ran into my first issue.  Therefore, I will start with the (few) cons that I experienced.  The OUYA is a bit short on traditional documentation, so there is nothing explaining how to install the batteries in the console!  I challenged our local console expert, and he was unable to figure it out, either.  (A Google search reveals that we were hardly unique in our confusion.)  Also, after a bit of use, it becomes clear that the OUYA has no ventilation to speak of, so it becomes a rather effective hand warmer in a chilly office, but this will likely be a liability in summer.  Returning to the initial complaint, it turns out that the black area in the middle of the controller is a touch pad (!), which fact I did not discover on my own.

On the other hand, there were more important pros.  The installation process, including the downloading of a system update right away, was embarrassingly simple, especially when compared to the PS3, as well as humorous (even in the license agreement).  The display is extremely clear, even on my poor 720p office/development television.  The whole interface is straightforward and easy to understand, and the purchase process is just about as painless as it could possibly be.  The controller (contrary to some opinions) is solid and comfortable to use, and, of course, this whole system was inexpensive.

The available game software is certainly the most fundamental aspect of a console, and unsurprisingly, this is a bit of a mixed bag, at least in my limited experience (so far).  You have top games, such The Cave (currently #1), which delivers everything that one would expect, and others, like Amazing Frog? The Hopping Dead (#3), which seems to have come up a few weeks short of prime time.  I really wanted Pinball Arcade to be as good as their attention to detail, but alas, the delay between clicking a controller button and the flipper reaction makes the game totally unplayable.  Conversely, and promisingly, the OUYA version of Galaxoid, by lone developer Jacob Davis, is loads of fun (for just a few bucks).  This variety makes the ability to try games that much more valuable.

The next step is development.  Though I spent a little time playing with the OUYA as a consumer would, I have been too busy with paying work to install the ODK (OUYA Development Kit) and build anything for this new console.  You can be sure that I will post more about the OUYA after that happens.

Latency Illness

This is why VR headsets make us sick.

As mentioned in my previous post, Oculus Rift is a Fad, there are physiological reasons that we (as human beings) get sick when using virtual reality headsets for an extended period of time.  I will explain the reasons for this effect herein.

The key factor is head tracking latency.

When discussing this, I used to call it “anti-motion sickness”, and some people have referred to the problem as “simulator sickness”, but I have now chosen to use the term “latency illness“, as that is a more accurate description.

To start with the most basic idea, latency is the amount of delay in a system, and in this case, it means the time between a real-world action (a head movement) and the visual representation of that action on the display.  This is the time it takes for this whole process: HMD sensors detect head movement, the headset delivers that information to the driver, which in turn reports the movement to (or is polled by) the game software, which then assembles the updated scene, which is rendered to the display (generally, at the next refresh), and finally the eyes and brain interpret the image(s).

The above process necessarily takes a not-insignificant amount of time, introducing noticeable latency.  In practical terms, when you turn your head, the display is slightly behind.  On a fixed display (with a normal controller), this can be annoying (and combined with a slower refresh rate, can even make people dizzy), but a delay between a mouse (arm) movement and a screen update becomes a characteristic of the game.  However, when the display is “immersive” and provides your entire vision, without a stable frame of reference, and the input is the actual movement of your head, it introduces issues that trigger (undesirable) physiological responses.

Moving your head necessarily moves the vestibular system in your inner ear, which is responsible for balance, spatial orientation, and movement detection; it is your own personal head tracker.  You (correctly) feel through your vestibular sense that your head has moved, but with the introduction of latency and immersion, your visual sense tells you that your head has not moved (yet).  Your brain has to try to make sense of conflicting inputs, which can lead to dizziness (vertigo, disequilibrium, or lightheadedness) and headaches after a short period of time.  This is a form of motion sickness.

The human brain has evolved over the eons to have a specific response to this disconnect between vestibular and visual senses: nausea.  The reason that we get ill when our senses do not concur is that this is experienced when we have consumed something poisonous.  Our great ancestors (or children 🙂 ) may have ingested poison berries, and nausea is the reaction that increases survival fitness by causing us to vomit, expelling the poison from our system in the fastest manner possible.  Unfortunately, when the cause of the nausea is not from our stomach, vomiting does not provide relief.

You may have noticed the fact that all of the above provides a pretty good description of what happens when somebody gets drunk, and of course, those unpleasant aftereffects are known as a hangover.  In the case of latency illness, the process is similar, and many of the same aftereffects are experienced with extended use.  Note that the brain can adapt to incorrect visual input (see the perceptual experiments of George M. Stratton), but when the problems are caused by lengthy use of a VR headset, there are periods of adjustment both when the headset is donned and again when it is removed.

In my experience, one does not get “VR legs”; limited use (less than 5 minutes at a time) of an HMD is always recommended, even if visual latency seems to less disconcerting.  I believe that this is the fatal flaw in this kind of virtual reality technology.  However, other great (game) programming minds, such as Michael Abrash and John Carmack (despite my swipe in the last post 😉 ), are contemplating how to minimize the latency issues, from a technological standpoint; physiology must still play a role, though.

As I mentioned previously, my personal experience with moderate latency illness came when I was doing final testing of the Doom II driver for the Virtual i-O iGlasses.  I had been working on the drivers for a while, and I had become accustomed to the latency, somewhat.  I also knew, thanks to Mark Long of Zombie, that there was a risk of playing a game in the headset for too long.  Nevertheless, I wanted to do proper final testing of the drivers, so I installed everything on a clean system and started playing Doom II in the iGlasses; I kept playing for quite a while, completing several levels.  I did not feel sick or anything, and the drivers worked, so it was time to ship.  Then I took the headset off…

Boom!  Instant hangover.  I almost instantaneously got a massive headache, felt somewhat dizzy, and became very nauseous.  It was everything I could do just to archive the final drivers and write an accompanying email, and once I was done, I just went to bed and laid there feeling like I was taking my lumps for getting smashed, when all I had done was play a few levels of a video game with a virtual reality headset.  I still felt odd after sleeping for several hours.  While this may have been worth it for the contract payment I later received, it definitely was not worth it solely for the gameplay.

Based on that, and my research since then, I strongly recommend that anybody interested in getting an Oculus Rift or other VR headset consider these issues first and, if/when they purchase, avoid playing any game for more than a few minutes at a time, taking a decent recovery period between sessions.

Oculus Rift is a Fad

It’s All Been Done [repeat 3 times] Before…

There has recently been a great deal of “buzz” surrounding the Oculus Rift, which is a virtual reality headset, or HMD (Head Mounted Display) with positional tracking.  The talk really got started at E3 2012, when John Carmack demonstrated a prototype.  After that, Oculus launched a successful Kickstarter campaign, eventually receiving $2.4 million in funding (after seeking just $250K).

The Kickstarter page, however, is very revealing, describing the Oculus Rift as “the first truly immersive virtual reality headset for video games.”  This is just plain false, and it shows not only a lack of research, but an associated failure to understand the history of VR gaming headsets, which (unfortunately for them) strongly predicts the future.

There were virtual reality headsets readily available back in 1995, 18 years ago!  Then, as now, they were being hyped as a new standard of immersion and a paradigm shift in gaming and [insert preferred hyperbole here].  In particular, I speak of the Virtual i-O iGlasses and the CyberMaxx headset, both of which our company owns (and has in storage, notably not in use), though I recall other competitors; even Nintendo got on the virtual reality bandwagon with its Virtual Boy.

I suppose that this is a good time to provide my credentials for this discussion.  In 1995, I wrote the official game drivers for Virtual i-O, which included native drivers for Doom II (ironically, Carmack’s game) and Dark Forces.  I was also later (1996) contracted by VictorMaxx (the manufacturer) to write game drivers for the CyberMaxx, as well as a virtual mouse driver that was controlled by its head tracking.  Also in 1995, I worked on Locus, the first release from Zombie, and also the first (to my knowledge) retail game that was truly (as the box says) “Engineered for head-mounted displays“.  At the very first E3 in Los Angeles, I had my software being shown in three different booths, and I helped demonstrate the iGlasses myself in two of those places.  I know whereof I speak.

Clearly, as evidenced by two nearly adult headsets collecting dust in storage, the “virtual reality revolution” never took place.  Sure, there were games that supported HMDs, and a brief time when some “location-based entertainment” (a fancy phrase for video arcades) had games which used VR hardware, but most people still played (and play) games with just a controller and a standard display.  This is precisely analogous to the non-existent 3D television revolution touted by those with skin in the game; it never happened, and while the hardware is readily (even fairly inexpensively) available, it did not take off.

There are two main issues with why virtual reality gaming has not become mainstream.  First, using a head tracker and/or other VR hardware is inconvenient.  It requires some preparation, there is a degree of setup, and then players need to wear/use slightly (to significantly) awkward devices.  It is nothing that cannot be done fairly easily, but it requires just enough effort that most will generally not bother.  This is quite the opposite of the current mobile gaming revolution (which is happening) where a player simply picks up a device, touches a (virtual) button, and plays.  There is also no “killer app” for the technology (guillotine simulator notwithstanding), so nothing but novelty to drive sales.

The second issue is that position tracking latency in a head mounted display makes you ill, literally.  Extended use (more than 5 minutes or so) of a head tracker will actually give you symptoms similar to motion sickness, or perhaps a severe hangover, including nausea and headaches.  Apparently, the makers of the Oculus Rift claim that this feeling of seasickness could be overcome once you get your “VR legs”; do not buy that.  There are specific physiological reasons for this reaction, which I will describe in my next post.  For now, let me just tell you that I have never gotten seasick nor experienced any other kind of motion sickness, but using the iGlasses for an extended period, during final Doom II driver testing, caused such an unpleasant experience that for a long time I would start feeling unwell just seeing that game played on a normal screen.  Locus was explicitly designed to have short matches and encourage a break from the headsets between rounds.

So, the Oculus Rift is nothing that has not been done before, and although the vertical resolution for each eye is slightly better than the Virtual i-O device, the iGlasses actually were more immersive, since they included stereo audio on the device, not just video.  That all said, I will admit that the Oculus Rift (like others before it) is a cool device, and I am certainly considering one on that basis.  However, it is still just a fad.

A cool fad, but a fad nonetheless.

I Got Mine

The Apple iPad arrives, right on time.

At 11:14 this morning [Saturday, April 3, 2010], our Apple iPad was delivered to our office door.

This is the first piece of hardware that I can recall ever pre-ordering, and I actually placed the order within the first minute that it was possible.  Since the iPad was announced, I have read lots of skepticism about its value and usefulness, and I am resistant to hype.  (In fact, I often avoid things that are probably quite good simply because of the hype attached; for example, I have thus far refused to see Avatar.)  With the iPad, though, I could immediately comprehend its potential, especially for games and particularly for the kind of games that I enjoy creating and playing.

While awaiting a delivery, whether it be books, music, or hardware, I tend to almost obsessively check the package tracking.  In the case of this highly anticipated product release (witness the latest episode of Modern Family), I was apparently not alone.  Despite several different rumors to explain the odd tracking data from UPS, many of which ended with a conclusion about shipments being delayed, the actual explanation is likely to be much simpler.  My guess:  Because there were 200,000 units being shipped from China, they were originally packaged in huge lots destined for each distribution point (in our case, Louisville, Kentucky) and not scanned individually until they arrived there.  (I seriously doubt my iPad flew nonstop from Guangzhou to the Bluegrass State.)

Interestingly, I happened to be awake at around 5:33am, having just watched an exciting (and wet) Formula One qualifying session live from Kuala Lumpur, Malaysia.  The wind was apparently coming from the right direction, and I heard the airplane carrying my shipment fly almost directly overhead.  The “arrival scan” was 22 minutes later, though it actually took two more trucks, and a couple more scans, before it arrived here.  (The iPad Dock is still in transit, via a different carrier with distribution in a different, albeit neighboring, state.)

Anyway, there will certainly be a proper review in the future, but right now I feel that it is time to get started playing around with our latest software platform.

The most surprising aspect so far was that Apple had UPS require identification in order to receive delivery of the iPad package.  The only “problem” so far is that I did not get to use my alternative title, “iSad” (had it not arrived).