Thursday, November 5, 2009

Broked Universe

I think the universe we live in is a little broken.
Not broken in the meaning of "reboot and that should fix it" or even "you'll have to format your hard drive" but broken in the meaning that there is something fundamentally wrong with the universe as a whole.
Well, actually not the universe as a whole, just the universe that people prefer to live in.
That's right folks, I'm talking about TV and movies.
Now, there are many popular lists and stuff about the biggest physics blunders in television and movies.
I'm not talking about those either. I mean, they're true, and as a person who understands the laws of physics, sometimes when I watch something it really makes me wince.
For example, this new show called Defying Gravity (apparently it was so bad that the first season was cut short, and there will be no second). Now, they got a lot of the physics right there. They have centrifugal force providing simulated gravity, they discuss the rocket burns and acceleration times as if they know what they're talking about. They even designed a suit capable of withstanding the Venusian atmosphere for a short period of time, and they make it sound like it should work (the show is set 50 odd years in the future).
But one thing they ignore is the speed of light.
How can you have a video conference with somebody 38 million kilometers away with no lag in the conversation? There should be a lag of almost three minutes!
That just annoys me.
But what I am talking about is programming.
A lot of these shows, more so in the newer ones, have a lot of tech involved. And a large part of the tech is writing code. The characters frequently need to make some program or run some simulation that involves a lot of code, and it always works on the first try!
Forget about coding in an alien language (and here my ire is mostly against Samantha Carter and Rodney McKay who can write flawless code in Gua'uld, Asgard, Wraith, Ancient and numerous other human languages, and it's not just the language. The hardware is totally different from anything on Earth!) but why the hell does it always work for them?!
Every programmer knows that code never works on the first try.
A program that you write never ever works the first time you run it. If it does, something is wrong.
Just the other day I wrote a program, ran a test cycle and it looked like it worked!
Now this is terrible. Because now I have to find the cases where it doesn't work. Debugging code that doesn't work is hard, debugging code that looks like it works is nigh on impossible.
But in the shows they never have to debug!
It shows a warped version of reality and it screws kids up. Some kid watches this and he wants to grow up to be a brilliant programmer. So, he (or she, I suppose, but I'm lazy and will save myself from typing that extra letter every time) will go to school and learn to program.
As soon as his first "Hello World" doesn't work and he has to debug, his dreams are shattered. Nobody told him that programming was slow and tedious work, often involving guessing what the problem is. He saw programs that were written lickety split and worked right out of the box (so to speak).
So there, ladies and gentlemen (and sundry other folk who don't fall into either category but are reading this) is why the universe that we cherish and love is broked.
Now, if you will excuse me, I have to finish this conference call from Jupiter. I sent my query 64 minutes ago and should be getting a response any minute now.


  1. Hey Max, it's Jedi. I wanted to say THANK YOU for pointing this out. Nobody else cares for some reason, but I can't shake it out of my head. When I was taking a programming class, I had at least some basic idea of what I was getting into because of my experiance with networking. I still did terribly, and I always wince when I see that kind of thing now.

  2. Good post. What bugs me, especially in the Stargate universe, is that these guys can plug their laptops into alien technology and it works. No accounting for different voltage levels (even if they use electricity like we do). Apparently they all use 8 bits per byte, and can use ASCII. It amazes me that they can even understand Ancient technology, let alone rewrite whole systems.

  3. Python. There's almost no way to break "Hello World" in it.

    Clearly, they're using cross-platform languages that abstract hardware [And somone spent time figuring out how to convert to alien hardware, especially in a prolonged war.], where the code is dynamically generated.

  4. I write code for living more than twenty years, and "Hello world" is about the level of code which can run right on - inside my coding environment which I know through (and through?). Now if I had to just build an exe and run it on my next box, I wouldn't be sure it would work.

    SG-1 has built a case by gradually getting used to the alien technology over the years, and even despite that McKay has sweated many a shirt trying out code which just won't, and goes wrong. But whenever the authors run thin on text, they just pull the software deus ex their universally compatible machinae, and voila - the software hero saves the day, night and weekend. Which is to say that SG is just the least bad among them all.

    OTOH, that's the nature of television - no matter which job do they show, it always looks much more sexy and works right away, unless trouble is necessary for the plot. Doesn't matter whether it's piloting, mechanics, chemistry, anything. As MJ Straczinsky said, "it all moves at the speed of plot".