And Now You’re an Anstronaut: Open Source Treks to The Final Frontier

There have been a couple of blog posts recently referencing the recent switch NASA made from Windows to Debian 6, a GNU/Linux distribution, as the OS running on the laptops abord the International Space Station. It’s worth noting that Linux is no stranger to the ISS, as it has been a part of ground control operations since the beginning.

The reasons for the space-side switch are quoted as

…we needed an operating system that was stable and reliable — one that would give us in-house control. So if we needed to patch, adjust, or adapt, we could.

This is satisfying to many Open Source/Linux fans in it’s own right: a collaborative open source project has once again proved itself more stable and reliable for the (relatively) extrodinary conditions of low Earth orbit than a product produced by a major software giant. Plus one for open source collaboration and peer networks!

But theres another reason to be excited. And it’s a reason that would not necessarily applied (mostly) to, say, Apple fanatics had NASA decided to switch to OS X instead of Debian. And that reason has to do with the collaborative nature of the open source movement, codified in many open source licenses under which the software is released. Linux, and the GNU tools, which together make up a fully functional operating system, are released under the GNU General Public License. Unlike many licenses used for commersial software, the GPL esures that software licenses under its terms remains free for users to use,modify and redistribute. There are certainly some strong criticisms and ongoing debate regarding some key aspects of the GPL, especially version 3, the point of contention mostly lies in what is popularly called the “viral” effect of the license: that modified and derived work must also be released under the same license. The GPL might not be appropriate for every developer and every project, but it codifies the spirit of open source software in a way that is agreeable with many developers and users.

So what does this all mean in terms of NASA’s move? We already know that they chose GNU/Linux for its reliability and stability over alternatives, but that doesn’t mean it’s completely bug free, or will always work perfectly with every piece of hardware, which after all is another reason for the switch: no OS will be completely bug free or always work with all hardware, but at least Debian gives NASA the flexibility of making improvements themselves. And there in lies the reason for excitement. While there is no requirement that NASA redistribute their own modified versions of the software, there is no reason to assume they wouldn’t in most cases, and if they do, it will be redistributed under the same license. It’s certainly realistic to expect they will be directing a lot of attention to making the Linux kernel, and the GNU tools packaged with Debian even more stable and more reliable, and those improvements will make their way back into the general distributions that we all use. This means better hardware support for all GNU/Linux users in the future!

And of course it works both ways. Any bug fixes you make and redistribute may make their way back to the ISS, transforming humanity’s thirst for exploring “the final frontier” into a truly collaborative and global endeavor.

GTM Project Review

First off, GTA is one of my favorite and I do think its the best out of those sandbox games. So this “GTM” project was the very first game I decided to review. Since its a text-based game, I didn’t expect to see too many text-based images in the gameplay, and drawing those images using symbols would take just too long considering they are going to come up with and implement a story line. But what has impressed me is that they did have plenty of graphics implemented and they all look wonderful while still having a great story line that contains four challenging missions. Also, the source code is well organized and commented. Everything is named intuitively so I was able to find and hack the weapon damage in 2 minutes :P. The game does need some polish on balancing and gameplay experience. However, we are not expecting a group of professional game designers here.(And they did fixed most of the issues that I posted on github) So in programming perspective, they have done a wonderful job within couple of weeks.

Posted in Uncategorized

Breakout Project Review

First of all, I like this game and I think this game is done very well. The code looks intuitive and efficient. It is a good idea to create different classes for game ball and bricks — good manner for object oriented programming. I agree with you guys on that using Qt and its QWidget is a easy way to implement it. I’ve used Qt for so many projects and I did believe it’s a great tool to build programs with simple GUI or even small games. But I do think Qt is way too large to install for those guys who don’t use it regularly. The game itself looks good in spite of some trivial glitch such as it is possible to knock the ball through the wall in some extreme situation. Overall its a great game with smooth game play but I do think you guys can work a bit more on graphic and key input logging. I do realize that it is hard to solve the key pressed delay since all key inputs are handle by OS and key press will be interpreted as a sequence of repeated key hits. However it is especially uncomfortable for this kind of game that requires fast reaction of the player.

Posted in Uncategorized