Give Blood In Style

Rather an unusual request first thing in the morning.

"Do you have a spare 'wherewouldyouthink.com' T shirt, as I'm giving blood today?"

Apparently if you wear a long sleeved shirt, as Simon was doing, they can't easily stick the needle in. Fortunately I had one left (we are having another batch printed soon) and so he was able to go and take part with maximum style.

He offered me the shirt back afterwards. Er, thanks, but no thanks....

Which puts me in mind of a joke:

First Cannibal: "Sorry if this tastes a bit dry, but I caught him just as he was leaving the Blood Bank".
Second Cannibal : "It's alright, I've always rather liked Donor Kebabs"

Review : Applications = Code + Markup by Charles Petzold

I was kind of hoping that they wouldn't have it in stock since if they did I would make myself poorer. But there it was on the shelf. Browns in Hull had a copy of "Applications = Code + Markup" by Charles Petzold.  If you have any kind of history in Windows programming you will have come across Charles before. He wrote pretty much the definitive guide to programming Windows 3.1 way back in 1992 (I have a copy) and he has been writing new books about Windows programming ever since.

And now he has come up to date with the release of his book which tells you how to create programs which use the Windows Presentation Foundation (WPF) which is the way that you create user interfaces for Vista. I've been following the development of the book via his blog (which, although not as good as mine of course, is still worth a read).

I had kind of told myself that I would buy a copy if I happened to come across one, and on Saturday I found that Browns Bookstore in Hull had one in stock. And so I bought it. For the same price I could have got Lego Star Wars II for the XBOX 360, although I think I'll probably have more fun with the book to be honest (but I am a sad programmer).

I've been ploughing through it, but I'm nowhere near the end of its 1,000 or so pages. Charles Petzold writes very well, and I find the material very interesting. Some people might find the level of detail given a bit pernickety and distracting, but I really like it. And the other thing I really like is the approach taken.

I've been trying to make sense of XAML, (the markup language which lets you describe how your forms will appear to the user) and not having much fun or luck. As a programmer I want to get hold of the objects and control them programmatically, not by means of lots and lots of text. And although XAML lets me set up animations of bits and bobs (and you can have a lot of useless fun with this) as a person writing a program intended to do something I don't find the ability useful. Add to that the fact that the MSDN documentation is pretty appalling, actually telling you less than the IntelliSense in Visual Studio, and you have a recipe for frustration.

What the Petzold book does is put all the XAML stuff in the second half, and spends the first half telling programmers how to use the new user interface classes at a very high, and useful, level of detail. I've not reached the markup pages yet and I don't care. I'm too busy finding out how easy it is to lay out user interfaces which automatically design themselves when they load.

One of the very few things that I missed from Java when I switched to C# some time ago was the "GridBagLayout" manager. This was a swine to master, but when you got your head around it you could write displays which pretty much laid themselves out for whatever orientation and size of display you were using. In fact I missed it so much that when I moved to C# the first thing I did was write a layout manager.

With WPF something very similar to GridBagLayout is now available. And the way you use it is way better too. The book makes this clear and uses loads of examples to help you along the way. There are no screenshots though, which I initially found rather surprising. However, the good news is that this means you are encouraged to "code along" with the book, pulling up the examples and modifying them along with the text. This is a very good way to learn, and leaving out pictures means that the book can contain more text, which adds to the value.

In short, I think that this book will become as indispensable to the programmer as the earlier ones have, and if you want to learn how to do this stuff you should bag a copy. Amazon have it on a healthy discount which I wish I'd seen before I bought mine from a shop.

From Hero to Zero

I'm getting cross with my Guitar Hero game now. Although playing the game is great fun it does seem to have the knack of losing all my saved data. For the second time it has forgotten everything and lost all my hard earned progress. I'm pretty sure the game is at fault, in that the save file is there on the memory card (and I can copy it around and stuff) but the game just refuses to recognise it. Most annoying.

I think I'm going to put my PS2 version up for sale and then get the XBOX 360 version when it comes out.

Hull Fair

We went to Hull Fair tonight. We tried to go last year but it was pretty much full. So this time we set out early. We took the camera along, but minimal funds - just to be on the safe side.

269499443
The Freak Out ride. Scary, and one of the smaller ones

269499600
I just love the classy artwork on this one.

269499713
More "Hook a Pooh" than "Hook a Duck"

269499896
What you win if you aren't careful

269500073
I think this is my favourite fair picture

269500293
The one ride I actually went on. Note the attractive price and the fact that it does not seem capable of leaving the ground.

269500537
Or not

269500672
Look carefully. I'm third from the left. Yeah. Right.

We managed to escape only nine pounds down on the trip. But a cuddly monkey, four donuts, some nougat and some peanut brittle up. And it was a great night.

Shopping Thoughts

Went up town today (big surprise). I find that strange thoughts come to me as I wander round the shops.

We bought some shampoo for the guinea pigs. They have long hair (don't ask) and we have to keep it shiny clean. I was wondering if it had been tested on animals.

Then I went past the Early Learning Centre, where you can now buy a "Castle of Doom" for your tiny tots to play with. Only seventy quid. What kind message does this send to our newest citizens?

Scene : Christmas Morn

(FX : Sound of frantic unwrapping)

Child : "Oh daddy, it is just what I've always wanted. A dank place of total despair where all who enter can suffer torture and and a lingering death."
Father:  "Well, son, I just hope you'll play nicely with it."

The Importance of Meaning

I've found another interesting blog post. This one is about the way that Service Oriented Architecture (where you create applications from components which expose what they can do in terms of services that they provide via a network connection) may not be the way and the truth.

This is because although you could provide a service called "Sell Widget" you can only use it properly if you have a good understanding of the meaning of precisely what it will do - which is not something that is guaranteed.

On the way to his conclusion the author provides a nice description of the archicture. Worth a read.

New York Times in WPF

If you want to read the New York Times for free, and in style, head off down here and download the Times Reader beta. This is a Windows Presentation Foundation (WPF) program which lets you read the newspaper on your Windows XP or Windows Vista device.

For the moment they are offering open access to the service, and it really works quite well. The environment itself is super duper, and a splendid way to see what WPF can be made to deliver.

Confused of Hull

I'm confused. This is why. Say we lived in an age where restaurants are new and fangled. People have just discovered the option of eating out and they like it. So I decide to open a new restaurant. Only mine is special. It gives the food away.

Not surprisingly, once word gets out my little restaurant is going great guns. Queues around the block. At this point things get a bit weird. One of the other restaurants in the neighborhood (it doesn't serve food quite like mine, and it is making quite a good profit at the moment) decides to buy me out for a huge sum of money, and then let me keep going giving my food away.

I get given a huuge wad of cash for starting a food business with no obvious means of support. The other restaurant gets something which may never be profitable, but at least somebody else hasn't got their hands on it.

In case you hadn't spotted it, I'm really talking about YouTube and Google. I use both of them. Google quite a bit. YouTube now and then.

I just can't think of a way in which I could ever be persuaded to pay for what YouTube has to offer. Even if they only charged me mini-bucks to watch the videos I'd find something else which was free to do in my lunch hour. In my opinion the only business plan which could possibly have worked for the YouTube folks was to get famous and hope that somebody rich bought them up before their money ran out. Which, fortunately for them, was just what happened.

Google have just spent literally billions getting their hands on YouTube, and I'm baffled as to why they have done this.

(for some reason the Microsoft LiveWriter spell checker suggests Outnumber as a replacement for YouTube - this just confuses me even more)

Man Flu

I'm ill. My nose is not running. It is sprinting. I'm surrounded by tissues. My head feels as if someone has inflated a balloon full of porridge inside it. (not sure how I know this, but it does) 

I told number one wife that I was ill. Then I told her again as she brought me a cup of tea. She looked at me appraisingly. Apparently I have what is called "man flu". This is an illness which reduces a man to a useless, moaning wimp but has no effect whatsoever on women, who manage to just shrug off such minor afflictions and carry on regardless.

I was going to disagree. I was going to tell her never mind "Man Flu", that I was only keeping going at this restricted level thanks to my incredible mental strength and resilience. I was going to tell her that if she had what I've got she too would be laid out on the sofa and moaning.

But I didn't feel up to it. I just sipped my tea and asked for a chocolate biscuit.

I'm ill.

(but not too ill to write. I've just posted the latest episode of Trip Hazard. Book now for the movie..)

Busy Busy

Had a fairly quiet Sunday. Managed to mow the lawns (not sure why, every time I cut the grass the darned stuff grows back) and finished off the Moosaic program (I actually got my free samples from Moo last week and they are quite neat - next I'm going to make a 100 picture mosaic and see what it looks like). The program is working OK and I've got an installer too, but I have a rule that I play with my programs on a bunch of different machines before I send them out into the outside world, so it will be a couple of days before you can have a go at making your own Flickr mosaics...

Oh, and I've been dealing with a steady stream of emails from people who came to see us yesterday. Thank you for all the kind words, and if you haven't had a reply from me yet, I will get around to you tomorrow. We will also post out all the C# books then too.

Open Daze

We had an open day at the university today. Before hand we went up town to buy a few bits and bobs (I got two DVD collections - one six pounds and the other four - quality stuff). The light was good and I took the camera.

263061774
This is a view of the Hammonds Department Store. Impressive architecture when you notice it...

Then it was up to the university to give an open day talk. Before the talk Jon showed me this which was in a recent Develop magazine.

263062261
Quite cheering really, the quote is from a Microsoft XNA person.

Then we had a huuge turnout for people who want to see what we do. So many that they were sharing the glasses in the Hive (Hull Immersive Visual Environment). I took a picture of the audience with their 3D specs on...

263062474
Those shades really suit you.....

Thanks for coming folks, hope you enjoyed the presentations. Remember, if you have any questions, feel free to get in touch.

Cars and Horses

A car is a device which will take you from A to B. You turn a wheel and the machinery in it makes the car go in the desired direction. A horse is an animal which will let you sit on its back and might take you where you want to go. If you pull the reigns on a horse, and it agrees with that direction, it will go there. Sometimes, for no apparent reason, a horse will just take off. Or refuse to move.

I used to use a Toshiba M200 Tablet PC. This computer is a car. It does what I ask, when I ask. It just works. Lovely. Emboldened by this I then move on to a Toshiba M400 device. This computer is a horse. When it works, and you have the wind in your hair (metaphorically speaking) it is wonderful.

But every now and then it misbehaves. The screen goes dark and refuses to light up again. It freezes (usually in the middle of a presentation) and needs to be rebooted. Sometimes it slows down for no good reason. Some bits just don't work. At the moment it is just useful enough for me to live with the foibles. But if it locks up in the middle of a Software Engineering lecture again I may have to rethink its place in my life.....

Guitar Frenzy

One of the bad things which happened on Monday was that I found that my Guitar Hero saved game on the PS/2 had managed to corrupt itself. Unfortunately this meant that all the guitars, characters and, most importantly, songs, that number one son had spent ages unlocking were not available. This cramped the style of the party a little, in that we were down to 8 songs for the dueling. but it was still fun.

So tonight I decided to try and recover the situation myself. I've decided that losing all the saved game stuff is not a big deal. Because it means I can have all the fun of recreating it.

This is one wonderful game....

Green Green Grass of Google

Found an interesting blog post today. It is written by a bloke who works at Google (lucky chap).  If you are interested in the business of Software Engineering you really should read the post (and all the ensuing comments). It will take a while (I spent a whole lunch break reading it) but it is worth the effort.

If you think that things like computer programming are not prone to fashion and ideology the whole discussion should sort you out good and proper....