Sunday, 28 December 2008

Defenders of the Faith II

I've just booked tickets and accommodation for the second Metal Hammer Defenders of the Faith featuring a co-head liners Dimmu Borgir and Lamb of God in Birmingham on Thursday 12 February 2009.

I've seen Dimmu Borgir a couple of times before (once recently at Bloodstock), but I've been desperate to see Lamb of God since I was introduced to thier latest album Sacrament last year. It will be well worth two days holiday and a drive to Brum.

Project Management: Best Practices for IT Professions

by Richard Murch (ISBN: 978-0130219145 )

Although I have actively, and sometimes passionately, resisted the move into any sort of management beyond team / technical leading for many years, I'm finding recently that I'm becoming more interested in project management. It's a sobering fact that where I am now I have a team and I need to manage them better.

Project Management by Richard Murch was (how shall I put it?) strongly recommended and presented to me by my current boss. It's a reasonably sized hardback book at 220 pages, plus appendices. The information on each page is, in most cases, both verbose and spread out, so it could have been a much smaller book. I would have scrubbed the final chapter on the internet altogether until I noticed the publication date of October 2000. It's a book of its time and therefore describes the more traditional project management techniques based around quite lot of documentation and rigid process. As such there is no mention of XP or Agile, neither of which could be ignored in a modern text. I read it cover to appendices in a little over a week and I learnt a lot.

There were a few things that irritated me about the book. Murch states very early on that all projects must cater for change. I couldn't agree with him more, but in several other places in the book he talks about eliminating scope creep. I may be being a little harsh as most of the scope creep Murch refers to is the “wouldn't it be nice if” type. What he seems to have missed is that all scopes in software development creep. The reason they creep is that software engineers strive to give users what they asked for and, invariably, users ask for what they think they want, not what they actually need. Any well managed project will have the users involved from beginning to end (a point Murch does make) and as the users see what they're getting they're able to help direct the engineers to what they actually need and scope creeps. Scope creep could of course be eliminated by gathering requirements and then isolating the users until the project is complete, but then the users wont have what they need.

The book also shows its age when describing testing. Unit Testing no longer refers to testing a unit of work. It is an automated test testing a single unit such as a class. These test should be written by the software engineer and not left to another party following development.

I haven't encountered Rapid Application Development (RAD) in the project management sense before. From Murch's description it sounds like the only teams it would suit are those that are simply stringing together existing components, where there is no learning to be done and very little to zero chance of scope creep. This seams totally unrealistic to me. Software engineers innovate and to innovate they have to learn. When people are learning they make mistakes and RAD doesn't allow for mistakes.

That said, let me reiterate that I learnt a lot and there is plenty of good advice in this book. As I read it I made a list of the things to remember and to try and make use of. I ended up with 19 points and page numbers. To my surprise a lot of these did revolve around documentation, but I still feel it should be minimal and I'm still undecided about how much should be hard-copy and how much electronic.

Murch states that project managers should stay positive (P.15) about all aspects of the project while, at the same time, be able to handle often relentless stress (P.18). This is a very accurate observation that all project managers should bear in mind.

A lot, but not all, software engineers and managers are aware of the risks that might effect their projects. Murch talks about risk management objectives (P.163) and documenting and constantly reviewing risks that effect the project. The scoring system and examples presented are sensible and I can see them being useful. Once identified, all risks should have a risk management plan (P.166). This all makes perfect sense, especially when you consider “the first step in avoiding a trap is knowing of its existence”. This way there are less surprises for all concerned.

Software engineers are often left to battle on with a problem on their own, be it pride or the illusion that someone else's time is better spent on a separate problem or on development. Murch points out that problems are solved quicker and more easily when more than one person investigates the problem (divide and conquer P.176). He also describes a repeatable problem solving methodology (P.177) that helps the team to understand and document the problem for future reference, plan and implement a solution.

Problems do occur in projects. In most cases these problems are fixed and the team assigns them to history and moves on. This kills the learning process as soon as the problem is fixed, which leaves it liable for repetition in the future. Murch describes Lessons Learned reviews (P.28) which are a type of post mortem designed to help the team learn from problems and mistakes to help avoid them in the future.

All projects, even Agile and XP projects need a project plan (P.41) and no project should be started without one. Projects should be divided up into phases and/or milestones with a phase check list (P.64) so that it is clear to the team and to project and senior management if a phase has been completed successfully. Regular project review reports (P.32) enable the team, the project manager and senior managers to monitor and understand the progress of the project. Projects also need a set of standards (P.29) that are reviewed regularly to make sure that everyone is producing the right level of quality.

Murch explains, as we all know, that people are the most important part of any project. It is important to retain staff and make them feel secure. Murch suggests that the best way of doing this is with incentive packages, usually consisting of a high salary, options, dental plans etc. Although I agree (what software engineer wouldn't) the people you work with are often the biggest factor. Therefore, when expanding the team, it is vitally important to find people who will fit into the team, not just those that are the right price or have the right level of technical skill. Evaluating the skills within the team over time (P.24) is important. It helps make sure that team members learn and maintain the skills that are going to be of most use to the team currently and in the future.

Murch describes two roles that would be useful in any team: A scribe (P.157) who is responsible for recording and collating discussion in any team meeting (formal or otherwise) and a release manager (P.193) who is responsible for overseeing releases, release planning and managing any problems that arise.

I wouldn't recommend this book as an absolute or only guide to project management, especially as it is so out of date, but it is a good place to start if you are going on to read other things. As for me, I have Agile Project Management: Creating Innovative Products (ISBN: 978-0321219770) lined up next.

Tuesday, 23 December 2008

Effecient PC

Until recently I hadn't bought a desktop PC for over five years and in that time I'd only bought one laptop (IBM T60 that I'm still very fond of). When I got the money out of my limited company I decided to get a few things, one of which was a new PC. I wanted something with lots of RAM a fast processor and Windows Vista.

Efficient PC was suggested to me and they seemed to have what I was looking for so I ordered an Ori with:
  • Phenom Quad Core 9950
  • 4GB of RAM
  • Nvidia Geforce 8600GT 512MB
  • Netgear 108Mbps Wireless
  • Ubunto
  • Windows Vista
What I received was a beautiful black tower and a seriously quick machine even following Windows Vista patching. The setup of the network card was a little problematic, but straight forward once I got the hang of the right configuration utility.

The first machine I received did have one major problem. It reset (not rebooted!) itself randomly, even when in use. After getting in contact with Efficient PC they took the machine back and traced the fault to the hard disk. Unfortunately it came back to me with the same problem, so I had to send it back again.

After about a week and a lot of hard work on the part of Efficient PC I was sent a replacement machine and I haven't had a problem since. It looks like the first PC was just one of those rare machines where there is an untraceable fault.

The two most important points for me are that I now have a very quick machine and the customer service I got from Efficient PC was superb. I would certainly use them again and would encourage other too as well.

Mark Steel

Charlotte and I continued our love affair with Norwich Play House and Comedy last week with Mark Steel.

I've heard Mark on the radio on a number of Radio 2 and Radio 4 comedy shows, but I've never realised how political he was. Having said that he made a lot of sense.

We sat right in the centre of the front row again, but luckily we were ignored this time. In fact he didn't pick on anyone in the crowd who wasn't either late or didn't heckle on him first.

We had a thoroughly enjoyable evening. Mark was on stage for over two hours, with a interval. Very good value for money and we'll certainly go and see him again.

The Prefect

I have now read all of Alistair Reynolds Revelation spaces books and I loved every one.

The Prefect was no different. It took a little while to get into, but once the plot started to emerge it was very addictive. It is set in the Glitter Band before the Melding Plague and takes an interesting look at Demarchist society and how it works.

There are plenty of references to the eighty, the Sylvest's and the Shrouders. Along with an explanation of what really happened to one character from the original Revelation Space novel.

The only complaint I have about the book is that, like Absolution Gap, it does not really reach a conclusion. It just ends and leaves a lot to the readers imagination. I am hoping that in both book's cases, this is so that Reynolds can pick up the stories and elaborate further in future books.

I am now intending to take a brief pause and revisit CS Lewis and read some more Richard Morgan before tackling Reynold's non-Revelation Space based books.

(ISBN: 978-0575082182)

ACCU London Christmas Party 2009

I think the credit crunch is getting everyone. This year's ACCU London Christmas party at Pizza Express was well attended as usual, but a number of the usual suspects were missing. This does of course mean that there were some new faces and even some old ones that don't make it out so often.

There was a worrying about of technical discussion. Maybe I'll go back to drinking for next year.

A small delegation went to the usual ACCU haunt (Chandos) where the good time continued for a short time.

I was staying with friends on Isle of Dogs and thoroughly enjoyed the walk from Trafalgar Square to Westminster to pick up the Jubilee line to Canary Wharf. It was strange seeing the Lehman's building with half the lights out and the illuminated green band missing from the top.

Monday, 22 December 2008

See you at the ACCU Conference

I heard today that my Boiler Plating Database Resource Cleanup proposal has been accepted for the 2009 ACCU Conference.

Obviously, I'm very pleased as I was unable to go last year and many people have already asked me if I'll be going in 2009. I can now say that I will be there for at least one day and hopefully the duration.

I will also be presenting Boiler Plating Database Resource Cleanup at ACCU London in February. Watch this space for details.

Sunday, 7 December 2008

MP3 Player with DAB and FM Radio

Ever since I've been thinking about getting a Blackberry I've also been trying to find an MP3 player with a DAB and FM radio, as the Blackberry doesn't have any sort of radio and I do listen to it on the move quite a lot. As soon as I started looking I found several MP3 players with DAB radios, but they all had one draw back or another (funny size, strange shape, odd aerial attachment etc). Then, almost by accident I stumbled on the Cowon iAudio D2 16GB MP3 Player with DAB Digital Radio:

Affordable PMP

The iAudio D2 does not compromise quality and features for its compact size. Cowon provides the latest innovations in digital multimedia technology to provide incredible video and audio quality. The D2 supports QVGA 320x240, 30fps video files and audio files including the high quality lossless codecs such as FLAC and OGG, along with the usual MP3, WMA and WAV. The D2 also provides a TV output for seamless transfer of your viewing onto the comfort of your living room TV. D2 now includes DAB Digital radio, alongside traditional FM radio - for peerless sound quality and ease of use.

Super High Quality 2.5" 16 million colour QVGA LCD Touch Screen

Raise your viewing standard with the D2's class-leading 16 million colour 24 bit LCD touch screen. You will experience finer details with richer colours from your favourite pictures and movies like you've never experienced before!

DAB Radio - Cowon leads the way

The first mainstream DAP manufacturer to include DAB digital radio with a headline player, iAudio have ensured that the DAB quality matches the rest of the D2's class leading abilities. Without a doubt, the best portable DAB radio available, it adds another feature to make the D2 the most complete player available today!

Sets New Standards for Touch Screen with Virtual click

An overlay navigation function shows the playback screen during video playback and lets you enjoy the convenience of navigating through other contents in your player. Detailed information such as file size, pixel resolution and format can be viewed while browsing through files that increase the fun of navigation.

Music - 52 hours, Movies - 10 hours of continuous playback!

The D2's long-lasting built-in rechargable battery provides an incredible 10 hours of video with up to 52 hours of music playback on a single charge! Wherever you go, free yourself from worrying about unexpected interruption of your music. The D2 can be charged via USB cable or standard wall adaptor.

Memory Card Extension

You will never run out of memory with the D2. Build in SD slot allows you to transfer freely from/to other digital devices such as digital camera, PDA and more.

Supported Memory: SD, SDHC (up 20 32GB) MMC, MMC-plus

Unrivaled Sound Quality
Class leading 74mW Power

The Legend Continues! iAudio, renowned for best sounding players, writes a new chapter in its dynamic and innovative history with the D2! BBE, Mach3Bass, MP Enhance, STE, customisable 5 band EQ accompanied by powerful output - your music will never sound better! The D2's power rating is amongst the best in its class (74mW@16ohm)
  • Max output - 76mW@16ohm
  • 5 Band EQ - Normal, Rock, Jazz, Classic, Pop, Vocal, User
  • BBE - Adds clarity to music
  • Mach3Bass - Bass Booster that enhances super low-end bass
  • MP Enhance - Sound effect that compensates for lost parts of MP£ encoded sound
  • 3D Surround - Three-dimensional sound effect
  • Stereo Enhance - Enhanced stereo and wider sound stage
  • Pan - Left/right balance adjustment

TV out

sharing memories with your loved ones has never been easier. Watch it, read it, view it on your big screen TV or high resolution monitor. TV-Out is now standard on the iAudio D2

Multi Purpose Touchpen, Stylus and Kickstand

A multi purpose stylus & touchpen is provided for accurate pointing. It can also be used as a kickstand for extended viewing.

Now all I need to do is find someone stupid enough to buy me one.....

Wednesday, 3 December 2008

Software Engineer - Norwich

A development role writing critical web-based business process software using predominantly Java based technologies... Read more.