Thursday, March 31, 2011

Crest of the Stars (Spoilers! And final blog entry)

Crest of the Stars is the first installation of a series of Japanese space opera novels written by  Hiroyuki Morioka. As a space opera, it shares many common themes and elements as George Lucas's Star Wars saga, so if you are a fan of Star Wars, this is something you might want to take a look at. I have never read any of the books or graphic novels, but have seen the anime adaptations, and have always planned to read the novels once the series is complete, due to the richness of the world it depicts.

The story is set in, presumably, the Milky Way galaxy, probably several thousand years in the future. The Human race was able to explore and colonize the galaxy due to the discovery of something called Planar Space. Humans in this Universe discovered that space has five dimensions; the three-dimensional space that we usually reside in is connected to a two-dimensional space through portals scattered throughout the Universe. Humans discovered that they could take shortcuts through the Planer space to get to distant planets, and through this means populated the galaxy.

Since three-dimensional Humans cannot survive in a two-dimensional world, Humans had to innovate a technology that generates a small pocket of three-dimensional space around their spaceship when travelling through Planar space. The Planar space introduces some very interesting subplots, due to the fact that the portals are strategic military points, as well as the fact that battles in Planar space require a totally different military strategy than in three-dimensional space. For example, an enemy ship can be easily surrounded in Planar space, and in order to attack an enemy ship, either one must merge with their three-dimensional bubble, or fire a weapon which generates its own three-dimensional bubble. Planar space battles play a major role in the storyline of Crest of the Stars.

Also, at some point in history, Humans experimented with genetic engineering. They engineered a new race of Humans who were better suited to living in outer space; these Humans had superior three-dimensional reasoning, higher tolerance to the radiation of outer space, and were better adjusted to living in zero-gravity. They also were engineered to have additional organs which allowed them to connect directly to spaceships and pilot the ships with their minds. These Humans were treated as slaves to mine minerals from asteroids in the early days, and were by some considered to be subhuman abominations. These people rebelled against their masters and fled into outer space not to be seen for centuries.

After centuries of silence, these people returned to the eyes of planet dwelling humans, transported by a fleet of spaceships far superior to those of the planet dwellers, and proclaimed themselves as the Abh People. The Abh then begun a peaceful, yet forceful militaristic occupation of most of the Human worlds, forming the Abh Empire in a matter of decades. This expansion was motivated by their vision of bringing order to the galaxy, driven by their egotistical and elitist views of Mankind. Those planets which resisted occupation formed an allegiance known as the United Mankind, which despised the Abh Empire, but was not foolish enough to start a war with them.

The story of Crest of the Stars begins with the home world of a boy named Jinto being occupied by the Abh Empire. Jinto is the son of the president of this planet, and when his father released control of the planet over to the Abh, Jinto became the official representative of his home world. Jinto leaves his home world to undergo Abh education. Many years later, we find Jinto leaving school to begin his required military service. He meets the Abh princess Lafiel, who is serving her military time learning to be a pilot. She is tasked with transporting Jinto to the Abh home world (a large network of space stations), so he can begin his term.

During the trip through Planar space, their transport is ambushed by ships belonging to the United Mankind. Their ship is destroyed, but Jinto and Lafiel escape on a smaller ship out of Planar Space, and land on a planet controlled by the United Mankind. They uncover a plot to start a war with the Abh Empire, and need to find a way off the planet to warn the Abh home world of the ensuing attack. Their presence on the planet is discovered, and an exciting chase ensues eventually leading to their escape from the planet, and rescue. Upon being rescued by an Abh ship, they discover to their dismay that the war has already begun, setting the stage for the next installments of the series, which focus more on the war.

Hopefully I've peaked your interest in this immense universe, and hope you will look into it sometime.

Ghost in the Shell (Spoilers!)

Although I don't watch much Japanese Anime anymore, one of my all time favourites is still Ghost in the Shell, which for me is the definitive cyber punk story. The first movie is set in the year 2029 in a dystopian Tokyo, Japan, where computers and technology have advanced to the point where human augmentation is fairly widespread. In particular, the use of brain implants and even complete electronic brain replacements have become commonplace.

The story focuses on a policewoman named Motoko, who works in a secret division of the police force known as Section 9, which specializes in cybernetic crime. Motoko is a lethal weapon produced by the government; her entire body is synthetic, so she is strong, fast, and capable connecting with computers making her a hacker of insurmountable skill. In the movie, Section 9 discovers that a highly skilled hacker is hacking the electronic brains of important business leaders and government officials. After thorough investigation, Motoko finds that the hacker is in fact not a hacker at all, but a computer program that has attained sentience through exposure to the immense data communications network of the time, an extrapolation of today's internet.

The movie puts the viewer face-to-face with a feasible near future, and poses uncomfortable questions about where our love of technology is taking us, and what exactly it means to be Human or even simply alive. These are familiar questions to those who are well read in Philosophy, but framed in a setting that makes us realize their imminent relevance in modern society. And perhaps of equal importance, the movie looks very, very cool. The movie looks great, but it is more of a cerebral experience than an action-packed one, so keep that in mind when you decide to watch it, but it's a movie I strongly recommend anyone to take a look at.

Wednesday, March 30, 2011

Portal (Spoilers!)

Portal is a PC videogame developed by Valve, the same company responsible for the Half Life series of games. Portal was released in a bundled videogame package called The Orange Box, along with two other Valve titles: Half Life 2: Episode 2, and Team Fortress 2. Portal takes place in the same Universe as Half Life 2, but it is not disclosed when the events of Portal take place with respect to the events of Half Life 2. Portal, much like the original Half Life, takes place mostly inside a large research facility, with very little chance to see outside. This allows Valve to keep the story of Portal completely separate from Half Life 2.

Portal is a hybrid style of game, combining the genres of First Person Shooter and Puzzle game. In Portal, you have control of an advanced piece of technology that enables you to fire an energy beam at a wall and produce a portal on that wall. By producing a pair of portals on different walls, one can travel between these two locations by walking through the portal. The game requires you to navigate through different rooms and buildings, using the portals to traverse obstacles and solve puzzles. To understand why you might be required to do this, you need to know the story of Portal.

In Portal, you are awoken from a long sleep in an unfamiliar laboratory owned by Aperture Science. The only sign of life is the synthesized voice of an intelligent computer called GladOS. GladOS gives you the Aperture Science Handheld Portal Device (ASHPD), and asks you to test the experimental device by working through a series of obstacle courses. Between GladOS's discourse, the increasing danger of the obstacle courses, the mysterious absence of other people, and the disturbing red handwriting written on the walls of the hidden areas of the research complex, you soon realize that GladOS is trying to kill you and you must find a way to escape the building. After escaping the confined area of the obstacle courses, and working your way through the abandoned research complex now controlled by GladOS, you eventually find GladOS's central computer building and have a final confrontation with it.

Valve is scheduled to release a sequel to Portal this Summer, which after the popularity of the first game is planned to be a much larger game, with more levels, features, and online multiplayer capability. It's a game I'm looking forward to playing very much.

Half Life 2 (Spoilers!)

I am not an avid gamer, but one of my favourite videogame series is the Half Life 2 PC game series. I like this series of games for several reasons, one being the game style. These games are First Person Shooter style games, whose gameplay depends heavily on physics. When I play these games, I feel very immersed in the environment, and I like how I am free to explore the world, in some ways more free than in real life. For example, in the game I might navigate to an interesting area by jumping on top of cars and over fences--something I wouldn't normally do in real life.

The other reason I like this series is for the story. The original Half Life game did not have a very complex story, and was more of a horror genre game. In Half Life, you play an experimental physicist working in a fictitious lab called Black Mesa, based on the Los Alamos National Lab. You are doing high energy experiments on rocks of a mysterious origin, which you later discover originate from an alien world. You also learn that the researchers have been able to develop interplanetary teleportation technology from them. At the beginning of the game, you witness the researchers perform an experiment on the purest sample yet found, which accidentally causes large numbers of wormholes, or portals, to open up. Unfortunately, these portals are connected to a world inhabited by alien life. The native wildlife proceed to pass through these portals and kill most of the researchers in the process. The rest of the game involves you attempting to escape from the research facility alive.

Half Life 2 has a much more in-depth story line. The story begins about 15 years after the events of Half Life, where we discover that the portal storm caused by the experiments at Black Mesa caught the attention of a hostile interdimensional totalitarial empire known as the Combine. The Human race was mostly wiped out by the Combine within a few weeks of their arrival; however, a Human representative struck a deal with the Combine to keep the survivors alive, under the condition that their reproductive capabilities be restricted, and moderated by the Combine. It is in this setting that we are thrown into the fray, to lead a rebellion against the Combine. The world is also much bigger in Half Life 2, where we travel both over water and land, seeing many different places. The game series now has a spin off series called Portal, which I think I will discuss in my next blog entry.

Tuesday, March 29, 2011

Editor War

The sad truth about the computer world, at least for young people in University or College, or hobbyists, is that it is home to a lot of people who are egotistical, arrogant, elitist, and anti-social who are unjustifiably caught up in themselves to be able to effectively work with other people. From what I hear, a lot of this goes away once you enter the workforce, supposedly via the interview selection process. This culture has produced some of the most meaningless conflicts humanity has ever seen, one of which being the so-called Editor War.

The Editor War is a dispute amongst two camps of programmers, those who use the text editor called vi (and related text editors), and those who use one called Emacs (or related). Both were released around the same time in the late 70s, and have remained two of the most popular text editors for writing computer programs. There are a lot of differences between the two, vi is very small and simple, yet allows you to perform complex text editing tasks, while emacs is very large containing far more features than vi, including a built in Tetris-like game. Emacs is very extensible, and very complex text editing tasks can be performed using the right macros. I believe that what drove the dispute originally is that Emacs was written in the Lisp programming language, which in the 70s was not a very popular programming language, and was decidedly slower than C, which vi was written in. However, nowadays this argument doesn't hold weight, as Lisp is much faster now than before.

I don't really plan on describing every difference between the two editors, my main purpose is to illustrate the pointlessness of the dispute. Choice of text editor is a personal choice that doesn't make any difference to other people; you produce a text file with content, through whatever means you like, and email it to your boss who requested it. All your boss cares about is the content, not which text editor you used to produce it. You will have to decide yourself which text editor you like, but once you pick one, try to stay with it and not be swayed by others opinion.

Math For Computer Scientists

I have never been a math major, nor have I ever been interested in pursuing research in math, but during my degree in Physics I took a lot of math courses, and am pretty comfortable with math overall. I feel that my math background has served me well in obtaining competitive grades in the math courses required for my present degree in computer science. Computer science education is interesting in comparison to Physics because it is a much younger field of study, and there are a variety of different career paths in the computer industry. 

An interesting question that pops up a lot is how much math should computer students be required to learn, considering that some career paths in industry do use a lot of math, and others do not. It is a requirement in most Universities for computer students to learn elementary derivative and integral calculus, linear algebra, and discrete mathematics. Calculus and linear algebra are useful for computer simulations of complex systems, and computer graphics, but most students won't end up working in those fields. Discrete mathematics is very useful for understanding how computers and algorithms work, and most computer programmers would benefit from knowing some, but perhaps they could do without the calculus and linear algebra.

In my opinion, since there are uses for calculus and linear algebra in computer science, it's important that students get exposure to them so that those career paths that require them are not closed off entirely. It may be the case that these topics could come later the student's education, once they decide to pursue such a career path. Furthermore, I think that students gain valuable problem solving skills by taking these math courses, even if the content will not be useful in practice for their career. For these reasons, I think it is justified for these math topics to be taught to all computer science students in University.

Monday, March 28, 2011

Minecraft

Minecraft is a new videogame that has gained a lot of popularity in last year, and is especially popular amongst computer geeks. It's a first person perspective game in a 3D world, where everything in the world is made up of blocks. There are different kinds of blocks for different kinds of material, such as clay, gravel, sand, dirt, wood, coal, iron, etc, and in the game you go around with a pickaxe to mine these blocks for resources. Once you obtain a resource, you can build blocks of that type with it, at which point your imagination can go wild building 3D structures or artwork.

There are many different ways to play Minecraft. You can play the game by yourself at home, or you can set up an online game with friends. If you play online, you can collaborate with other players to produce larger, more involved structures than you could produce on your own, but you could also play individually at home taking your time exploring the world and working on pet projects. I've been playing Minecraft for about three or four months now, and am starting to get bored with it, because I've only been playing individually and am starting to run out of ideas for things to build. Once I have more time, I might consider playing online with friends, so I could get involved in more complicated projects.

Because there is no standard way to play the game, the game is appealing to many different kinds of players, who all choose to play the game in a way that is enjoyable to them. For this reason, I highly recommend you try Minecraft and I think you'll find that no matter what you will find some way to have fun in the game.