The Moral Ambiguity of Power Miners 0

Posted by ferrisoxide
on Monday, January 04

The Power Miners sets pit Power Miners against Rock Monsters in a race to collect Power Crystals, a source of food for the Rock Monsters. The Rock Monsters consumption of the crystals has the side-effect of creating catastrophic earthquakes on the surface, hence the Power Miners drive to collect all the crystals before the monsters cause more city-leveling destruction.

It's hard to see who the bad guys are here. Both "sides" are working under their own agenda - trying to survive the world they live in and only brought into conflict because of a limited resource (i.e. the crystals) that both groups want to control.

It's interesting to note that the Power Crystals have no direct value to the miners - they are only valuable through restricting the monsters access to this food source. It doesn't appear that any other avenues have been explored for reducing the damage caused by the Rock Monsters, though arguably the opportunities for negotiation are limited by the Monsters' apparent thuggish stupidity - plus a Lego set where Miners and Monsters sit down to hammer out an agreement over Power Crystal access-rights would have little appeal to series' key demographic.

The problem of which group is in the "right" is problematic on several levels. First off, the Miners are clearly the invaders - entering the domain of the Monsters with the intent of limiting their food supply. Deliberately starving the Monsters raises an awful moral dilemma, trading the lives of the Monsters against the lives of humans unfortunately affected by the Monsters eating habits. If we give no agency to the Monsters then it's no worse an issue than having to deal with aggressive animals - humans simply would not have survived if they tolerated human-killing creatures, and the decision to limit the Monsters' diet (and population) is no different than humans protecting themselves against sharks or lions.

But clearly the Monsters do have some form of agency. They have characteristics that could be defined as human, and they - or at least the Firox - engage in guerrilla-like tactics than indicate a high level of intelligence. This brings into question how aware the Monsters are of the damage they are causing, and potentially how deliberately the earthquakes targeted human cities. Without knowing the true motivations of the Monsters the issue of finding an equilibrium between Monsters and Miners is complex at best.

Similar themes are explored in the Mars Mission sets, where Astronauts and Aliens vie for control over crystals needed by both parties to power their vehicles and other equipment. In these sets the behaviour of humans is more easily characterised as suspect, with the Astronaut capturing and imprisoning Aliens. Yet the very inscrutability of the Aliens, coupled with their willingness to attack human mining outposts, obscures the question of whether the Astronauts' response to the the conflict with the Aliens over crystals is valid self-protection against a hostile foe or one of anthropocentric militancy.

I asked my five-year old who he thought the baddies were in Power Miners. Without hesitation he said "the Monsters". When asked why he seemed a little more troubled, thinking it over for a while before he responded with "because the Miners know something about the Crystals". Completely in keeping with the back-story, yet at no point did he address the long-term effects of the Power Miners activities on the Monster population. Typical five-year old.

One of the new Power Miners sets for 2010 - the "Lavatraz" set - will see the Miners attempt to capture a Lava Monster is a water-cooled trap. If they are successful, and their efforts aren't foiled by a subsequent "Escape from Lavatraz", then perhaps we will see some genuine opportunities for dialogue created - albeit between captive and guard. And if hot-heads on both sides are cooled - both figuratively and literally - then maybe concrete solutions to the rivalry between Monsters and Miners can be found and a real, lasting peace can be created.

We live in hope...

Simple Lego Traffic Light - Prototype

Posted by ferrisoxide
on Monday, April 27

Initial Prototype

The kids were after a traffic light set up for an intersection on a Lego road. My first idea was to stick some LEDs into a suitable brick. The 4595 brick seemed a reasonable candidate – it looks a bit like a traffic light, even though it only has two holes on each face. I thought of building a basic red/green traffic light, but couldn’t figure how to could control the light effectively – there’s not much room at the bottom of the 4595 to fit four wires and keep the lot from shorting. Then there’s the issue of switching the current from one LED to another as the signal changes. Tricky.

Then I had a wee brain storm: only one LED needs to be on at a time – all I needed to do was to wire the LEDs together so the cathode of one was connected to the anode of the other and vice versa. Because LEDs only allow current to flow in one direction, when the current runs one way only one LED will light up. Reverse the current and the other LED lights up. So simple I felt dumb after working it out.

The basic components: a 4595 brick, a small red LED, a small green LED and some heat shrink to isolate the wires from each other.

Testing: Setting up the LEDs with the anodes around the right way. The wires are bent prior to pushing into the brick (and so I’ll remember which way around they go).

Red means stop: Current is applied to both LEDs, but only the red one can light up.

Green means go: Reverse the direction of the current and the green light comes on, the red light turns off.

The pictures didn’t turn out too well as I took these on a crappy old camera. Time to buy a new one – though cameras get dropped so often in this house they may as well be consumable items.

Getting the wires into place was a pain. The red LED went in OK but the green was awkward as the wires are quite stiff and it’s hard to bend and pull them through without threatening to fracture the LED.

I didn’t bother trying to make sure the anode/cathode pairs of each LED were connecting properly. The green LED was forced in over the top of the red so its two wires were pushed down on the red LED’s wires, ensuring contact.

There’s a small peg inside the 4595 that keeps the wires apart inside the brick. As they come through the hole in the bottom there a danger that the two sets of wires may touch each other so I pushed a small piece of heat shrink up through the hole over just one pair of the wires.

Next Steps

The prototype seems to work OK, so the next steps are to clean up the design. I didn’t really use the heat shrink properly, nor made sure everything was well connected, so I’d look towards improving that.

If I do this again I’d cut the wires right back and solder the LEDs together. I’d solder a flexible pair of coated wires to each side of the LEDs and pull them through the bottom of the brick. I’d probably use an RCX to control the direction of the current. You’d only need one set of wires to control a complete traffic intersection: if you hooked a set of four traffic signals – one for each direction at a cross road – all you’d need to do is run the current one way to turn one flow of traffic ‘green’, reverse the current the turn on the green lights for the other flow. Providing it can supply enough voltage, one RCX should be able to control up to three sets of intersections.

I can see how this could be used for other things. You could easily make a flashing railway crossing signal by wiring two red LEDs in the same way and swapping the direction of the current back and forth. More fun to be had.

Back to the Brick 2

Posted by ferrisoxide
on Monday, April 13

Hey Reader,

The last few posts have been a bit self-serious. “Ruby, Lego™ and other things I dig”? Scrum? Process? Yeah.. I care about those things.. but dig? Maybe.

I want to talk about a much more important issue – one that will affect the grandchildren. I’m talking about the gradual disappearance of old-school Lego Mindstorms resources on the intramaweb.

I don’t have an NXT.. I’d love to have one but as she-who-controls-the-finances says “They are too expensive.. and you’re a grown up!”. Yeah right.. let’s see you say that the next time I buy you some Batman Lego m’lady.. “Oh you shouldn’t have.. take it back to the shop.” I don’t think so.

Anyway, I make do.. and enjoy making do.. with old Lego Mindstorm RCXs, Spybotics and the like. To me it’s what embedded programming is all about: the fun of working with limited resources and still getting stuff done. And there’s always stuff to learn. Lately it’s been getting the Spybotics and Microscout talking via the VLL protocol. I didn’t even now this existed until the kids started badgering me about getting all the programmable bricks talking to each other.

Over the years I’ve built up a list of online resources for the RCX and but am now seeing things start to die away – links no longer work, or pages haven’t been updated for a while. Even old NQC hasn’t had much love lately, all the energy going over the ‘NXC’ port to the Mindstorms NXT. It’s all fair and reasonable – there’s not much action in Commodore-64 land either as technologies that come and go.. well.. come and go. But I love my little RCX and I want to keep on loving it.. even if I am a ‘grown up’.

If anyone out there has old Mindstorms resources they don’t want to host any more – or know of stuff that needs to be preserved – let me know. I’m keen to keep as much of this stuff alive as I can. And if anyone has an old Cybermaster they’re looking to move on.. you know where to find me :)

It looks like NQC hasn’t been built for Mac OS X for a while – the current OS X binary is a couple of revisions past the most recent source. Probably just a GCC 4.0 issue I’m guessing.. well, there’s a weekend project if I ever saw one. When it’s working I’ll post the .dmg up here.

Cheers folks

Dansk Design 0

Posted by ferrisoxide
on Wednesday, April 08

I’ve recently bought myself a wonderful book called Dansk Design, by Thomas Dickson. It covers a lot of the history of Danish design, and not only the immediately recognizable furniture, lighting and other overtly bauhaus-inspired domestic artefacts. It also explores how Viking-era art also informs the Danish aesthetic, building on principles of simplicity, utility and a deep-seated sense of playfulness. The book draws in examples from all over the place, including the Danish landscape, early boat-building, office equipment – even the cover art for late-nineties group Aqua) – to explore Denmark’s place at the forefront of innovative design.

I got suckered in by the references to Lego of course, which made me consider what it is about the design of Lego that appeals. As I’ve said before, I’m not a big fan of much of the “modular” Lego – it seems more to do with movie tie-ins and a constructed approach to play. The kind of play that appeals to me comes from taking a bucket full of bricks and letting your own imagination take hold. I’m quite proud of my kids who – when presented with a new box of Lego (a common occurrence in our house) – will prefer to just muck about with all the new shapes and colours available to them first before getting into what the boxed instructions have to say. Taken to Toy Corner and given the choice of anything from India Jones to Star Wars sets, my youngest opted for a Creator set in order to build “monster robots”. Yay! Kids know how to play – it’s in their nature. I’m not sure why we feel compelled to give them pre-packaged imaginary worlds to play in.

The parallels with Ruby on Rails are readily apparent. RoR gives you a set of patterns, conventions and classes – building bricks if you like – to create web applications with. Using Rails you are constrained in certain ways, but those constraints free you up to focus your energies in other areas. According to the book Fifty Years of the Lego Brick, six 6 by 2 stud Lego bricks can be combined in 915,103,765 ways. Similarly the various component parts of Rails can be put together and extended in a wide range of creative ways that are – to all practical concerns – limitless. Paradoxically, the imposition of certain overarching constraints only restricts you to the bounds of your imagination.

You can see some of this in the simple but effective designs of web sites built using Rails. Basecamp, Lighthouse, and Shopify all carry forward this aesthetic, as do many of the sites listed in software.com’s ‘Best Ruby on Rails’. There is joy in their simplicity. They each take a problem and respond to it in an imaginative way that isn’t bogged down with artifice or preconceived complexity. It’s not that you couldn’t do something similar in Java, .NET or PHP. It’s more that you wouldn’t because the culture of surrounding each of these languages is very different to that of Ruby on Rails.

I didn’t realise this before, but David Heinemeier Hansson – the originator of Ruby on Rails – is Danish, thereby bringing my musings full circle. What a weird world. I can’t find a reference to Ruby on Rails in “Dansk Design”. Maybe a revised edition will see it included – at least on a par with Aqua.

Classic Lego Space - Reimagined

Posted by ferrisoxide
on Sunday, March 01

This is why I love Lego so much. You can take a toy you played with as a child and revisit it as a adult; not with a kitschy false-sentimentality, but a freshness and creative spirit that reflects that original experience.

OK, I’m waxing lyrical.. but that’s because I’ve only just come across this site:

http://www.neoclassicspace.com/

The models refer back to the old classic Space Lego, but use modern pieces and construction techniques. There’s humour in there, some lovely nods to older models – I’m particularly taken by the neat little Galaxy Explorer, a take on the 497 set I had as a kid. This mini Galaxy Explorer brings on waves of nostalgia – and of awe at the clever reworking of the old design. It’s perhaps only surpassed by the incredible Neo Classic Space ll by Peter Reid.

The original 497 Galaxy Explorer was the first big bit of Lego I ever got (or my brother got… the lines blur). It’s also the kit that got me back into Lego as an adult, when Mum and Dad put all our old toys up on a table and said “take what you want – everything else is going to charity”. Side note: my bro got all the old Hornby train sets – I think we both did OK.

I don’t expect my kids to grok any of this. In fact, after seeing what they and their cousins did to my poor old red spaceman (sorry, he just does not have blue pants.. and that skeleton head is.. kinda creepy), I would guess they’d look at these old school sets as just that.. old. Sigh.. Young people and their modular Lego kits.. in my day we didn’t have no stinkin’ movie tie-ins. But anyway, I’m sure we’re all going to have some fun with the new Space Police coming out later this year, the closest thing Lego have to the space sets of my youth.

Now, if only Lego would rerelease the old classic space sets. It’s been 30 years after all – an opportunity to cash in on the sentimentality of a bunch of old AFOLs. But it wouldn’t be the same – the past is the past. I’m as sure of this as I am that there’s always more Lego and that creativity is essentially boundless.