Friday, 30 January 2009

Maybe we're not living in a throwaway society?

My Panasonic DMR-E85H DVD HDD recorder start playing up just before Christmas. Every time I switched the mode from HDD to HDD the machine would crash and go into self check/crash cycle. Eventually it would come back on of its own accord. This seems to be a common problem with the model, but there was no clear fix I could find on the Internet. I've had the player near 4 years, so it's done reasonably well for a modern product.

Event though the lure of buying a new DVD HDD record with built in Freeview was very tempting, the £250 price tag wasn't (and I couldn't get one with blue ray), so I took it back to Richer Sounds to get it fixed. Although initially very helpful, they did nothing with the player for a week and told me it would take at least three weeks to be fixed once they'd sent it off. Also, the inspection fee was £35 and the base case fix scenario would be £70. If they couldn't fix I'd have lost £35 and have to buy a new player.

So I collected the machine and took it to Webster Technical Services instead who, ironically, were recommended by Richer Sounds. They only charge £20 for inspection and do everything on site. I had a phone call the next day saying that the player needed a new power IC and a few dry joints seeing to, it would cost a little over £50 and be ready the following week. Skeptical that a power problem would only show itself when going from HDD to DVD mode I agreed to have the repair done. Less that a week later I received a phone call to say it was ready, so I collected and paid for the player it's been functioning properly since.

The only disappointment I have is that I didn't get to buy a new toy, but at least I saved £200.

Underworld: Rise of the Lycans

I really like Kate Beckinsale in leather (or is it rubber?), so I was quite disappointed to find out that she wasn't in the new Underworld prequel. But then there's no reason she would be, it's set before her character is born (luckily a clip from Underworld with Kate in is shown at the end of the film). Rohna Mitra, who plays one of the lead characters Sonja goes some way towards making up for it.

Rise of the Lycans is different from the other films. Underworld and Underworld Evolution almost verged on sci-fi with their modern weapons and fast cars. Rise of the Lycans is set a few hundred years in the past and quite different, but just as good.

I don't think Bill Nighy knows how to put in a bad performance. He's superb and even stronger and more aggressive than in the other films. Micheal Sheen, now even more prominent in the story, puts in a much better performance than in the other films.

The only criticisms I have is that there isn't much of a story line and Viktor is clearly killed at the end and then turns up alive.

Agile Project Management

by Jim Highsmith (978-0321219770)

Agile Project Management (APM) was recommended to me by Allan Kelly, when I wanted to lean more about it and try and get a few pennies to drop. Allan's more than a little bit of an expert on project management and Agile in particular, so I take his recommendations seriously.

It's a good book. I know I say this about a lot of books, but it's probably more verbose than it needs to be. The first two or three chapters are a general discussion about project management and how APM differs and has more to offer.

Chapter 4 to Chapter 8 is a discussion on the principals and practices of APM. This is where the really interesting and informative material is. Given what I've heard about Agile, I was surprised by the fact that being an Agile project manager is a full time job and there is a fair amount of documentation, even if it is mostly to keep external stakeholders happy. What's important is to get the right amount of documentation and that is also made clear in the book. APM also encourages some upfront planning, but again just enough, so that the team has a clear vision of where the project is going. However, even these chapters I felt were verbose.

I feel I understand APM far more than I did before, but that there's still a lot to learn, that is mostly likely to come by doing. Although APM is meant to handle change, it still seems that change has to be controlled within an iteration. I still feel there's something I'm missing there.

Saturday, 24 January 2009


Threshold are everything I love abut music. They're everything I look for in a band: drama, passion. big heavy guitars, Gilmour solos, strong vocals that compliment the music like another instrument and layers of keyboards.

Forget Mercury May and even Lennon McCartney, Groom West is the best there is. I've always been a fan of big dramatic rock. Starting with Alice cooper and then progressing to Marillion, Pink Floyd, Dream Theatre, Evegrey and finally Threshold. They beat all the others hands down, even their modern contemporariness such as Stratovarius, Evergrey and Pagan's Mind.

Threshold are a progressive heavy metal band through and through. They're not heavy like Hypocrisy or Deicide, but they're closer to that than they are to Marillion or Pink Floyd. As a guitar writer and player I rate Groom up there with Gilmour and no one on this earth plays or writes for guitar like Gilmour (Knopfler, Clapton, May and Hendrix, although superb, cannot get close in my opinion).

Andrew “Mac” McDermott is a superb singer. I've always loved strong vocals. Until I discovered progressive metal I thought the strong female vocals in bands such as Nightwish and Within Temptation were as good as it could get. I've only seen Threshold with Mac singing once. Shortly before I was going to see them for the second time (having planned a very short honeymoon so that I could be back in time) he left the band to be replaced by original singer Damien Wilson. I have to admit that I was devastated. Mac's vocals are as much a part of the band for me as Carl Groom's guitar playing. The three pre-Mac albums, two of which featured Wilson, are not good albums musically and even less so vocally. However, Damien Wilson has performed superbly on both the occasions I have seen him with Threshold. I'm reserving final judgement until they record a new album with him, but I'd love to see Mac back in the band even more than I'd like to see Fish back in Marillion (even though I love everything Steve Hogarth did with them up until This Strange Engine), Freddie Mercury alive and back in Queen and all the members of Pink Floyd alive and back together (maybe Sebastian Bach back in Skid Row is pushing it?).

I discovered Threshold at the first ever ProgPower UK in 2006. Every band, except the head liners Therion, were new to me and I picked up all of their albums shortly after the gig. Firewind opened and blew everyone, including me, away and I expected them to have the best albums too, but it wasn't so. I spend most of the following year, including a summer working in Munich and an autumn and winter working at Canary Wharf listening to Threshold and not much else. They're that good. At about the same time I discovered Alistair Reynolds and the two go hand in hand and one always reminds me of the other.

Their best album is Critical Mass even though, like all of their albums, it's a bit preachy lyrically in places. The stand out song is Choices, but there isn't a bad song on the album. In fact there isn't a bad song on any album from Clone through to the most recent Dead Reckoning.

Sunday, 18 January 2009

Some things are guaranteed to make you happy....

It's January. My TR7 3.5ltr V8 (~175bhp) DHC (Drop Head Coupé) hasn't been started since September. The battery was flat and so was one of the tyres. Both were easily fixed yesterday and today he just roared into life, starting almost first time (he had to think about it for about 30 seconds). It's just a shame I couldn't drive him anywhere, especially as it's a warm day with clear blue skies.

Next I'd best get that tyre fixed, then an MOT, some tax and some insurance. There's plenty of time to save up and convince the wife before the summer....

Database Resource Cleanup Published in CVu

“...We've got a great selection of material in this issue, from Paul's excellent boiler plating article to...”

My Boiler Plating Database Resource Cleanup – Part I article has been published in the January 2009 (volume 20 issue 6) issue of the ACCU's CVu magazine.

It has a very nice introduction (see above) from the guest editor Faye Williams and even some feedback from a reader, Roger Orr. The icing on the cake would have been my name and picture on the front cover, but hey, you can't have everything. ;-)

Friday, 16 January 2009

Patterns of Enterprise Application Architecture (2)

by Martin Fowler (ISBN: 978-0321127426)

I've now finished reading all the patterns and it all makes very good sense. I am much happier about how I should be separating database code from domain models and it's always reassuring to read about patterns you didn't realise you were already using and to get a name for them.

In places it is heavy going, for someone like me without much formal Enterprise Application development experience. Some of the pattern descriptions are longer and go into more minute detail than are needed.

I was disappointed, as I usually am with pattern books to find that the use of singleton is encouraged, under certain circumstances, with no discussion of the disadvantages.

Martin Fowler is certainly one of my favourite technical anthers. I enjoy his sense of humour and his clear pragmatic approach to explaining things.

Saturday, 10 January 2009

Languages and the art of driving a car

It's no secret that I've been interviewing recently. Non-programmers often ask me what I am looking for and what skills are needed and why I do or don't offer people the positions. Telling them that I'm looking for Java or C# programmers or a DBA is not only an inadequate description, but also doesn't mean very much to them.

Recently I've taken to using the metaphor of learning to drive to describe the people I'm looking for. Lot's of people know the syntax of a programming language. Learning the language syntax is like learning to control a car. Fewer people know how to apply the language well and safely using patterns, best practice idioms, exception safety, etc. Learning to apply a language is like learning to drive a car well, learning to anticipate, knowing the rules of the road and sticking to the speed limit without loosing control. It was surprising how quickly people suddenly understood what I was looking for.

If only learning to use a language well was as easy as learning to drive.

Bedtime Stories

Charlotte and I have just got back from taking Jude to see Bedtime Stories:

Marty Bronson (Jonathan Pryce) who raises his son and daughter on his own has to sell his homey motel to clever Barry Nottingham (Richard Griffiths) who promises to make Marty's son manager, when he's grown up and has proven himself. Nottingham pulls down the motel to raise a pricey hotel. Although grown up, Marty's son Skeeter Bronson (Adam Sandler) works as a janitor and general servant, but unlikely as it seems, he still dreams of becoming the manager. When Nottingham announces a brand-new gigantic hotel project, he makes his future son-in-law, base Kendall (Guy Pierce), manager, shattering Skeeter's dream. At the same time Skeeter's sister Wendy (Courtney Cox) has to leave town for a job interview and asks him to alternate looking after her two children Patrick (Jonathan Morgan Heit) and Bobbi (Laura Ann Kesling) with Wendy's responsible-minded colleague Jill (Keri Russell). He doesn't get along with either Jill or the children, but his easy-goingness loosens them all up and once he starts telling his bedtime stories, the children grow fond of him and begin to bring in their ideas about how the stories should go. When the stories turn out to become true in real life, Skeeter tries to manoeuver the stories into a direction which will make his dream come true, too.

It's sounds horrific and given the other films we've taken Jude to see in the last year (Wall-E, Kung Foo Panda, etc) I feared the worst. I was pleasantly surprised!

The stories that come to life thing has been done so many times before (Jumanji , The Never Ending Story), but this is different and funny, even though there are all the usual underdog makes it big by the skin of his teeth and love interest clichés. We all thoroughly enjoyed it.

Russel Brand was just brilliant and I was really pleased he got the girl at the end. Adam Sandler was more anti-hero than hero though really. I spent most of the film thinking he was a complete arse, but Keri Russell played the perfect love interest.

Looking though the cast list later I was very surprised to find that Aspan (the evil hotel receptionist) was played by Lucy Lawless and had lost a significant amount of weight since her Xena days. She doesn't seem to have aged either and was totally urecognisable. At least in Battle Star Galactica you could clearly hear her distinct voice.

I'd recommend this film to others with children, but I'm not waiting with any anticipation for the sequel.

Friday, 9 January 2009

Abstract vs Abstraction

One of my favorite interview questions is to ask about the object orientation terms inheritance, polymorphism, encapsulation and abstraction. Most people have no problem with inheritance. Polymorphism usually makes people think, but they usually get to overriding which is good enough as I'm not currently interviewing C++ programmers. Most people equate encapsulation to data hiding and then I ask them to explain abstraction and the difference between it and encapsulation.

Almost without fail I get a description of the abstract keyword from Java or C#. So I explain that that abstract is a language feature and abstraction is about designing interfaces. This usually goes down well and we move on. I just find it absolutely astounding that almost every programmer I interview gets confused here.

Saturday, 3 January 2009

Patterns of Enterprise Application Architecture

by Martin Fowler (ISBN: 978-0321127426)

In the next 12 months I am likely to be designing and getting my team to build at least two Enterprise Applications. Although it's now something I realise I have done in the past (although not the way I'm likely to need to do it in the future) I only really became aware of what an Enterprise Application was in the last few days when I started Fowler's Patterns of Enterprise Application Architecture. I've just read Part I and have dropped a small mint in pennies. A lot of the concerns I have about developing the systems are addressed in the book. I've been concerned about all sorts of things such as:
  • Maintaining data integrity when it is accessed concurrently by multiple users
  • Whether services should be stateful or not
  • Strategies for distributing systems
  • Strategies for the client
All of these, and more, are covered by the book. It's a patterns book, so it doesn't give answers or a single way to fix problems. It describes a number of different possible approaches from different angles.

I'm about to start reading Part II of the book, which actually has the patterns.

Brian Goetz's Good Housekeeping Practices

It will have escaped very few readers of my blog, recent articles and conference presentation proposals that Java clean-up is my current obsession (if that's not too strong a word). Those of you who fall into that category should think yourselves lucky you don't have to work with me at the moment, as my team is getting it worse!

My frustration stems from the large amount of Java based material out there that just ignores the issues involved in cleaning up in Java. Maybe it's mindset that says the garbage collector and finalizers will handle everything. Even thought it appears to be well documented that finalizers are not called until garbage collection and then there is no guarantee that they will be called at all, the penny does not seem to drop with a lot of Java programmers, except those of course who have come from a real C++ background.

It's always reassuring to find evidence that other people have been thinking along the same lines as yourself, so I was very grateful when Hubert Matthews was kind enough to point me in the direction of Brian Goetz's Good housekeeping practices article.

Friday, 2 January 2009

Of Laptops and Meetings

"Please, don’t take your laptops to meetings. And if you do leave them powered down." Read more

I couldn't agree more. It's not just meetings, but conference presentations too.