Tuesday, December 30, 2008

Cloverfield

Cooool. Just watched Cloverfield. Blair Witch meets War of the Worlds. Stylistically like Blair Witch with the whole thing filmed from a consumer video camera, the content of a monster rampage in New York. Really nothing new, but damn, it was gripping. Some of it reminded me of playing the Doom PC game. I don't think it was particularly scary, well not popping out of your seat scary, but once it gets going, and it takes a few minutes, it just doesn't stop. Cooool.

Monday, December 29, 2008

Amiga Games

I've been playing some old Amiga 500 games recently, emulated on my PC. In particular, I've been playing The Faery Tale. It's so cool. OK, maybe it's mostly cool because I played this for weeks and weeks non stop in 1987 or thereabouts when it was fresh. 20 years ago, this game was state of the art. The graphics and sound were awesome, the RPG element quite good, certainly new at the time. The sheer scale of the game world unbelieveable. Today, ok, the graphics are a little blocky to say the least, but I can still whistle along to the sound track although you can count the number of sound channels. My son has quite taken to it and is happy to sit next to me playing it for hours.

"Julian was getting hungry."
"Julian was starving!"
heh. The game is still challenging to start. Just surviving is hard work. But then you get the turtle, and a cheat in the game that lets you attack your friendly ride, increases your Bravery points, and you become nearly invincible. Which is lucky really, because the rest of the game requires a lot of exploration where you can't afford to die. I'm going to try not to cheat too much otherwise. Damn, this is fun. Next I'll get Elite. That was awesome too.

Saturday, December 27, 2008

BSG Webisodes

Cool. There are new BSG webisodes "The Face of the Enemy" available which continue from the end of series 4. They are on scifi.com, but you're better off going and getting a real download from torrent somewhere. Thanks to Hugh for the tip-off!

Systems online!

Wooh! Back online. Haven't had a great month, but all's well for Christmas, and been doing some serious chilling. I've been getting some good solid hammock time the last two days just reading. And to use a simple term, that's been very very nice. Christmas has been the usual fun crazy family time, we had Christmas Eve with the Roberts clan at our place, and went to my Dad's place on Christmas Day. Lots of seafood, totally delicious. Sinead's Mum and Dad are over from Ireland, and they are having a blast out here in the warm sunshine. Their first non-cold Christmas - crazy concepts!
I'm taking all of next week off from work, and damn, I'm just going to enjoy doing very little. Working hard on getting my stress levels waaaay down. Gotta start looking for another job in say, mid January, as I'm out of Websense latest end of March, but that is for later.
Going to do Palm Beach followed by the Newport Arms with Sinead's oldies tomorrow. That's always good.

Sunday, November 23, 2008

2001: A Space Odyssey

I just read 2001 by Arthur C. Clarke. I also watched the film by Kubrick.
The film feels very arty, and I remember after seeing it the first time thinking "what just happened?". The book is much better from an understanding point of view, and actually after you've read it, you can see where Kubrick is going with it.
The book is very readable and I really enjoyed it. Much of it is still in prediction territory, regardless of the name. You really have to remember that this was written in 1968 before the whole moon landing thing.
I love the coriolis tech used in the space stations and ships, although I'm pretty sure you need a radius of at least 300m to feel comfortable. The 10m radius of David Bowman's exploration ship's rotating section would drive a person insane.
The themes are all very cool, although I was disturbed by the implication that at alien race may have been needed to push apes into humanity.
The book should have ended two chapters earlier than it did as well, with the Starchild. The subsequent chapters are about a pre-Babylonian hunter/gatherer tribe meeting aliens, and an exploration group on the moon finding a different alien artifact. Irrelevant and irritating. Clarke was ahead of his time with the whole consciousness run on computers, then as pure energy. 1968. Damn.

Saturday, November 22, 2008

Commercial TV

<rant coarselanguage="yes">
Commercial TV seriously pisses me off. I don't watch it if I can help it. In fact, the only time I watch it is when I want to just chill out on a Friday or Saturday night with Sinéad in front of the telly, and even then I'll push to watch a download.
It isn't especially the commercials that piss me off on commercial TV. Some commercials are entertaining, and you can deal with commercials quite effectively by hitting the mute button. Try it. Seriously. No sound will probably just annoy you at first, but you'll soon come to appreciate the absence of complete shit being shouted at you.
What really pisses me off is movie truncation. OK, so you've sat down to watch a movie that perhaps you haven't seen for a long while, or maybe even its a relatively new one that somehow you just missed in the [DVD rentals/Cinemas/downloads]. You've dealt with the ads nicely with muting (v.s.) and really quite enjoyed the film right up to the point where the credits start rolling. At this point, the movie has not fucking finished and the commercial TV assholes squish the credits into a third of a screen, mute the movie and start spouting bullshit at you about moronic TV programs you aren't going to watch because they make your brain bleed out of your ears. "Hey, assholes! I was watching that!". I often want to read some of the credits to find out who some of the actors were, but more importantly, the end music is an important factor in leaving you in a particular state of mind. It can actually be a large part of the film. Directors take care with this, and artists are paid lots to have films finish with their work.
What I also hate about commercial TV is the way they move schedules about, very often without telling you anywhere in advance. Say there's a particular science fiction series you've been enjoying. One week, they might just not fricken show it all, the next week they could put it back by an hour. "Sure, we'll just show this at 12am instead of 11pm, no one will care". Assholes. Or worse, bring a show forward by an hour, so you can sit down in time to watch the credits. No wait, you never get to see credits, they're spouting bullshit at you. It's enough to drive you to downloads.
Oh, yeah, most of the programming on commercial TV is just moronic bullshit you aren't going to watch because it makes your brain bleed out of your ears. I may have mentioned it. But that's OK. I don't watch it. My favourite moronic bullshit I don't watch is "Current Affairs" shows. These sensationalist, purile, indignant "fact finding" stories make me want to puke.
OK. deep breath. I think I'm done now.
</rant>

Saturday, November 15, 2008

More Cores.

You have probably heard about Moore's law driving the relentless improvement in computational power we've seen the last 40 years. Unfortunately, this "law" isn't about power or speed, but purely about the number of transistors able to be packed onto a chip. Speed has historically been a direct result of this as the clock speed was able to be driven up with the smaller device sizes.
While Moore's law is still happily churning along, and probably will for at least another decade or two, recently processor speeds haven't really been increasing very much. Instead we are now seeing multiple cores (copies of a whole processor) embedded in chips. Currently, that's mostly 2 and 4 core chips, but since this is now the easiest way to use all the extra transistors that can be packed into a chip, over the next 10 years we'll see many many cores on your desktop. Numbers like 32-128 I suggest.
Cool right? But there's a problem. Most of today's software only knows how to do one thing at a time, so if you had a 128 core machine today, it wouldn't feel any faster. We need to write more software that uses multiple cores. Its called parallel programming, and it's much harder than normal programming as it is prone to sudden and massive program failure as threads wamp each other's data. It's been suggested that 1% of programmers actually know anything about this.
At least I may be hold onto a job for the next ten years.

Dollhouse

Check this out, a new series from Joss Whedon, Dollhouse. Looks really cool. Promo videos here, here, here. Starring Eliza Dushku. Niiccce. Essentially about personality/skills/experiences programming of the "actives/dolls", hired out to clients to be whatever they need them to be. Airs in February. Can't wait. Oh, and for BSG and Terminator to start again....

First view of exoplanets!

This is a fantastic milestone in astronomy. While we have inferred the existence of planets around other stars using the gravimetric wobble effect, this is the first time we have actually "seen the light" bounced off them. Sure, that light has passed through a whole bunch of filters and other optical effects to increase the contrast against the brilliance of the host star, but it is still real.
See also here and here.

Thursday, November 13, 2008

The Selfish Gene

I just finished reading the Selfish Gene by Richard Dawkins.

This book makes for really interesting reading, if you are interested in evolution. Certainly, I now have a much better understanding of how natural selection works, but by far the most impactful element of the book is how it changes the way you view life in general. Dawkins proposes a view of life that is fascinating and irresistible. This view is that to better understand why we are here and even how we are here, we should focus on the viewpoint of the genes. Genes were here first, and in general we can refer to them as replicators, the things that actually copy themselves, and thus live on through geological time. Our bodies, us as entities, as creatures, are simply robots, or survival machines that the replicators use to give them the best chance for survival in their timescale. Our bodies are honed, via the process of natural selection acting on the various variations and mutations of behaviour that the genes produce.
In the process of human evolution, we have developed fantasticly complex brains capable of great self awareness and intelligence. Obviously the mutations and variations that led us down this path has been a great success story for our genes, for they now dominate the planet through us. However, this intelligence and self awareness gives us the ability to ignore many of the behaviours produced by our genes, thus taking control slowly away from them. Dakwins discusses his meme theory of evolution of cultural behaviour as part of this, separate but analagous to genetic evolution.
Everyone should read this book.

Thursday, October 30, 2008

Battlestar Galactica restarts "soon"

Can't wait.
And check out some hints for the up and coming final episodes.

Incandescence

I just finished reading Incandescence by Greg Egan.
As always, Egan writes with his hard-core knowledge of physics. You simply can't expect to understand everything unless you're really enjoying that third year degree subject right now. The core part of this book is about a pre-industrial race working out some of the details of the theory of relativity from observation and low-tech experiment.
It really is very cool. The other half of the book fills in some culture and technology for the rest of the galaxy, and could probably be an interesting backdrop for many SF novels, but that isn't how Egan works. The contrast between the halves is stark, and you are left wondering how that will be resolved right up until the end. Which I won't tell you about except to say I didn't find it very fulfilling.

Tuesday, October 28, 2008

variable argument lists

I found an interesting problem with using var args today. When you implement a function that takes a variable number of arguments, you have to use a nasty little function called va_start() which gets a pointer to the first of the variable arguments that was passed on the stack to the function. See code below. In order to do this, you pass to va_start() the argument that was just before the variable arguments passed, in this case a const MyObj&.
I found that this just caused the user of the va_list to crash.
It turns out that you can't use an object reference like this, because the sizeof mechanism that determines how far to advance the pointer past the parameter thinks the parameter is as big as the object, where it is really just a reference to that object.
Solution: Pass a const MyObj* or a MyObj by value. In some functions, you could arrange the order of params so that a pointer or value is next to the var args.
Nasty.

void doStuff(const MyObj& details, ... )
{
va_list args;
va_start(args, details);
//use args
va_end(args);
}

Monday, October 27, 2008

Awesome weekend

Wow- what an awesome weekend.
Friday was my birthday, thanks to all the well-wishers! I bought some geeky t-shirts from here, to celebrate.
Saturday, we dropped the kids off at my Dad's place and then went to Andrew's wedding. That was really cool. Andrew showed a brilliant video of himself (and others) instead of doing a speech.
Sinead and I stayed in a hotel afterwards. No kids. Whooo-hooo!
Sunday we relaxed, eventually went and picked up the kids and had a Thai takeaway for dinner. It just doesn't get much better :_)

Wednesday, October 22, 2008

Free Nappies!

Free sample at ecodirect.com.au, and check out the sunscreen while you are there.
OK, a little gratuitous, but links is links :_)

Sinead's business is going well. I've just been over to check on the backup system I've just put in place. I have a RAID 1 NAS set up, sending it daily backups at night.
I used a Lacie 2big Network. I've one issue so far with the windows share on it disappearing, but it came back with a reboot, so I'll have to keep an eye on it. But it looks pretty!

Thursday, October 16, 2008

Half-Orc to Centaur in three Easy Steps

I am mourning Moag as a Half-Orc. Moag as we knew him is dead. The party faced a room full of some real nasties on Wed night, player-time. One such nasty was a Grell, a brain with tentacles. With a brain that size, you just know it is going to cast spells and be, well, you know, clever and stuff. Moag battled bravely, and even thought he had it cornered, seemingly trapped in a small room, silenced by Vim, co-adventurer. But the Grell was too clever, and found a way out of the room, where it could cast spells, and viciously pointed a tentacle back at Moag and cast Disintegration. Moag was instantly turned to a small heap of ash. Moag was suddenly gone.
Later, as the party was back in town, carrying a small bag of ash, counting their coin, and looking at options, they remembered that they had a very special magic item. This magic item can turn back time itself, and if used within a few seconds of Moag's death, would have brought him back, and tactics could have been revisited. Only, back in town, many hours had passed and the party as one, thought "ooops".
Then the party realised that in order to perform the less expensive version of Resurrection, Raise Dead, you actually need the body whole. And the better spell Resurrection, which does not require a body, was waaay too expensive.
A final option remained. They Reincarnated him.
Moag returned as, yes, a Centaur. Weird, but actually not bad strategically as a fighter as Centaurs are really strong. Moag lives, but lives hating orcs, as Centaurs do, which is really disconcerting for Moag as Moag's mother is an orc.

[Update]
Looking for a picture of a Centaur? I've pulled it. Too many hits.

Monday, October 13, 2008

Evolution is Over

Evolution is over apparently.
Actually, I used to agree with this but for a different reason than is discussed in this article. The article suggests that evolution is slowing because, among other things, older guys aren't having children as much - especially in the West, and it's older guys that produce the mutations required for beneficial changes to be selected. Sounds plausible. I would have thought that modern medicine would have been the largest contributor, simply by allowing those who would have otherwise died to live and reproduce. It isn't survival of the fittest anymore. Its survival of damn near everyone.
I say I used to agree with this, but I guess I should say that I have broadened my definition of evolution to include technological as well as biological evolution. Evolution hasn't stopped, it has found a way to work even FASTER. Biological evolution got us to the point where we could used tools, and record information, and that was enough to boot-strap the technological phase of evolution. We don't need biological evolution anymore, technology is changing us far more, and far more quickly than biology has/will. Have you noticed the computer that 20 years ago was in the study, is now in your pocket? Where will it be 20 years from now?
Behind your eyes.

Thursday, October 9, 2008

Capacity

Just finished reading Capacity by Tony Ballantyne.
This is good science fiction but not for the usual reasons. OK, it has plenty of cool ideas in it, but there's something disturbing going on. It's close enough to a lot of other science fiction environments, that you don't notice at first, but the differences start to get more creepy as you read. Also, I found it quite hard to decide who to side with at times. I wasn't quite sure which side was going to triumph. You should note that this is book 2 of a trilogy, so perhaps things would have been a bit different if I had read the first book, Recursion already. Ah well. The novel stands by itself and I'll now be reading the other two...

Peggle Nights

Seriously, this game is fun. Its like a reverse version of that C-64 game (what's it called?) only with less skill involved. And that's probably a good thing.

Tuesday, October 7, 2008

The Godfather

Sinéad and I sat down and watched all The Godfather films over the weekend. I've wanted to see these for quite some time, just never managed to do it. They were quite good I suppose. I think a lot of the impact was probably lost because I have sat through all of the Sopranos. I really enjoyed seeing the very young Al Pacino and Robert De Niro at work. I also picked Robert Duvall who I recognised from Days of Thunder. That's just tragic, I know. I also picked Sofia Coppola (director's daughter, oooooh!) in part III. I thought she was ok! Apparently, her acting was widely panned in this. Part III was probably a bit over the top with all the super corporate empire and Pope shenanigans. The first one is cool. Ah, Marlon Brando.

Laying a floating floor

I finally got round to laying the floating timber floor in the den (rumpus). A lot bloody harder than it looks. Sure, click clack, front and, um, sides. Sawing the timber for the ends wasn't too bad, the worst part was trying to get each row to join correctly with the previous one. First you lay out a row of boards, end on end, and measure and cut the last one to suit, and then hammer them end on end so you have one long piece that stretches the width of the room. Then, with much cursing at first, angle the boards so the close edge of a row dips its interlocker tongue into the next row's groove. Sounds sexy? It's bloody not. Fernickety damn son-of-a sweaty frustrating muscle aching pain in the ass. Here's some photos.

MapReduce

Google's MapReduce infrastructure is the backbone of Google. They use it for loads of stuff, most importantly, building their search index. Here's a video high level description. Wikipedia has some good info, but the Google white paper has real detail.
Sounds elegant and powerful.

Wednesday, October 1, 2008

Mediagate MG-45

The digital multimedia player, Mediagate MG-45 turned up today. Wow, it was so easy to plug in and use. LAN and power in, video and audio out to my TV and amp. Remote control. Bam. I'm watching a downloaded DivX on my TV, from the couch. The DivX is where I downloaded it on a shared drive on my PC. It just works. It also plays music and shows photos. $179. Not using the mouse, priceless.

Physical media is dead.

statcounter.com

I recently added page hit statistics from statcounter.com, you can see the counter down the bottom right of the page. All you see is a hit count, but I get a load of detailed statistics. It's so cool and unbelievably detailed given that it is free!
Check this out. Yesterday, for example, I know that someone from Chicago, Illinois, was searching for "drinking blackouts" on google.com, and found a reference to my blog entry, Of Blackouts and Drinking, and clicked it. I'd say this person was probably very disappointed, but I don't have to guess because I also know the visit lasted less than 5 seconds. Heh. I also know they were using IE7.0 from WinXP and rendered the page on a 1024x768 display. I also have the IP address and their ISP name. Now it's getting scary.

Tuesday, September 30, 2008

P&P

Just played pitch & putt with Kris. We both played awfully. It was hilarious. In addition, it hurt to play with my wrist still being sore after falling off my scooter four months ago. Yes! I had an x-ray taken this morning just in case it's really twisted. I had a look, and it looks fine to me, but then, I'm not actually a doctor. I guess Doc will tell me on Thursday.

Monday, September 29, 2008

Teh Internet is Gone!

Very funny episode of Southpark, It's Just Gone. "The Internet" turns out to be a 50ft high DSL router in a military bunker, but it's active light isn't green, it's flashing orange and it takes Kyle to work out they need to reboot it.
Even funnier, was that after watching this episode, I jumped on Facebook, and after five minutes, I lost the internet! It was just, Gone! I too, had to reboot my router. Brilliant!

Sunday, September 28, 2008

TV PC Died

The old Pentium III PC under the TV finally died. It was given to us by friends who left the country, so can't complain. It was just sitting under the TV only being used for playing DivX video across the network to the TV and sound system. I think either the CPU or the RAM gave out, either way, its going to cost more to repair than to replace for the job it was doing. I'm now looking at a MediaGate MG-45 which I think should do the job nicely for $179.

Thursday, September 25, 2008

Test Driven Development

Just finished reading this. Interesting, but not entirely convinced.
Essentially, Beck lays down the following development procedure:
  • write an (automated) test
  • run the test to show it fails
  • do the quickest thing possible to get that test working, even if it's really dirty or evil
  • fun the test to show it passes
  • refactor
  • check all tests still pass
  • rinse, repeat.
The main thing to notice is that the tests you write drive the functionality, rather than the functionality dictating what tests you write. The outcome of this is that the software is designed as you go, and essentially has the minimum possible clean design for the software at each point in the software's life.
It sounds good, but when I ran through his examples, I couldn't help feeling there is magic involved. I think my main concern about the methodology is that the design must necessarily wander around a great deal, and I can't help but think that this would waste a lot of development time in refactoring from design to design. Beck suggests that to some degree, this happens anyway, and IDE refactoring tools are getting really good these days to help with that.
I completely agree that having unit tests that give you a really high code coverage makes it much safer to refactor code, and continuous refactoring of code is really important as new features and modelling enter the fray, and the design necessarily morphs over time. If anything, having read this book will make me write even more unit tests.

Dark Flows

http://www.space.com/scienceastronomy/080923-dark-flows.html

Cool....

Monday, September 22, 2008

I Love Functors. Part II

See Part I.
There's a better way using std::for_each()! With this, just use for_each() directly.

class Base
{
public:
virtual ~Base(){};
typedef std::list List;
struct Functor
{
virtual ~Functor(){}
virtual void operator()(Base& o) const=0;
};
static void Functorator(List& l, const Functor& f)
{
std::for_each(l.begin(), l.end(), f);
}
};

BTW -code formatted by http://formatmysourcecode.blogspot.com/
Thank you Greg Houston!

Hadron Collider halted for months

Aw, crap.

Saturday, September 20, 2008

Cian - Owen

Illustrated by Cian and Owen.
Written by Owen and Cian.
Once upon a time there lived two boys and the little one was Cian and the big one was Owen! Those boys were poisoning the ants, cleaning the back yard and at the end they had a big ... KISS!! They were very tired after all the work, so they went to bed. Cian had a dream of a pile of rubbish. Dad had a dream of spaceships in the sky! In the morning they had Uncle Toby's Oatbrits for breakfast, it was disgusting! and then they watched video hits! After that they played Gimy Nut troon on the computer.


The End!

Thursday, September 18, 2008

I am a Strange Loop

I just finished reading this, Douglas Hofstadter's latest book. Apparently, he wrote this to clarify his points from GEB about the nature of consciousness. Certainly, GEB was a challenging work of art, and I am a Strange Loop leaves you with little confusion about his point of view.
Essentially, he is espousing non-dualism, and takes you on a journey of rationalism explaining how consciousness, or self awareness arises purely from physical processes, and not to do with any higher, non-physical spirit, power, magic or divinity.
I found his core message easy to agree with, but his explanations and discussion still gave me a lot to think about, and has changed the way I think about consciousness. Really fascinating stuff, particularly the discussion of the concept of "I" being an illusion, "an hallucination hallucinating an hallucination".
His arguments stem from Gödel's work in mathematics to do with how any sufficiently powerful and flexible logical system can produce self referential statements.
This is really interesting stuff and is written in a very readable manner, much more so than GEB, which is known for its sheer density. I thoroughly recommend it.
I'm not entirely convinced about some of his points about the consciousness of others inside your own mind and levels of consciousness tied to empathy and music, but I'll let you make up your own strange loop.

Tuesday, September 16, 2008

Neise not well

Neise has pneumonia and a partially collapsed lung from an infection! She seems ok aside from constant coughing, and although she was very narky this morning is usually in good form. Poor thing. We're hitting her with more and stronger antibiotics after an x-ray showed a bad lung. The last doctors visit a few weeks ago suggested she just had a throat cough and she'd get over it in time. Lucky we pushed for an x-ray.

Unidentified Object

Perhaps it is an excession.

http://gizmodo.com/5049896/hubble-finds-unidentified-object-in-space

Friday, September 12, 2008

Kill Bill

I just finished watching Kill Bill again, downloaded of course. It's so good. I can't get the poignancy of the song Bang Bang out of my head. The song features mostly in part 1, rather than part 2, (I just finished watching the latter), but there is a scene at the end involving a four year old girl playing guns, where she shouts "bang bang". It's painful. I physically winced. Neise is four. OK, enough whiskey, bed now.

Thursday, September 11, 2008

Death to the Fairy

D&D was piss funny last night. Many of our characters were in various states of despair, agitation and pure madness. At one point, my dude, Moag (the half orc fighter with a flail) ran screaming down dark extra-planar passageways holding his hands firmly over his ears until he bumped into some Slaadi, and just gave up and curled into a foetal position. Nice!
Later, to our great amusement, Seb's character, which alternates between some sort of fairy, and a ball of light, was compelled to pick up a great artifact we were seeking to destroy because of it's ability to re-actualise a recently dead, but very evil god. He was compelled to pick it up and touch it to another artifact and blew himself and everything in the room to a very complete and very final destruction. Which is quite a feat in D&D where characters are routinely raised from the dead.
Happily, the rest of our characters were conveniently behind some sort of wall of force, completely protected.
To top this destruction off, Seb had to roll a D20 saving throw against the compulsion, and rolled a 1. Automatic Failure. Fantastic!

Tuesday, September 9, 2008

Google Chrome

I've been trying the new Google "It's just a web browser" Chrome.

Good
  • Bloody fast render
  • Bloody fast startup
  • Privacy mode
  • Imported all my firefox settings
  • Open source
Bad
  • Slow to open a load of tabs because of the process-per-tab implementation. Generally, I believe using multiple processes in this way is a poor design choice. This is windows, not unix. It wasn't designed for it. It is slow. Slow to load, slow to switch. Memory hog. All comics tabs, Chrome 180Mb, Firefox 60Mb. The security risk of all-in-one process is vanishingly small. I haven't seen a browser crash for a long time. Also I found that when using loads of tabs, it was locking up anyway, and there were big delays in tab renders.
  • It uses more than it should of the client window on Vista. I want extra wide window borders on Vista for the pure translucent eye candy, and Chrome is writing right up to the edges using obvious custom painting. This custom paint is probably where they get the fast render speed, but its just wrong. When I maximise, I can't even see the tabs.
  • No smooth scrolling
  • No add-ons.
  • No adblock without using a foreign proxy server. ew. (see no add-ons)
  • No google toolbar available, although you can search in the address bar, the toolbar has way more functionality.
  • No close current tab button in constant position (see no add-ons).
  • Mouse scroll moves too far with each notch.
  • I found I had to click multiple times on some in-tab menus to get them to action.
Net result. Chrome is out too early. I'm sticking with Firefox for now. I've no doubt Google will improve this quickly though, and possibly work faster than Mozilla.

Prions can jump

Scarfed from slashdot, Nature is reporting that Prions can jump.
This is why you should be running BOINC on your home PC, donating your spare CPU cycles for something useful, like folding@home. I do. I also run LHC@home and Einstein@home and SETI@home. I need to upgrade my machine...

It's just a web browser.

Google Chrome: Its just a web browser.

The Register (as always) has a fun article about all the latest hoo-har.

Monday, September 8, 2008

I love Functors


//Don't keep writing list loops, use functors!
class Base
{
public:
virtual ~Base(){};
typedef std::list List;
struct Functor
{
virtual ~Functor(){}
virtual void operator()(Base& o) const=0;
};
static void Functorator(List& l, const Functor& f)
{
for (List::iterator it=l.begin();
it!=l.end(); ++it)
{
f(*(*it));
}
}
};

Will it all end next week?

Very amusing take at The Register about the safety of the LHC.
They're switching this puppy on soon. I can't wait.

Sunday, September 7, 2008

A Short Walk

We walked along the Castle Rock track this afternoon. The kids had fun, we all got muddy. Actually Neise started to cry the minute she got wet feet. Little princesses don't like to be muddy.
Ah well. We pushed on :_)

Friday, September 5, 2008

Tech Ed Day 3

Seriously hung over. *urgle*
Today I went to an excellent session on "good, bad and ugly" patterns in requirements, analysis and design. Really well presented and interesting. Nothing ground breaking, but solid advice.
There was another excellent session on coding security issues, but at a higher level than yesterday's session, more conceptual. 
The locknote was actually really good, and by the same guy who did the "good, bad and ugly", Microsoft's Miha Kralj. He suggested (among other things) that conferences would die off in favour of virtual gatherings, that technology would be driven more by the younger generation, who care less about how technology works (and privacy imo!), that computing will be more driven by cloud computing. He told us a bit about how these supermassive server farms are being put together, not with individual servers, but shipping containers of servers sent direct from manufacture. Each container has 3 ports; power, liquid cooling and network, and are not physically entered unless less than 95% of the thousands of servers inside are operational.

Thursday, September 4, 2008

Tech Ed Day 2

Today, saw a bit of Visual Studio next release (2010?) in development. They are doing some neat stuff with validation of code against architectural designs. That could be useful for picking up a developer who breaks a dependancy tree.
Saw Powershell in action! Wow - that is pretty cool. Its like an object oriented bash. And it's easily extensible. It's also available for XP, hmm, could be useful.
There was a great session on secure programming ("How not to screw yourself") by Corneliu Tusnea. This guy's neural kinetics were way above normal. Speed of presentation and thought process awesome to behold. He showed us Samy's cross-site scripting hack against MySpace (since fixed) and a bunch of stuff to help protect against this and other attacks on your code.
There was one session explaining how Vista-Vista and Vista-Server 2008 file copies are super fast because they use the less chatty SMB 2.0.0.2 protocol and Vista supports MTU or greater than 64k, and how some of this was broken in Vista pre SP1. Vista SP1 is a lot faster than Vista.0.
Then there was the TechEd Party. That was actually great fun. It was set up like an old style carnival with a fireblower and girls on stilts, but with original and ancient arcade games around the outside. Galaga! Pac Man! Old pinball machines too. Woo! Oh yeah. Tables full of dohnuts. And frreee boooze. Oh My.

Wednesday, September 3, 2008

Tech Ed Day 1

Today was Tech Ed Day 1. 
There was a lot of waffle about software + services, which is Microsoft trying to keep some software local (on their operating system) and not all implemented up in the cloud (on Google platform). They're probably right though, I can't see local computing going away anytime soon.
Some interesting stuff on Vista specific code, such as UAC and new standard dialogs. I didn't realise that to get the UAC thing, you actually have to spawn a new process that asks for admin rights. I spent ages looking for an API to do it last year. There's also a little documented hack to get the shield icon to appear on a button.
Groove is cool. I'm going to look into this for work. Even if its just used as a better interface to the horrible Sharepoint that we have to use. It is effectively a fully encrypted shared/distributed workspace for files and discussions which works across firewalls and variable connections
There was a really cool rant about the role of Architects (how they are a waste of space) and how developers should be called craftsmen, not engineers. Some good points, some bad points, a lot of pointless points, but a lot of it was wayward ranting. Cool!

Monday, September 1, 2008

Dark matter evidence

Interesting.
http://news.bbc.co.uk/2/hi/science/nature/7587090.stm

It seems another observed galaxy cluster collision has shown the motion of dark matter via lensing. OK, so perhaps this dark matter stuff does actually exist. What was interesting about this observation is that it seems that dark matter not only doesn't interact with normal matter, but seems to barely interact with itself, other than the gravitational effect. So imagine two galaxy clusters colliding, mostly gas friction I suppose, causing the normal matter to crash, or at least change it's course. And then there are these two clouds of dark matter which pass right through the event, and themselves, and I suppose start swinging round back from the other side as gravity pulls them back in. Its like shadow mass.

Sunday, August 31, 2008

Dad & Janet visited

Dad and Janet visited today. One of the highlights was when Cian sat us all down to play the board game he just created. Cian is six. Here's a picture of the board.

There were many rules:
  • Each player takes turns to roll a d6 to proceed. Note the game tokens are lego pieces.
  • If you land on a black dot, you got a card, which could have said "go back 3" or "hold this money for 10 seconds"
  • To cross a bridge with a number on it, you needed to roll the exact number to cross it, that or you could add the numbers from your last two rolls.
  • There was a complex rule about branch decisions being decided about whether or not you landed on a particular previous spot or not.
It was awesome. Janet won. Oh, yeh, Janet also rolled the following during her subsequent turns: 6,6,6,5,6,5. That is like rolling up a character in D&D with an 18 and a 16. Damn!

Saturday, August 30, 2008

+3 Post of Unveiling

Hi,
You've received this blog intro over email because I think that there may even yet, be the most desperate, most remote hope that you could be at all, even slightly, interested in some of the minutiae of my life and opinions. I have joined the great unwashed, and created a blog. Blogging perhaps represents one of the greatest social changes of this decade, or, perhaps, it simply represents the fact that never before have so many been able to tell us so little in so many words. "Teh Interweb" gives us such power, the power for example, to click on the link below and continue reading my "+3 Post of Unveiling" ...
http://unwritable.blogspot.com/
... where you will transported to the Blogosphere. Here I am, writing what I thought a short while ago was the unwritable. "It's just an online diary", I scoffed. "It'll never catch on" I asserted. "Who will give a shit?", I queried. OK, one out of three ain't bad. But seriously, after reading a lot of science fiction over the last 5 years, I've come to realise that this isn't going away. The time to get used to this is now. For now we'll just call this an official invite to come back as often or as little as you like. Check out the archive or sort by topic using the links on the left right. Send me a link to your blog and we'll cross-link. Laugh at my uber-nerdiness. Post comments to that effect.

Quotes

It's been bugging me for a while now. I know I've been doing it incorrectly. My use of quotes that is. After some targeted googling, I think I have it now...
  • only use single quotes for quotes within double quotes
  • (obviously) use double quotes when quoting things others have said
  • don't put double quotes around titles of movies, books, CDs and plays that contain more than three acts (WTF?), use underlining or italics
  • use double quotes for titles of articles, chapters of books, songs, short stories and One-act plays (okaaay).
There's a lot more detail on how to do this absolutely correctly, but I'm really not going to worry too much if I can just get the above right.

Halting State

I just finished reading Halting State during the week. Awesome read. But then I love technology, D&D and online gaming. Written in second person, it feels like you are playing the game, in the action, just like a D&D game - a brilliant extra layer. OK, a couple of times I had to check the chapter start to see who 'I' was again, but that was OK. You wouldn't want all novels like that though.
Favourite quote - "it's TCP/IP tunnelled over D&D". Excellent.
Technology used - I'm still sceptical of quantum computing, but I loved the glasses characters were reading which gave them an HUD of information networks. I want that, and can't see why it won't be here relatively soon.

Fishtank


Thought I'd post a photo of the fish tank. I have a minor issue with some black flowering algae at the moment, and a population problem with the Neon Tetras. There are only three of them left. Having started from eleven, it may be time to go get some more. That'll keep the Angels happy. You can see them up front of course. Show-offs.

Speaking of drinking...

For teh win! Woolies Liquor are selling Glenlivet 12 year old single malt for $43 a bottle. I went in with two empty hands, but didn't come out that way. They usually sell it for $60+, and I was running out of Jameson, so today I'm a happy man today.

Thursday, August 28, 2008

Of Blackouts and Drinking

Smiles all round (mostly) at work yesterday as the power went down at 2pm, and by 3pm it was clear it would be down for much longer. The boss said we could go, so most of our team took ourselves across the road to the Greenwood Hotel.
We had a blast over the next 7 hours drinking beer and more importantly whiskey! As was pointed out today, we spent nearly a whole working day's worth in the pub. It turned out to be a really great night, as many ad-hoc unplanned sessions do. Since I've only been at Wensense now for about 6 months it was a great opportunity to talk some shite with my co-workers and get to know them better. Tops!
Mind you, it was a very slow and difficult day today at work. Slooooow. Brain just wouldn't. work. stuff. ow. sql. hard.

Tuesday, August 26, 2008

Future Blogging

I used to think that blogging was just keeping a glorified online diary. I was wrong. OK, I was a little bit right, and I still am, but I think it is becoming clear that blogging is a lot more than this. It is a personal content delivery mechanism. "But that's the same thing!" I hear you cry with a derisive snort. I think the online diary aspect is still there, and many blogs are little more than this, and that is fine, but blogging enables people to deliver content useful to others, but more importantly that that content is searchable.
My friend and long time co-worker Tom and I recently set up internal work blogs. At first the search mechanism wasn't working, (i.e. searches on content in your blog returned no matches) and Tom said he wouldn't bother if that was the case. A work blog is more on the content delivery, and less on the diary side, and this is where searching makes it a Really Useful Technology. So when Tom blats out some really useful technical tips he just spent the morning discovering, I can come back in six months, search for said tips and have that content available, saving me a morning's (re)work.
At the moment we have discrete text and video blogging, where each individual post takes time and effort to produce. But blogging will go far beyond this. Most people are aware of the lifelog concept where your constant experience is recorded. Many people find this pretty abhorrent, but it doesn't have to be all public all the time, and of course there are things you don't want recorded at all. As technology improves, and the wearing of a video camera and mike is as easy as wearing the rest of your clothes, why wouldn't you just by default record everything? If it doesn't cost much, it just accumulates in the background, and when all that life content is easily searchable, imagine how easy a lot of tasks become. You won't have to jot notes about meetings, appointments, or any details your wet memory can't deal with. Resolving arguments about who said what becomes a thing of the past. You could prove your innocence in a flash as the raw feed would be all securely timestamped and tamper-evident of course.
From this raw feed you could pick and choose the interesting things to make public, or produce eloquent text out of subvocalised ramblings from that recent bus journey.
Of course all this requires technology to improve, and while it won't happen next year, or the year after, it isn't decades away.

Monday, August 25, 2008

DLLMain() Don'ts

{if not programmer, escape}

I never knew this, but it makes Oh, So Much Sense Now.
You can define a special function in a Windows DLL called DLLMain(). It's a piece of code that gets executed when your DLL is first loaded into the address space of your process. (It also gets called at other times, like thread attachment and shutdown). But that's not the bit I didn't know. I was recently debugging a problem where loading a DLL was causing a system crash. It looked as though the static variables in a dependent dll (loaded as a result) were not initialised, and thus any attempt to use them was causing massive, sudden and irrevocable system carnage. Now, the DLLMain of one of the dependant DLLs was calling a fairly innocuous trace function, however, the tracing platform was doing some funky dynamic loading of implementation DLLs to get around some tracing dependency issues. The problem with this is that when the CRT calls your dll's DLLMain() function, it takes out a lock (called the loader lock) on DLL loading (actually initialising loaded DLLs). This means that dynamically loading DLLs during a DLLMain is a Really Bad Thing. IMHO, this really should have completely deadlocked rather than trying to do what it did. Perhaps it would have deadlocked if any of the dependent DLLs defined their own DLLMain() functions. What it actually did was to load the DLL as asked, but not initialise any of the static data for it. Nasty.
More info.

Tuesday, August 19, 2008

Back to work

Right, now I've finished back filling some blog I can get back to what I am supposed to be doing. Writing a D&D 3.5 campaign. I've been kinda putting this off for a while now, it is a lot of effort, written from scratch as it is.
It will be for 5 characters of level 14+, set in Faerun, starting in Cormyr. Last adventure (more than a year ago or was it two?) saw the heroes delving into the mystery of Tilverton. You can go find all the detail you could ever dream of over at dragoncoast.info.
Where to go next? Well, the characters were given a bunch of quests to choose from by the gorgeous Caladnei of Suzail, so I guess they'll go back to ask her what's next. Hmmm.

Building a Workstation

From 20/5/2003.

So, after moving into our new house, I decided that I'd had enough of working off a stupid, tiny desk that you self build with self locking pieces, and build myself a workstation desktop right across the length of the room.

Actually, lets talk about this pissy little desk I've been using for four years. It has four pieces, the top, sides and another piece that connects the others together. It sucks like a jet engine sucks a careless engineer to his splattered death. It sucks hard in a non-reversible way.

read the rest ...

Little Plastic Nuts

From 16/4/2003 ...

OK, so you are probably wondering how I can possibly rant about little plastic nuts. Surely you get exactly what you see, and you can be prepared for the consequences of dealing with them? Oh, no. Not these nuts. These ones cost me hundreds of dollars. OK, so it was 1.8 hundreds of dollars, but hundreds of dollars nonetheless. And more annoying than the dollars was the stress and the days of work to recover from the situation they placed me in. *sigh* But I get ahead of myself.

read the rest...

Other Interests

To complete the background info I'll round out with some other interests.
I like whiskey. My favourite affordable whiskey is Jameson, but I'll buy 12 year old Glenlivet if its on special. I quite like an Islay malt occasionally too.
DIY home renovation. You know, I started off really not liking this, but it's so different from everything else that I do, that I'm really quite enjoying it. I've built a deck surround, a built in office-desk, and most fun, destroyed and removed an entire kitchen!
I enjoy riding my Razor scooter in and out of work. Mostly I take public transport, but the last leg home is all downhill on a 3 kg aluminium board. Yah!
Parties. OK, I don't party like it's 1999 anymore, but I enjoy many drinks with friends. Many.
I keep tropical fish. I have two Angels, two Clown Loaches, a bunch of Neon Tetras, some catfish in a 250L tank. They're purty.
I try to keep up with current science advances, although I don't understand as much as I'd like to. This kind of ties into my love of tech in general. I wanted to do a combined degree (Comp Eng) with Physics, but the schedule wouldn't pan out. I'm a LHC fanboy!

Monday, August 18, 2008

Core Interest: Science Fiction

I love good SF. I read a lot of SF books, but I also enjoy SF movies and TV series.
Brilliant SF authors recently are: Iain M Banks, Greg Egan, Charles Stross, Neal Asher, Neal Stephenson, Alistair Reynolds, Peter F Hamilton, Sean Williams, David Brin and Richard Morgan. In previous years I have enjoyed Arthur C Clarke, Isaac Asimov, Greg Bear, William Gibson, Larry Niven, Jerry Purnelle.
SF Movies I have enjoyed, obviously Matrix, Aliens, I am Legend, Star Wars, Solaris, Barbarella, Blade Runner, Fifth Element, Mad Max, Terminator, Serenity.
TV Series I have enjoyed are Battle Star Galactica, Firefly, Dr Who, Star Trek.

Core Interest: Technology

I love technology in general. I have been programming computers since I was 10, including such beasts as the AppleII, Amiga 500, and PCs since a '386. I have had an email address since 1991 and have never bought a complete PC as I prefer to build them from the parts I want. I run a home network with the latest Ubuntu server, a Vista desktop, a laptop and an old PC under the telly as my media centre. There's a wireless network, primarily for my Nokia N61i PDA so I get websurfing on the couch for free.

I also have a restricted cabling licence so I can legally run CAT5 cables around the house myself.
I've just read a really interesting book on how technology is really just the next evolutionary step of the human species and how we must ultimately merge with that technology. Thankfully Kurzweil suggests that this merging will happen over a long period of time (decades) and that each stage of the merging won't be as confrontational or sensationalist as the phrase 'merge with technology'. He suggests it will be more of a slippery slope, such as an ear implant here, an eye implant there, memory implants, nanobot medichines and so on...
This leads me into a post on...

Core Interest: Family

Now, these core interests aren't blogged in any particular order. Woe betide any fool of a took who puts software or D&D in front of family! I have a wonderful, amazing wife, Sinéad, and two high-energy, take-it-to-the-MAX kids, Cian(6) and Neise(4).
I met Sinéad through a friend at work - Hi Nuala! Sinéad is Irish of course, and we spent nearly four years living in Dublin to get married and spend some time with her family before moving back to Aus. We've been married for nine years now! Sinéad runs her own business ECOdirect, (with her partner Sionéd), and is a busy super-mum and super-wife!
Cian is a brilliant boy in Year 1 who likes to know how stuff works, loves reading, and inventing things, such as his very successful GPS Boots. (boots that tell you where you are).
Neise is a funny and beautiful princess-mermaid who will start Kindy next year. She loves pink. And Cinderella.
I love them all :_)

Core Interest: Software

Another core interest is software. When I say software, I really mean programming software. No one likes software for the sake of software because all software has problems. Whether it is slow, buggy, or just plain not useful enough, any piece of software has its problems.
Writing good software is a really interesting and challenging task, and when you can get some good results, it's also very fulfilling. Most of the software I write is in C++, but I've also written a fair amount of Java, and dabbled in stuff like PHP, Javascript, and other lesser abominations of languages.
The key to writing good software is in the modelling of the functionality or the abstraction of the functionality into well defined, er, clumps. You want to create little clumps of software that have well defined responsibilities, interfaces and relationships with other clumps.
Of course, writing commercial software requires a whole host of other activities, and the actual modelling and writing of software makes up about 5-10% of a software engineer's job. Unit and system testing, documentation writing, bug investigation and fixing, maintaining build systems, meetings and discussions groups, email flaming, etc etc.
In my spare time a while back I wrote a software package for the management of stock portfolios. Check out StockWhip!
I've worked for such companies as Baltimore Technologies, CyberTrust (now Verizon Business), RSA, and now, Websense. I work on the Email Filter product, fighting the good fight against email spam and other annoyances and threats.

Core Interest: D&D

This is the first of a series of posts introducing myself via my core interests. The term 'core interest' sounds like something out of an Internet RFC or a D&D rulebook, I know, but that's just how I am. Deal with it.
Yes, I play Dungeons and Dragons. It's one of the highlights of my week. It's just great fun. It's beer with the lads. It's constant geek/movie/pop culture/programming/book references jokes and some silly voices.
The character I currently play is Moag the half-orc. Obviously, he's dumb but strong, but not in the way that you think. Mostly, he's just underedumacated. 'Moag's mother always say Moag make bad decisions'. He favours the use of a terrifying flail.
We're playing with the 3.5 edition rules still, but are looking to start on the 4.0 ruleset. 4.0 is quite different from 3.x, so we won't be bringing our characters across, but that's OK with us. We tend to like a change every now and then. Playing low level characters can be just as much fun as the ultra powerful god like abominations you end up with. Before that, we need to find some closure to two compaigns, one a multiverse/planescape mind-fuck from Rich, and the other a Faerunian shadow-plagued knees-bent running-around power-fest from me.
I'm currently writing the latter and looking for inspiration. Reading the sourcebook 'Lost Empires of Faerun' is providing a good background. It won't be an easy adventure for the poor rich adventurers either. TPK is a viable end to the campaign. Heh.

Thursday, August 14, 2008

It's late.

It's late. I'm tired. I'm late to the blog scene. I'm tired from trying to keep up. I used to be cutting edge. All the time. Now I wait. And wait. Until it's almost mainstream. I also need to go to sleep.

unwritable.blogspot.com
Do you know how hard it is to choose a decent domain here? I think I did reasonably well. It has both a writing reference and a technology reference. Since I'll be writing a bit about technology, it should be at least forgivable.

Right. Sleep(28800000)....