Apaling UI Design



I still like my Apple Watch. I still like my Apple phone. But mainly for what they can do, not the way that they do it. Going back to my Windows Phone always puts a smile on my face, as I get to use a user interface that is properly usable and scaleable. Then the smile disappears when I find I can't read books or do anything much with it. 

For a company that prides itself on design Apple should be ashamed of the above screen. Take a look at it and decide whether or not the watch will make sounds. After a while you might deduce that if silent mode is off, the watch might make sounds. Although you might also be confused because the icon shows a bell with a line through it which might imply silence. The icon is not lit up - although it can be - something that you need to know to make sense of what is happening here. 

Ugh, ugh, and ugh. Anyone who thinks that user interface design is easy should take a long hard look at this and consider how they would do it. They are almost certain to come up with something better than this mess. Me, I'd take away the icon and use the words "Noisy" and "Silent", it would be a lot clearer for your's truly. 

Fantastic Beasts and where to Find Them

We went to see Fantastic Beasts and Where to find Them today. It's set in the Harry Potter universe, but based in New York in the 1920s. It's very good. If you like Harry Potter, you'll love it - which I guess was the idea. he movie has the air of the start of a franchise, so there will be more films, toys, wallpaper, cuddly toys and maybe even books.

Adventures with the ESP8266

I love the esp8266, as far as I'm concerned it's the embedded processor with the mostest. 

But It does have one or two foibles. I ran into them today as I was trying to improve HullPixelbot reliability. My little robots work fine to start with, but then have an annoying habit of crashing or getting stuck after a while. 

Today I found out why. The HullPixelbot is a two-brained robot. The wheels are controlled by an Arduino Pro-mini device, and the esp8266 does the networking and stuff. The two devices are linked by a serial connection, so that commands received via WiFi can be passed into the motor controller which then makes things happen. 

I'm using the SoftwareSerial library to create a serial port on the esp8266 which then sends commands to the Arduino device. This is a software implementation of a hardware device, fast running code does the same task that is normally performed by a piece of dedicated hardware. 

And therein lies my problem. The SoftwareSerial driver was causing my network code to fail. It works fine sending data, but incoming messages cause interrupts in the esp8266 that seem to upset the  connection. I've changed to using the hardware serial port and everything seems to work a lot better. 

Oh, and one other thing I've discovered about the esp8266. Pin 18 (identified as D3 on the Wemos Pro-Mini board) controls whether or not the device can be flashed with a new program. If this line is held high it can stop your programs from downloading. I've been using D3 as a serial connection and having all kinds of problems. And now I know why. 

HullPixelbots at Azure Craft

I'm taking some HullPixelbots out on the road in December. I'm going to try out some group exercises involving 8 robots being controlled at the same time. 

Which means I need 8 robots. 

I'm feverishly building them at the moment, then I'll have to write some code and get it all working in time for the event on the 10th December. Such fun.

This is all at the AzureCraft event in London, where they are also having lots of fun activities for kids (bring a parent) involving Minecraft and whatnot.

Places are limited, but if there are any available you can sign up here

Begin to Code - Get a Free Copy

I need your help. And I'm prepared to give things away to get it. I've had the above error reported to me when trying to use the Begin To Code with C# demo programs. I can't reproduce it, and I can't find out the circumstances in which it happens. 

This bothers me. 

I would love it if someone could get in touch and tell me how they managed to make the error occur. All you have to do is go to to the book site here and get the Snaps examples from the Downloads page. Unzip them and try to build and run them using Visual Studio 2015. There's a help document to tell you how to do this, or you can watch my screencast here

If you get the error error above, send me an email to ibrokebegintocode@robmiles.com so I can work with you to fix the problem. First person to do this gets a free copy of the book. If you get a different problem please get in touch too.

And if your version works send an email to begintocodeworksforme@robmiles.com and I'll draw a name at random in a couple of weeks and send them a free copy of the book too. 

Everyone who gets in touch will receive a "Certificate of Undying Appreciation" as well. 

I'm prepared to post around the world (which means it will cost me money) but I'm determined to find the source of this problem. 

Automotive Shenanigans

I would think that the primary purpose of a motor show is to make you want to buy a car. In this respect the Seattle Auto Show has must be counted as a success as far as I'm concerned. 

In amongst all the monster pickups and unfamiliar brands of the show I spotted this little gem. It's a BMW i3. It's an electric car, but you can get a version with what they call a "range extender", essentially a small generator that can top up the battery when it runs down a bit. Which means that your range is not limited by how much electricity you have left and you are never in the situation where the battery runs completely flat. 

I'd read about the i3 but never actually seen one in the flesh. Until last week in Seattle. I really liked the look of the car and made a mental note to check it out when I got back to the UK. I definitely make the most rational purchasing decisions when I've got jetlag....

Anyhoo, I went and sat in one earlier in the week and discovered that it fits me just fine. And apparently one of the rites of passage for retirement (although of course I'm not really retired) is the purchase of a shiny car. So said the jetlag. So I began the search for one that was in my budget. Which proved tricky. Until I found what seemed the perfect vehicle. Only snag is that it was 250 miles away from Hull. In Canterbury. 

So...... Today I got up at 6:15 and took the train to Canterbury with a return ticket I hoped I wouldn't have to use, and an overnight bag if I had to stop and take on wood (or whatever) on the journey back. A test drive convinced me that it was the car that I wanted, and after a modicum of paperwork, they let me drive the car away there and then. So there was just the matter of a 250 mile night drive which included the Dartford Tunnel and the M25. In a car with a 75 mile electric range. 

Erin said I'd be fine. And I was. In fact I got home with the battery still half charged. I had to stop a couple of times to add petrol to the tiny tank that the Range Extender runs from but apart from that it was a comfortable journey. 

The aim of the Range Extender is not really to let you drive 250 miles in one go, but to allow you to go a little further on a charge (hence the name). But it is nice to know that you can do long journeys if necessary. 

Thanks to the folks at Broadoak Canterbury for looking after me so well, particularly Erin who deals with their electric vehicles. I never ever expected to be a BMW driver, but here I am. 

And the Cube will be staying around too, but now in the hands of number one wife. 

"Soul of a New Machine" now on Kindle

One reason why I liked Ada's so much is that they had a computer book club and their next meeting was going to discuss "The Soul of a New Machine" by Tracy Kidder. 

It is one of my all time favourite books. 

It's supposed to be about building a computer, but really its about people. It's about management, ego and human interaction. Along with a good dollop of how computers work. 

It was written a while back, but still holds lessons for anyone who wants to get thing done. I lent my printed copy to someone (no idea who) a while back and I didn't fancy buying another paper copy. What I wanted was a Kindle version I can carry around on my phone. 

And now I've got one. Amazon have just released the electronic version. If you are in any way serious about computers or management you should read this book. Oh, and it also holds some lessons about how to write a compelling story. A fantastic read.

How to Begin to Code

It turns out to be very hard to record videos when you've got jetlag. I found this out yesterday, when a ten minute recording session turned into a "fur lined copper bottomed ocean going disaster". Andrew had asked for a bit of help and I thought I'd oblige.

Anyhoo, it's done now. It's tells you how to install Visual Studio 2015, get hold of the example programs for my Begin To Code book and then run them. Let me know what you think. 

Subtle plug eh?

Ada's Technical Books Rocks

I have a number of favourite places in all the world (it saves on the travel). I've now got a new one. Ada's Technical Books. It's a cafe. And a bookshop. And a technical library. And a meeting place. And wonderful.

Our apartment is just down the street from the place (you can even see the Space Needle on the walk down 15th Avenue). Ada's become our place of choice for coffee and meals. I'm not saying that I'll travel all the way back to Seattle to go there again. Oh, hang on, yes I would. 

Living Computer Museum Grand Opening

I'm impressed that people could actually use these lights to understand what the machine was doing 

I'm impressed that people could actually use these lights to understand what the machine was doing 

Another favourite place of mine. The Living Computer Museum in Seattle has a fantastic collection of computers, both large and small, going back to the days of valves. And, as the name implies, many of them are working machines, including some mainframes. 

I first went there a year ago, and I really wanted to go back again. So we did. They were having a grand opening of some new exhibits, and it was awesome. They now have robots, cubelets, embedded stuff, they have a full size computer controlled car and of course all the computers that I know and love. If you are in Seattle you really, really should visit. I'd go every week. 

This is what I learned to program on. No. Really.

This is what I learned to program on. No. Really.

Boeing Factory Tour

Apparently Disneyland would fit in here

Apparently Disneyland would fit in here

A major holiday highlight today. We went to see airplanes  being made on the Boeing Factory Tour.  Most impressive. All the numbers are big. From the size of the plant to the price of the product (at least 200 million dollars). On the factory floor we saw five planes in different stages of construction. That's a billion dollars, right there. And they are making up to forty of these in a month in one plant. 

Within the constraints of the business (they've got a lot of planes to make) the tour was excellent. We weren't allowed to take cameras into the factory (shame) but we did get a feel for just what they do there. Highly recommended. 

High Fashion and Bainbridge Island

As part compensation for a day spent looking at cars, today number one wife and I went to look at the Yves Saint Laurent exhibition at the Seattle Art Museum

There is true genius in the way that a few pencil lines can evoke a figure and a style. 

There is true genius in the way that a few pencil lines can evoke a figure and a style. 

The finished product.

The finished product.

After as much haut couture as we (or at least I) could handle, we headed off to take a ferry ride to Bainbridge Island. We had no particular need to go there, but the weather was being very kind to us and, hey, life's in the journey....

Seattle waterfront from the ferry

Seattle waterfront from the ferry

View of Seattle going out...

View of Seattle going out...

View of Seattle coming back....

View of Seattle coming back....