Tag: stupid

Google Stadia was guaranteed to fail, according to basic freaking math

If you don’t know what Google Stadia is, it’s basically a networked gaming console. It renders everything on big servers at Google so your tiny Chromecast or other wimpy smart TV or computer or phone or internet-enabled potato or carrier pigeon or whatever doesn’t have to do any of the rendering work, and it takes inputs and sends fully rendered video frames over your network connection in a similar manner to a video streaming service. The idea is that you plug in a control pad, download the Stadia app, and you can play games without buying any special hardware. It’s a revolution in video gaming! It’s the end of home consoles!

…and it was guaranteed to be dead on arrival…and anyone with the most basic knowledge could have figured this out, but Google somehow green-lit it.

Anyone who looks at a typical ping time on a home internet connection, even a good one, can easily figure out why Stadia was doomed to be trash from the outset. A game running at any remotely usable frame rate (I’d say 20fps is a minimum for pretty much anything at this point) needs to receive inputs, process inputs, do all the game logic calculations for the next frame, render the next frame, and blit the frame, and for a 20fps frame rate, a game on your normal system has 50ms total to completely turn that around. If you are playing a faster action game that requires real-time control, you need higher frame rates than that, meaning even lower total latencies than 50ms.

Now let’s look at ping times from my house on my otherwise completely unused connection to google.com:

Pinging google.com [] with 32 bytes of data:
Reply from bytes=32 time=33ms TTL=42
Reply from bytes=32 time=33ms TTL=42
Reply from bytes=32 time=32ms TTL=42
Reply from bytes=32 time=32ms TTL=42

OK, so a ping round-trip takes 32ms, leaving 12ms to do everything included above. BUT WAIT, THERE’S MORE: Stadia can’t send uncompressed frames, because that will take too long to arrive, so there’s compression overhead as well, meaning there’s also going to be added decompression overhead on the client side. Even with a hardware H.264 encoder/decoder combo, a finite amount of time is still required to do this. Let’s be INSANELY GENEROUS and say that the encode/decode takes 2ms on each side. Now, even before ALL THE STUFF I ALREADY MENTIONED is accounted for, we’re down to 8ms of time left to hit that 20fps frame rate goal. Remember, in the 8ms remaining, we must still process inputs, run game logic, and render out the frame to be compressed…and this is also an ideal situation assuming an otherwise completely unused connection with no or very minimal network congestion going on. This also assumes that input comes in as early as possible, which is basically never the case. There will almost always be at least one frame of input lag just because of this.

Even if you reduce the goal frame rate to 15fps, the total time available between frames only rises from 50ms to 66ms. While that does constitute a tripling of the time available to run game logic and render a frame, it’s still a really short time frame, and any network usage by any device on the same connection or other households on the same shared network node will essentially render this work pipeline unusably slow. Multiplayer gaming with client-side rendering has the advantage of only sending extremely small packets of data that transmit quickly and act as “commands” for the client software, meaning all existing multiplayer network gaming is sort of like a specialized computing cluster for that game, with the heavy lifting done where the latencies have to be the lowest. Stadia combines all of the horrible problems of live video streaming with the problems of multiplayer latencies. It was dead on arrival. It is destined to fail.

Anyone with simple networking and gaming knowledge can figure this out.

But a multi-billion dollar international corporation that snarfs up the best and brightest minds somehow missed it.

Let that sink in.

A new reason to really HATE that stupid Asus keyboard power button

Instead of a highly useful “end” key, Asus has been putting the power button in the top-right corner of their high-end laptops.

Asus laptop power button
That should be an END key. I hate Asus so much for this.

Aside from the fact that the “end” key is something I use constantly when typing out things like the post you are reading right now and I have to disable number lock to work around the missing editing key, lately I have been waking up and walking over to the laptop in the morning only to discover that the computer has somehow died overnight! I thought it was some sort of extremely hard to reproduce hardware problem until I also found some white stuff on the keyboard one morning. On closer examination, it was kitty litter.

The cat has been lying on my laptop at night and the stupid Asus power button on the keyboard lets the cat hold the power button to force my laptop off.

Picture of a cat
The cat is a lot cuter when not turning off my laptop

Needless to say, this has seriously pissed me off. I already had a major problem with the missing “end” key and with the risk of accidentally tapping the power button, but to have the cat killing my computer in the middle of the night is absolutely ridiculous.

Asus, you need to install a proper power button on your high-end laptops. This power button on keyboard thing is really stupid and I’m very unhappy about it.

Synaptics ClickPad: by far the dumbest laptop touchpad ever invented

There isn’t much to say about these abominations, so I’ll keep it short. Many new laptops, most often from HP, are coming with multitouch trackpads known as “ClickPads.” Whoever designed them is a complete idiot, because the mouse buttons are directly underneath the bottom of the touch surface itself! There is no clean way to tap a button with your thumb with another finger on the touch surface. Other than very cautiously placing a single finger down on the desired button, there is no way to avoid moving the pointer while attempting to click. In fact, the only way to fix the misbehavior is to install the latest Synaptic drivers and, buried deep within the advanced options, reduce the functional area of the pad to not include the button section.