Tuesday, December 27, 2011

Star Trek Voyager

I've finished watching the seven seasons of Star Trek: Voyager and, even if I enjoyed watching it, I also think it was the series with the most potential lost from all of them.

First of all, the show should have been called Star Trek Condescension. Each Star Trek series before it had some obnoxious characters, like Bones in The Original Series, even if he was saved by the clever interactions with his counterpart, Spock, or like Deanna Troi in Next Generation, intrusive and opinionated about just about everything that did not concern her, or like Kira Neris, who always had some cause to fight in the detriment of all her other colleagues on Deep Space 9. It was OK, it part of the concept. Voyager has broken that rule, making just about everybody as annoying as possible.

Top of the list: Captain Janeway, who was not only acting like the headmistress of a high school, placed there by divine powers to have children under her care and control, but who was also a complete hypocrite, changing her views whenever it suited her, but quoting larger than life "directives" whenever she wanted out of something. For all her talk of saving lives, if the show was reality, she would have killed her crew numerous times and would have insured just about every major force in the quadrant was an enemy of the Federation. And the worse part is that her acting was perfect: from the condescending tone of her voice to the raised eyebrows, from the hand on her hip to the dismissive smile, her body language was more obnoxious than anything she could have said.
The Voyager ship, with Borg alterations
Second in command Chakotay, a man of native-American origins, would have no problem breaking any rule when his Maki training would surface, only to justify anything by either invoking his spiritual ancestors or spouting truisms while fully inhaling before each sentence. While Janeway's condescension was authoritative, Chakotay's was always thuggish, but just as strong and annoying as his captain's. Also, he was making mistakes almost every time it didn't involve physical activity. Not the best choice for a second in comand.

Neelix deserves a special place in the annals of obnoxiousness, as a rodent like alien who comes on board as the lover of this pixie like beautiful blonde. After suffering more than a season rude and abusive bouts of jealousy from him, we spend the rest watching him intrude in everybody's personal lives from his self appointed position of "moral officer" and later of "ambassador". Only in the last season a Q is fusing his jaws and lips and removes his vocal cords, a humanitarian move who only lasted till a few minutes later. Blessed be the silence, though.

There are more, from the loud mouthed doctor who is "evolving" from very rude to intrusive and almost destroys the ship twice with all the good intentions to the duo B'elanna Torres and Tom Paris, who act so superior towards anybody not like them that they would have undoubtedly made the alpha couple in a high school drama.

A good thing about the series is the design. All the technology is consistent in aspect and apparent functionality from the start to the end of the series. Considering Voyager was produced during amazing technological advancements in television and computers, it was probably an effort not many noticed. The human component, so easily removable via computers and nanotechnology, was preserved during the entire length of the series, maintaining that theatrical feel and enforcing the idea that the sci-fi in the series was just a prop for some larger ideas. Unfortunately, the ideas was not that large, and were mostly human centric and ridiculously optimistic.

About the plot, the show is about a Federation starship stranded in the Delta Quadrant, seventy thousand light years from Earth. The way people travel is the most inconsistent part of the series, as they are always struggling to get home, while the same aliens are attacking recurrently, even with less advanced technology. How could they "ambush" Voyager, if they were left behind?

The holodeck and the holographic doctor were used extensively as a plot crutch, whenever they were out of ideas. Meetings with the Borg are common, even if the results are mind baffling. One of the most disgusting things in the series is the treatment of Seven of Nine, a Borg that is being coerced back to individuality despite numerous declarations that it wants to return to the Collective. But Janeway knows best and all the list of annoying characters above proceed thereafter to piss on the Borg heritage of Seven and insist on developing her "humanity". If Voyager would be watched by the people described in the show, it would undoubtedly be considered crass human propaganda for the Federation.

And still, for all the reliance on Borgs to move the plot on, the technological side of the equation was repeatedly ignored. Seven is part Borg and will remain so for the rest of the series, including nanoprobes in her blood. Yet she does not attempt to assimilate anyone, including enemies, when it would have been the best way of solving some of the problems. Borg technology is added to Voyager, but most often reluctantly and only temporary. Seven never develops cybernetic tools for herself, even after her implants save the ship several times. Also the Borg Collective is presented as a mindless community of interconnected people, but at the end a Queen of the Borg is revealed, who has total control and presents a target and a persistent enemy.

Bottom line, for a technological person as myself, I was almost attracted more to the Borg model than the Federation one. While the words "democracy", "freedom" and "openness" were spouted at every occasion, true freedom of thought was only tolerated on Voyager when the captain agreed. The Borg at least used the individual as a conduit for the general thought. The morality lessons in the series were simplistic and antiquated. Voyager, with the idea of a ship stranded somewhere, with problems that needed solutions with limited resources and lots of ingenuity, could have been a series to open minds. Instead, it force fed US concepts from the 60's.

Tuesday, December 20, 2011

The Great Hunt (Wheel of Time book 2) by Robert Jordan

Book cover
I have to admit, the quality has increased dramatically in both writing and storyline in this second part of the Wheel of Time series. Robert Jordan's The Great Hunt follows our heroes in their quest to heal Mat, deliver the Horn of Valere and escape the endless machinations of the Aes Sedai.

I was saying in the review of the first book, The Eye of the World, that the story was ridiculously black and white, reminiscent of Lord of the Rings. The Great Hunt features good and evil Aes Sedai, sympathetic Darkfriends, political Cairhienians that see every action (or lack thereof) as a move in The Great Game of lords and not less than three new major threats, not counting the Black Aes Sedai, as well as parallel worlds, resurrected heroes and epic battles. So there is a good range of shades of grey, washing away the simplicity with which the series started. The characters gain volume, developing in their own unique ways.

There are some issues, though. Rand is exhibiting wonderful skill and ability exactly when needed, being pretty much clueless most of the time. Women again appear rather one sided: proud, intelligent, manipulative and always in some way of authority over men. The "The wheel spins as the wheel wills" quote is used way too much and the blatant logical hole ignored: if it does, then no one needs to get involved in anything, especially the Aes Sedai. Nynaeve find a new strength and acts more like a Wisdom and less like a scared little girl.

So I am caught up in this. Too interested to start reading the tech book I was planning and too much work at the office to really feel the need to. Let's see how the next book in the series will be.

A picture is worth a thousand words: North Korea in the dark

Check out this article. I haven't even read it yet, but the image they present is saying it all. Even someone such as myself, a firm believer in national sovereignty and the right to follow whatever twisted philosophy one chooses as long as it doesn't affect others, can't remain indifferent to it. What you see above and below North Korea are China and South Korea. You can tell North Korea apart, because it is the dark patch.

Friday, December 16, 2011

Default parameters in Attribute constructor

Update February 2016: Tested it on Visual Studio 2015, with the Roslyn compiler, and the problem seems to have vanished.

Here is the now obsolete post:

A class in .Net can have default parameters, with values that are specified in the constructor signature, like this:
public MyClass(int p1,int p2=0) {}

If the class is inheriting from the Attribute class, then one can also specify property values when using it to decorate something, like this:
public class MyTestAttribute:Attribute {
  public int P3 { get;set; }
}

[MyTest(P3=2)]
public class MyClass {}

What do you think this code would do?
public class MyTestAttribute:Attribute {
  public MyTestAttribute(int p1,int p2=0) {}
  public int P3 { get;set; }
}

[MyTest(1,P3=2)]
public class MyClass {}


Well, I tell you what is going to happen. Visual Studio and ReSharper both will see no problem with the syntax, but the compiler will issue an error based on the exception "error CS0182: An attribute argument must be a constant expression, typeof expression or array creation expression of an attribute parameter type", but without specifying any file or line.

My guess is that it is trying to interpret the P3=2 line as an expression to be calculated and passed as the second attribute of the constructor. What I was expecting is to set the default value to the second constructor parameter, then set the property P3. The vagueness of the error points out to a possible bug.

Thursday, December 08, 2011

The Chrome undocumented special URLs

It all started with this site that got stuck in the Google Chrome's DNS cache so that any changes to the Windows/System32/drivers/etc/hosts file were ignored. I didn't want to close all Chrome windows (since the DNS cache is application wide in Chrome), so I googled for an answer. And here it was, a simple url that, typed in the Chrome address bar, would allow me to clear the cache: chrome://net-internals#dns.

But there are a lot more cool things there: testing of failed sites, a log of browser network events, control over open connections and so much more. That got me curious on other cool chrome:// URLs and I found some links listing a lot of them.

I don't have the time to parse all these cool hidden Chrome URLs and review them in this blog entry, so I will just list some links and let you explore the goodness:
Google Chrome’s Full List of Special about: Pages
12 Most Useful Google Chrome Browser chrome:// Commands
About and Chrome URLs

Update: The Chrome url containing all others can be found at chrome://about/.

Tuesday, December 06, 2011

The Eye of the World by Robert Jordan

Book coverThe Eye of the World is the first book in the series called The Wheel of Time, by Robert Jordan. Written in 1983, it is very similar to Lord of the Rings. It features a complex world of nations and races with their own languages and cool sounding names, a battle of good light versus evil dark that is so ridiculously polarized that at first I thought I couldn't finish the book, a party of different people in which the main character is a poor country sheppard boy, a quest that has the goal of saving the world via a long trek of personal transformation.

Actually, if I think about it, it seems almost entirely inspired by Lord of the Rings, with none of the innovations that appeared since playing any effect except maybe The Chronicles of Thomas Covenant the Unbeliever, when describing the Blight. Something that is clearly different in the book is the role of women.

While Tolkien had them placed high on a pedestal, queens and princesses that were supposed to inspire men but not be touched, Jordan presents them as important members of the party, with Moraine, the "wizard", holding most of the authority. Actually, it goes further than that, giving all women characters an almost indomitable ability to influence men. Only one female in the entire book is evil, and that for a very brief period of time, and none of them are weak in any way. It doesn't even matter much that The One Power has two sides, one female and one male, and that the male is tainted by The Dark One. Even if they would have magical power, men are doomed to be ruled by women in The Eye of the World and probably the rest of the books.

The evil Shai'tan is a dark entity with burning eyes and eternal rage, imprisoned yet powerful, corrupting everything he touches, while the power that opposes him is white pure light that heals, purifies and avenges. The only shred of ambiguity comes in the shape of The Children of the Light, a warrior sect dedicated to fight evil, but that are nothing more than pompous gang members that define evil as anything they don't like.

All and all the book was pleasant enough and, being December, I plan on reading at least the next book in the series before I start with a technical one. However, it doesn't come close to most of the books I've read recently. The simple design and clear inspiration is probably the reason why they want to adapt the story to television, now that the likes of Game of Thrones have shown the model successful. If the quality of the books does not improve in time, it may be so that it would be more effective to wait for the films instead of reading the book. Then again, I will make up my mind after I've read more. I have hope.