Python: Soup to Nuts

I think I picked up the phrase "Soup to Nuts" when I was in the 'states a while back. I used it in a session today and all was confusion and hilarity. It simply means "all the way from the beginning to the end". 

We're doing some "Soup to Nuts" work at the moment in the Wrestling with Python sessions. I've put together something that looks a bit like the kind of assignments that are being used in schools in the UK and we are all going to work through it over the next few weeks.

If you fancy having a go you can find the assignment here.

Windows Phone and Pebble Watches

One of the nice things about owning a Windows Phone is that, well, it's a Windows Phone. And lovely. One of the less nice things about it is that a few things are not available for the device just yet. One of the things you can't do is Smartwatch integration. 

Except that you can. Sort of. 

I've started using my Pebble watch that I got a while back. As a watch I rather like it. Some of the watch faces look really nice and I can make it talk with my Lovely Lumia using a program called Pebble Watch Pro that you can get from the Windows Store.

The program does the best that it can in difficult circumstances. It can show you tweets, and the weather, and let you control your music. It also lets you download and install watch faces, applications and firmware updates for the watch. If you run it under the lock screen it will work when you are not using the phone too. 

It's kind of got me sold on the idea of a watch as an extension of the phone, and I'm looking forward to getting proper integration at some point in the future. When my Lovely Lumia is running Windows 10 and allows background applications this will all get a lot easier. 

Mouse Foolishness and Product Ideas

While I was in the 'states I got myself a new mouse. My beloved Presenter mouse from way back has reached the point of no return I think. Mind you, it must be quite a few years old now. The replacement one is a Sculpt Comfort Mouse with a fancy blue tag that you can use to scroll between open applications and open the start menu. A great match to my blue keyboard and a really nice device to use.

So nice that I nearly lost it. 

I left it in Lecture Theatre A after the last Rather Useful Seminar on Wednesday. I remembered this as I was walking past the theatre on Friday and thought I'd drop in and see if it was still there. It was, along with around 100 students who were expecting a lecturer, not someone who would bound up to the lecturn, exclaim "Ooooh Goody. And it's still working", show the bright blue light underneath to the assembled multitude and then leave cackling. 

Actually, I've just had a horrible thought. Perhaps there was somebody in there lecturing at the time I burst in. Oh well.

Which brings me to my business idea. It might have been done before. I don't know. But what I really needed was a program on my PC that told me when the Bluetooth mouse had gone out of range. We can do this with things like the Nokia Treasure Tag, so why not with mice?

(If you make a million from this idea good luck to you, just a few percent will keep me happy)

Open Data and the Leeds Data Mill at C4DI


You can learn some really interesting things from data. And there is a lot of out there, freely available to anyone with a theory to test or an idea for an app. Mark Barrett and Simon Zimmerman work at Hebe Works where they are trying to make more data available and tell interesting and useful stories from what is already visible.

Yesterday they came over to C4DI to talk about what they are doing and tell us all about Leeds Data Mill.  Mark took to the stage and told us all about the challenges of making data available. He is also the chap behind the GP Ratings App for iPhone, a wonderful program that leverages thousands of patient ratings and uses them to show you how good the doctors are in your area. 

This was a very thought provoking talk with an eye on the future. Mark and Simon reckon that open data is a great way to create completely novel applications, as well as giving people much greater insight into how the services around them actually tick. 

I headed over to the Data Mill and had a look round. There are some interesting data sets that you can just download, or hit with ready made Python, Ruby or JavaScript templates. I happened upon one that give the incidence of parking fines in the city and how many miscreants have paid up. And I started wondering if people who get fined in the morning are better payers, or worse, and when during the day they take the most fines. And I was hooked. Not written the program yet, but there is a good chance I will. And there are over 150 (and growing) data sources to go with that one.

C4DI are working with the Hull City Plan to bring this kind of open data to us. I'm really looking forward to seeing it all come together.  

Which Computer Science Option Should I choose?

After my First Year lecture today someone asked me an interesting question: "Which Computer Science option should I choose for next year?". Our course is structured so that you can choose your specialism (Computer Science, Software Development, Game Development, Information Systems or Computer Systems Engineering) at the end of year one. I think (although I may be wrong) that the person asking the question was primarily concerned about the best option to choose from an employ-ability point of view.

My answer was that you should pick the one you are most interested in. When you go for a job it is very likely that your prospective employer will not necessarily be looking for someone with a particular specialism. They will just be looking for someone who is keen on the field of Computer Science and shows the prospect of being useful.

To me this means a candidate who has done lots of things that aren't on the syllabus and can talk about the things that they have made "just for the fun of it" as well as the good grades they got on their set coursework.

So, do the thing you enjoy, and do stuff that you haven't been told to do, and don't worry quite so much about being a good fit with what you think the employers might want. 

Flying Home

Got up bright and early today and the weather was lovely. Made a quick trip over to the Microsoft store to see if they had any Microsoft Bands in stock but unfortunately they hadn't. Oh well, with a bit of luck I should be getting one fairly soon. 

Then it was into a metal tube and away into the sky. I hate leaving Bellevue/Seattle. Even though it rained for pretty much our whole trip it has been a lovely place to visit. Here's to next year. 

Making a Universal MonoGame Project

At one of the sessions earlier this week we were talking about game development and I found out something really interesting. Thanks to Giles for passing me the link.

If you want to make a MonoGame solution that contains a Universal Application for Windows Phone 8.1 and Windows 8.1 you can find a build of MonoGame that contains templates that just work here.

You can deploy to phone or pc just by setting the start project. The distribution also contains the new content management stuff. I'm going to make an example application and a little screencast about how to use it when I get back to the UK.

This is completely wonderful. It will make it so much easier to make games which will be rady for both the Windows Phone and the Windows stores.

MVP Summit Day 2

I used amazing "Sky Camera" technology to get this photograph while we were waiting for Satya Nadella.

Another day of good stuff at the summit. I always leave these affairs with a whole bunch of things that I want to try out.

In the evening we had a Welcome Reception where Satya Nadella came along. All very interesting stuff. After all that I was a bit exhausted and staggered back to the hotel and bed. Early start tomorrow.

On the way back I grabbed a shot of Bellevue at night.

My quest for a Microsoft Band is ongoing. The offer here still stands.

Living with a Surface Pro 3

My Surface Pro in its natural habitat......

So I've had my  Surface Pro 3 now for a couple of months or so. We've had our ups and downs:

Ups: Reading magazines at full size (and weighing less than the printed copies). Running full fat Windows apps at blistering speed away from home on battery power. Snapping in and out of the dock with ease. Being very shiny and pleasing to own.

Downs: the time it refused to start up in front of a full class of first year students. And then later the same day hid my Bluetooth mouse and keyboard in front of a slightly smaller audience.  Getting a horrible experience using Hyper-V (which you need to emulate but not write Windows Phone apps)

I think it is fair to say that I now love the device. If you're thinking of getting one, here are my tips for how to get to love yours too:

Don't enable Hyper-V (f you don't know what that is, skip to the next paragraph) I’ve turned off Hyper-V and don’t intend to turn it on again anytime soon. Hyper-V has broken pretty much every machine I’ve ever used, starting with my Samsung Slate whose usb drivers were just not able to handle it, going through my Sony Ultrabook and earlier Surface systems. If not having Hyper-V is a deal-breaker for you, then think hard before acquiring a Surface Pro 3. I now write Universal apps and debug them by deploying to the machine. That works without Hyper-V being enabled and if I want to debug on the phone I plug one in and deploy to that. Not sure if this is optimal for everyone, but it works for me. If you want to turn Hyper-V on and off there are a couple of batch files you can use here.
Shut down before you undock if you have hard disks connected to your docking station. I always shut my machine down before I undock it. To me this seems like common sense. If I corrupt one of my big USB drives I might have a data recovery job on my hands which I’d rather avoid. I’d use eject if I could be sure that I’d always do it. The machine boots from cold in under a minute or so and this doesn't seem to be costing me much time. If you don't plug your Surface into an external monitor while it is undocked and you haven't got any storage devices attached to your docking station it should be fine to use the dock as it is meant to be used, just snapping the tablet in and out as you go through your day. 
Be patient when you hit the power switch. I’m working on acquiring more patience (if only I could get that in a hurry). I give the machine time to get going after I press the power button and I've turned off "Allow this device to wake the computer” for the Surface Type Cover in Device Manager. It’s so that I don’t open the cover, turning it on and then press the button and turn it off again. 

A few years ago a machine like the Surface Pro 3 would have seemed like impossible magic. And now it is here and working for me.  And I really like it.


Seattle Tourism

I thought I'd spend some time today as a tourist. So I took the 550 bus from Bellevue to downtown Seattle. This is one of the best ways to spend $2.50 around here. You get a lovely drive over the floating bridge, a spectacular view of the skyline and then a ride in the tunnels underneath the city. 

I got out at the Westlake Centre and slipped down to Pike Place Market for a look around. Took in the Comic Book store in the marketplace, along with the craft stalls down there and then headed back up to Westlake and the monorail terminal

There I bought a return ticket to the Space Needle and then I just waked straight into the lift (no queues) and rode up to the top where I enjoyed a coffee and took some snaps of the view.

Then back to Westlake and Barnes and Noble for a look at some books. Finally I got the bus back to the hotel and spent a happy hour or two playing with the pictures I'd taken.


Heading to Seattle

Turns out that if you point a smartphone out of the window as you land you do get a picture.

Turns out that if you point a smartphone out of the window as you land you do get a picture.

Flew out to Seattle today. 

Via Amsterdam and New York. 

The circuitous route was the result of searching for the cheapest tickets. And I did get to see the inside of JFK airport. Turns out it looks like every other airport. I wasn't able to focus much on the decor though, as I was rushing to get through Homeland Security before boarding my ongoing flight, which left around an hour or so after I arrived.

However, everything when smoothly. Although when takeoff was delayed "Because we are loading some baggage that arrived late." I had an awful vision of my big awful suitcase being the one that was holding everyone up.

But we got to Seattle early and I'm now writing blog posts at "don't know o'clock" in the morning. And really looking forward to the next few days.