Links for Software Engineers

Pot Pourri

I was talking to our .NET Development Postgrad students and we decided that there were a few things that you should be familiar with if you want to become a “proper” Software Engineer. These are the things I think you should do:

Read “Code Complete 2” by Steve McConnell. Perhaps the best book ever on software construction.  Then keep your copy where it is handy, and have a policy of reading a bit now and then, just to keep up to speed. If you can track down a copy of “Rapid Development” you should read this to.

Read I.M. Wright’s “Hard Code” blog. And buy the book if you like.

Read “How to be a Programmer”. Excellent stuff.

This is not everything you should do. There are other good places to look. But it is a start. Oh, and if anyone out there has other ideas about good, pragmatic texts for budding coders, then let me know and I’ll add them.

Tag those T-Shirts

4328713408

I spent some time this morning working on the logo for the 2010 Where Would You Think T-Shirts. We give these away to guests who attend our Admissions Open Days in the department and they have a slightly different design each year.

The release of the design is of course an event eagerly awaited by the fashion press, and it is rumoured that Chanel, Christian Dior and Yves Saint-Laurent actually hold back releasing their spring collections until they see what we have come up with.

The byword this year is “Tag chic”. You can point your cameraphone at the design and the magic of Microsoft Tag will take you to our admissions community site.

Microsoft Inspiration Tour with Andy Sithers

4328710276

One of the people in this picture is a Microsoft employee. See if you can spot him. Clue: He has his eyes shut….

4328713162

..and in case the other side of the room were feeling left out…

Andy Sithers from Microsoft came to see us today. We  all went for a meal in Staff House, had a quick meeting with the Imagine Cup teams to discuss their entries (looking good people) and then he gave a presentation as part of the Inspiration Tour. Great fun.  He dished out some hoodies and T shirts as prizes and then left me with some which I’m going to give the team that comes up with the best looking game idea to enter into the Game Design Challenge for the Imagine Cup.  One of the hoodies that was left is XL, i.e. my size. Better get those ideas in before the end of the month folks, or I’ll have something new to wear…

Angry Rob

4327987229

I got very angry tonight. Banging the table angry. Not like me at all. Really. I was recording another in the XNA Screencast series (you can find the previous ones here). Normally I do the whole thing in one continuous take. That’s not to say that everything always goes right, it is just that I try and keep going whatever happens.

Anyhoo, this time I made a rather serious blunder, and was forced to stop and re-record a section which I then had to tidy up. Big mistake. The program I was using to prepare the screencast has an interesting foible on my machine. When editing things the mark points are never where you think they are. Whenever I cut out a phrase the program actually removed out another part of the soundtrack so editing just got more and more frustrating as I tried to compensate by cutting the “wrong” parts in the hope I would get what I wanted. I didn’t. In the end number one wife came in to find me thumping my desk with annoyance and told me I was being stupid, which I was.

Eventually I figured out that by cunning use of the undo command I could refine my edits to the point where I actually got what I wanted. And it only took me an extra hour or so. I’ve now resolved not to bash the desk any more. It doesn’t achieve much. And it hurts.

Resources from Rob

4326495458

A couple of new resource postings you might have missed:

  • Find out how to load images into your Flash/Chumby programs here.
  • Find out how to reset your TinyCLR Micro Framework device if it has got stuck here.

I’ve just about got my JSON serialiser working to send and receive JSON structured messages between the Micro Framework robot and another machine. When I’ve got the whole thing sorted I’ll post all the source. It lets you create message frameworks and then push status information between two systems.

Windows 7 Tablet Madness

4321608147

I think I’m on a quest to find the smallest and slowest computers around and then put Windows 7 on them. Latest contender is my venerable old Fujitsu Stylistic Tablet PC. One of the first tablet PCs ever, this boasts a mighty 800MHz processor and 512MBytes of ram.  I had this idea that, in the absence of the iPad any time soon, it might be a useful handheld device that I could use to sit around and read Safari books on.

And it mostly works. I had a bit of fun when I installed the “proper” graphics drivers. For some reason it didn’t register the installation properly, and so I ended up with a machine with three or four graphics devices, which didn’t end well. And every now and then the display would go black because these drivers didn’t support the correct version of Direct X. I solved these problems by using the original Microsoft drivers, which means I can’t rotate the screen, but it works fine in landscape.

..and it works!

All the hardware apart from the tablet buttons works properly, even the WIFI card works perfectly. Performance could be better, but browsing is just peachy and I’m even thinking about putting Office on there so I can look at documents. I might even upgrade the RAM to a massive 768MBytes to get even more speed. I guess the lesson here is that you really can bring dead machines back to life with the magic of Windows 7.

York Laptop Shopping

4322342678

Went to York to do some shopping today. The weather was great for photographs. I took a quick bunch of the Minster and then stitched them together. The above isn’t perfect, there are some rather strange shadows here and there, but I’m still quite pleased with the result.

And we bought a laptop. We managed to get quite a powerful beast for dad with 4G of RAM, 500G hard disk and Windows 7 64 bit edition. All for less than 400 pounds. Which got me to thinking. This is the entry level price for the Apple iPad when it comes out in 60 days and 60 nights or so. Why would you want to buy something small and shiny when you could get something much more useful for less money?

I remember coming up with a similar argument against the iPhone when that came out. For the same money, I reasoned, you you could get a really nice little 3G SkypePhone, and an eePC.  (You still can).  Much more sensible. And yet the iPhone was a roaring success and I’m expecting the iPad to do just as well. People are going to use it and fall in love with it. A whole section of users (those who don’t really aspire to an all powerful computer) is going to appear and, having had what the iPhone offers, buy the same on a bigger platform.  And number one wife quite fancies one too. Case closed.

Hull Graduation Congregation

4313284721

I did the warmup for today’s graduation day for students from our faculty. Thanks for being a great Congregation. It was a really good occasion and we had a lovely speech from our honorary graduate. I’m sorry that some of the pictures I took from the stage came out a bit more blurred than I would have liked, but you should be able to recognise yourself. There are much larger versions in Flickr. Click on the images to find your way to the pictures on there.

4313284925

…to the right..

4313285043

Left of stage

4313285157

Right of stage.

Hull Students on the Road

Hull Students at Codemasters

Earlier this week a bunch of our students went off on a road trip to visit some game companies, including Black Rock and CodeMasters. 

These are students on our game development courses, and it will be interesting for them because they will be meeting up with ex-Hull students who now work in the game development business.

I’ve just received this picture back from Alexander, along with a bunch of others. It looks like things are going well..

Andy Sithers from Microsoft Coming to Hull

01AndyandMarkSweeping

 

Andy Sithers from Microsoft (the one in the front with the biggest brush) is coming up from Reading to see us next week.

He will be giving a presentation on Microsoft Technologies and talking about the Imagine Cup. And he might dish out a few freebies.

The presentation will take place on Wed. 3rd Feb at 2:15 pm in LTA in the Robert Blackburn Building. If you are up in Hull it is well worth the trip.

.NET Micro Framework and the Fez Robot

4305559419

Robot in Red

My robot arrived today. It is from TinyCLR, who are (I think) part of  GHI Electronics.  They have released a whole new set of boards based on Version 4.0 of the .NET Micro Framework. The boards are branded as FEZ (Short for "Freakin' Easy!") and there is even a picture of a Fez on the board itself. There are two FEZ boards, the FEZ Domino which is pin compatible with an Arduino and the FEZ Mini which is compatible with the Basic Stamp device.  Both of these new devices use a single chip implementation of the Micro Framework.

I’ve been saying for ages is that what we need is a set of boards and components that use the .NET Micro Framework, are sensibly priced and well supported. It seems that GHI agree, since that is what they have done. They’ve also produced a free book which you can download to find out how to use the framework. This is a nice introduction to the technology and to the Fez platform.  I’ve not had time to do much with the new hardware just yet. But I did manage to assemble the robot and make it try to jump off the desk. 

4306303450

Robot in Blue

In the future I’m going to start putting some projects up on my Micro Framework pages as I play more with this lovely system.

Lion King in London

Went to London today to see the Lion King show. This meant getting up at 5:45, but as you all know I’m prepared to suffer for art, and so this wasn’t a problem.

We had lunch at the Masala Zone restaurant in Covent Garden. Masala Zone is a small chain of Indian Restaurants in London, each of which is decorated in a characteristic way, the one we went to has loads of puppets hanging from the ceiling, depicting the guests arriving at a particularly posh wedding.

4299694895

The food was great. Really tasty, and very nicely priced.

4299698415

If you want a place to eat in London that won’t break the bank, but will deliver a really good dining experience, then I strongly recommend it.

Then it was on to the theatre.

4299700539

I’m not that big on musicals. I reckon that if the story is going to be interrupted by a song it had better be a darned good one.  However, the songs, sets, costumes and style of the whole performance worked for me.

I think I rather annoyed number one daughter when I said (somewhat tongue in cheek) “It’s good, but it’s no Avatar”. Actually it is far better than the movie. Avatar is highly polished, with incredible attention having been focused on getting everything to look as real as possible. Lion King takes the approach that since it is impossible to get the whole of the jungle into a theatre we will concentrate on giving you the impression of what it is is like there.  And it works a treat.

Avatar is like watching a really good computer game being played by an expert technician. Lion King is like having a beautiful story told by a bunch of people right in front of you.  If you want to see how far you can get with imagination and just plain cleverness, then go and see the show. Great stuff.

Keeping Fit with Wii Fit Plus

14arches

I took this picture, and the one on yesterday’s blog, while I was out in India at the Imagine Cup World Finals in 2006. We visited Akbar’s Tomb to do some work there, and I tried to look busy by taking lots of photographs.

I’ve been playing with the Wii Fit Plus software. This uses the Wii Balance Board to keep you fit. I was quite pleased to find that, since I last used the Wii Fit a while back, I’ve only put on a couple of pounds. However, I did tell it I was wearing heavy clothing……

The game is pretty much the same as before really, although there are some neat new exercises (I like the Kung Fu one) and enhancements to the older ones. All of the exercises are now unlocked at the start, which seems sensible to me, and by the end of half an hour I’d managed to work up a bit of a sweat. I’m trying, again, to get some kind of an exercise regime going, and with a bit of luck this might fit the bill. If you will pardon the pun.

Imagine Cup Live Meeting Fun

Well, I did my Imagine Cup Live Meeting today. Just me sitting on my own in my little room with a headset on, talking to students all round the world who must have got up early/stayed up late to find out how to succeed in the Imagine Cup Software Development challenge.

It all seemed to go OK, although it is a bit un-nerving when you are just speaking out into the void with no feedback other than a set of coloured indicators showing how happy the audience is. I knew that green was good, and red was bad, but when a couple of lights turned blue I had completely forgotten what that meant. I thought it was either “Speak more slowly or speak more loudly” and so I solved the problem by SPEAKING SLOWLY AND LOUDLY for a while until the lights went green again.  Actually, I’ve just thought some more. Blue could mean “speak more quietly” or  “speak more quickly”. Oh well.

If you were in the audience, thanks for turning up, I hope we managed to answer all your questions. I think my finest moment was when somebody asked “How many countries are in the Imagine Cup?” and I finally managed to come up with “All of them”. Actually, as Matt informed me a second after that, the real answer is 70.

If you have any other questions that sprang out of the presentation you can post them in the forums, which you can find here:

http://imaginecup.com/forums/18.aspx

When the presentation had finished I left my microphone switched on for a few minutes, which meant that the assembled multitude were treated to the sound of my heavy breathing for a while. Sorry about that.

Marking and the Micro Framework

4292786606

Spent a big chunk of today (like yesterday and the day before) marking exam scripts. However, I did find time to upgrade my system to the .NET Micro Framework version 4.0. This platform is getting really interesting just now, with some fantastic hardware coming out and a whole set of great new features for embedded developers. I’ve been a fan of the framework ever since I saw one of my C# programs running on a device the size of my fingernail.

Much more fun than marking.

Using Digital Photo Frames as Lamps

I was wondering the other day why nobody had thought of using digital photo frames as lights for macro photography. So I thought I’d find out for myself. I’ve got a couple of little frames (the ones that you can now pick up less than 20 quid in some places). So I made some images of single colours using Photoshop Elements and spent some time balancing the frames precariously over the two model cars I wanted to  photograph.

4288187427

You can see how I arranged things here. I used one frame as the “sky” and the other to light the background.  You can just see the front of the cars peeking out from underneath the black frame at the front. I just used white paper as the background.

Once I had the frames lined up I put the camera on the tripod and fired it up. I was using a macro lens to focus onto my tiny cars and it was hard to keep everything sharp. I ended up using a really small aperture (F16 or so) to get as much depth of field as possible. At that aperture, with the camera set to 200 ASA, I was exposing for a couple of seconds or so.

4288923788

I’m quite pleased with the results. The great thing about working like this is that changing the colour of the light is very easy, you just advance the frame to the next coloured image. On the picture frame I had, I could do this using the remote control for the frame, so I didn’t have to touch anything.

4288185593

So,  as a light source the frames do work. The light you get is not that bright, but it is very even, which is nice. This is probably as effective as using a small light tent,  and it works best if you can get the frames really close to the items being photographed. I’m certainly going to try some more later.

Imagine Cup Software Design at the Captain’s Table

You might not know this, but I’m the Captain of the Microsoft Imagine Cup Software Development competition this year.

No. I don’t get a special hat. Or a uniform. I did ask though…

What I do is make sure that from a judging point of view everything lines up, competitors know what to do, how to enter, and how to make the best entries.  As part of this I’m taking part in a Live Meeting later this week where I’m going to go through the Software Development Challenge, how the competition works and what the judges are looking for. If you are preparing an entry for the competition (or thinking about taking part) it would be well worth you turning up. You can find out more here:

http://imaginecup.com/Competition/mycompetitionportal.aspx?competitionId=37