Saturday, January 18, 2014

On Neuromancer (a rant)

(Note: this is actually from a thread on Tumblr. After I wrote it, I liked it so much that I figured it should stand on its own. The context was that someone was comparing Neuromancer unfavorably to 1984 and Brave New World, which appears to be a fundamental misreading of its genre and its place in history. Neuromancer's setting is only accidentally dystopian, as Count Zero and Mona Lisa Override demonstrate by focusing on characters of different social status.)

Neuromancer isn’t notable for its depiction of a dystopian future, but instead for its depiction of a socially realistic future wherein intent is just as meaningless as it is in reality. In both 1984 and Brave New World, the dystopias depicted are perfectly functional: dissent is systematically squashed or subverted by a mechanism that basically never fails, and the people in power are of one mind; the failure of both is that they cease to be realistic by way of being too tidy (the same way that conspiracy theories fail). In Neuromancer (and other elements of the Cyberspace Trilogy & its shared universe), obsolete future technology is being used for purposes other than that for which it was designed (something that happens in reality but rarely in science fiction, because science fiction historically has very often been about wanking over the author’s designs for a technically-driven world rather than taking into account the diversity of human desires and social circumstances), and the elites and antagonists remain in their positions despite being realistically dysfunctional.
As an example, in Johnny Mnemonic (which takes place in the same universe, set before Neuromancer by a few years), a group of primarily-black anarchoprimitivists called the Lo-Teks use the availability of cheap medical equipment to replace their own teeth with dog teeth as a fashion statement and signifier of cultural identity. In the end, nothing the Lo-Teks did had a fundamental effect on the state of the universe — they were, canonically, a failed revolutionary group with some interesting cultural attributes who in a minor way helped a naiive rich white dude once to escape an unpleasant corporation, then faded into obscurity never to be mentioned again. This kind of texture violates Poe’s rules for writing — everything is supposed to support the main plot, either thematically or materially — but Gibson re-popularized a kind of non-Poe-based science fiction as social realism (and this is the punk aspect of cyberpunk — the punk sensibility is one brimming with awareness of corruption and dysfunctionality but that nevertheless would rather succumb to pragmatism and absurdism than to nihilism). Gibson writes science fiction as future history, but he writes it as a future history of regular people and he does so with full awareness of the importance of cultural texture and the tendency of human beings to expend personal resources on social posturing. Gibson himself would probably agree that Neuromancer is overrated — he considers it to be an ‘adolescent attempt’, and says that he merely took the standard caper storyline and dropped it into the universe in which several of his short stories were set. Plot-wise, it wasn’t anything special. In terms of prediction of the internet — bullshit; Gibson doesn’t really care about the internet, and didn’t know anything about it when he wrote the book. The real draw of Neuromancer (which would be all the more potent for readers who have been choking on Asimov, Heinlein, and other Golden Age writers where everything is smooth and metallic and nothing ever breaks) is the depiction of a universe that has dirt in the corners and scratches on the silverware, where there are prostitutes and drug dealers and suburban kids and soap operas, and where the protagonists and antagonists alike are fundamentally understandable people with selfish motivations and embarrassing gaps in their knowledge and secret crushes and hang-nails. The Cyberspace Trilogy is full of non-humans or semi-humans (Wintermute, Josef Virek, the Dixie Flatline) with these same flaws and obsessions.
Second- and third-generation cyberpunk loses this; fundamentally, everyone in Neuromancer is at some level a loser and a poseur, and to the extent that there’s a lack of outwardly shown emotion there’s clearly a seething rage or cynicism clearly related to the crapsack world and crapsack circumstances they live in. When second-generation cyberpunk shows a ‘hacker’ in a black leather jacket, a blank mask of a face, and carefully bleached hair, it shows an empty shell (or at best an archetype of competence — no different fundamentally than the worst of the golden-age heroes and less interesting than the ones Heinlein wrote); the same character in first generation cyberpunk would have an inferiority complex, rips in his leather jacket, and secretly fear that he was incompetent. First generation cyberpunk is first generation NetRunner, complete with hand-drawn cards and jokes about weasels; second-generation cyberpunk is the Battleship movie: too much budget, not enough content, everything focus-grouped to hell.
Gibson didn’t invent this punk angle of cyberpunk. An obsession with social and cultural ephemera and the perversions thereof is the calling card of J. G. Ballard, to which Gibson attributes some of his early style; a tendency toward vignette for the sake of texture may well have come out of W. S. Burroughs, although it’s fundamentally part of both normal speech and real life; a focus on the texture of ordinary reality was very popular in the socially conscious writing of early twentieth century realists, and arguably came back into vogue with the ‘new wave’ of science fiction in the 1960s. Fundamentally, all of the attributes I’ve mentioned for Gibson apply to PKD’s writing as well, and so there’s a good reason that whenever PKD’s writing gets adapted to the screen it resembles cyberpunk. But, on a certain level. PKD just wasn’t a good stylist and rarely wrote a book whose prose flowed. Other first-generation cyberpunk authors had similar problems: Rudy Rucker peppers his writing with hippie-ish neologisms even sillier than PKD’s (where PKD stopped at ‘kipple’, Rucker’s proto-cyberpunk novel Software has a brain-eating cult called the Little Kidders, calls robots ‘boppers’, and he now edits a magazine named ‘flurb’); John Shirley’s arguably-not-cyberpunk-but-definitely-punk series A Song Called Youth goes in the opposite direction and borders on golden-age-style moral clarity (while not succumbing to the tendency for golden age science fiction to be always either economically or socially conservative but never both at the same time). Where Gibson succeeded is to take PKD’s proto-punk sensibilities and give them the smoothness of beat poetry and the obsessiveness with minutiae that has dominated contemporary art since the end of the second world war. Gibson made a socially conscious, realistic, pop-art science fiction with a subversive edge, that nevertheless went down like honey. It had all the humor of the best situationist manifestos, all the intricacy of an episode of The Simpsons, and all the professionalism of a book on typography for professional photolithographic technicians. That is why Neuromancer deserves respect.
(Pedantic note: Neuromancer came out in 1982, not 1984)


Saturday, January 11, 2014

(Off topic) Wearable computer project build details, part 1

I've had an interest in wearable computing for a long time -- and after Glass was announced and it became clear that Google wanted to produce wearable computing technology that was limited to gluing powerpoint to your face, I decided to get my act together and build something practical for once.

Since this has been a fairly long-running project, compared to my previous attempts, I figured that I might as well document it.

Step 1: Monocular Display

So, a friend sent me a partially disassembled head mounted display. Having had read about the use of monocular displays, and mechanisms by which people had turned binocular displays into monocular displays (mostly tutorials for MyVu-brand displays wherein the wires were simply cut), I decided to take what was essentially a freebie display and turn it monocular.

Disassembling the display

I had a pair of goggles that I bought at an anime convention (steampunk is really big at anime conventions), so I actually just mounted the disassembled display on one of the thin clear plastic lenses with a combination of screws and velcro, then mounted the lens on the inside using velcro.

Mounting the display board and one of the control boards to the lens

The control box with its battery has been opened up and mounted with velcro on the side of the goggles
The lens is mounted to the inside with velcro
The completed monocular display mod, for this revision

Step 2: Panic, Worry, Waste Money

I was always planning to use the Raspberry Pi as the heart of the wearable computer, but I actually had quite a hard time getting the software to work. In the end, it turned out that I was using a mislabeled SD card -- it claimed to be one of the brands that was supported, but it was actually a card from another manufacturer that had been re-labeled and re-sold. SD cards, despite adhering to the SD standard, can vary significantly enough between manufacturers that a project like the Raspberry Pi doesn't actually support arbitrary brands, particularly for booting. I got a different card that was branded the same, and it worked just fine.

Initially, I thought that I had burned out the control box for the display I had. I was missing the adapter for charging it, so I opened it up and attached a USB cord directly to it (because I couldn't find an appropriately sized barrel connector); only later did I actually attempt to hook it up, and found that it was displaying a white screen regardless of what I was doing with the Pi. Later on, when I got a duplicate display, I discovered that this was actually the fault of the composite video adapter I was using -- I was attempting to use a composite audio adapter for composite video, and getting no signal. The duplicate display came with both the charger and the appropriate adapter, so in the end I didn't need to modify that box at all, nor did I need to replace it.

Anyhow, between this and lacking a handful of other components, it took a while before I got around to hacking together the rest of the project.

Wearing the display 
From the side

Step 3: Software

I wrote this software using a library that I had written for another project, and that is supposed to be released as open source some time in the near future. It's not released yet, so I'm avoiding really talking about it. Suffice it to say that it's similar to a previous project.

Software written for this project -- a zzstructure navigator -- running on the Pi, but connected to a normal TV

Step 4: Hook Shit Together

In the end, since my monocular display worked just fine, all I needed to do was connect it to the Pi. I ended up making things a little bit neater, for the sake of my sanity.

I took the separate audio and video cables leading from the Pi to the adapter and wrapped them with a bit of spiral wrap I had lying around from earlier projects. Having these catch on things individually would be extremely annoying, once I started actually wearing the thing -- I've had wires from earlier wearable computer projects catch on things like chairs, pets, and moving vehicles, with all the expected consequences. The number of cables required to attach a first generation twiddler to a laptop manufactured ten years later may well be the reason that particular unit broke (and it's very hard to find twiddlers on ebay).

I wrapped everything in a small zippered leather case. This case was, when I obtained it, marketed as a wallet -- although it doesn't actually fit in a normal-sized front pocket -- and explicitly intended for users of PDAs. As a wallet, it failed -- it was too large and couldn't hold much of anything in the way of bills or cards. As a PDA carrier, it failed -- it was actually too big for any of the various models of palm pilot or blackberry I had since I obtained it, and the velcro patch on the inside never managed to keep them in place. However, it's perfectly sized for the Pi, complete with plugs sticking out of the side and an SD card sticking out of the back. The wifi dongle I attached stuck out the top, making it impossible to zip the thing up completely, but it didn't cause enough of a gap to radically risk the hardware in the case of a sudden downpour.

I also used sugru to seal up a couple of the holes in the plastic case my Pi uses that I didn't think I was likely to use, and to insulate the unused side of the two-in-one USB cord I'm using to power the Pi. 

The full layout, at the time of writing

 The monocular display, functioning

Recent Changes

Using velcro for holding sensitive optics in place is a huge pain -- every time I get things displaying right, the lens moves as soon as I move my head. The velcro was self-adhesive, and it had trouble consistently sticking to the lens housing and to the plastic pane used by the goggles, so the lens would sometimes even physically fall out. So, I mounted some sugru on the pane where the velcro was, and I intend to use small screws and bolts to adjust the lens distance.Update: the sugru didn't work -- I couldn't get an appropriate distance with it, and it was hard to trim down just with the tools at hand. However, I was in luck: despite the lens being much closer to the eye in the goggle mount than in the original system, it turned out that if I flipped the lens around in the housing and then flipped the housing around, I got perfect focus at the intended distance. So, I just superglued the housing onto the pane of the goggles, and clipped the lens in backwards:
The lens housing being glued in. The screws are just there as extra anchor points -- they are flush with the back of the housing and glued on as well. The lens has small protrusions that clip it into the housing with either orientation, so this made it pretty easy; I now have the larger half of the lens facing my eye from the outside of the housing. Keep in mind that this puts the lens very close to the eye (so, watch out for infections), and that superglue produces fumes that are irritating to the eye (so wait for it to air out before using the display for long periods). The housing won't actually fit square with the display because there are some screws that poke through from the other side holding the display itself onto the pane, so I have it shifted to one side; one side of the screen is slightly blurry, so perhaps I should have aligned the display the other way.

The unhoused control box had some problems. It has a giant lithium-ion battery pack held on with some not-very-sticky double-sided tape, which on several occasions fell off with enough force to pull free the power wires. It also was too heavy to stick on to the velcro on the goggle's vent (this is where it is mounted in the side photo, which is why it is tilted to the side). I had kept it around just by chance, but because I was so sure I had burnt it out, I misplaced some pieces of the housing and could not re-house it in the original case. So, I just wrapped it in electrical tape and taped it to the band of the goggles, after cutting some holes for connectors and for the power switch. The cable leading from the control box to the display is fairly long and stiff, so I looped it up and taped that to the control box as well, leaving just enough slack to connect the display's control board.

Future work

I still haven't solved the problem of input. Many people use tiny bluetooth keyboards of the type intended for powerpoint presentations for this, but I consider full QWERTY keyboards to be best used with two hands and unwieldy with one -- and what's the point of a wearable computer if you need two hands to operate it. I'm considering building a chordite derivative, or perhaps a clone of the twiddler -- both are fairly popular one-handed chording keyboards intended to be held in the hand (as opposed to some chording keyboards that are only good if put flat on a table). I'd like to have a joystick or a direction pad for moving the mouse pointer, unlike the twiddler (which uses an accelerometer). I have some teensys I can use for emulating a genuine keyboard and mouse, but I'm circumspect about adding more programmable hardware to this project; I may simply use the Pi's GPIO port. UPDATE: turns out that the twiddler hasn't actually used accelerometers for mousing since the 2.0, about ten years ago. I dropped $200 on a Twiddler 2.1, so I will update when I can test it. It seems like everything will work fine with it aside from using the SUPER key as a meta key; since I am running Awesome with the default configuration on the Pi, I'll need to reconfigure the command key to be CTRL-ALT instead.

Another possible input system is eye tracking. There was an interesting student project at Cornell using cheap phototransistors and LEDs for eye tracking by bouncing infrared light off the sclera, and it seems like that should be easy to incorporate.

I've been interested in Thad Starner's presentations on a project at Georgia Tech wherein glove-mounted vibrating motors are used for non-intentional learning. In his experiment, subjects were taught to play simple melodies on the piano using these vibrating gloves, which simulated the muscle memory of rote practice. There are many things I'd like to be able to do with my hands, and some of them can probably be accelerated with this, so I've bought five vibrating motors and intend to wire them up to the Pi's GPIO port and train myself with them, as soon as I can find a suitable glove. Update (2014-01-20): Started on the glove, but I don't really have the appropriate equipment so I'm having my girlfriend finish it for me. Here's the beginning of it:

On a less exciting note, I still haven't received the battery pack I intend to use. So, I have that to look forward to in a few days, at which point I'll be able to test how long the unit can run. I was surprised at how long the display ran on a full charge, although I expect to need to break out a cable to quickly charge it up from the main battery pack. I wouldn't like to hook it up to the Pi itself, since it doesn't take too kindly to sudden drops in board voltage; instead, I might simply attach a USB splitter to the battery pack and run one line directly to the display charger, ready to be plugged in whenever power gets too low. I'm not really sure how long the battery will last when running the Pi with hardware hooked up and also charging the display, so I may end up upgrading to this battery pack instead.

In the end, I intend to stick both the battery pack and whatever boards I need for bridging the Pi GPIO with my own implemented I/O devices inside the leather case, although I may not be able to fit them. The battery pack looks pretty water-resistant, so maybe I'll just keep it in another pocket.

Update (2014-01-19):

I appear to have somehow fried one of my Raspberry Pi boards. I initially thought that the power supply wasn't putting out enough amperage to run the board, but it turns out (luckily) that I was incorrect -- it works just fine with my other Pi. I have no idea what caused the failure. Unfortunately, it's clear that the wifi dongle (which did work once upon a time) is now no longer functional; I may need to replace it, or it may simply be that the battery is incapable of supplying enough power to run it properly.

The second Pi came with its own (rather nice) housing, and I'm avoiding putting it in the same box as the other one on the off chance that the housing is related to the damaged board. In terms of likelier causes, though, it looks like there's some damage to the SD card holder, which may be from stress on the card itself -- having your SD card stick out of the housing by more than an inch is a design flaw, and perhaps one of the most glaring in the Pi. I suspect I will need to build a small extension to the housing for the express purpose of accommodating a normal-sized SD card, or purchase a much shorter one and transfer the image there.

My twiddler still hasn't arrived, although I am increasingly hopeful about its capabilities. It looks like I'll be able to get away with using it for everything, but that I will need to change all my keybindings from SUPER to something else because the twiddler doesn't support SUPER as a meta-key. If it's easy enough (as this teardown implies) I may add a hold switch, because I believe every portable device with buttons requires a hold functionality.

Update (2014-01-23):
The main problem with the monocular display is that the goggles fog up quickly. Even completely removing the vent covers doesn't help much. So, I was considering dehumidification mechanisms.

One option (the easy one) is to put a bunch of dessicant packages into the goggles. Unfortunately, dessicants tend to be toxic, and they also need to be replaced frequently. Best-case, you can use salt (which isn't toxic but which you wouldn't want in your eyes) and bake it to get the water out. I'd like to avoid this.

The other is to use cooling to cause condensation on some heat-sink or coil outside the goggles and collect or otherwise discard the condensed water (the way that both air conditioning units and professional dehumidifiers work). The trick is that most of these have moving parts (which you don't really want attached to your face).

Luckily, there are solid-state semiconductor-based systems for cooling: peltier junctions. And, better still, all the peltier junction produces is a difference in temperature between the two sides -- meaning that we can also produce air movement by exploiting the difference in pressure between hot air and cold air.

I'm not fully convinced that this will work, but the idea is that the expanding air on the top (hot) side of the peltier pump will push through the tube into the heat sink on the cool (bottom) side, and the movement of the air will create just enough suction to cause the air in the goggles to pass through the cool heat sink and condense some of its water, which will then drip off. I will probably need to mount a thermistor on the top and build an automatic shut-off that will kill the power to the heat pump when it gets too hot.

Update (2014-02-01):
I received the Twiddler, and last Tuesday I took the unit out for a test at the local hackerspace:

and also at work:
The battery life seemed pretty OK, but I hadn't gotten a replacement wifi adapter yet so I didn't trust it.

Today, I installed the new wifi adapter (an Edimax EW-7811Un, based around the RTL8188CUS and very common for Pi users) and took the machine for a walk. I wore it and kept it on and connected to wifi from around 11AM to around 5PM without recharging, and this was fairly successful.

There are two caveats. One is that the adapter doesn't seem to like mixed 802.11BG networks (which is what my router provides), and an unsecured 802.11BG network shows up as a WEP-enabled ad-hoc network. I switched my router into B mode and this fixed the immediate problem. However, I still couldn't connect -- and it turned out that if I plugged in the battery pack, I could connect just fine.

The SD card did just fine as well, which was somewhat unexpected since the previous one had its holder shear in short order after much less wear. I credit a combination of more support in the laser-cut box I'm using and the unexpectedly good performance of the hacked-together SD-card protector I stuck on. I had a bunch of rubber belts lying around that were just slightly smaller than the perimeter of the box, and I wrapped one around the end of the box such that it would extend out just past the end of the SD card.
The belt wraps around the end, and juts out just past the edge of the SD card. The battery is held on with rubber bands, for now.

The wifi dongle is just below the keyboard connector here, so it can't be seen. The battery's wire trails around.
As a side note to the de-fogging saga, I've noticed that fogging doesn't happen nearly as much outside in the cold (for all the obvious reasons), but that this doesn't really help because outside light coming through the left side of the goggles actually overpowers the light from the display. In addition to defogging mechanisms, I will need to figure out a way to block out light. I may roll that into attempts to encase the electronics and protect them from the elements.

Update 2014-02-14:
A few weeks ago, while installing an opaque mask on the lens, the connections between two lens-mounted boards broke. On the display side, there's a socket, but on the side hooking to the board to which the (usb-lookalike) connector going to the controller connects, our wires are surface-mount soldered to vias. Anyone trying to replicate this project should probably desolder these wires and solder them on the other side of the via, because the torque from the cable leading to the controller is enough to pull the velcro off (and so it was only a matter of time before surface-mount connections like that pulled apart).

I created the mask just out of thin cardboard and electrical tape, using a spare lens as a template and cutting out a rectangle for where the display was affixed. I placed it between the lens and the screw-on abutment that holds replacement lenses in.

After adding the mask and redoing the solder, I folded velcro around the edge opposite the wires I just soldered in and affixed the board to the velcro vertically; I also changed the position of the cable to avoid producing so much torque on the wires.

The next step for this project is the production of a protective casing for the lens-mounted boards. I wanted such a casing to be transparent, but it looks like barring getting a glass blower or an expert in lexan-bending to produce a small box, I will not be able to produce a transparent case. I may need to use an opaque printed case.

Update 2014-04-25:
Adafruit published a tutorial for an extremely similar design. Their version is slicker and easier to follow, so if you are trying to build something like this, I recommend primarily following their directions (particularly for the disassembly portion). If you are trying to build this unit exactly, follow their disassembly instructions and then follow mine beginning with step #4.

A future path I'd like to explore is to use something like this for legitimate overlay. My general idea is to remove the goggles entirely, use the adafruit version of the mount with the elbow inverted (so that the display goes in the opposite direction) or straight (so that the display juts straight out), then mounting an extra fresnel lens (if necessary) and a half-silvered mirror at a 45 degree angle in front of the eye:

Friday, December 13, 2013

RahXephon as a tortured metaphor for filmmaking

(Author's note: I will assume that you have seen all of Evangelion and RahXephon. I will assume that if you haven't, that you don't particularly care about spoilers. I may well introduce something you consider to be a spoiler about some other film, too. If you're that sensitive, go fuck yourself; you have no business being on the internet without having watched to the end of every obscure movie in existence. Have a nice day.)

Films as a metaphor for film-making have a long history in the west, and film-making metaphors in film (intentionally or otherwise) are even more common. Even when the metaphor is fairly direct (as in David Lynch's Mulholland Drive or Epic), there is an element of the surreal that muddies interpretation: films about film are strange loops, particularly when they cover topics like artistic integrity (Mulholland Drive) or advances in special effects (Inception, The Thirteenth Floor, FX, F For Fake). Further confusing matters, any film about illusion or trickery can be interpreted as a film about film (because the trickery in any film is implemented via film trickery -- something audiences are fully aware of, and something that often gets lampshaded). On top of this, inversions of the rule of film trickery are themselves reinforcements of the maze-like nature of illusion, even as they are laughed off as fourth-wall gags (Freakazoid).

Evangelion is an interesting (but probably well-worn) case, insomuch as it's widely acknowledged that the surreal content in the original series rose at approximately the same rate as the extent to which events in the series mirrored political and financial circumstances surrounding its production. It's also a paradoxical case in that, when our sound stage and filming equipment are revealed (in the last two episodes of the series, and again in the movie), the iconography of filmmaking equipment is purely metaphorical -- no such equipment was used in the making of the series itself. In fact, this reveal is a kind of joke; in addition to being a reference to the french new wave films that inspired some of the unusual cinematography (Anno is a fan of unusual camera positions, which he admired in live-action new wave films -- which in some notable cases broke to showing a sound stage with lighting and filming equipment), it's an acknowledgement that (like the psychodrama that accompanies it) there is a second layer of illusion. A straightforwardly cheeky use of this gag would be to show pencils drawing the characters, and show frames degrading into cells (as was done in Gainax's earlier Otaku no Video -- also semiautobiographical); instead, they show a simulacrum of filming equipment surrounding their simulated characters, with the implied simulated pencils and inks still hidden.

But, what about RahXephon?

To the extent that RahXephon is discussed, it's often dismissed as a rip-off of Evangelion. This is at least somewhat reasonable: both take the giant mech genre and deconstruct it by painting an unflattering picture of the kind of organization that would employ such weapons; both add a great dose of surreal imagery and psychodrama; both put a largely unwilling and cowardly protagonist in the pilot position, surround him by more dominant female characters, and take away his agency almost any time his actions have relevance to the plot; both even employ secret societies of german origin, dream sequences involving trains during late afternoon, episodes wherein the main character unknowingly kills a friend who has been transformed against his or her will into an enemy, and episodes wherein the pilot and the mech are trapped alone in an isolated pocket universe where time moves differently; furthermore, both contain the crucial point that both the protagonists and their enemies are puppeted by a single organization toward a larger goal. On the level of aesthetic decisions, both contain soundtracks that lean heavily on slightly modified classical works in the public domain, and both have opening themes featuring a female vocalist whose performance is broken up with staccato backing rhythm.

I see one other similarity, but one that probably does more to legitimatize RahXephon on its own: where Evangelion introduced its filmmaking metaphors late, RahXephon was always and entirely about the medium of film.

RahXephon begins by introducing us to the main character in what we take for a representative portion of the world in the near future. He lives in Tokyo, has a pair of close friends, and goes to school on the train. We learn in the first episode that most of the world has been destroyed, and only Tokyo is left. Everything aside from this reveal seems quite normal, so as viewers we accept it: this is a science fiction show set in a world where only Tokyo survived some cataclysm that destroyed the rest of the world.

The first indication that anything is abnormal from our main character's perspective is when the city is attacked -- but this is a normal reveal; after all, there would be no mech if there wasn't a threat to the city. We get a second revelation of abnormality, when our main character's friend spontaneously disappears. A third revelation occurs when an unfamiliar figure knows our main character's name, and a fourth occurs when it is revealed that the mysterious men in black who are attacking her have blue blood (probably both a reference to Blue Christmas and to Evangelion's "pattern blue" -- signifying an angel). By the end of the first episode, the worldview that both the main character and the viewer had has been built up and already systematically subverted, and every cliche reveal hides another behind it: when the attack first occurs, the audience expects an Evangelion-like sequence (supported by the physical similarity between Haruka Shitow and Misato Katsuragi, the similarity of the unexpected appearance and disappearance of Mishima Reika during the first attack in Rah Xephon to the unexpected momentary appearance of Rei Ayanami during the first attack in Evangelion, and other structural and cinematographic echoes); when we first see the men in black, we may connect them to Section 2 in Evangelion, but once they are revealed to be nonhuman we can link their fight scene to similar fight scenes in X/1999, The Matrix, and the Animatrix between a mysterious character and shade-clad non-human MIBs. But, those expectations are again dashed -- Kamina misses the train (another inverted Evangelion reference, probably), and we later discover that the cold, distant mother figure is the orchestrator of the attack (and in a position of power within some government organization, unbeknownst to her son). Then, we get entirely into surrealist territory (quite literally), and the Xephon awakens.

This is all to say that the entire first episode is about trickery, allusion, and the systematic creation and frustration of expectations. While any film or tv show has some of this, Rah Xephon is extremely heavy-handed with it during the first episode (and far less so for most of the remainder of the series). While it may seem initially as though the complexity of plot during the first episode is a systemic flaw on the part of the writers, it becomes clear in retrospect (as many episodes pass that are not so cluttered) that this was a conscious decision.

In the following episode, we discover that Ayato and Haruka have broken free from Tokyo Jupiter. Our entire first episode, which focuses on trickery and deception, is a pocket universe formed for an unknown reason and ruled with systematic deception. The world outside Tokyo has not been destroyed -- instead, it has been made artificially inaccessible by the very people who teach that it has been destroyed.

A second piece of information is revealed about this pocket universe (one that fans of Inception may latch onto): time moves differently there.

A film, for practical reasons, must operate outside the realm of real time. Otherwise, films whose events did not take between one and two hours would not fit in the feature film format, and films whose events take place over days or weeks would be impossible to watch. Films are an artifice, created by a group of people, exposed to an audience in an artifically isolated setting (a movie theatre), relying upon trickery to immerse the viewers in a false but internally consistent world.

Later, Ayato is told that he is an 'Orin'. It's unclear to me what this means -- it is never translated. It may be a pun; one of the recurring symbols is a bird (and 'orin' is the greek root meaning bird). However, he is told that an Orin by definition has artistic talent, and that The Orin is destined to "tune the world". As much as this mirrors End of Evangelion, X/1999, Ideon Be Invoked, and other similar works to which Rah Xephon could be unpleasantly compared, I don't think this is another throwaway cliche. A running theme is that both Mishima Reika and Quon talk to Ayato about the abilities and duties of the Orin in musical terms, and he replies that he doesn't understand because he is a visual artist with no musical talent. The relatively derivative (albeit striking and formally excellent) visual style of Rah Xephon is in contrast to the spectacular sound design in the series; in addition to being formally superior to other shows of the time and having a much better sense of detail (in both the use of BGM and in sound effects), there's an intense classical influence that makes Evangelion's musical references seem poseurish, and the knowledge that the creators had about the physics of sound and about music is reflected in the content of the plot (particularly in Quon, but also in the in-show descriptions of how Dolem attacks operate). At the end of every episode, where Evangelion told us to expect "more fanservice", Rah Xephon informs us that "the world is saturated with sound".

The themes of artistic ability and its effect on the world come to a peak at the end, when Ayato fulfills the prophecy, ascends to godship, and re-creates the world in his ideal image. The leitmotif of Mishima Reika, Quon, and the tuning of the world is a portion of the melody from Poltovsian Dances, which became popular in the 1950s after it was used as the melody to 'Strangers in Paradise', a song in the movie musical 'Kismet'. This melody appears in several variations in the soundtrack, including a distorted and discordant version called "Way to the Tune". It is worthwhile to point out the title of the most famous adaptation, because the goal of the entire Xephon project was to create a paradise. As Ayato approaches this, the artificial structure of hostility between Terra and the government of Tokyo Jupiter breaks down; characters that had been formerly communicating only in secret now met in the open, and the old man who always appeared to be in charge reveals that this was his plan all along.

It is my hypothesis that Rah Xephon is wholly about the production of a film or TV show. Tokyo Jupiter resembles the world of a film in more ways than I have mentioned, not even going into the philosophical arguments about film and dream that drove Inception. Our shadowy governing structures, bifurcated but with personal connections joining them even as they are artificially separated, resemble the red tape network of unions and responsibilities familiar to filmmakers and students of film. Our old man, the producer, funds the whole thing. Thrown out of his imagined universe and artificially kept outside of it, our Orin/director fulfills the prophecy that he must edit the world to his liking, using his aesthetic sensibilities, while semi-incomprehensible sound designers (Quon and Mishima Reika) speak riddles past him. A bit player breaks down over the artificiality of his role (D is for Designer Children, D is for Defective). Crazy social and family ties are suspended for the duration of the production, explicitly in order to play artifically adversarial roles.

You could probably even argue that Rah Xephon is about the creation of Evangelion.

Sunday, March 17, 2013

QRCode aGV5IG1heSBiZSBvdXIgTW9zdCBUZXJyaWJsZSBMaXphcmRzLCBidXQgdGhleSB3b3VsZG4ndCBi ZSBjYWxsZWQgdGhlIGJlc3QgYW5kIHRoZSBicmlnaHRlc3QgYnkgZXZlbiB0aGUgaGluZG1vc3Qg ZmFydC1jYXRjaGVyIGluIEFiYWRkb24ncyBodW1hbiBjZW50aXBlZGUuIFRoZXkgY2FuIHR1cm4g Ymxvb2QgaW50byBnb2xkLCBwbGF5aW5nIExhc3QgRGF5cycgYWxjaGVtaXN0cyBpbiB0aGUgYm9v bWluZyBjYXRhc3Ryb3BoZSBhbmQgY29sbGFwc2Ugc2VjdG9ycywgYnV0IGRvbid0IGNvbmZ1c2Ug dGhlIG1hbmFnZW1lbnQgb2YgYW4gaGFiaXR1YXRlZCBtYXNzYWNyZSB3aXRoIGEgbWVyaXRvY3Jh Y3kuIFRoZXkncmUgdGhlIGVzY2hhdG9uIG9mIG9wZW4gamF3cyBhdCB0aGUgY2xvc2Ugb2YgdGhl IGZvb2QgY2hhaW4sIGJ1dCBmb3Igbm8gb3RoZXIgcmVhc29uIHRoYW4gYSBjb2xkIGhlYXJ0IGRv ZXNuJ3QgZHdlbGwgdXBvbiB0aGUgY3J1ZWx0eSBvZiBpdHMgYml0ZS4gV2UncmUgdGhlIDk5IGFu ZCB0aGV5J3JlIHRoZSBPbmUgUGVyY2VudGVycywgYW5kIGxpa2UgdGhlIG91dGxhdyBiaWtlcnMg d2hvIHNoYXJlIHRoZSBwYXRjaCwgdGhleSBydW4gdGhlIGRydWdzIGFuZCBndW5zIGFuZCBraWxs IGZvciB0aGVpciBjbHViLiBUaGV5J3JlIHRoZSBLaWxsZXIgRWxpdGUsIGJ1dCBkb24ndCBjYWxs IHRoZW0gZWxpdGUuIE5vLiBBcHBhcmVudGx5LCBhbmQgd2l0aCBpcm9uaWMgcGVydmVyc2l0eSwg dGhhdCdzIG1lIGFuZCBteSBudW1lcm91cyB0cmliZTsgb3Zlci1lZHVjYXRlZCBiZXlvbmQgdXRp bGl0eSBhdCB0aGUgZW5kIG9mIHRoZSBBZ2Ugb2YgVXNlbGVzcyBUaGluZ3MuIA0KDQpBbmQgSSBt ZWFuIHRoYXQ6IHRoZSBlbmQgb2YgdGhpbmdzLiBDYXBpdGFsIGhhcyBleGhhdXN0ZWQgaXRzIGZp cnN0IGZ1ZWxzLCBhbmQgbm93IGl0J3MgdGhlIGNyZWF0aW9uIG9mIHBvdmVydHksIG5vdCBvZiB3 ZWFsdGgsIHRoYXQgbWFrZXMgdGhlIHdvcmxkIGdvICdyb3VuZC4gQW5kIG5hdHVyYWxseSwgd2hl biBpdCdzIGRvd24gdG8geW91ciBvd24gYm9keSwgc2V0dGluZyBpdCBhbGlnaHQgYmVmb3JlIGl0 J3MgdGFrZW4gZnJvbSB5b3UgdG8gc3Rva2UgdGhlIGVuZ2luZXMgb2YgdGhlIEdyZWF0IE1hY2hp bmUgYmVjb21lcyB0aGUgZmluYWwgaW1wdWRlbmNlLiBEZXBlbmRpbmcgdXBvbiB3aGV0aGVyIHlv dXIgbmF0aW9uIGlzIGFuIGFwcGV0aXplciBvciBhbiBlbnRyZWUgb24gdGhlIGdsb2JhbGlzdHMn IG1lbnUsIGFuZCBob3cgd2VsbCB0aGUga2l0Y2hlbiBwcmVwYXJlcyBpdHMgbGl2aW5nIHBhcnRz LCBzdWNoIGFuIGFjdCBtYXkgbGVhZCB0byByZXZvbHV0aW9uIG9yIGEgcGFzc2luZyBMVUxaLkl0 IGNhbiBnbyBlaXRoZXIgd2F5LiA=

Monday, March 11, 2013

Personal aside: music!

As some of you may know, I make ambient noise music.

Here is my complete discography:

Monday, December 17, 2012

A good social engineering article from the BBC

The Alan Woodward wrote a fairly good article for the BBC on the vulnerabilities of the human biocomputer. Ignore the pseudo-religious language in the introduction; this is good stuff.

The phenomenon of "social engineering" is behind the vast majority of successful hacking.
This isn't the high tech wizardry of Hollywood but is a good, old-fashioned confidence trick.
It's been updated for the modern age, and although modern terms such as "phishing" and "smishing" are used to describe the specific tricks used, they all rely upon a set of human characteristics which, with due respect to Hieronymus Bosch, you might picture as the "seven deadly sins" of social engineering.
To fall for a confidence trick, or worse, we assume others "must" have taken the necessary steps to keep us secure.
Sadly this leads to a lack of awareness, and in the world of the hacker that is fatal. When we stay in a hotel and we programme our random number into the room safe to keep our belongings secure, how many of us check to see if the manufacturers override code has been left in the safe?
It's nearly always 0000 or 1234 so try it next time.
Curiosity:Humans are curious by nature. However, naive and uninformed curiosity has caused many casualties. Criminals know we're curious and they will try to lure us in. If we see an unfamiliar door appear in a building we frequent, we all wonder where it leads.
We might be tempted to open it and find out, but in the online world that might just be a trap waiting for an innocent user to spring it. A colleague built a website that contained a button that said Do Not Press, and was astonished to find that the majority of people actually pressed it.
Be curious, but exercise a healthy degree of suspicion.Gullibility:It is often thought of as a derogatory term, but we all suffer from this sin. We make assumptions.
We take others at face value, especially outside of our areas of expertise. Put a uniform on someone and we assume they have authority. 
Give an email an official appearance by using the correct logo and apparently coming from the correct email address, and we might just assume it's real, regardless of how silly its instructions might be.
All of this can be easily forged online, so make no assumptions.Courtesy:We quite rightly all teach our children to be polite. However, politeness does not mean you should not discriminate.
If you do not know something, or you feel something doesn't feel quite right, ask. This principle is truer than ever in the online world, where we are asked to interact with people and systems in ways with which we are quite unfamiliar.
If someone phones you out of the blue and says they are from your bank do you believe them? 
No. Phone them back.
And by the way, use a mobile phone as landlines can remain connected to the person who made the call in the first place and so whilst you might think you're phoning the bank on a valid number you're just talking to the person who called you.Greed:Despite what we'd like to think we are all susceptible to greed even though it might not feel like greed.
Since its inception, the very culture of the web has been to share items for free.
Initially this was academic research, but as the internet was commercialised in the mid-1990s, we were left with the impression that we could still find something for nothing.
Nothing is ever truly free online. You have to remember that if you're not the paying customer, you're very likely to be the product. In the worst case, you might find that you have taken something onto your machine that is far from what you bargained for.
Many pieces of malware are actively downloaded by owners unaware that the "free" product contains a nasty payload, even if it also appears to do what you expected of it.Diffidence:
People are reluctant to ask strangers for ID, and in the online world it is more important than ever to establish the credentials of those whom you entrust with your sensitive information.
Do not let circumstances lead you to make assumptions about ID.
For example, if someone from "IT support" calls you and asks for your password so they can help fix your problem, how do you know they haven't called everyone else in the building first until they found you who has really got a problem?
This is a well-known attack. If someone has a problem with proving who they are, you should immediately be suspicious.Thoughtlessness:Thinking before you act is possibly the most effective means of protecting yourself online. It is all too easy to click that link.
How many of us when reading an apparently valid link in an email would bother to check whether the link is actually valid or whether instead it takes you to a malicious site.
It's horribly easy to make links look valid so try hovering your cursor over the link for a few seconds before clicking to see what the real link is: the true link pops up if you give it a moment.
As cynical as it may sound, the only answer is to practise your A-B-C:
  • Assume nothing
  • Believe no one
  • Check everything
With more Christmas shopping expected to be done online this year than ever before, you should watch out for those that would exploit the deadly sins.
Don't give criminals the chance to ruin your holiday season, and remember that a little bit of paranoia goes a long way online.
Alan Woodward is a visiting professor at the University of Surrey's department of computing. He has worked for the UK government and consults on issues including cyber-security, covert communications and forensic computing. 


Now, I wish there had been a bit more cog-sci in this article and a bit less of the forced comparisons to medieval eschatological literature, but all in all it's pretty good.

Too bad nobody will follow it.