.. and we're back

Cottingham station at 6:30 am. Looks more model than real. 

Cottingham station at 6:30 am. Looks more model than real. 

Monday was not a great day. I staggered home after my last lecture and went straight to bed. And stayed there. Mostly. Yesterday I found out that the same thing had happened to number one son. And we'd both eaten at the same burger place on Saturday. 

Oh well. 

I'm back at work now, which is nice, frantically trying to catch up with two days of this'n'that. 

Raspberry Pi 3 - Most Interesting

The first Raspberry Pi was a nice device. At the time it was ground breaking. The Raspberry Pi 3 looks at least as ground breaking. It's faster, of course, but it also has WiFi and Bluetooth built into it, which makes it a ready to roll, fully connected Internet of Things device. Previously you'd have to use a physical  network cable and then directly connect your Pi to the device you wanted to talk to. Now you can do it all without wires.  

You can get the Windows 10 Insider Preview that works on the Pi 3 from here

I've ordered mine. 

Fingerlights for robots and photographs

These look useful. Particularly if you happen to want to attach them to a robot so that another robot can see it and charge towards it. As you do. 

They might work well for light painting too. I saw them at the Science Museum yesterday in their gift shop. They are a set of battery powered coloured lights that you are supposed to attach to your fingers. You can find them on eBay (search for finger lights) at really stupid prices. I'm tempted to spend a tenner on 40 or so sets and go nuts with them. 

I wonder how long the batteries last?

Cosmonauts: Birth of the Space Age at the Science Museum London

Just go. Go now. It has a little while to run. You can book tickets and find out more here. We went today. It is a breathtaking exhibition. They've got some stunning things to see, including the actual capsule used by the first woman in space, Valentina Tereshkova. It looks more like a wrecking ball than a spacecraft, covered with insulating material and with a hole where you get in and out.

There are things I wasn't sure were still even around, prototypes of satellites and lunar landers and some completely awesome artwork and drawings. I'm just about old enough to remember some of this when it was happening and I find it amazing that all these years later we can go and see the actual stuff. The only snag (for me) is that you aren't allowed to take pictures. But you'll bring back a whole bunch of great memories. 

(and a few postcards and T shirts - which are half price at the moment)

Careers Networking Event

Never underestimate the attractiveness of free food....

Never underestimate the attractiveness of free food....

We had our third Careers and Networking Event today. We had six companies presenting and it was standing room only in the lecture theatre during the presentations. I think we'll find a larger venue for next time. 

There were lots of interesting tales of local companies doing world beating things, but for me the most impressive thing was that most of the companies that came to see us had hired (and even brought along) ex-Hull graduates who now worked with them. 

This was a follow on from our Games event a few weeks ago. We'll be doing it all again in a year's time. If not sooner. 

Jupiter and Static Class Members

I put some of my lectures up on YouTube last week and it was great to get a comment on one of them. Kostas was wondering why I spend so much time explaining how static works, and even dragging the Planet Jupiter into the explanation, when a memory diagram would do the job much more efficiently. 

Well, yes and no.

The problem with diagrams like these is that people think that they just have to learn the diagram to pass the exam and therefore pass the course. But I don't want them to do that. I want them to know what "static" means, and when to use it in a program.

I use Jupiter as a context because it might stick in the memory. It turns out that the planet puts out a lot of radio static and that static on the radio is kind of like an echo of the big bang. So it has always been here. Just like static members of a class. They don't need instances to exist. As long as the class exists, the static members exist. So you can use static methods to perform tasks without needing to make an instance (for example data validation) and you can use static properties to hold values that need to be stored once only for the class. 

My idea is that folks can go from Jupiter, to static, to always here, to methods and properties and they'll have a handle on what it all means and how to use it. Which I think is better than a diagram.

A Windows 10 Tablet for 35 pounds? Yes please.

I was in the embedded labs last week and the conversation turned to computers. As it is wont to do. One chap mentioned a 7inch Windows tablet they'd just picked up from ebuyer for the princely sum of thirty five quid. I was intrigued. Of course I bought one. It came in the less than deluxe packaging you can see above, but it seems to be dead ringer for the Linx tablet that I got a while back for twice that. It has 1G of RAM And 32 G of internal storage, plus an SD card slot and an HDMI output. 

For the price it is astonishing. Much is made of the amazing value offered by the Raspberry Pi, which gives you the internals of a computer for around 25 quid. This gives you the internals, plus a power supply, screen, WiFi connection and battery for only ten pounds more. It works very well too.

My plan is to use it on a robot and link it via Bluetooth to the motors and sensors. Should be fun. As I write this the tablet is happily downloading Windows 10 for its upgrade from Windows 8. If you are after an ultra-cheap but useful tablet you could do a lot worse.

Update: I apologise to anyone who doesn't use the proper coins of the realm and mistook the title of this post to refer to the weight of the tablet. Fear not. It isn't made of granite and can be lifted easily by one hand.

BJSS at Hull

BJSS are a great bunch of folks. I can say that because I've met quite a few of them. They came over to Hull from Leeds to run a programming challenge event type thing in our computer labs. With free pizza and drinks. It was excellent. They posed an interesting task and the students who came along set about solving it. Then they wandered around giving comments and advice on coding and having chats about CVs etc. 

It was great to have a professional perspective on problem solving. I even had a little go myself, until my natural laziness took over and I reverted to chatting with the BJSS folks about board games and stuff.  As you do. 

The students that came along had a great time, and any time BJSS want to come by it would be lovely to see them again. 

Programming 2 Stealth Videos

I've started recording some of the first year lectures as screencasts, Just to see how it turns out. I joked with the class that I'd only tell the people that came to the lectures where the videos are, but this is probably not very helpful. Anyhoo, you can find the first one here and I've set up a channel here for the rest.  They're a bit rough and ready, being recorded straight from the Surface using Camtasia and the built in microphone, but they might be of interest to C# students at Hull. 

I'll keep posting them for the rest of this semester. The only slight snag for me is that it takes around four hours to render each captured session so I've got to create a workflow that I can use to do this. 

Say Hello to Dit Lexaragez

I've been writing the next lab assignment for our programming course. We are creating a Bank, rather like the one in the Yellow Book.  Anyhoo, we've got as far as making some test data for the system that we are building. Demonstrations of massive account databases are all very well, but it is best if they have more than two or three accounts in them. 

It's best if all the fake accounts have different names, so I started playing with ways to make names programatically. I ended up using a method based on a very popular daytime TV show in the UK. See if you can guess the name of the show. 

My method works because names are frequently made up of the sequence “consonant – vowel –consonant” – for example “Rob”. All my method does is pick a random consonant, followed by a random vowel and then a random consonant. For longer names it just adds more vowel-consonant pairs on the end. 

static Random testRand = new Random(1);

static string vowels = "aeiou";

static string consonants = "bcdfghjklmnprstvwxz";

static string pickRandomLetter(string input)
{
    return input[testRand.Next(input.Length)].ToString();
}

static string makeTestName (int parts)
{
    string result = pickRandomLetter(consonants).ToUpper();

    for (int i=0; i < parts; i=i+1)
    {
        result = result + pickRandomLetter(vowels);
        result = result + pickRandomLetter(consonants);
    }
    return result;
}

static string makeFullTestName()
{
    return makeTestName(testRand.Next(1, 4)) + " " +
        makeTestName(testRand.Next(2, 6));
}

This is the C# that we are using for the lab. I fired it up and the first name that came out was "Dit Lexaragez" which I think is a great name. The names have a vaguely "off-planet" feel that I really like. I've suggested that people might like to fiddle with the letter sequences to modulate how much of each letter you get (you probably don't really want 'z' to appear as frequently as 't' and maybe allow some names to start and/or end with vowels.

I love it when a really simple bit of code produces really interesting behaviours. 

In the future, your TV will know where you live

I bought a little TV today. It's a "Smart" TV and rather nice. I plugged it in and did the setup thing. It started by asking for a network connection and, once connected, quizzed me about my name, address and lots of other things before doing the tuning thing and finally showing me a picture. 

I guess this is the way the world is these days. If I watch loads of DIY shows then perhaps I'll start getting emails from paint companies, or seeing adverts for orbital sanders appearing around the web pages I visit. I'm not sure if this is a good thing, or a bad thing. But it is definitely a thing.  We are going to be surrounded by lots of devices that are spying on us and sending stuff back to build up the ever growing databases that are held on each of us. 

I wonder how much of the attractively low price I paid for the TV is subsidised by cross-marketing deals that the manufacturer has in place for all this information they are planning to gather. I didn't have the nerve to select "Not agree" to any of the licence terms that I encountered on my way to BBC 1. Perhaps if I had rejected some of the conditions I'd be asked to stump up some cash to pay for me opting out and wanting a little privacy. 

I kind of hanker for the days when things where everything was dumb and nobody knew (or cared) what you were watching. Perhaps in the future you'll be able to buy a "personality" remote control that you can leave by the telly when you go out. This will select all the posh channels you'd like people to think you watch so that you can watch a few episodes of "Man vs Food" without your TV thinking ill of you. 

Admissions Afternoon with Added Pi

Thanks for being patient for the cameraman folks

Thanks for being patient for the cameraman folks

Another bumper Open Day today with loads of people coming along to see us. Thanks for coming folks, hope you enjoyed your visit. At the end of the afternoon we have a little prize draw and give away a Raspberry Pi and all the trimmings. I was asked for details of what we give away as the prizes, you can find our Prize Briefing Sheet here.