Star Wars: A Musical Journey
I forgot to post about this at the time, but myself, Paula and Chris went to see Star Wars: A Musical Journey at the O2 Arena in London on April 10th.
Discussions went back and forth about the best way to get down there, who was going, whether we were staying overnight, who was going to look after Evie, etc, etc. At one point, it was turning into a mini family holiday, with my mum and dad coming with us to look after Evie while we attended the concert, us all stopping in a hotel overnight, then coming back the following day. In the end, Evie stayed at home and my folks looked after her, while Paula, Chris and I went to the concert by car, mainly because that was the easiest and (more importantly) the cheapest option. The 8+ hours of driving weren’t ideal, and we didn’t get back home until around 2:30am, but I coped better than I thought I would. The tiredness that I was expecting didn’t hit me until the following afternoon.
The concert itself was excellent. Anthony Daniels (yes, that Anthony Daniels*) was the narrator, and introduced the various musical sequences. While the orchestra was playing these, clips from the six Star Wars films were shown on a large video screen behind the orchestra. Some of the clips were silent, while others had dialogue and sound effects. Certain sequences worked better than others, but there’s nothing quite like seeing an orchestra and choir in full flow, especially when performing music that you know and love. Oh, and there were frikkin’ laser beams too!
We saw a couple of famous faces there (famous in Star Wars circles, at any rate): Warwick Davies (Wicket the Ewok) and Jeremy Bulloch (the guy in the Boba Fett costume). The only bummer from my point of view was that George Lucas apparently turned-up on the second night, hence we missed him. :O(
* Mr C-3PO, for the uninitiated.
C’mon!
I have a bit of a chequered history with cars. When I first met Paula, I didn’t have one, and hadn’t even passed my driving test. Needless to say, with her living in Blackburn and me in Chester this wasn’t an ideal situation. By the end of that year I managed to scrape through my practical test, and bought my mum’s old car off her. This was a Nissan Sunny, first registered in 1983 if memory serves, and was second-hand when my dad first bought it. Given the Sunny’s age and the weekly trips up and down the M56/M6 between Chester and Blackburn, it wasn’t long before I’d basically run it into the ground and the brakes started to lock-up (or something: my knowledge of car mechanics is somewhat sketchy). Luckily, by this time Paula and I had moved into our own place, and were able to share the use of her car, a ‘99 Toyota Yaris. (I bequethed the Sunny to our Chris, who tried (and failed) to get the brakes working before giving up and selling it to some guy for scrap.)
When Paula became pregnant with Evie, we knew that a small 3-door hatchback wasn’t really going to cut-it and that we’d have to buy a larger car with at least five doors so that we’d be able to get Evie in-and-out easily. After looking around at various MPVs, we got an amazing deal on a brand-new Renault Scenic from a dealer near Sheffield. At this point, I inherited the Yaris as my ‘work-and-back’ vehicle.
That was mid-2007. Little more than a year later, it was becoming clear that the Yaris wouldn’t last us much longer. It failed its MOT on a number of points, and it cost several hundred pounds to sort those problems out. Added to that the engine had started making strange noises, and seemed to want its oil replacing all the time. Whether it had been my driving that had killed the little car I wasn’t sure, but it seemed obvious that it was going to start costing more and more money each year to keep it on the road. I felt we had no choice but to start looking for a replacement vehicle.
And so it was a few weeks ago that we took delivery of a new ‘09-plate Vauxhall Corsa. I wasn’t specifically looking for a brand-new car, but we again ended-up with a great deal that wasn’t much more expensive than buying second-hand. We traded-in the Yaris for recycling, which also saved us some money.
Having driven the Corsa for a few weeks, first impressions are mixed. I like the styling of the vehicle, both inside and out, and it’s got all the stuff I’d consider essential for a new car such as power steering, CD player, leccy windows and air con. However, for some reason it feels quite sluggish to drive: it takes ages to get up to a decent speed, and going uphill is particularly painful. I can easily lose 15-20mph going uphill on a motorway or dual carriageway, even when flooring the accelerator. I know it’s only a 1.2 litre engine, but still. Personally I reckon there’s something wrong with the car, but the dealer said to give it 1000 miles or so before bringing it in for them to look at, so we’ll see.
At least I know why they use the “C’mon!” slogan in their advertising: I’m muttering that under my breath all the damn time now!
Using a custom WndProc in WPF apps
Posted by Steve in Programming on March 19th, 2009
A current project at work needs to be able to respond to USB ‘thumb’ drives being inserted and removed. In Windows, such notifications are handled by processing the WM_DEVICECHANGE message. Using Windows Forms this is reasonably straightforward: the Form class has a protected WndProc method that can be overridden, like so:
protected override void WndProc(ref Message m)
{
if (m.Msg == WM_DEVICECHANGE)
{
// Handle WM_DEVICECHANGE...
}
base.WndProc(ref m);
}
Unfortunately the same technique cannot be used in WPF applications. The spiritual equivalent of the Form class in WPF is Window, which has no WndProc method to override. So what to do?
Money’s too tight (to mention)
The Rands family budget is seriously stretched these days. On top of all the usual household bills, we’re having to replace Paula’s trusty Toyota Yaris with a new car, and we’re also looking to get Evie into a nursery for a couple of days per week. We don’t have an extravagant lifestyle by any means, which means we’re having to economise in other areas.
First to be trimmed was the Sky subscription. We’ve gone from having the full package (basically all the channels plus movies and sports) to just the Variety and Kids packs. This means we still get the free-to-air channels plus stuff like Sky 1 (important for Lost, BSG, etc) and all of the kiddie channels that Evie watches. We’re still paying for HD, so the subscription is now £27.50 per month as opposed to £57, but it’s a reasonable saving. The only thing I’m really gonna miss is the occasional Liverpool match on Sky Sports (crappy timing given the trip to United this weekend, but there you go).
Next on the list was our broadband service. We’ve been with Zen Internet since we moved here in 2004, and although I’ve been totally satisfied with their service it’s well known that Zen are one of the more expensive ISPs. Then again, you get what you pay for, and I didn’t fancy the idea of switching providers to save a few quid only to lose our rock-solid connection. So I decided to stay with Zen, but switch from our current unlimited product to one of their capped services. At home we mainly use the internet for email and web browsing, so the capping isn’t going to affect us much, if at all. Added to that, the capped service is not only cheaper but also faster: we’ve gone from paying around £24 per month for a half-meg service, to paying just over £17 for a 3½ Mbps service. No complaints so far: the regrade went without a hitch, and our connection seems as reliable as ever. Kudos to Zen! No surprise they’ve won the PC Pro Best ISP Award for the past five years in a row.
Reducing the amount of money we spend on TV and broadband is a start, but we’re still looking to make savings elsewhere. Even then, Paula’s still going to have to go back to work part-time so that we can afford to place Evie in a nursery. When did life get so damn expensive?
New year, new job
The last time I posted about my job, I was working for Moneysupermarket.com. I suffered through that for about a year, then escaped to work for a company called Legal Marketing Services. Another year passed, then I was made redundant (curse you, Credit Crunch!). Fortunately however, I managed to find a new job at the start of this year: my current employer is a company called SeaTechnik.
I haven’t really enjoyed my job for years, ever since I met my wife-to-be in fact. Whether that’s coincidence or not I don’t know; priorities change when someone special enters your life, that’s for sure. Nevertheless there’s no reason why you can’t be content at work also. Several years ago, I had the good fortune to wind-up in a job where I had a fantastic working relationship with my colleagues, and where I had the opportunity to help design and code a new front- and back-end system more-or-less from scratch. Ever since I left that job, and stopped working with those people, work has never been the same for me. Although I’ve done interesting stuff since, and worked with some nice people, I’ve never experienced the same team spirit, nor cared as much about the end product.
Hopefully, this is all now starting to change. It’s early days at SeaTechnik, but already the signs are very encouraging. I’m using cutting-edge .Net stuff like Windows Presentation Foundation and Windows Communication Foundation, and being given a lot of leeway to design and code the final product as I see fit. I haven’t felt as energised about what I’ve been doing since back when I was working on the Amber project with Rob and John. My colleagues and superiors seem to trust that I know what I’m doing, and that’s something I’ve not experienced for quite some time now. Long may it continue.
Back again
I thought it was about time the blog received some much-needed attention. I’ve finally upgraded to the latest version of WordPress (2.7), and found a new visual theme which I really like. Obviously a lot has happened since I last posted over a year ago; hopefully I’ll get around to talking about it soon. My intention now is to blog more frequently, but in smaller chunks, so that I don’t sweat over what I’m writing so much. We’ll see how it goes.
iPod Touch firmware 1.1.3 declared a waste of time
The latest iPod Touch firmware was released after MacWorld, along with an update to iTunes, so I upgraded both the other day. iTunes first: a hefty 64Mb if memory serves, which required a reboot of the laptop after installation. Then I plugged in the Touch, and iTunes notified me of the 1.1.3 firmware update. 165Mb? Jeez! What do they put in these things, that’s obscene. Maybe they forgot to compress it or something.
Anyway, after a couple of hours the update had downloaded, and I watched anxiously while the iPod rebooted itself. Luckily, all seemed to go well, and I was left looking at the new home screen… which looks pretty much the same as the old one to be honest. The dock area at the bottom now has a different background, and some of the icons have been swapped around (I’m pretty certain YouTube was second on the first row before the update). And er, that’s pretty much it. When watching videos, you can now access a ‘Chapter Stops’ screen to jump directly to a particular chapter without having to scan through them sequentially or use the scrubber. I can’t see any other visible changes, and none of the bugs I mentioned previously have been fixed (albums with same name glitch; compilation artists showing up in main artists list). Also, you still can’t select a 12-hour clock if you use the London time zone.
So all in all 1.1.3 is basically a waste of time for those of us not prepared to fork out the $20 (£13) for those five applets that iPhone users already have and that should have been in the Touch from the beginning. Thanks Apple, but no thanks. Of course, they’re under no obligation to provide the applets for free, but c’mon, this is basically the same code that’s already been written for the iPhone and given away gratis. I think it says it all that the ability to view lyrics is part of the paid January Software Upgrade rather than being part of the firmware update. Miserable b’stards.
But the most annoying part of all this? Every single time I connect my iPod Touch to the computer now, iTunes displays that damn page about the January Software Upgrade, and there doesn’t seem to be a way of stopping it from doing so. Sure, you can click the ‘Bug Me Later’ button, but that’s only a temporary solution. Stop forcing this update down my throat Apple: I’m just trying to sync my iPod, for crying out loud.
Apple iPod Touch: it’s a love-hate* thing
This year**, I received an iPod Touch as my main Christmas gift (16GB version, natch). Given that the thing is so damn expensive it was a three-way split between Paula, my folks and me, and hence not a surprise because I paid for some of it!
First impressions are very favourable. The device is reasonably thin (around 8mm), and extremely well built, as you’d expect from Apple. There are only two buttons: the on/off switch on the top edge, and the round ‘home’ button at the bottom of the fascia. Initially I had trouble figuring out how to turn the damn thing off though. Turns out you have to hold down the on/off switch for a bit, then a slider appears on-screen which you have to, er, slide to turn the iPod off.
The screen, as you probably know, responds to touch (hence the minimalist controls compared to standard iPods). In a word: it’s gorgeous (hang on, that’s two words). Bright, with vibrant colours, it’s superb for viewing photos and especially videos. Definitely a fingerprint magnet though.
However, the major triumph (as far as I’m concerned) is the Touch’s user interface, which is both easy to understand and a joy to use. It also looks fantastic: text is easy to read, even at small sizes, and there are graphical flourishes everywhere that bring a smile to your face (then again, I’m a sad geek when it comes to UIs). The on-screen keyboard that appears during text entry is a tad on the small side, but only those with the chubbiest digits would really have any major trouble with it: the rest of us just need to type a bit slower, and avoid using our thumbs!
I do have a few quibbles though. The Touch automatically locks itself and switches off the screen after a certain period of time: this delay is configurable in the UI, but obviously the longer the delay the more you’ll eat into the battery life. I don’t have an issue with this locking per se, however as there are no external buttons for controlling the volume, pausing or changing tracks, this has to be done using the relevant on-screen controls. What’s not immediately obvious is that you can double-tap the home button to overlay volume and transport controls on the current screen, and this works even when the Touch is locked so at least you don’t have to ’slide to unlock’ first. Regardless, it’s still not as convenient as hardware controls (you have to be able to see the screen for one thing), and I’m sure Apple will fix it in future hardware revisions (after all, even the iPhone has a volume control button).
My other issues are with the firmware, and are much more annoying. First, browsing albums doesn’t work properly if several albums share the same name, even if those albums are by different artists. Think “Greatest Hits” albums, for example. The net effect is that only one of the albums will appear in coverflow, but this one album will include tracks from the other albums having the same name. So if your iTunes library contained “Greatest Hits” by Queen and “Greatest Hits” by the Bangles (yeah, okay, stop sniggering at the back), then only the Queen album would appear in coverflow: tap it, and the track listing would show all of the Bangles “Greatest Hits” tracks as well as the Queen ones. This bug (and I do consider it a bug) also affects iTunes, but can be worked-around to some extent by using the album sort tags. Unfortunately, these tags seem to be ignored on the Touch, hence the only practical solution is to rename the album itself so that it is then unique. At the moment I’m adding the artist name to the end of the album title, like so: “Greatest Hits [Queen]“. Very clumsy.
My second gripe concerns compilation albums (why does so much hardware and software have trouble dealing with these?). In iTunes, you can tag a track as belonging to a compilation album. When viewing a list of artists on the iPod, those who have only contributed to compilation albums are not supposed to appear in the list, thus stopping those ‘one-hit wonders’ from cluttering things up. However, on the Touch this feature is broken, and the artists list contains everybody. I mean, I’ve got Acker Bilk in my artists list for crying out loud, just because he performed one poxy track on an ‘oldies’ compilation. Again, I consider it a bug because the other iPod models (eg. the latest Classic and Nano) don’t do this. As a workaround, I’m using the ’sort artist’ tag in iTunes to group all such artists together at the end of the artists list on the iPod: still in the list unfortunately, but at least they’re not interspersed with everyone else.
There are rumours of an iPod Touch firmware upgrade being released to coincide with Macworld Expo next week, and I sincerely hope these two issues get sorted. Okay, they’re minor issues in the grand scheme of things, and it seems a little churlish to complain about them when the rest of the device is so fantastic, but hey, there’s always room for improvement, right?
* maybe ‘hate’ is too strong a word, but “it’s a love-minor quibbles thing” doesn’t have the same ring to it
** well, technically it’s last year now
What to make of the new Anfield?
The official Liverpool FC site has today posted a video about the new Anfield stadium design. Be aware that the majority of this video is just talking heads stuff: the stadium fly-by simulation only kicks-in around the five-and-a-half-minute mark.
To be honest, I’m still not sure what to make of it. Call me a traditionalist, but I kind of preferred the old design from before the Gillett and Hicks takeover. Sure, the new plans are bold and certainly different, but my worry would be how well the design would age. Are we going to be looking at the stadium in twenty or even ten years and saying “what were they thinking”? Will it be viewed as a bit of an eyesore, an embarrassment even?
(And pity those fans on the new Kop come a sunny day, with that enormous glass window behind them!)
Still, the really important thing is what happens on the pitch. We’ve made a solid if unspectacular start to the season, but the real work starts on Sunday against Chelsea. I hope Gerrard is actually fit enough to play despite his foot problem; if not, we could be asking for trouble in more ways than one. Also, it would be nice if Evie could manage to stay awake during this match after sleeping through the entire Villa game last weekend.
The Sonos experience
I’ve been lusting after a Sonos system for around a year-and-a-half now, ever since reading a review of the kit in PC Pro magazine.
For the uninitiated, Sonos (or the Sonos Digital Music System, to give it its full title) is a set of components that let you stream digital audio around your home. There are basically two bits of hardware: ZonePlayers, that actually play the music through an attached amplifier or pair of speakers; and Controllers, paperback-sized bricks with a scroll wheel and colour LCD screen that are used to choose what the ZonePlayers should be playing. The Controllers are supposedly optional, in that each ZonePlayer comes with software you can install on a PC or Mac that will replicate the functionality of the Controller, thus allowing you to control the ZonePlayers via your computer. In reality, one of the main attractions of the system is in using the hardware Controller to browse through and play your music collection. I doubt many people end-up buying a system without a Controller.
Up to 32 ZonePlayers can be ‘connected’ to each other via wired or wireless ethernet, and then controlled via a single Controller. Each ZonePlayer (referred to as a ‘zone’) can play a different track, or individual zones can be linked such that they play the same track. So you could have two ZonePlayers, one in the lounge and the other in the bedroom for example, both playing the same song, in perfect sync with each other.
