Random Disconnected Diatribes of a p&p Documentation Engineer
So I finally got round to reading Bill Bryson's book "A Short History of Nearly Everything". OK, so it's not quite as entertaining as some of his travel guides, but it is amazingly full of things that make you go "Wow" and "Can you believe it?" I especially liked the bits about soft drink cans and a man named Norman.
I can vaguely remember learning about Avogadro's Number (the number of molecules in a couple of grams of hydrogen) when I was studying chemistry a great many years ago, and I know it's a big number. A really big number. Much bigger that the kind of numbers we computer people usually play with. And the book also shows how bad we are at explaining how big our numbers are.
For example, we often talk about the lack of publicly available IPv4 addresses and explain that the new IPv6 mechanism will provide enough for everyone on the planet to have a trillion each. Unless you can envisage how many people live on this planet, and what a trillion looks like, it's all pretty uninformative. But when you hear how Avogadro's Number is described in the book you get a much more realistic impression of its size. Supposedly, when converted into the same number of soft drink cans, there would be enough to cover the entire planet with a stack two hundred miles high. Now you really get that "big number" feeling.
Bill's book also talks a lot about biology, and illustrates how flighty and unreliable we computer programmers are. We casually skip from one technology to another, flip between programming languages, and wander through the forests of patterns and frameworks that make our life easy. It just demonstrates how little real concentration we have compared to the guy named Norman who worked in the Natural History Museum in London.
Norman steadfastly spent forty-two years studying one species of plant, St. John's Wort. And after he retired he still came into work one day a week to continue his task. Imagine what it would be like if you had to spend most of your working life just producing better implementations of the Singleton design pattern.
Still it could be worse. I read in the newspaper this week that the team at CERN using the Large Hadron Collider think they've discovered a whole new Standard Model on which all physics is based, possibly rendering the old one obsolete. You have to feel sorry for Peter Higgs, who's been waiting nearly fifty years for them to find a Higgs boson
Now someone has to tell him that actually it's all just wiggly bits of string...
This week has been an interesting combination of learning and re-acquaintance opportunities. Learning because I finally got fully switched over to Windows 8, at the same time as discovering how many parts of your body are involved in the simple act of walking.
A couple of weeks ago I suffered a reoccurrence of the trapped nerve syndrome associated with sciatica, which left me hobbling about with a stick like the old man I guess I’m turning into. The process of walking across a room became a whole new re-acquaintance experience, which clearly identified all of the muscles and tendons that delineate the upright posture of the human race from the four-legged approach used by most of the rest of the animal kingdom. And it’s an experience I really don’t want to repeat.
Meanwhile, the concurrent learning experience has been with Windows 8 and Office 365, now that my new company computer has arrived (yes, I did decide it was safe to use despite the warnings from last week). Coincidently, my non-work email provider upgraded their systems last week so that I’m now on Exchange Server 2013. In both cases it’s been like learning to walk again as I figure out how to do things in Windows 8, Office 2013, and the Outlook Web App, which were second nature in previous versions.
For example, I prefer to turn off the Preview pane and open messages in a new window to avoid downloading all the crud in the junk emails in my Inbox. However, I can’t get Outlook Web App to open the next message when I close the current one, no matter what option settings I choose. And when I reply to a message it leaves the existing one open instead of closing it automatically. Previous versions of Outlook Web Access managed to do this. And as much as I’ve got used to the Modern interface style, the shortcut menu looks very odd without capitalized words. I’m not sure why, but it seems to make it harder to find the option you want.
In Office 2013 I’ve generally come to terms with the new version of Word, which is the application I use most. But this week I tackled Visio for the first time, and it hurt. Screen updates seem really slow, and often all I get when dragging items is a grey outline. OK, so the computer isn’t the fastest in the world (Intel Core 2 Duo and on-board graphics) but it managed OK in Visio 2010. And just drawing a simple line arrow the first time took ages until I discovered that they’ve moved them to the “Connector” option in the ribbon.
So even after a week of creating documents and schematics I often still feel like I’m lost in Office 2013. Compared to the changes between earlier versions (such as from 2007 to 2010), the latest upgrade sometimes seems like a step too far. Colleagues who have been switched for a while say they find the new version easier to use, and more productive, but I suspect it will take some time before I’m fully competent with it. I wonder if the typical learning process means everything seems harder at first as you try to do things the way you’re accustomed to, and before you discover the new way to do them that provides the productivity increase.
But I am converting nicely to Windows 8, though like many people I do miss the Start button in the desktop. Hitting the Windows key and then Windows key + Q to get the search box just to start an application seems a retrograde step, and I’m looking forward to the 8.1 refresh that will solve this. Otherwise, all was going really well until I came to install our custom Word add-in that we use to generate p&p documents. The installer politely informed me that it needed .NET 3.5, and helpfully provided a link to download it. Except that you can’t do this on Windows 8; you have to enable .NET 3.5 in the “Turn Windows features on and off” section of the Programs and Features dialog.
So I do this and get error 0x800F0906 (download failure). It seems that it’s a common problem with .NET 3.5 and many other Windows 8 features if, like me, you use Windows Software Update Service (WSUS) to manage patching machines on your network. The solution (and a description of why it occurs) is provided in this blog post. You need to change the Group Policy setting named “Specify settings for optional component installation and component repair”, which is located under Computer Configuration\Administrative Templates\System, to Enabled and then set the “Contact Windows Update directly to download repair content instead of Windows Server Update Service (WSUS)” checkbox. If your domain controllers still run Windows Server 2008 you’ll have to apply the Group Policy setting locally on each Windows 8 computer.
And if you are considering choosing between sciatica and a Windows/Office upgrade, I’d suggest that the latter. It’s far less painful…
So at last my new company computer arrived. And, like all competent technology users, I carefully perused the operating manual before starting it up the first time. You never know, it might say something important. And what I found has made me wonder if I actually dare use it at all.
For a start, the machine is supposed to be a Windows 8 equipped touch-screen laptop, but amongst the dire warnings on the “Safety Precautions” page is this:
Perhaps the latest update to Windows incorporates voice recognition or mind-reading capabilities instead. Though, I’m not sure the machine is actually a laptop at all. It also says:
Obviously that’s why they have to call them “Notebooks” now. It’s probably some EU directive designed to protect careless users from “hot leg syndrome”. In fact there’s even a section labeled “DC Fan Warning” on page 5 of the manual that says “the DC Fan is a moving part that may cause DANGER” (their capitals) and that you should “ensure you keep your body from the moving fan blades”. I reckon you’d need to have a body even smaller than a size zero fashion model, or at least have very thin fingers, to fit through the grille.
But, moving on, there’s also useful advice for that situation when you have a problem with your domestic heating system, and decide to email the supplier to ask for advice:
And should you decide, after all these warnings, to take a chance and use the computer there’s also some additional precautions you should take when selecting USB leads and other peripherals. For example, it seems that I should only use leads that are made here in the UK rather than any that might be classed as “foreign”:
Mind you, because the computer was (like every other item of technology I own) made in China, maybe it means I should only use Chinese leads and peripherals. Or does it mean that I CAN carefully insert foreign objects into it, and it’s only a problem when I carelessly or brutally “shove” them into the machine?
And then, last of all, it says that “incorrect installation of battery may cause explosion and damage”. Perhaps I should get our ‘Elf and Safety people to have a good look at the machine first before I risk my life (and sanity) by switching it on...
With our Big Data guide now finished (at least for the preview release) I managed to grab a few days off to clear my head of pigs, ants, beehives, and furry yellow elephants. And to try and figure out where we go next on the Azure guidance path. Mind you, much of my vacation time seems to have involved meeting several other types of wildlife.
It started with a trip to Monkey Forest. Compared to Monkey World in Dorset, which we visited some while back, it’s much less dramatic; but still worth a visit. It’s basically what it says on the tin - a forest with a hundred or so Barbary macaques roaming freely.
They’re docile creatures that seem quite happy to have humans wandering around, and - unlike the wild monkeys you see in places like Gibraltar that steal handbags and sunglasses - they are neither aggressive nor noisy (in fact, mostly they seem to be asleep). However, a few did manage to stay awake long enough to have their photos taken, including several very young ones that are as lively as you’d expect. And most did show some signs of activity at feeding time, as you can see in the photos here.
Another day out was to Ripley Castle, a place my wife had seen on TV and wanted to visit. As there’s a town called Ripley only a few miles away from our house I gladly agreed, thinking it would save me fuel and a long trip in the car. Except that the Ripley with the castle is in North Yorkshire instead. It’s a “planned village” that was built by the owner of the castle and is a heritage area, so it’s still very old-world and historical. And very pretty.
The castle itself is part occupied by the owners, but has large sections available for weddings and other functions, beautiful gardens, a deer park (though we never saw any deer), and a superb selection of rooms that are part of a guided tour. The lady guide was excellent and the historical tour was fascinating, including tales of visits by kings and by Oliver Cromwell and his army. And interesting details of the huge range of artifacts on show, including the fact that in bygone times shoes were not made as a left and right pair - you just bought two the same and wore them till they fitted your feet (or until your feet fitted them).
Our final trip of the week was to the delightfully named seaside town of Mablethorpe. We have a rule in our house that you can’t have a holiday unless you get to see the sea at some point. My wife had never been to Mablethorpe so it was a voyage of adventure for her. Though, purely by chance, we parked the car next to the Mablethorpe Seal Sanctuary and Wildlife Park. So it was immediately obvious where we’d start our adventure.
And I have to say I was surprised to find how extensive it turned out to be. The entry price was just a few pounds, but - as well as the seals we expected to see – there’s a tour through pre-history that shows how the area evolved over the last 300 million years, followed by a wide range of rescued birds and animals including owls, ostrich, various seabirds, lynx, meerkats, and more. And monkeys, just in case we hadn’t seen enough already.
The only real downside of the week was discovering that the unusual badger that comes to visit us at home had been killed (probably hit by a car). We’ve been watching him for a while on our garden and tree cameras. Mostly we see him at night illuminated by the infra-red lights, and so the pictures are monochrome rather than color. But it’s clear that he didn’t have the usual black stripes of other badgers; instead he seems almost albino. As you can see from the photo below, taken after his demise, he really was an unusual color.
We’d be interested to hear from anyone who has seen badgers like this, or can provide any more information. Perhaps, with luck, we’ll see some similar colored cubs visiting later this year...
Would you buy a vacuum cleaner just for your cat to play with? After my wife watched some videos on YouTube where kittens were chasing and sitting on top of one of those robotic UFO-shaped vacuum cleaners, I was informed in no uncertain terms that we should have one for our two cats to play with.
And by happy coincidence it was coming up to my wife’s birthday, so it seemed like an obvious gift choice. But here’s the problem – these days it seems like giving household necessities as gifts is a thing of the past. If I bought my wife a new ironing board as a Christmas present I’m sure I’d be in the dog-house.
Is this something that’s gradually changed over the years? I can remember, many years ago when I worked in a hardware store, that our Christmas window displays were full of useful gift ideas. Power tools, a lawnmower, or a toolbox complete with a comprehensive range of wood screws for him; and for her a washing machine, the latest design in enamel saucepans, and deluxe sets of clear cookware. And, of course, an ironing board.
But casting fears aside, and taking my chance in the domestic relationship stakes, I bought an iRobot cleaner and presented it to my good lady on the day. And, thankfully, she was delighted. However, the nub of this week’s post is that, having added yet another computer-controlled example of modern technology to our household, I can’t just relax. As a typical geek, I need to know how it works.
OK, so I know that it learns the shape of rooms by bumping into things. But the fact that it slows right down before it bumps into something indicates there must be some other sensors in use. And how does it find its way back to the charging station when it’s not in line of sight? From memory? It’s not as though it follows any pattern that you can figure out as it seemingly randomly navigates its way from room to room. And every now and then it flashes up a message that it’s “spot cleaning” some area. How does it recognise the bits that need extra cleaning?
So much for thinking it would save me time. Instead of hoovering myself, now I have to follow it around pondering on the program it’s running and trying to figure out how it does it. It even seems to have a sense if fun. After pushing the tray containing the cats’ food dishes into the middle of the hallway, much to the chagrin of the cat who was watching at the time, it managed to find one of the table tennis balls the cats occasionally deign to pat across the floor. For several minutes it carefully nudged the ball across the lounge carpet, into the hall, and finally lost it under a cupboard.
Maybe, after a few days, it won’t bother cleaning the floor and will just play ball with the cats instead. I could have bought them a clockwork mouse for a fraction of the price…
It seems like everything is "HD" these days. Your laptop has a "high density" plastic case, your car has a "heavy duty" battery, and your TV has a "high definition" picture. So I guess it's only to be expected that your data analysis tools will be "highly distributed". And at last we're "happily done" with our guide to HDInsight.
Yep, after several months fighting with Microsoft's Big Data solution we've shipped the first version of our guide to Windows Azure HDInsight, based on the current preview release. It's been one of the most troublesome guides in terms of figuring out the structure and the content boundaries; and interfacing with the exciting world of open source technologies (as I ruminated about just a few weeks ago). But we got it all together in the end.
Our guide contains the obligatory "What is Big Data" section, as well as describing how HDInsight integrates with the rest of the Microsoft data platform. Then there's a chapter about loading data, one about performing queries and transformations, and one about consuming the data. From there on in the guide discusses automating the whole data analysis process; plus the usual management and monitoring topics as well.
What's likely to be of most interest to developers, however, are the scenario chapters and associated code examples that show how you can use HDInsight in four distinct ways: as an experimental platform for investigating interesting data, as an extract/transform/load (ETL) mechanism for data validation and cleansing, as a data warehouse that you can turn on and off on demand, and as a data source for your existing enterprise business intelligence (BI) systems.
Here's our tube map for the guide:
Unlike most other books and guides, we've concentrated on integration of HDInsight with your existing business processes, and combining it with data analysis and visualization tools such as Power View and GeoFlow, as part of an end-to-end solution. Yes, it's Microsoft-centric - but, hey, that's who pays my wages...
So I considered naming this week's post "Climb Up On My Roof Sunny Boy", but I'd probably get sued by Al Jolson's estate. Though, as we're now officially inverted here at chez Derbyshire, it did seem appropriate. What I wasn't expecting was the domestic strife that is a direct result. They don't tell you about that in the glossy brochures...
The inversion we've encountered is, of course, a direct result of the team of local guys who came and nailed solar panels all over our roof and installed a box the size of my huge Dell workstation in the garage to invert the volts from the panels into real electricity. I did ask the guy if it meant they come out upside down, but he didn't laugh. I suppose he's heard that too many times before. But why don't they just call it a "converter"?
At first it seemed like a great idea. The little red light on the generation meter was flashing like mad and I could envision the pound notes rolling in. Until the RCD earth leakage thingy tripped out. Regularly. Turns out that, along with the seven 1000W UPSs and who knows what else in the way of technological magic there is plugged into the house circuit, the additional leakage from the inverter was too much for the mandatory RCD.
However, after they came back and moved the inverter and my server cabinet to separate consumer units (it really should have been done like that from the start), we're up and running again. It's just a shame that the sun hasn't come out since. If we have a miserable summer this year, you can blame me.
And then I discovered the next problem with going photo-voltaically green. I suggested to my wife that she should use the tumble drier only when it was really hot and sunny so it used the free electricity, but on days like that she wants to put the wet laundry outside on the washing line. When it's raining, and there's no free electricity, she uses the tumble drier. And you can imagine the response when I suggested she stay in and do the ironing on nice warm days, then go shopping when it's snowing.
Still, it's nice to know that for part of the day all my computers are costing me nothing to run; and it even diverts any spare volts we generate to the immersion heater to reduce the amount of gas we use to provide hot water. With the current rate of climate change supposedly due to global warming, I should easily recoup my investment by 2050.
But having a new technology device available to play with is, of course, too much for a computer geek to ignore. Having discovered that the inverter exposes its generation log data over Bluetooth, it was inevitable that I'd need to find a way to add the data to my weather website. And I can justify all this effort by the fact that I don't need to spend a couple of hundred pounds buying a rather boring-looking remote monitor device to see what's going on.
So out came Visual Studio and, after a couple of days, I have an automated system for generating data and charts; and I can expose the data over my internal network and publish the charts on the web. If you're interested, you can see them here. And if, by some remote chance you have an SMA Sunny Boy inverter (or you're prepared to modify the code to suit your inverter) you can download the utility and the .NET source code here.
What I need to discover now is if, on a typical English summer day, we're actually generating enough electricity to run the inverter and the computer that monitors it...
At a meeting of our remote workers group the other day I noticed how competitive people are about how far they are away from their Microsoft office. It's almost like you get a prize for being the remotest (hopefully measured by location and not character trait). What set me thinking was how the different people measured their remote distance.
For example, early contributors to the discussion expressed the distance in miles. Starting at about fifty the figure steadily increased until one person decided that their remote distance was "three hours". Though they did then qualify it with "180 miles" and mention that this was driving time in a car. I suppose if you don't own a car, three hours could be 40 miles on a bus (based on the journey times and regular stops in my neck of the woods), or 12 miles walking. So hours doesn't seem to be much of a useful distance measurement scale.
In fact it reminded me of a conversation I had some while ago (in my pre-Softie days) with a nice lady from Digital River in Minneapolis. At the time they were selling my software, and the nice lady had just been appointed as my marketing representative. She suggested I should call and see them when I was nearby and I happily agreed, even though I had no idea at the time where in the US the state of Minnesota is. But I often passed through Chicago airport in those days, and when I mentioned this she helpfully suggested that it was only a couple of hours from their office. "Great," I said, "Next time I'm over I'll hire a car and call in." To which she replied "Err, no, that's two hours by 'plane..."
So now I have another measure of distance - how far away somewhere is when flying there. Here in Ye Olde England a distance of two hours by air covers something like nine countries. Being a remote worker where there are a couple of whole countries between you and the office surely wins some kind of prize.
But getting back to the discussion at our meeting, I decided not to upset the rest of the group by mentioning that I'm 4,791 miles away from my office as the crow flies. Or, by plane via Amsterdam (my usual route) 5,935 miles away. And the trip, end to end, takes about 23 hours. But if I said I was 23 hours away, somebody would just suggest that I went the other way round the world because then it would take only an hour.
Or, if I was walking, it would only be four miles...