Home > A-to-Z Challenge, Geek > A-to-Z Challenge Day Eight: Hello World!

A-to-Z Challenge Day Eight: Hello World!

Computer programming is just so…what? Geeky? Nerdy? Maybe. Yeah, actually, it’s actually really geeky.

When I was in high school I seriously thought about going into it for a living. Basic, C++, C#, all kinds of other languages were at my fingertips. I won my high school’s computer departmental award for some of the projects I did in the self-taught “advanced computer programming” class I took (at first with another student, then in the second semester alone).

I was awarded this thingy that looks really cool, but like it's from the 1970s. See the punch cards and magnetic tape? Yeah, retro.

I was awarded this thingy that looks really cool, but like it’s from the 1970s. See the punch cards and magnetic tape? Yeah, retro.

So why didn’t I get into it? I think that has to do with the fact that I enjoyed computer programming, but I didn’t want to do it for a living. I loved solving challenging logic puzzles using a coding language, but if I had to do that every day through school and for a job I’d go crazy. I think it’s because I found programming fun, and sometimes you can’t make a career out of things you find to be fun.

I’m certain that with computer programming, turning the things I love about it into a day-in-day-out career would have disenchanted me. I’d probably grow to really dislike it, actually.

So, bullet dodged. The things I love about computer programming I still love. The question is: what do I do with programming now? I make little projects that are just for fun. Sometimes they challenge me, and sometimes I just want to make something geeky.

That’s how I came to design “Warp Factor Awesome!” I was doing research, like any good geek, about the warp drive of the Star Trek starships. Michael Okuda (@MikeOkuda) developed a formula to determine the velocity of a starship traveling at warp speeds in Star Trek: The Next Generation.

Taking that formula and some of my geeky exuberance for creating fairly useless, but awesome, things I made a program that would determine the travel times and warp speeds of a ship traveling at warp to different destinations.

The first thing to note is that this is fairly interactive. It has flashing lights on the LCARS and when you press a button it makes noises. There are two different warp scales that you can use, one from TOS with a slower scale and the Okuda TNG scale, which has faster speeds (and past warp nine it increases to warp ten asymptotically). You can enter a distance in light years to travel, or you can use the drop down box to select a destination, which automatically inputs the distance in light years.

The TNG Warp Scale is selected, with a destination from Earth to Vulcan.

The TNG Warp Scale is selected, with a destination from Earth to Vulcan.

After you press the “Engage!” button (heh…) you get a new screen with a .gif of either the TOS Enterprise or the Enterprise-E depending on which warp scale you use. You can see the distance in three different scales.

Interface 3

The scales are Kilometers Per Second, Miles Per Hour, and Astronomical Units Per Day. Source: http://lcars.org.uk/lcars.htm

I’ve also included some Easter Eggs, like accidentally causing a warp core breech if you press too many of the wrong buttons (there’s a .gif of Geordi diving under the falling shield in the engineering section).

This was a really fun program to make and I learned some interesting coding tricks to get it to work right.

I’m actually working on Warp Factor Awesome 3.0 that has more fun things, like LCARS sounds and sound clips of Majel Barret voicing the Enterprise computer (and if you press the “Quit” button you hear Picard say, “This is no longer amusing.”). I’m also trying to program a game where Data goes a bit crazy and tries to shoot you with a phaser, so you have to shut down his neural net (why would you want to shoot Data?) and another where you are the weapons officer and have to deal with shields, torpedoes, and phasers to take down enemies.

So computer programming is still fun for me, even if it’s just a hobby and I’m essentially a novice. WFA was done in Basic, though I’m working on a C++ version as well just because I can.

Disclaimer: CBS Studios owns the copyright for LCARS.

  1. April 9, 2014 at 10:45 PM

    I got into programming because I figured I could finally finish college and find a decent enough job to pay for college. This may not have been my smartest idea ever, but it accomplished those goals.

    It’s a fun thing to do, but when you go into it for a living, you end up doing almost no actual programming, and what you do get to do is almost always working with the horrific monster of legacy code. It’s pretty awful. I had to write a program to calculate a probability one weekend for fun!

    The upcoming changes to Visual Studio for C# look super awesome, though.

    • April 10, 2014 at 4:44 PM

      Yeah, see, that makes it seem like I dodged a bullet. I haven’t really seen what changes they’re making to C# (I’m still using an older version) but I’ve got some fancy textbooks for learning it.

  2. brhsteach
    April 10, 2014 at 2:10 PM

    Stopping in from A-Z Challenge and the Unconventional Librarian Alliance. Never have been big on programming, although I find it interesting to hear people talk about it.

    • April 10, 2014 at 4:46 PM

      Thanks for stopping by!

      I’m a pretty big geek and I have interests in a lot of different things, and programming appeals to me because of the logic and math involved in creating a program that does what it’s supposed to.

      The coding behind this program is actually pretty simple when it comes down to it, but making the math work right and getting all the timing and animations and sounds to work like they should was fun and a bit challenging.

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: