Monday, 30 April 2012

Movie Review: "Rubber" (2010)

Wait. What? No it's not what you're thinking. Get your mind out of the gutter.

Seriously though... Go get this movie. It's frickin' genius. The words "Avant Garde" can be pronounced "Rubber" as far as I am concerned.

Ok. So what's the premise? Well... A tire. An ordinary radial. Comes to life and becomes a serial killer. Blows it's first rabbit to bits in the first 15 minutes. Get's seriously pissed off with a bottle after 17mins. 20mins and it's blown a crow to bits through sheer f*cking mental will-power.

Graduates to people later.

It has an on-screen audience. All but one of which gets poisoned to death by bad turkey provided by one of the other characters.

Wait. What? Seriously? This is a movie?

Yeah really. And the production values and script are excellent. You really believe that the tire gets pissed off when it sees it's brethren being burned in a fire. You really believe it's getting rocks off watching Nascar on TV in a motel. And it get's hyper pissed off with the fake sheriff.


Oh. And it gets re-incarnated as a tricycle after being blown to bits by a fake sheriff. And leads an army of tires to Los Angeles.

Wait. What?

But seriously. Go get this movie. It's really, really good. Blurs the lines all over the frickin' pace. Third wall? Who needs it. Get the audience involved. Hell. Have them killed. Blow their heads apart. Poison them. Anything.

To be honest I expected death to make an appearance popping in like in a Swedish movie saying something inscrutable. But no. Just people being blown to bits by a savage radial tire.

Curious thing is that I read the blurb and poster for the movie. So what you say. It's in Dutch. And it makes sense. Well. My kind of sense anyway. I read it out loud (yes really) although with an English accent. B was impressed.

Sunday, 29 April 2012

Book Review: "12 Essential Skills for Software Architects" by Dave Hendricksen

First up I should say that the title is mis-leading. It shouldn't be 'architects' but rather 'people' (or 'personnel').

This is a damn fine book and should be read by every person involved with IT.

The author is an architect for Reuters and has a solid grasp of the 'soft' skills required to deal with the entire scope of IT personnel, projects and the executives they have to engage with.

The book is broken down into 3 main sections: Relationship Skills, Personal Skills and Business Skills. Each section has a set of chapters devoted to the requirements for being successful in that scope.

What the book boils down to is a way to understand yourself, be yourself, be gracious, communicate effectively, negotiate effectively, lead, deal with politics, be transparent, have passion and understand the business needs.

As a software engineer with 34 years of experience I found it startling to see what I was doing that was holding my projects back. I honestly thought what I was doing *was* effective. I can now see a little more clearly what I'm doing on a day to day basis that is causing grief and I can also see the things that I'm doing right and, more importantly, why. I will change my bad habits and see what happens.

Although the primary focus is on working in a large company, I think it equally applies to small teams and startups.

All in all an excellent read and IMHO should be part of Information Technology 101.

Friday, 27 April 2012

Book Review: "Prologue to Super Quantum Mechanics" by Victor Vaguine


What a frickin' entertaining, elucidating and illuminating rant about Quantum Mechanics and the Copenhagen Interpretation.

I frickin' loved this. This book is a 'prologue' to two more books "Conceptual and Philosophical Foundations of Super Quantum Mechanics" and "Ontology of ConsReality." Hmm. Must see if I can find out more about those. Not out yet. If this book is anything to go by, they'll be a good read.

Basically he's re-stating Aristotle and William of Occam. A is A and use the fewest assumptions to provide the simplest explanation. He covers non local realism specifically and is quite... er... "forthright" in his views about Quantum Positivism and Local Realism.

So... If I could paraphrase him in my words...

"If all you have is a hammer then everything looks like a nail. Every mathematical edifice built on the Copenhagen interpretation is tainted. It leads to giant theories that describes things, but doesn't explain them. So you have exceedingly clever people wasting years on rubbish. And to say anything against Copenhagen is heresy.

Multiverse? Crap. Bohr? Arrogant, opinionated, brainwashing obsessive who has retarded physics for 80 years. String theory? Interesting use of Mathematics with little bearing on reality and zero predictive power. A is A. They're not zero-size structure-less points. They're obviously very real little bl**dy things. Just use a Scanning Tunnel Electron Microscope. They're frickin' there. And they have spin. And magnetic moment. And they have those properties regardless of whether you're looking at them."

In any case, the author seems to be able to capture the essence of the insanity of Quantum Mechanics and the way it has been inculcated into every nook and cranny of modern physics. He also is obviously in awe of Einstein for which I have no complaint.

I did some digging on this guy and encountered some weird yet fascinating stuff about his life. Like this one:

LEAD: Helped by a fistfight between K.G.B. and C.I.A. agents, Victor A. Vaguine, a Soviet nuclear physicist, defected with his wife and two children to the United States 16 years ago in Switzerland.
December 2, 1987

Strangely enough a wikipedia search showed nothing. Nada. Nil. Odd. He appears to live in Dallas, TX. Three companies, "Vitel", "JMV" and "consreality" which seem to fit into the books details. The ConsReality company is at "9914 Hickory Xing" in Dallas btw. There's a press release here: and is apparently a publishing company. Seems legit.

Supposedly he escaped the Soviet Union in 1966, has a PhD (written in French) and has 22 US patents. Think I found them. Here's the list to prove he may not be making stuff up:

1.  Vaguine Victor A: Method and apparatus for controlling and optimizing the heating pattern for a hyperthermia system. Clini-Therm Aug, 9 1983: US 4397314 (92 citation)
2.  Vaguine Victor A: Multiple microwave applicator system and method for microwave hyperthermia treatment. Clini-Therm Aug, 9 1983: US 4397313 (34 citation)
3.  Vaguine Victor A: Microwave applicator with discoupled input coupling and frequency tuning functions. Clini-Therm May, 8 1984: US 4446874 (29 citation)
4.  Vaguine Victor A: Microwave hyperthermia applicator with variable radiation pattern. Varian Associates May, 20 1986: US 4589424 (19 citation)
5.  Tanabe Eiji, Vaguine Victor A: Variable energy standing wave linear accelerator structure. Varian Associates Aug, 25 1981: US 4286192 (13 citation)
6.  Vaguine Victor A: Standing-wave linear accelerator. Varian Associates May, 17 1977: US 4024426 (12 citation)
7.  Meddaugh Gard, Tanabe Eiji, Vaguine Victor: Variable field coupled cavity resonator circuit. Varian Associates May, 3 1983: US 4382208 (10 citation)
8.  Vaguine Victor A, Giebeler Jr Robert H, McEuen Albert H: Hyperthermia applicator for treatment with microwave energy and ultrasonic wave energy. Varian Associates Dec, 3 1985: US 4556070 (8 citation)
9.  Turner Paul F, Vaguine Victor A: Applicator array and positioning system for hyperthermia. BSD Medical Dec, 4 1990: US 4974587 (8 citation)
10.  Vaguine Victor A, Nichols Dennis R: Bonding of ferrite to metal for high-power microwave applications. Varian Associates Mar, 25 1975: US 3873944 (8 citation)
11.  McEuen Albert H, Vaguine Victor A: Standing wave linear accelerator and slotted waveguide hybrid junction input coupler. Varian Associates Mar, 27 1979: US 4146817 (7 citation)
12.  Vaguine Victor Aleksey: Variable energy highly efficient linear accelerator. Varian Associates Oct, 3 1978: US 4118653 (4 citation)
13.  Vaguine Victor A: Linear accelerator having a side cavity coupled to two different diameter cavities. Varian Associates Oct, 3 1978: US 4118652 (4 citation)
14.  Vaguine Victor A, Nichols Dennis R: Metallized gyromagnetic ferrite. Varian Associates Jul, 13 1976: US 3969086 (4 citation)
15.  Vaguine Victor A, Nichols Dennis R: Bonding of ferrite to metal for high-power microwave applications. Varian Associates Feb, 24 1976: US 3940051 (4 citation)
16.  Vaguine Victor A: Standing wave linear accelerator and input coupling. Varian Associates Oct, 24 1978: US 4122373 (3 citation)
17.  Tanabe Eiji, Vaguine Victor Aleksey: Accelerateur lineaire a onde stationnaire et a energie variable. Varian Associates Apr, 17 1981: FR2467526 (1 citation)
18.  Vaguine Victor A, Nichols Dennis R: Ferrite to metal bond for high-power microwave applications. Varian Associates Jun, 1 1976: US 3960512 (1 citation)
19.  Meddaugh Gard Edson, Tanabe Eiji, Vaguine Victor Aleksey: Variable field coupled cavity resonator circuit for a linear accelerator. Varian Associates Jan, 29 1982: FR2487627
20.  Tanabe Eiji, Vaguine Victor A: Variable energy standing wave linear acceleration structure. / Structure d'acceleration lineaire a ondes stationnaires et a energie variable. Varian Medical Systems Jun, 21 1983: CA 1148657
21.  Mceuen Albert H, Vaguine Victor A: Standing wave linear accelerator and slotted input coupler. / Accelerateur lineaire a ondes stationnaires et coupleur d'entree a fente. Varian Associates Oct, 7 1980: CA 1087310
22.  Vaguine Victor A: Standing-wave linear accelerator. / Accelerateur lineaire a ondes stationnaires. Varian Associates Nov, 14 1978: CA 1042552

A thoroughly good read. If you are interested in the subject or a student go out and buy this book and hold the ideas in your heart. They might not turn out to be right, but you have to know that there is dissent.

Thursday, 26 April 2012

Today has been stressful - so I decided to play an XBox game

Today was quite stressful. I kinda broke down a bit. Had to tell my boss I had to go home. Not going into details just yet but all will become clear later.

Anyway. Went home and did a bunch of work to try to keep my sanity. Then I stopped and was still at "sixes and sevens" as they used to say. So for the first time in frickin' decades I played a game.

I normally don't play games. Reason? I'm crap at it. Mashing buttons, firing and jumping wildly about like some lunatic. That kind of thing. And we've been watching play throughs of games by Rad Brad on YouTube. Stream of consciousness game play. So here's my transcript of my attempt to play Star Wars II on the XBox...

"What the? How do you shoot things? What's that? Hey! I can jump! Oh. That's how you shoot. Wow. Those dudes are firing at me. Take that, stupid thing with a weird shark head thing! What the? There's a flower pot on a space ship? Take that flower pot! Why aren't there chairs? I wanna throw a chair. Oh. Oh. Computers! Take that computers! Pew! Pew! Sh*t those imperial dudes are shooting at me! Take that! Wow. You can beat them up! Hah! Does C3P0 fall to bits when you thump him? HAH! Yes he does! They fall to bits when you thump them! Take that storm trooper! Oh sh*t I've fallen down a hole. Oh. And again. Jump Leia! Jump! Oh sh*t. Jump! Oh for f*cks sake. Shoot! Ah. Got it. Wait? I have to become C3P0? Er. Ok. Stupid droid. Hearts! Hearts! Oh! The cantina! Can I shoot everybody? Hey! This is cool. Shooting. Shooting. Damn. Those bastards are shooting back! Why the f*ck do they do that? Oh yeah. I'm shooting at them. But I'm jumping around like a spastic lunatic! How can they even f*ckin aim?  Oh look. If you hide the gun they stop shooting. Cool. Must have killed dozens of them. Oh Crap! Look! There's frickin' rats! Wait? Are they rats? Or mini-roos? Whatever. How many can I kill? Hey I can jump AND shoot! What's that stupid furry bantha thingey doing? Slow as f*ck. Argh. Fallen down a gap again. Hey look! They do come back and in larger numbers! Take that stupid... stupid... what the f*ck are those dudes called again? Making that weird noise and waving those stupid guns in the air. Ah f*ck it. Just kill 'em. Stamping! Stamping! Oh look gold studs and hearts. Gotta get those hearts!"

Hence the reason I don't play games more often.

Tuesday, 24 April 2012

Results of super-nova 2012 on the Gold Coast

Well we went. Not as big as the pop-culture or Salute events in the UK, but waaaay cool. Loads of tat and loads of coool. Tons of cos-play people which I won't post about as it has been covered elsewhere (See here for google pictures).

Managed to pick up "The Cthulu* Mythos Colouring Book" (*Their spelling) and "My First Necronomicom" which has tons of "Mr Men" style pictures of elder gods. Still want a plushy Cthulhu of course.

Apart from the "Hell-o-Kitty" T-Shirt I got, my best buys where, surprisingly, magazines. Stumbled on this really nice magazine "Solitude" which is like New Idea or Womens Weekly, but for Goths.

The article headings just beg you to read...

"Steampunk - It's not all Goggles and Gears"
"Latex - The inside story"
"Understanding Sanguine Vampires"
"Dressing Corporate Goth"
"Disappoint the Family for Christmas"

Cool. Here's an example of "Corporate Goth":
Not sure I could get away with that at work...

But it's the Ads that got me. I just have to have some of the stuff from places like:

I also picked up a free catalogue from I know it's a standee, but I sooooo want this outfit: Amy Pond. Might have to make it up from House of Target and various online outlets...

Interesting conversation about sci-fi in a bookshop

Stopped in at one of those most rare of beasts today... A bookshop. Feeling desperately depressed and disassociated. Thought I might cheer myself up by getting a book to read on Anzac day. Browsed the politics, business and sci-fi sections and found a book which looked interesting. So I walked to the counter and had a conversation with the lady behind it:
her: "Wouldn't have picked you for sci-fi..."
me: "Since the late 60's. James W Campbell and all that..."
her: "Ah. Had quite a few people in asking if there was any good sci-fi books and I had to say that they aren't really that many good ones about."
me: (In a Bob Dylan voice) "Times, they are a changing..."
her: "Hah! So true. But it seems as if the genre is dying out."
me: "That's because most of it has come true and we're living it."
her: (Stunned mullet look) "Oh... Yeah..."
And I thought about on the way back home. We have practically everything that was written about in those sci-fi books, shown in movies and on TV. Personal communicators that you can talk to, doors that open when you walk up to them, the sum of all human knowledge available in our homes, 3D replicators, holographic displays, robot vacuum cleaners, robotic factories, self-driving cars and Johnny Cabs, universal translators, sonic screwdrivers (yes really), jet-packs, exo-skeletons, flying cars (yes really), virtual reality (video games), robotic sentry machine guns and airborne killing machines, tasers, lasers, phasers (yes really), aircraft mounted beam weapons, full body security scanners, hypo-sprays, video phones, heads up displays, tablet computers, satellite communications, movies and music on demand and so on. We've landed on the Moon, Mars, Venus and several asteroids. We can get a ticket and fly around the world in around 24hrs. None of this existed or happened when I was a little kid (correction: hypo-sprays were) and now I use them without even thinking about it.

Well... Not the frickin' Death Dealing Drones and I don't have a flying car and haven't been to Mars. Yet... But you get my point.

We are the Jetsons. We live on the Enterprise. Still coal powered in some cases, but true none the less. Our town is practically Eureka. Doctors do more than any Six Million Dollar man and for far less. Our garages look like the hold on Serenity. And although it seems more like Red Dwarf, Lost or the Prisoner than My Favorite Martian, it's still pretty damn good. Mind you, it makes writing sci-fi tough.

About the only thing I can think of that we don't have, besides the silly things like Godzilla and aliens, are FTL, ubiquitous passenger space travel and time travel. Don't say space elevator or space hotels because the Japanese are going to build them. Can you think of any?

"Eee-By-Gum when I were a little'un we di'nt have none of this rubbish. We had heavy metal though. Called it Shrapnel."

Friday, 20 April 2012

Movie Review: "The Scorpion King 3: Battle for Redemption" (2012)

Don't bother. Unless you have a penchant for driving nails into your eyes with a jack hammer. Or wiring electrodes to your nether regions just to see what happens.

It's so frickin' dull.
So frickin' dull. And boring. And stupid. And silly. And... And.. O f**k it. I'm off to stuff my head in the microwave.

We watched it for about 1/2 hr. At that point I had almost lost the will to live and had decided it had turned into a Warner Bros cartoon. I decided to end it all by jamming toothpicks into my ears to drown out the appalling jokes.
It's frickin' awful.
The jokes are crude and endless and tedious.
The acting is, at best Uwe Bolle, and equal best frickin' awful.

We stopped it and went off to watch YouTube videos of a spider eating a snake.

That's how bad it is.

K.R.A.P. of the highest order.

Please. Please. Don't subject yourself to it. Go out and pray to Duke Dantalion to save you. At least he's a demon who teaches art and science which is what this move lacked in every important way. If you don't know what the f**k I'm talking about go google Ars Goetia.

To unquote Stephen Fry it was "Arse Gravy of the worst kind..." mainly because he wasn't talking about the movie, but could have been. And if he had ever seen even part of this movie, probably was.

Wow. Did you know it's Belphegor month?

Sort of carrying on from my rant about exorcisms. I did some more digging about regarding "demons" and found that, similar to astrological signs, each demon has a month wherein he (and his assistants) apparently do better.

So April is Belphegor month! And May will be Lucifer... I'm waiting for Beelzebub month which is July...

So who the heck is this Belphegor chappie? Well the demon apparently helps people make discoveries and invent things by tempting them with riches and laziness. Hmm. My kind of chap.

Another Belphegor is a death metal band from Austria.

There is also, apparently, a Digimon character based on him and he features as a cat in MegaTokyo. So next time your kid shows you that Digimon character you can shout "Be cast out ye demon!" Then use it as an excuse to throw the other toys away...

FYI I also googled "where is the demon belphegor today?" and "do demons get paid overtime?" Got quite a few entertaining links and pictures.

Oh! Oh! Love it. August is Astaroth month. I was born in August which is why I checked. And a good thing too. Started off as a woman and changed to a man and seduces by means of laziness and rationalised philosophy. In his new guise he teaches science and answers every question asked of him.

Interestingly he/she appears in dozens of games from D&D to Final Fantasy.

Found a demon named "Ukobach" who is the inventor of fireworks and the art of frying food! A bacon aficionado I presume.

Another named "Tap" or "Gaap" teaches philosophy, liberal sciences, gives true answers and carries men "speedily" from one nation to another. Pilot maybe? "Hi. My names Gaap. I'll be your pilot today and discuss epistemology while we cruise at 30,000 feet. Your steward will be Ukobach who looks a bit like Golum but with red skin. He'll be handing out complementary bacon strips."

More digging and in amongst names like "Yan-gant-y-tan", "Gomory" and "Marchosias" I found a demon named "Leonard." Yes really. Leonard. "Hi. I'm the demon occupying this kid. Names Leonard."

I'm not making this up...

All in all not too shabby a bunch.

Thursday, 19 April 2012

Ok. I'm seriously pissed off. 4 or 5 Exorcisms a day? In Australia?

You have got to be joking...
But no. 
Read an article in our local rag yesterday about at least one raving loony carrying out exorcisms on the Gold Coast. Thought about storming upstairs and blog a rant right away. Then calmed down and thought "Uh oh. Religious nutters will make a fuss, want me arrested, or beaten up, or claim I'm possessed, or something..." Then I thought, "Wait. What? How do they have the right to free (if totally insane) speech but I don't?" So screw 'em. 

Anyway... Apparently an arch deacon (no less) from Brisbane has been carrying out these bizarre and ludicrous practices to treat possession of demons masquerading as depression and schizophrenia on children as young as 2 years. 

2 years of age? Depression? 2 years old? For f**s sake. This is the 21st century not the 12th.

This complete nutter claims it is "proven" that demonic phenomena mimic epilepsy and that epileptic fits are "authentically demonic in origin."

Wait. What? Proven? PROVEN? For f**s sake. By who? Spaghetti monster? Cthulhu? What? Did some demon pop out of a 2 year old, hand over it's Franklin Mint document of Authenticity (one of a limited edition of only 2,000) saying that, "Yes. I'm really a demon," and then pop back in?

Oh yeah. That's rrrrright... Forgot. My mistake. Invisible friend in the sky. Untouchable by law and science. 

So I guess he might be forgiven (but not by me) for saying this:

'the Gold Coast [can be compared] to Sodom and Gomorrah and say[s] the city "should be pounded with fire and brimstone".'

WT-Flying-F? Worse are the comments below that article. Some people actually agree. I despair. I truly despair. Get me off this rock NASA... Or SpaceX... or any other damn space company please. Mars colony looking good at this stage... Nah. Too close. Fomalhaut via Weyland-Yutani corp maybe.

There are just so much low hanging fruit not to have something to say about this. Like that there "are 4 or 5 exorcisms a day on the Gold Coast." What? So right now while you're reading this, some loony in a robe is shouting "Out! By the power of Christ I command thee!" to a young child... Does that sound like, nice, to you? Why isn't this a federal offence for G... Oh... For WOTAN's sake?

And further they can't even get their terminology right. The word "demon" comes from the latin meaning "spirit" or "divine power." Exactly the same root as "genius." Yes you. You the genius... You're a demon! Be cast out! Kinda explains the church in some ways... No geniuses there.

But I digress...

And wait... Are they Mesopotamian, Arabic, Jewish, Judaic, Islamic, Hindu or Christian demons? What about Lilith? Who's she currently inhabiting? Might be nice to meet. And don't forget that Peter Binsfeld created a "classification" of demons in 1859 which is basically the "7 deadly sins." So did Francesco Maria Guazzo in 1608 which was weird but interesting. And don't forget that several of these so-called demons where angels. Yes. Angels. What a pile of steaming sh... 

I could go on... So tempting...

Anyway, I'm beside myself with fury at the fact that these total frickin' nutters dressing up in robes and seriously harming young children's mental health is not a criminal offence in the 21st century. But it's the church and I'm supposing they have immunity from "righteous indignation" because they have a monopoly on it.

Here's the link:
Not to be out-done (a little old):

Apparently "Being possessed by a demon is terrifying in one's mental and emotional life" the loony says. No sh*t. So is being surrounded by total nut jobs.

Saturday, 14 April 2012

There is no duck in our back yard...

Last weekend I setup an alarm on my iPhone to remind me I have to go and pick up my mother to take her to dialysis. And promptly forgot about it. Now I normally don't need an alarm as I tend to get up at 5:30am to do the interesting news links for people.

This morning was no different. I got up, did the links, wrote a move review and went off to put my makeup on.

Now... Next door has a lot of birds. Parrots and chickens mainly. And in the morning they go into some kind of cluck-orgasma-squak for a while. Bloody nature. Noisy little buggers, but it is nice in a way. So I was in the bathroom and I heard a duck quacking. "Oh," I thought, "They've got a duck now."

I finished applying makeup and started downstairs when I thought "Damn! That duck is going ballistic. Sounds like it's hurt or something. Sh*t! It's in our back yard!" So I ran outside and started searching. No duck. But the damn quacking was so loud.

Then I realised it was inside. Oh no! How the hell did a duck get inside? So I rushed inside and started searching.


The frickin alarm on the iPhone. 11mins of searching and the duck existed on the dining table.

Double doh.

Having said that, I'm going to keep that alarm just to remind myself I'm a dummy.

Oh this is SOOOOO cool

Just saw the Three Stooges trailer.
Laughed my way into weeping with the sheer lunacy of it.
Nyuk Nyuk. Whoooop whooop.
All of the 200 films they did replayed in the present by actors Will Sasso as Curly, Chris Diamantopoulos as Moe and Sean Hayes as Larry.

Frickin' brilliant.
Wanna watch it now!

Here's the link to the three trailers:

Movie Review: "Ra One" (2011)

This is actually a very good movie. Bit slow at the start. After the first 10mins B and I turned to each other, raised eyebrows and both said "Wanna keep watching?"

Glad we did.

It's an Indian sci-fi about a pair of indestructible game characters that enter the "real" world and spread mayhem. Acting solid, storyline frenetic and without dead patches. Loads of humor. Wire work is just fantastic. Mandatory song and dance routines of course, but I actually like them and danced along with one! Filmed in London and Mumbai.

Apparently Boris Johnson had something to do with the London filming... Gotta love that guy. Made politics fun even if it wasn't laughable to begin with.

Watch it through! Yes. Even the credits. Because they have the gag reel and behind the scenes footage. Loved the bit when a boom camera gets smashed to bits by a passing train.

BTW, you'll have to ensure your sub-titles are on because the characters switch between Tamil and English words on a word to word basis.

Thursday, 12 April 2012

Sinatra and Sequel - The dreaded ASCII-8BIT/UTF-8 conundrum

Recently had to create a QnD Sinatra app that connected to mysql via the Sequel gem and made some rather obscene SQL calls and return JSON. Problem is, the underlying connection always seems to return Blobs and ASCII-8BIT binary data. So here's a solution.

I'm not claiming that there are other ways to do it. I just had <30mins to get the app working in production. Here's how I did it:

1st we monkey patch Struct with a to_json() method

class Struct
  def to_map
    map =
    self.members.each { |m| map[m] = self[m] }

  def to_json(*a)

We're going to respond with a bit of JSON, so we ensure there's a handy struct.

payload =, :messages, :value)

We make our connection:

DB = Sequel.mysql(
    :database => 'your_db_name',
    :user => 'user', :password => 'password',
    :host => '', :port => 3306,
    :encoding => 'utf8'

Now here is some nasty SQL:

nasty_sql = "
    select    t1.field1,
    from      db1.table1 as t1
    left join db1.table2 as t2 on t2.someId = t1.someId
    left join db1.table3 as t3 on t3.someId = t2.someId
    left join db1.table4 as t4 on t4.someId = t3.someId
    left join db2.table5 as t5 on t5.someId = t4.someId
    left join db2.table6 as t6 on t6.someId = t5.someId
    where     t1.someField = ?
    and       t2.someField is not null
    and       t2.someField = 1
    and       t2.someField in ('Gonzo','Journalist','Greatest Articles')
    and       t3.someField is not null
    and       t4.someField = 1
    and       t5.someField = ?
    order by  t1.someField, t2.someField"

Ignore the obvious 'why not a stored proc?' and 'crap! change the tables!' responses. Imagine you don't have a choice. And you're running out of time and your manager is staring pointedly at you. You're patching production and you'll be fired if it doesn't work RIGHT NOW.

Hypothetical anyway, as it's an article about how to do it, not why the hell you should do it in the first place.

Sooooo.... Anyway... We have a route:

get '/some/:f1/:f2' do
    result =, [], [])
    DB[nasty_sql, params[:f1], params[:f2]].each do |row|
     result.value << row
  rescue Sequel::DatabaseError => e
    # log it

When we do this, we get a nasty bunch of errors based around the fact that although the underlying connection is UTF-8, we get back blobs or strings as binary data so their encoding is ASCII-8BIT.

So here's how you solve it. First ensure you actually fix the encoding issue on a per-row basis:

get '/some/:f1/:f2' do
    result =, [], [])
    DB[nasty_sql, params[:f1], params[:f2]].each do |row|
     result.value << fix_encoding_issue(row)
  rescue Sequel::DatabaseError => e
    # log it

And add the method:

# This is required because when using raw SQL, the data comes back as a blob.
# The actual data is UTF-8 but because the string is marked as binary it is treated as ASCII-8BIT.
# Thus a row must have all strings coerced to ther actual encoding.
# Also the keys... Just in case...
def fix_encoding_issue(row)
  item =
  row.each_pair do |k, v|
    if v.kind_of? String
      item[k.to_s.force_encoding('UTF-8')] = v.force_encoding('UTF-8')
      item[k.to_s.force_encoding('UTF-8')] = v

And your encoding issues are ameliorated.

Monday, 9 April 2012

Javascript Server Heartbeat

Another snippet of code... I need a function that could check to see if a particular resource was responding in a timely manner.

So I put together a function that made an ajax call (home rolled no libraries as I wanted to keep it small) but that also ran  setTimeout()  so that could set the threshold I wanted for a response 100, 200, 500 2000 milliseconds etc rather than simply having to wait for the request to timeout or respond with an error code.

Either when the ajax returns or the timeout hits a callback is triggered and passed either the ajax response status (200 for good, 404 for not found etc) or a simple  null  value followed by the request object (if not null).

This code is called by a function that specifies a URL to hit, a timeout for getting a response and a callback to send the response to - In my code, the call back is set to update a global scope flag with the pulse value and then uses a timeout to kick the whole process off again in 30 seconds so the web page is not hammering the server.

// Server Heartbeat Checker

function heartbeat(url, ttl, callback) {
    // Confirms active connection to server by custom URL response
    if (!url) {
        url = "";
        // Replace with specific server heartbeat location and query string for cache busting
    if (!ttl) {
        ttl = 1000; // Custom timeout in milliseconds
        // Replace with specific server heartbeat location and query string for cache busting
    // Create the Ajax object
    var ajaxRequest;
            ajaxRequest = new XMLHttpRequest();
    catch (e){
        // Internet Explorer Browsers
            ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
        catch (e) {
                ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
            catch (e){
                // Unable to create
    // Set flag so only one pulse is recorded
    var called = false;
    // Make ajax call
    ajaxRequest.onreadystatechange = function(){
        if(ajaxRequest.readyState == 4){
            if (!called) {
                called = true;
                callback(ajaxRequest.status, ajaxRequest);
    }"GET", url, true);
    // Make ttl timeout call
    var ttlcatch = setTimeout(function(){
        if (!called) {
            called = true;
    }, ttl);

var foo = false;

heartbeat("", 1000, function(pulse){foo = pulse; alert(pulse);} )

Book Review: "Free to Choose" by Milton Friedman

Hmm. I still have my battered copy I bought in 1974.
At the time I read it completely and believed every word.

Personal Viewpoint ON!

Right now I'm pretty much in agreement, but have noticed that age or experience has enabled me to read between the lines and see the things that get ignored or glossed over. When I started reading it I had in mind that I would have 1 word, really a number, that would sum up my feelings:


But it appears that is not really the case. Most academics and economists mainly put the blame for the process on NOT following what Friedman professes. In fact Bernanke was a follower of Friedman and it appears he did nothing at the time when the Fed could have done the things Friedman proposed to ameliorate the crisis.

And when I finished the book I had this uncanny feeling I'd read all this before. So I dug around in my 'old books' boxes and found "Planning for Freedom" by Ludwig von Mises written in 1952. The same subjects. The same suggested solutions. Virtually the same words. Interesting. Must see if I can get a copy of that Hayek book and see if the same was true in the late 1800's.

Now. Could we do some of the things suggested such as Education Vouchers, scrapping masses of legislation, scrapping the lunatic programs that work at cross-purposes, and all the other things today? I am pretty sure we could have in 1974. I'm not so sure now despite some attempts in the US.

My reasoning can best be summed up by Friedman himself when he discusses Hong Kong. When the colony received an influx of refugees after Mao came to power, they were energetic, determined and believed in the value of the individual. Later came the second wave of refugees who had lived under the communist regime for decades. And they were lethargic, rigid, unwilling to take risks and needed to be told what to do in detail.

The parallels to today are, to my eyes, identical. In 1974 there was still a sense that you could just get on with business, not be bugged by endless reams of rules and paperwork and you had the self-interest and responsibility to take the hits with the goals. Today... Not so sure. People have been living in a bureaucratic, mixed economy their whole lives. I could point to the London riots as the result of that kind of living. Take away the rules, let people run free and some will riot and some will build the kind of financial edifices that crashed the world in 2008.

The key seems to be self responsibility and rational self interest that appears to be lacking in todays society. And I would go further and suggest that it would take generations of education and patient stripping of powers from government before the new generations regain what we had when we were young. Who would have the patience, the lawyers and the sheer bloody-mindedness to do it? I tend to feel that's unlikely to happen soon. Rats.

Now one thing is interesting. I recently watched the documentary "Inside Job." Not much different from the documentary "The Men who Crashed the World," but I noticed the details about the aftermath. Almost all the players are still present. All the financial processes are still there. In fact the only thing that's changed is that they're again getting bolder. So we may see another GFC in the next few years. And that's a good thing.

Maybe it'll rattle enough cages to get people to change things. Maybe they'll demand that their bank actually hold their mortgage instead of selling it on to end up in a anonymous CDO. Maybe they'll start telling their governments to get their sticky fingers out of our business. Maybe they'll start demanding that special interest groups be limited to a total federal budget.

To use Ludwig von Mises own words:
"What is needed is not to throw dust in the eyes of the workers, but to convince them. They themselves must realize that the traditional [union] methods do not serve their interests. They themselves must abandon of their own accord policies that harm both them and all other people."
Maybe. We'll see.

Sunday, 8 April 2012

CSV handling in Javascript

The other day I was making modifications to a front end app that displayed CSV content in a text box, I really wanted to make this look a little nicer so I started to try and parse the CSV in a meaningful way to build a table and apply some styles...

My first attempts involved using regular expressions and took only a few minutes to write and run, the problem was that the source of the CSVs could not be trusted to put together "safe" CSV file, the format changed from call to call, some values were quoted others were not... it turned into a bugger real fast.

So I sat down and wrote a somewhat more stable CSV parser in javascript to make my life a little easier.

Below is the simple version (I have since added other safety checks and error handling for malformed CSV files) Other changes I plan to make include:

  • Optional escape character
  • Support for double quote escaping
  • Whitespace around delimiter support
  • Option to specify a none comma delimiter

While stepping through the string 1 char at a time may seem slow and cumbersome it really isn't. I have run this on 30k CSV files and it processes in just over a hundred milliseconds - there may be a lot of operations but they are all very simple.

function csvSplit(csv){
  csv = csv.replace(/\r\n/g,'\n')
  var rows = csv.split("\n");
  for (var i=0; i<rows.length; i++){
    var row = rows[i];
    rows[i] = new Array();
    var state = '';
    var col = '';
    for (var j=0; j<row.length; j++){
      var char = row.charAt(j);
      if (j < row.length) {
        var next = row.charAt(j+1);
      else {
        var next = '';
      if (col=='') {
        if (char==',') { // empty value
          rows[i][rows[i].length] = col;
        if (char=='"') { // start of double quote value
          if (next=='"') {
            rows[i][rows[i].length] = col;
          else {
            state = '"';
        if (char=='\'') { // start of single quote value
          if (next=='\'') {
            rows[i][rows[i].length] = col;
          else { 
            state = '\'';
        else { // start of normal value
          if (char=='\\') {
            col += next;
          else {
            col += char;
      else { // in value processing
        if (state=='"') {
          if (char=='\\') {
            col += next;
          if (char=='"') {
            rows[i][rows[i].length] = col;
            col = '';
            if (next==',') {
          else {
            col += char;
        if (state=='\'') {
          if (char=='\\') {
            col += next;
          if (char=='\'') {
            rows[i][rows[i].length] = col;
            col = '';
            if (next==',') {
          else {
            col += char;
        else {
          if (char=='\\') {
            col += next;
          if (char==',') {
            rows[i][rows[i].length] = col;
            col = '';
            col += char;
    rows[i][rows[i].length] = col;
  return rows;

mydata = csvSplit(get_data())

You can think of this function as returning an array lines and each line is a array of column values.

The regular expression version (runs well but is difficult to extend to cope with certain error conditions) achieves the same goal by using entity encoding to protect special characters then using those characters to replace tokens (specifically the start and stop quotes) so that internal commas can be correctly escaped.

function csvSplit(csv){
  csv = csv.replace(/\r\n/g,'\n')
  var rows = csv.split("\n");
  for (var i=0; i<rows.length; i++){
    var row = rows[i];
    rows[i] = new Array();
    row = row.replace(/&/g, "&amp;");
    row = row.replace(/\\\\/g, "&#92;");
    row = row.replace(/\\"/g, "&quot;");
    row = row.replace(/\\'/g, "&#39;");
    row = row.replace(/\\,/g, "&#44;");
    row = row.replace(/@/g, "&#64;");
    row = row.replace(/\?/g, "&#63;");
    row = row.replace(/"([^"]*)"/g, "@$1\?");
    while (row.match(/@([^\?]*),([^\?]*)\?/)){
      row = row.replace(/@([^\?]*),([^\?]*)\?/g, "@$1&#44;$2?");
    row = row.replace(/[\?@]/g, "");
    row = row.replace(/\'([^\']*)\'/g, "@$1\?");
    while (row.match(/@([^\?]*),([^\?]*)\?/)){
      row = row.replace(/@([^\?]*),([^\?]*)\?/g, "@$1&#44;$2?");
    row = row.replace(/[\?@]/g, "");
    row = row.split(",")
    for (var j=0; j<row.length; j++){
      col = row[j];
      col = col.replace(/&#63;/g, "\?");
      col = col.replace(/&#64;/g, "@");
      col = col.replace(/&#44;/g, ",");
      col = col.replace(/&#39;/g, '\'');
      col = col.replace(/&quot;/g, '\"');
      col = col.replace(/&#92;/g, '\\');
      col = col.replace(/&amp;/g, "&");
    rows[i] = row;
  return rows;

Friday, 6 April 2012

Book Review: "Why I am not a Christian" by Bertrand Russell

I always think it is a good idea to go back and re-read books you bought and read in your youth.
This is one of those times.

I picked up my copy in 1982 and loved it then and find no reason to change my mind.

Just to be clear... This is a series of essays by the great man over many decades that cover a range of topics and not just the title. The last chapter covers the un-frickin-believable court case surrounding his potential appointment to a college in New York.

In any case, here is a list of the essays to show the scope of the discussions:

Why I am not a Christian (1927)
Has Religion Made Useful Contributions to Civilisation? (1930)
What I believe (1925)
Do we survive death? (1936)
Seems, Madam? Nay, it is (1899)
On Catholic and Protestant Sceptics (1928)
Life in the Middle Ages (1925)
The Fate of Thomas Paine (1934)
Nice People (1931)
The New Generation (1930)
Our Sexual Ethics (1936)
Freedom and the Colleges (1940)
The Existence of God (1948)
Can Religion Cure Our Troubles? (1954)
Religion and Morals (1952)

My favourite was, and still is, "Nice People." A fantastically funny, biting and sarcastic rant about what we would today call "Moral Busybodies." Peppered with quotes that make you laugh out loud. When you think that it was written in 1931 it is startling to note that it is just as applicable today as then. Thus showing the timelessness of his writings.

RIP 1970. For more details:

Also don't forget that a *small* selection of his work is available on Project Gutenberg:

Thursday, 5 April 2012

Some news - sickness for K

Hmm. Where do I start...

Some time ago, about 5 weeks I guess, I contracted a quite bad chest infection. Horrible thing whereby I was coughing up enough rubber to create a spare tire for our car. Worst thing was that I was unable to take any time off due to new starters, work load and other sundry startup issues. So made worse by frickin' air-con and hot-cool cycles.

In any case after 10 or so days it faded. But didn't disappear. I had obviously got a secondary infection in my chest that just would not shift. So each morning and evening I had these coughing attacks. Bad ones. On your knees wishing the world would end ones. Thought I would have an aneurysm some days.

Anyway, I decided to enlist modern medicine yesterday. None of this new-age greeny crap for me. So I went to the doctor about TWO things. 1st thing was that I had apparently I had a feedback loop going on. Coughing and wheezing generating a asthmatic response, generating a coughing reflex generating an asthmatic response... Recursion I hate thy name.

So the MD (who is Iranian BTW not that that means anything) prescribed antibiotics and a puffer to knock both out the symptoms out of their groove. Cool. Seems to be working.

The 2nd thing is that three days ago I was struck by a massive set of waves of pain in my... Er... "nether" regions. Frickin' painful. Couldn't sit down. Nearest thing I could suggest for the male audience is having some b*stard knee you randomly every 5 to 10 minutes 24 hours a day. Yes. Even at night.

Not nice.

And not conducive to working out how to use embedded Jetty to run Sinatra instances. Very, very distracting to be 'kneed' on a regular basis while in the middle of a sentence. Very dramatic but not exactly professional. Squeaky voice, cross eyed look and white face sudden but unavoidable.

Anyway, he wanted me to have an ultrasound to try to figure out what the problem was. So today I went off and got it done. $400. What? Sheesh. Anyway, turns out I have a MINOR herniation. Frickin' minor? If that's what a minor herniation feels like I am willing to extend every courtesy to people who have a major herniation. So it's most likely that my morning or evening coughing fits caused the problem.

Dunno the results yet, but it was waaaay cool to have a Ukrainian do the Ultrasound and even better to find out that they email all the results to my MD minutes after the test! Cool. I even got to say "спасибо хорошо" to the guy. Haven't got a panicked call from the surgery so I'm presuming it's all just peachy. Got a set of films of the ultrasound which B and I immediately looked at using a light box. Hmm. Two small cysts on my keft kidney. Sigh. I'm 56. So it's not a major drama.

Life goes on. And on. And on.
Hopefully that is.

Wednesday, 4 April 2012

A new business model for the content industry. (By B)

Hey content industry!

Yes you Sony, Warner, Disney, Universal and ALL the others...

I've got a new model for content sales that will make your life easier and make you more money... Ready? Here goes:

Step 1) Let go of control.

Thats it.

Yes, it really is that simple.

The current problems in the content industry all flow from the attempt to maintain complete control - the DRM systems that specify how often a bit of video or music can even be played are proof of that. If some content providers had their way you would not be able to buy a DVD or a CD you'd only ever be able to rent them and you'd have to provide photo ID and a deposit to do even that.

But it's counter productive.

For an industry to grow (and the content industry has been growing, don't let the fear mongers fool you) the level of consumption needs to increase - so it needs to get easier not harder.

The enforcement of copyright and DRM is just hampering consumption and the industry itself is only maintaining it's position because popular music artists get lured to it with promises of big contracts and promotion, and new and popular video productions need investment and distribution deals.

But look at youtube and you'll star to see the future of content - free video podcasts with increasingly professional production and integrated advertising or user subscription models for regular targeted content.

So why is the content industry (especially the music industry) so mad on maintaining control?

2 words: Price Pointing

The content industry thinks that it's best way to make money is to control the price, something they cant do if they dont have an iron grip on distribution control.

The truth is they DON'T have an iron grip on distribution, they dont even have a marsh mellow grip on it. Most music consumer in the world is done so via piracy and video is rapidly following. Many young people dont even realise that pirating music is illegal.

So the attempt control distribution is just making it harder to get and the result is that uncontrolled music gets a disproportionate slice of the consumer attention pie.

As was recently demonstrated by Paul Heald the enforcement of copyright actually has a negative impact on both the rates of consumption and the income earned from original works:
(The video is long so get a cup of coffee first)

The growth in music and video piracy has proven that when distribution is relaxed consumption skyrockets.

Setting the dogs of war (RIAA and MPAA legal teams) onto the pirates doesn't actually help (watch strict P2P laws in France failing to increase regular sales) because you are reducing consumption - the exact opposite of what a growing industry wants to do.

So the logical thing to do is relax.

Let go of control.

Allow the music to be easily distributed at price points relative to the level of demand rather than a flat fee for back catalog work.

If the content industry developed a solid way for the pricing to self regulate to demand, then they would find the big concerns of piracy go away. They would make more money while expending less overhead in "protecting" their assets, and they would ride the wave of the migration from a physical to a virtual economy.

The truth is that the entire pricing model for content is outdated. Digital distribution has changed the market forever and there is no going back to the level of control offered when the content was nearly impossible to duplicate or steal.

Right now the content industry is throwing all it's eggs into the "subscription" basket, because this model gives projections for consistent recurring revenue.

Yeah, right... the mobile phone industry thought that 10 years ago too...

They have had to learn the hard way that people prefer more flexible pay per use models rather than committing to a life long tax - hence the growth of prepay accounts. Subscription ingages more people and make it easier to pay but the price control is still in the hands of the labels and not representative of the consumption patterns of the users

The content industry will eventually see the same light as the mobile industry. Of course, at this rate it's going to take them another 10 years.

Tuesday, 3 April 2012

My love of board gaming rekindled... (By B)

I have always loved board games and was lucky enough to find a geek godess who also a shameful history of board game abuse...

So it's no wonder that I hate Wil Wheaton.

Why is that? (you say) What could he have done to incur your wrath?

He is reminding me of everything I am missing since I stopped playing the bloody things.

I work long hours and have settled into the nice comfortable habit of getting home eating in silence and then watching tv for several hours before falling into a fitful sleep and beginning the process all over again.

But now "Wil" has started a new video series called TableTop reminding me of how much I love to play games and that actually talking to and engaging with my wife is one of the greatest pleasures in my life... the bastard.

But I refuse to be alone in my miserable, tortured joy and contentment!

I insist that you all suffer as I have suffered and watch the video that may just remind of how you used to enjoy yourself before you discovered mind numbing television and alcohol.

Book Review: "A Universe From Nothing" by Lawrence M. Kraus

Despite praise by Sir Martin Rees.
Liked the Afterword by Richard Dawkins though.
Would have loved to read the foreword by Christopher Hitchens, but he died before finishing it. A real shame.

Anyway, this is another popular book on cosmology and the quantum world. If you're a lay person then it would indeed be "A thrilling introduction to the current state of cosmology" and would fairly deserve the praise. For me, it was very introductory and quite un-thrilling. Sheesh I'm getting old. And jaded.

Nothing I haven't read before and Nothing is better described in Brian Cox's or Brian Greene's books. His visualization of an expanding, possibly quilted, universe is useful, but I preferred Greene's swiss cheese approach better.

Still looking for the book that details how magnetic flux works for real. Like Cox's book illuminated the physical 'HOW' that makes electrons more probable in atomic shells.

Re-reading "Why I am not a Christian" by Bertrand Russell. Old as I am and still as good.

This is an ex-iPhone... (By B)

I saw two guys the other day arguing over a iPhone.

The first bloke had obviously sold his old iPhone to a mate, but may have misrepresented the item in question. The whole discussion put me in mind of another dispute over "less than perfect" merchandise...

With sincere apologies to Monty Python and their fans everywhere, here is my version of their conversation:
Buyer: I wish to make register a complaint!

Seller: I'm having my lunch.

Buyer: Never mind that, I wish to complain about this iPhone what I bought from you not one hour ago.

Seller: Oh yeah? The iPhone 4s? Whats wrong with it?

Buyer: I'll tell you what's wrong with it mate, it's bricked. Thats what wrong with it!

Seller: No, no, it um... just needs charging.

Buyer: Look mate, I know a bricked phone when I see one and I'm looking at one right now.

Seller: No, no it's not bricked, it just needs charging! Beautiful phone that isn't it? metallic blue case and everything..

Buyer: The case don't enter into it. It's not a phone anymore it's a paper weight.

Seller: Nooooo, no, no, it just needs to charge up!

Buyer: Alright then, if it just needs charging I'll power it up [plugs iphone into usb port and shouts at phone] "Hello Siri!, I've got a questions for you!"

Seller: [in a squeaky voice] "No, I'm still charging." -  There it worked!

Buyer: No it didn't that was you putting on a female voice

Seller: I never!

Buyer: Yes you did!

Seller: I never said a thing!

Buyer: Alright... [pressing the power button over and over while yelling a the phone] "HELLO SIRI, TESTING, TESTING, I WISH TO SET AN ALARM CALL?"
[Stares at the blank screen for several minutes]
Now that is what I call a bricked phone.

Seller: No it's in standby mode.


Seller: Yeah! It went into standby just as you were talking to it. The 4s goes into standby very quickly mate.

Buyer: Um... now look... Now look mate, I've definitely had enough of this. This phone is definitely bricked, and when I purchased it not half an hour ago you assured me that it's total lack of response was due to the battery being completely drained following an abnormally prolonged ringtone.

Seller: Well, it's probably not compatible with your system.

Buyer: Compatible with my system? It's a bloody mac of course it's compatible.

Seller: Nah.. the iPhone 4s works better with windows...

Buyer: Look, I took the liberty of examining that phone when I got it home, and I found the only reason the apple logo showed up on the screen at all was that it had been painted there.

Seller: Well of course! I had to paint over the screen... the new 4s retina display is so bright if I hadn't painted over the screen the screen you'd take one look at it and VOOM, it would burn out your eyes.

Buyer: Burn out my eyes? this thing wouldn't VOOM my eyes if you put four million volts through it! It's bricked.

Seller: No, It's charging!

Buyer: It's not charging, it's conked out. This phone is no more! It has ceased to call! It's bricked, buggered, burnt out, belly up, and permanently off the hook! It's warranty has been voided! It's shut down the for the last time! It's gone to meet Steve Jobs in the great Apple store in the sky! If you hadn't painted over the screen and boxed it back up, it would be 4.8 ounces of very pretty landfill! THIS IS AN EX IPHONE!!

Seller: [pause] Well I'd better give you your money back then...

To be honest the discussion did not go exactly like that, but it was pretty bloody close in parts...

Monday, 2 April 2012

Making A Bug-Out-Bag or Zombie Adventure Bag! (By B)

This is my guide on how to prepare a Zombie Adventure Bag

(I call it an "Adventure Bag" because people take the word "Apocalypse" far too seriously :)

For those whose still dont know what I'm talking about it's also called a "go bag", "bug out bag" or a "disaster bag", think of it as an emergency kit designed to be grabbed if you ever have to leave the house in a hurry.

I like to use the Zombie Apocalypse Adventure as the premis for building mine because it helps to think of the worst case scenario when planning these things. Also when I used to say I was preparing a disaster bag people would get all funny and demand that I justify why I would need one, but if I call it a "zombie kit" everyone accepts it explanation without further question (that probably says a lot about my friends and family...)

Anyway... I hope I never need mine, but I live in a part of the country known for the occasional flood, fire and power failure, and I dont care where you live if the house next to yours catches fire and you have to spend a night or two at a hotel or friends place, a go bag is a great comfort.

Before I start I want to point out there there are multiple websites out there covering making a full on "survival kit" and some of the stuff can be hard to come by in Australia (try buying real military MREs in this country) - so I'm focussing on more general stuff - nearly everything I list in my bag can be found by shopping at a supermarket, a large hardware store, or (if you want to keep the costs down even further) a discount store (Crazy Clarks, The Reject Shop, whatever).

My own bag has cost me very little because I did not buy everything for it all at once. I made the list and then purchased things when I saw them discounted or on special.

Another thing to keep in mind is that the list below looks HUGE but it's not, most of the things are quite small and the bag is still quite light.

So here is the list of the items I put into my Zombie Adventure Bag!

  1. The Bag
    Back to school specials are great for getting these, mine was originally $50 discounted to $15. Make sure it has strong seams and easy moving zips, it will need to take a bit of weight. Also side and front pockets are a plus for the smaller items.
    Get some of those key ring metal rings or some little carabina spring link camping clips to put onto the zip tabs, that will help you hang things off the bag if needed.
  2. Clothes (enough for 3 days)
    Basically this means underwear, t-shirts, and socks. 3 lots of each. They dont have to be new so just go through the stuff you dont wear any more. Avoid anything with holes or thats about to fall apart. With the t-shirts, it's also worth getting slightly larger ones - they can fit more people and lose clothing is more comfortable to sleep in.
    Best to pack clothes in zip lock bags. Fold them neatly and push all the air out before you seal the zip.
    In a cold climate clothes should also include something warm like a track suit top and bottoms but I live in Oz and while it rains a lot the weather is pretty temperate most of the time.
  3. Work Gloves
    Hardware store or gardening section of supermarket. Make sure these fit, it's tempting just to buy the first cheap set you see but ill fitting work gloves cause all kinds of trouble - You'll use these if you even have to move something dirty or with sharp edges (like changing a tire, carrying boxes, sorting through debris, etc) - Also good for handling hot things so avoid or rubber or plastic.

  4. Wet wipes
    Any supermarket or petrol station. Just plain handy to have when you want to make yourself semi presentable or clean yourself up after eating, small bag will do fine. Remember the bag is for emergency use not a long term thing.
  5. Hand Sanitiser
    You can get this almost anywhere, you only want a small pocket size bottle of the stuff. In any emergency you're going to be bussled together with other people and being able to sterilise your hands before you eat or attempt to treat any cuts or injuries just makes good sense.
  6. First Aid Kit
    Hardware stores, super markets, petrol stations, camping stores. I have a St John's "Patch n go" kit ($20), it's the only thing I paid full normal price for because you cant afford to skimp on this - its good for minor injuries, cuts, sprains, CPR etc. It also came with a thermal blanket (see below) the uses of a first aid kit should be obvious but unless you really know what you're doing buy one pre-made.
  7. Latex Gloves
    You'll normally find a pair of these in your first aid kit if it's any good, I like to pack a few extra. Available in small packs from chemists but cheaper at supermarkets in cleaning section. Lots of uses from actually protecting your hands, to using them to tie something up, to blowing them up to use as balloons to distract crying children.
  8. Rope
    Hardware Store. Avoid "clothes line" and dont get cotton, get a good 10 to 15 m of strong (5mm to 8mm) polypropylene rope if you can. Cotten rope takes up water and wet rope is heavy and will shred your hands (also impossible to undo wet knots). Remember not too thin (may as well be string) and not too thick or you have too much to carry.
    You may also or alternatively carry a tension strap - this is a strap of nylon material with a clip on one end - great for securing things to trailers (and making splints). Get one with a lashing strength of about 100 kgs.
    If you dont get rope make sure you have a decent Cord.
  9. Cord or String
    Super useful, if you have a good rope you may choose to get normal string and leave it at that, I prefer to get a decent utility cord 2 to 3mm thick and about 10 to 20 meters long. I like that thickness cord because it will work quite nicely as shoe or boot lace if needed - normal household string will not.
  10. Tools
    Being a geek I have a lot of "multi-tools" they are basically a folding pair of pliers with pocket knife attachements. You can get decent quality ones from hardware stores or camping stores for about $10 to $20 (cheaper if you wait for sales). Make sure yours has a knife blade, philips head and flat head screwdriver and is a needle nose pliers.
    You can actually spend a lot on one of these ($150 and up if you want) and if you going to use it often I'd say to go the extra yard, but in reality you will probably only need to use it a few times so a cheaper $20 one will suit your needs.
    You may also consider a knife here (many people think of it as a tool) but while a big knife sounds good in theory it can also cause problems. Most events forcing someone out of their home will involve emergency service staff or police who may not respond well to you having a 12 inch hunting blade sticking out of your bag. Unless you're planning to butcher something larger than a rabbit a 3 to 4 inch pocketknife blade will be all you need.
  11. Torch
    Hardware store, super market, gadget shop. I actually pack two in my bag, a battery powered 9 LED torch (super bright and very useful) and a windup torch/radio/phone charger I bought off eBay. The battery torch was $5 (I include spare batteries just in case) and wind ups range from about $1.50 for a supper cheap key ring one (dont bother) to between $5 to $50 dollars for a higher quality one (depending on size and features like solar panels, a radio, water resistance, phone charger etc).
    If you get one as a charger make sure you have the right cables packed with it. The output will need to be almost 5v to charge an iPhone or other high end smart phone (and while it can be done you will get tired doing it) so check before you buy if thats what you're going to use it for.
  12. Duct Tape
    Available at the hardware store, supermarket, and discount store. There is almost nothing you cant fix with Duct tape. Rips in clothing, broken shoes, even broken windows (with a little extra plastic).
    Make sure it has high adhesive. Make sure it is water proof/resistant. Make sure it is a "cloth tape". Keep it in a zip lock bag to stop it sticking to everything. You'll want at least 10 meters if you cant find a roll that size (or it takes up too much room) then cut a 15 cm (5 - 6 inches) section of cardboard and transfer the tape from the roll to the cardboard. If you are neat you'll find this every bit as useful as the original roll, but much easier to pack.
  13. Plastic Sheet or Tarp
    I got lucky here as we had a new couch delivered and the cushions came in HUGE heavy duty plastic bags. I just lay them flat and rolled them up. If you dont have that kind of luck then plastic drop sheets from the hardware store should be considered.
    Make sure the plastic is clear, that way you can use to fix broken windows in a car etc. This can be useful for wrapping things up, with a bit of the cord from your kit you can make an emergency tent, folded double it can be used as a ground sheet to stop you from getting wet if you have to sleep on the ground, etc.
  14. Thermo Blanket
    You'll recognise these, they are the silver foil blankets that paramedics use when people are going into shock. They cost about $5 at camping stores (I got mine in my first aid kit mentioned above).
    Keep in mind they will keep in 70% of the heat generated by a human body so they can be surprisingly warm even when it's freezing cold. However they keep in 100% of the moisture. Sleep under one and you WILL wake up soaking wet. It's not just sweat, you're body "breathes" out moisture all the time and these blankets will catch it so be aware - emergency use only.
  15. Survival Book
    You're local book store will have several, your local book discount store will probably have some in from time to time at a much lower price. Make sure it has a good first aid section, covering cuts, sprains, broken bones, burns, insect/snake bites and shock. Other topics like shelter, camp craft, navigation, etc are your next priority - the sections on what plants to eat, hunting trapping etc are less important for the 3 days the kit is meant to cover. Take the time to confirm that it's information is relevant to your hemisphere (US survival books dont always offer the best advice for Australian conditions and visa versa).
    I have a copy of the "SAS Survival Guide" (Collins Gem pocket version). It retails for a little over $10 but again discount sales are great and I got mine for $4. It's first aid is great, It's shelter and navigation sections are also well written and easy to understand. It's a tiny book and as useful for something to read as it is as essential reference.
    The last bit of advice I would give regarding the book is to read it NOW before you pack it away - you dont have to take notes and become an expert but give it a solid once over, that way when something happens, you'll think "Oh, I remember the book has something about that..."
    Note: If you need glasses to read then it's also worth while picking up a bookmark magnifier to make sure you'll be able to read it if your glasses are lost, broken or left behind in the rush.
  16. Deck of cards
    Sounds silly but in any disaster it's easy to get bored. Power gone out? Stuck in an evac shelter waiting for flood waters to go down? Stuck in a car because the road has been closed by bush fire? a deck of cards can be used to entertain 1 or 4 people equally. Waiting can be more painful than any minor injury and in fact reducing the anxiety of a person will reduce the amount of pain they feel from any actual injury they may have.
    In a shared evacuation shelter you can even trade them for other items.
    Take the time to learn to learn at least one type of solitaire and two or three group games, snap gets boring real quick and teaching each other how to play a card game is a great and engaging diversion.
  17. Pen/Pencil and Paper
    A simple note book and some thing to write with, I prefer a small multi-color pen because you get 4 lots of ink in something really small - in addition I also pack a Sharpie or other waterproof marker.
    Keep this in one of the pockets o the bag you can get to easily as it's important to be able to jot down things like emergency numbers, names of people giving you instructions etc. if you are being evacuated or leaving because of a house fire or disaster, it's also a good idea to keep a journal of events and times.
  18. Glow sticks
    Most survival kits recommend flares, but that is rather dated technology now as they have nearly all been replaced with Glow sticks good for about 30 minutes (they still call them flares though). You have 3 options here, you can buy them from a camping store, automotive shop, or you can buy cheap party glow sticks from a discount store (or the party section at the supermarket).
    Even if you buy the full-on road flares I would recommend getting some of the cheap party sticks as well, they dont burn as bright but tend to last a bit longer, come in different colours (handy if you have multiple member in your group), and have little straps to hang them around peoples necks or wrists. Expect to pay between $0.50 to $2 for cheap glow sticks and about $2 to $5 for road flares unless you buy them in bulk.
    Dont bother packing too many, half a dozen should be plenty in each bag.
  19. Face masks
    Easy to get at a chemist or supermarket. Face masks are a recent addition to kits like this and more to do with recent bird flu and other epidemic scares than anything else, however they still make good sense. During and after a bush fire there are large amounts of ash in the air, and during and after a flood you can find all manner of unpleasant things that have rotted. There are wide range of things you might not want to be breathing even if it's just because you are stuck on trasport and done want to share you cough with others.
  20. Toiletries
    Available from a chemist or supermarket, you can get some specialised stuff from camping stores if you prefer. Another alternative is to wait until you have to travel, many hotels offer complimentary toiletreis and unlike the mini bar they dont charge for them. If you do buy them the recent paranoia about air travel security is on your side because now everyone stocks mini bottles below the 150ml limit set by airline security.
    Here is the list of things to consider:
    1. Toothpaste - small tube no bigger than 50ml
    2. Tooth brush - get one that suites you, soft or hard bristles as you prefer
    3. Tissues - several small packets
    4. Soap - the cheap sort that does not make too many bubbles because it needs less water to rinse off
    5. Toilet paper - dont pack a whole role, cut a square of cardboard about the same width as the roll and transfer on enough for 6 visits then seal in a zip lock bag.
    6. Shampoo/conditioner - as mentioned just get a set of small travel bottles from the shop or "borrow" them from a hotel.
    7. Hair band - if you have long hair remember to take a few hair elastics even if you dont normally wear them.
    8. Comb - quality counts, cheap combs are often sharp and can cut/irritate the scalp so get a good one.
    9. Nail file - metal if you must, but multiple little cardboard ones are easier and more useful.
    10. Flannel or hand towel - doesn't need to be big but very useful for keeping clean.
    11. Anything else - you know your own needs better than anyone else, look over the items you use over the course of a month and include anything you dont consider optional.
  21. Mirror
    Glass, not plastic. You can get these from a chemist, supermarket or discount store, basically all you need to look for is a small makeup mirror. You do want to make sure it has a nice case that will afford it some protection. The reason I say glass is that plastic and metal mirrors do not reflect light as cleanly or clearly.
    Most survival kits will point out that a mirror is useful as a tool for signalling but it also lets you see under things and around corners, and of course it's most obvious use is that it lets you see yourself.
  22. Cutlery
    Where I mention food down below I suggest food that does not need cutlery, but that isn't going to be the only food you're going to have access to. Having one or two small sets of plastic cutlery in your kit is just very useful if you and they take up next to no space.
    This is another of the optional items I find them useful, in past situations it's been handy to not have to share cutlery, in addition a knife, fork, and spoon you use and throw away can be useful for purposes than eating.
  23. Sewing Kit
    Again I think this one is obvious, a missing button be very annoying, as can a hole in your rucksack... You can get small sewing kits at any supermarket, or if you're very cheap again you might find one in the next hotel you stay in. If you want to make your own it's almost as simple, 3 or 4 needles (larger the better) about 5 meters of strong cotton, a few buttons and hand full of safety pins (may already have some in your first aid kit).
  24. Poncho
    Keep your eyes open and you'll see these things for about $2 each at supermarkets, sporting events, and camping stores. A one size fits all emergency Poncho about the size of a wallet. This is perfect because unlike an umbrella it will genuinely keep you dray and can even be used to cover the pack on your back as well.
  25. A phone (yes you heard me)
    You're going to think me crazy but I actually have a landline handset in my kit. When traveling around it is amazing how often you will see a phone socket without a phone in it. My phone was bought at a toy store - it's a tiny thing (not much bigger than a match box) that came with a mini PDA (I threw that away), I got it in a clearance sale for about $5 and it works as a normal landline. Discount stores often stock super cheap handsets and if you have the space it can be useful in an emergency.
    This is one of the optional items for the bag, I found one that doesn't take up space so for me it was an easy choice.
  26. USB Key/docs
    Assuming that your kit is intended to cover those events that may drag you from your house a cheap USB key with some scans of important documents on it is a great idea - all you will need is access to a computer and you can pull up your birth certificate, drivers license, etc. Just be careful that this little identity theft kit is secure and does not fall into the wrong hands.
    I use an app called TrueCrypt that runs on Windows, Mac, and Linux - TrueCrypt creates an encrypted file that mounts like a harddrive. You can not only store the file but versions of the program to suit each operating system all on the one USB stick.
  27. Food
    This is an interesting topic. It is possible to buy MRE's (military meals ready to eat) but they are hard to get in Australia and never very cheap. The thing people often try is camping food but I recommend against this because it is nearly always dehydrated and needs water and cooking/preparation.
    You want to go for about 1500 calories per day. This is a little low but well above the 1200 minimum that most dieticians recommend. 2000 is closer to a comfortable calorie intake, but remember EMERGENCY, this is only to cover you for 3 days, just enough time to find better resources for longer term survival.
    My best advice is to go to a health food store (or health section in a supermarket) and look at the "high protein low carb" food bars. Get the bigger ones with the higher calorie count (remember you are not trying to lose weight), also make sure they are wrapped in mylar (the silvery/foil plastic). Ok, so they dont taste great, but again we are talking emergency conditions here. These are a good ration option for a number of reasons
    1. They are ready to eat.
    2. Once opened you dont have to eat it all, the left overs will wait and not go off quickly.
    3. They are already parcelled into small meal sized chunks.
    4. They dont require water (but you will get thirsty eating one so have water handy).
    5. The "high protein - low carb" combo actually makes them likely to surpass an appetite rather than stimulate one like anything with sugar or hollow carbs will do.
    6. They give slow release of energy so no quick sugar highs followed by the inevitable crash (and no hyper kids).
    7. They tend to have a long shelf life (always check before buying as you dont know how long they have been in the store).
    8. 1 for breakfast, 1 for lunch, and 2 for dinner, means you only have to carry 12 bars for 3 days full rations in the absence of any other food.
    9. It's easy to get picky people (kids) to eat something that looks like a candy bar.
  28. Water
    Water is one of those things that can rapidly get expensive. To buy water suitable for long term storage will cost you a lot. It needs to be foil sealed, sterile, and in small portions for rationing. The good stuff has a 5 year shelf live and will set you back $15 to $20 for 3 litres. A much cheaper solution is to simply keep a few unopened bottles of water next to your bag and cycle them regularly (remember even bottled water from the shops has a used by date).
    How much water to take is a MUCH more complex question and one that I (like most writers on this topic) will not touch with a barge pole - everyones water needs are different, some people will say 3 litres a day, most days if I drank that much I'd be sick. make sure you have at least that much though (in 3 separate bottles if possible) as it may be a day or so before you can find other sources.
    In addition try to make sure you have some water purification tablets (camping store or chemist) to make sure you can trust the water you do find.
  29. Drink
    This is of course in addition to water, and obviously something to leave out of a kids bag. 2 little minibar bottles of your favourite poison - I suggest scotch, vodka, or brandy. This is something you could use to make something sterile, but the real reason is that being displaced from your home even for a day for any reason can be unsettling and being able to share a few sips of brandy can be a great comfort even if you dont drink much normally.

I've left out things like a compass because for most city dwellers this is never going to be an issue but feel free to through one in if you like.

I've already mentioned zip lock bags, they are very useful for this sort of thing - they keep things separate and make sure small parts dont get lost. They also mean if anything leaks it wont ruin the rest of the bag. Finally they are just very useful in their own right so throw a couple of extras in when your done.

Note: When making up a bag for children you can focus on the clothes, toiletries, food, water, and a torch.

Thats it!

You are now prepared for the Zombie Adventure! ...or the next door neighbours gas leak, whatever happens first. 

Sunday, 1 April 2012

Axis vs Allies! War at Sea!

I'm a bit of a game nut. We have Carcassonne, Monopoly and Trivial Pursuit, but we also have Zombies! and Killer Bunnies. And since I was war gaming in the 70's I have tons of old S&T games as well as stalwarts like Panzer Blitz, Korsun Pocket and Fire in the East.

The latter is a game that would fill your dining room with maps, covers the entire eastern front, sometimes down to battalion level and has 2,000 cardboard counters. This is not a evening endeavour. It takes several hours to place all your forces in their starting positions and each turn can also last several hours. I love it, but it's frickin' huge and takes days to play out just one scenario (such as Kursk). I love the fact that is a counter for 1 single man. He's Oberst Hans-Ulrich Rudel and if you follow the link you'll see his bio... Nutter who destroyed 2,000 targets including a battleship!

Anyway, I decided to get a copy of the Axis vs Allies Naval Miniatures game and give it a whirl.

We haven't started a game yet, as we've been to busy, but I'll report back when we've played it a few times.

Book Review: "Watermelons" by James Delingpole

Actually I'm not going to review this book right now.


Because I bought it on a whim that it would be a good laugh. It seemed to be a polemic rant from a climate change skeptic (or denier if you prefer) that I thought I would enjoy making fun of.
One of the reasons I bought it was the sub-title:
"How environmentalists are killing the planet, destroying the economy and stealing our children's future"
Lovely. Provocative. Someone likely to be screaming about eco nutters would seem to be an easy target...

Now even though I hold an opinion that it seems that there is an upcoming economic, political, population and social collapse brought about by unrestrained conspicuous consumption, I am not green at all. In fact I have a loathing for the moral busy-bodies that continuously ram laws and taxes down our throats that restrain my freedom. It's all:
"The thin edge of a white elephant" 
As I like to say...

As I started reading I was laughing out loud, but slowly stopped as I went through the book.
By the time I'd finished it, I was seriously worried.
Because it seems that he has done some very deep homework on his subject and it seems solid.
And it really does seem that we've been scammed. Not just about warming, but about the UN, the IPCC, the "green" movement and even our local governments.

So I'm going to be following up on the 25 pages of references and checking into them as deeply as I can to see if what he is claiming is actually true. Because if he is, then we really have been seriously and badly scammed about man-made climate change and the green movement in general. And if he isn't or is mis-representing data then I can have a good chuckle at his expense.

So I'll report back when I have waded through the references and got to the truth of it.

First crop of chillies

I started clearing out an area of our back yard some weeks ago to make way for herbs, veggies and what not. At the time I basically chucked a handful of chilli plant seeds down in one area with no expectation that any would survive.

Since then they've gone nuts. A fairly substantial set of plants in one bushy clump. And a few days ago I went out and removed a pile of them for drying. They're currently hanging up in our kitchen via a piece of string:

On other herb and veggie based news, we may have a crop of spring onions, radishes, tomatoes, basil, rosemary, thyme and what not fairly soon. The area I've got to work with is kinda small, but I've had to do some major earthworks to remove the jungle that was there. Here's a photo of the currently 'active' area:

Kinda looks very small in this photo, but in reality it's bigger than it looks. The area to the left of the photo is about twice the size but completely bare at present. It wasn't at first and had quite a few large (no sh*t 3" across), hairy eight legged friends that were exceedingly displeased at my disturbing their hunting grounds. Frickin' 'ell they can run fast!

I now have to dig the soil up and extract the last vestiges of a weird almost alien looking plant that had root tentacles stretching out over a 6' area. Once I've done that I have to condition the soil and build it up. After that, I can put carrots and corn in it.

Sadly I put my back and hip out working on it this weekend. Not getting any younger. Rats.