## Welcome!

Hi there! I'm Julian M Bucknall, a programmer by trade, an actor by ambition, and an algorithms guy by osmosis. I chat here about pretty much everything but those occupations. Unless you're really lucky...

Most recently this is what I've come up with:

## Confession time: I love old maps

For fun, and also because they look good framed, hanging on a wall, I collect old maps. And, I’ll admit it, I just love looking at the intricate detail and marveling at the cartographer’s ability to create these figures with, what is after all, some very primitive tools. Sometimes you can get some sense of the history of a region by looking at its maps.

As an example, here are several images of some of the maps I have of England, all zooming in on Yorkshire. I’ll go from the oldest to the newest.

This is dated 1721, in French, published by Covens & Mortier, who it seemed were based in “Amsteldam”. The map drew upon the works of several mapmakers of the time, including the great cartographer De L’isle. Despite its provenance and age, spelling is pretty modern: we have Richmond sitting on the Swale, Masham and Helmsley are there, ditto Barnard Castle and Darlington. But then we have Withby, Hartlepol, and most tellingly Yorck. For some reason the Ridings of Yorkshire are glommed together with Lancashire, Westmoreland, and Durham and called the Provinces du Nord. The map also shows the abbeys and cathedrals (also, of course, the abbeys by then had been destroyed by Henry VIII in the 1530s). The physical cartography is fairly good, at least for the coastline. The Pennines seem kind of added as an afterthought.

Advancing by some 50 years, this is Bonne’s England (again French) from 1772. The spelling is much more modern this time, as is the typography, including the dropping of the long S from the earlier map. However, we suddenly get Richemont for Richmond (when Richmond Castle was founded in 1071, it was called Richemont, for “rich hill”, after the town of the same name in Normandy), and Suale for the Swale. Depiction of the physical elements is much better: the coastline and the rivers are well drawn, and we have outlines of the counties.

A mere 15 years later on, this is John Cary’s map of the North Riding of Yorkshire from 1787. This is a weird map to me since every time I look at it, I think it’s an island because Cary chops off all detail from the East and West Ridings and Durham. The detail is fantastic though. You can easily see the main roads, and, if you know the area at all well, you can see the differences from the present day. For example Hawes seems to be sidelined on this map because the main road to Sedburgh (here spelled Sedberg) goes through Hardraw (spelled here Hardrow Chap) on the opposite side of the river. There is also no Buttertubs Pass here.

This is a small map of England, published in 1807 by Brightly and Kinnersly, out of Bungay in Suffolk. It’s so small, zooming in on Yorkshire doesn’t reveal much detail at all. The counties’ outlines are hand-drawn in color.

Finally another French map of England, this time by A-H Brué, published in 1827. Detail is good, modern spelling is pretty much all there (even Askrigg), and the main roads are all depicted. Counties are delineated in color again. Weirdly, if you look carefully, there is a small colored circle just outside Easingwold (spelled Easingwould). The circle surrounds the village of Crayke (spelled Craike), and has the annotation Du. What’s that all about? Well, according to this page:

[Crayke] was closely linked to Durham from the time of St Cuthbert, Bishop of Lindisfarne, for in AD 685 the village of Creca was given to him by King Ecgfrith and inherited by succeeding bishops of Durham. The village remained a part of Durham county, and it was not until 1844 that it was finally united to the North Riding of Yorkshire

In other words, Brué was meticulous enough to depict the small part of the County of Durham that existed inside the North Riding of Yorkshire in his map.

Since three of these are by French mapmakers, one day I’ll have to photograph my old maps of France, zooming in, say, to Normandy.

Now playing:
Bowie, David - Little Wonder
(from Earthling)

## New toy, yet essential: Kindle Fire HDX

For the past two years, I’ve carried an essential bit of kit along with me on flights. Given that I make at least one trip – two flights – per month (this year will actually work out at 38 flights all told for the year, so three flights per month), I actually spend a lot of time on planes. Not as much as some travellers, to be sure, but enough. To help pass the time, I’ve got into the habit of ripping and downloading DVDs onto a mobile device (or equivalently buying the download from Amazon) so that I can watch them on the flights.

Back in the day I used to do this on an iPod Touch, but then the Kindle Fire came out: a nice, if a bit heavy, 7 inch tablet. The software for it wasn’t that great (after all, two years ago it was brand new), but I didn’t really care. I needed it for video playback and for reading, the rest (games & productivity) I wasn’t too bothered about. In other words, I wanted to use it as a consumption device only. I bought the bottom of the range, an 8GB device, and it was pretty much ideal. For longer trips, say to Europe, I found I had to replenish the video files on the device before the return trip, but it wasn’t too onerous. The only real naff bit for me was the fact that, although nominally a stereo device, in landscape mode the speakers both pointed to the right. Bloody silly design.

Then, a year later, out came the Kindle Fire HD. This time, I decided to use some of my flight miles to buy one, so I obtained a 32GB version, still in the 7 inch format. This, along with the much better screen and the faster CPU and the lighter weight, was a great improvement: I could now preload every video I wanted to watch on the trip before the flight out. The speaker setup was better, one either side in landscape mode, but this time the speakers pointed away from you since they were on the back (the cover I used had little cutouts for the speakers). On a flight that was no issue since I was using earphones anyway, but later on in the hotel room it was noticeable I wasn’t getting the full aural benefit.

And now, I’ve just partaken of a 15% off promotion by Amazon to buy the Kindle Fire HDX, a 7 incher again. Again lighter than the previous version, faster chip, slightly smaller, a beautiful retina screen. I got the 32GB version again since it worked out so well before. The speakers are better still, and delightfully more audible, this time because the cover I bought for it (the origami cover) cleverly projects the sound forward. All told, a great buy, and I will be testing it out for real (as it were) with next week’s trip to New York.

For fun, here’s an image of the relative thicknesses of the various Kindle Fires. From bottom to top, the original Kindle Fire, the Kindle Fire HD, and the Kindle Fire HDX.

Before anyone asks why I just didn’t go for the iPad Mini (as an example), the answer is simple: Amazon Prime. There really is no contest if you primarily want to use a device for consumption. Yes, sure, ripped DVDs play on any tablet. But downloaded videos? Amazon has no real competitor. I watched the first four seasons of Breaking Bad by buying the DVDs and ripping them. The final two seasons? I bought from Amazon and downloaded them. If I’m in a hotel room I can stream a gazillion videos for free from Amazon. And all because I use a Kindle Fire and paid the $79 for Amazon Prime. And I get free two-day shipping for a year to boot. So, nice device Apple, but I’ll stick with Amazon on this one. Now playing: Moody Blues - The Voice (from Long Distance Voyager) ## Pre-loading images for a web page I had occasion the other day to mess around with a particular web page. The page was designed to provide an overview of a particular topic (essentially a list of high-level headers) and that had detail sections that were hidden. The user had to click on a “more” button on a particular header to show its individual detail section. Not only that, but should a detail section be shown, the “more” button was changed to a “less” button, so that the user got a hint that he could close that particular detail section (at which point, the “less” button became a “more” button once more). That basic scenario was relatively simple to implement. Essentially, using jQuery, I identified the buttons, attached handlers to their click events, and in these handlers, dropped down the details section and changed the button to a “less” image. Once the button was a “less” button, the event handler did the opposite: hide the details section and replace the image once again to a “more” image. As I said, not too difficult and the page worked pretty well. (function ($) {
"use strict";
var handleSingleItemClick = function () {
var $this =$(this);
if (this.src.indexOf("more") >= 0) {
$this.attr("src", "less.png");$this.parent().next().stop().show();
}
else {
$this.attr("src", "more.png");$this.parent().next().stop().hide();
}
},

bindEvents = function () {
$(".moreless") .click(handleSingleItemClick); }; bindEvents(); }(jQuery)); The next step, in and of itself, wasn’t too difficult either: have special mouse hover images for the more/less buttons. So if the user moves the mouse over a button, the image changes in some way to show that it is “active” (I used a pink version of the original button). If the user moves the mouse off, the image changes back. So in essence, I had to have four separate images: normal “more” button, hover “more” button, normal “less” button, and hover “less” button. Sounds simple enough: using jQuery again, I could attach handlers to the mouseenter and mouseleave events and switch the images then. (function ($) {
"use strict";
var handleSingleItemClick = function () {
var $this =$(this);
if (this.src.indexOf("more") >= 0) {
$this.attr("src", "lessHover.png");$this.parent().next().stop().show();
}
else {
$this.attr("src", "moreHover.png");$this.parent().next().stop().hide();
}
},

makeImageHandler = function (moreImg, lessImg) {
return function () {
if (this.src.indexOf("more") >= 0) {
this.src = moreImg;
}
else {
this.src = lessImg;
}
};
},

bindEvents = function () {
$(".moreless") .mouseenter(makeImageHandler("morehover.png", "lesshover.png")) .mouseleave(makeImageHandler("more.png", "less.png")) .click(handleSingleItemClick); }; bindEvents(); }(jQuery)); Case solved? Almost… The problem was that the first time the user moused over a button there was a small, yet noticeable delay. Why? Well, the browser had to go fetch the hover image from the server in order to display it. The normal button image was pre-fetched (as it were) since it was explicitly named in the HTML. The hover image was only needed when the mouse cursor entered the image and that triggered the handler which then set the hover image, causing the browser to go fetch the image from the server. A small but noticeable delay, as I said. So how could I get the page to have all its images pre-loaded? It seemed a little silly to define some special markup that referenced the image files: I’d have to make sure that those elements were hidden or off the page in some way. Instead I decided to write a little function that did the pre-load of the images required. (function ($) {
"use strict";
var
// code as before //

imageCache = [],
var imageList = ["more.png", "morehover.png",
"less.png", "lesshover.png"],
image;
for (var i = imageList.length - 1; i >= 0; i--) {
image = new Image();
image.src = imageList[i];
imageCache.push(image);
}
};

bindEvents();

}(jQuery));

The reason this works is that the Image class is a DOM class, not just a simple JavaScript class. Setting the src property on a newly instantiated Image object will cause the DOM to signal that the file is needed and the browser to go ahead and fetch it. Once created, the image object can’t then be thrown away: the garbage collector may free it and the browser may decide that the cached image is no longer needed. No problem: I just created a cache array of these images that would hang around for the life of the page. You can play around with the finished page here.

And that solved the problem of the slight image load delay.

Now playing:
Blow Monkeys - Wicked Ways
(from Animal Magic)

## My second calculator: the Commodore SR 4190R

Yes, it’s another rave from the grave: a retro calculator from Julian’s past calculator history. This one is from 1976, so I bought mine after I’d finished school and before I started university. It’s the Commodore SR 4190R, made in England (take that, oriental factories!), and a more fabulous button-oriented jabberwock of a calculator is hard to imagine. And, unlike graphics calculators of the present day with their menus and pixel displays, this is “just” a calculator.

So, “SR” because it’s a “slide rule” and “R” because it contains a rechargeable NiCd battery pack, 3×AA sized. The “90” part because there is, to all intents and purposes, 90-ish functions available from the keys. There’s the usual scientific, trig, and stats functions, together with a large set of conversion functions (lb to kg, inch to cm, gallon to l, and so on). But it doesn’t stop there: there’s three probability distribution functions (binomial, Gaussian, and Poisson) for example, as well as complex number arithmetic and combinations/permutations and factorials and the Gamma function. And for good measure there’s even a couple of memories. Phew. Coupled with all those functions is a 10-digit display, although internally it uses 12 digits for calculations.

And those keys are just lovely, all 49 of them, nicely color-coded. It’s hard to see from the photo, but the keys are slightly concave. Your fingers just seem to slip naturally into the key depressions as you type away at your calculations. The LEDs are bright and visible and draw power like nobody’s business; hence the rechargeable batteries.

My particular calculator got lost a while back, a victim of various moves and a dead rechargeable battery pack. I’ve been looking for a long while for a good example to appear on eBay (I’d found this model’s bigger brother, the SR 9190R, a couple of years or so ago), but they are, for some reason, very rare. Finally last week I struck gold and got one whose battery didn’t hold a charge but that did work with a power supply plugged in, and it was in very good condition with a pristine label on the back (they get scuffed easily). It turns out that someone had actually removed the battery pack (thankfully: when they leak, it’s nasty), so I replaced it with a brand new one I’d bought and recharged it overnight. As you can see from the photo, the LEDs are perfect and the new battery pack is working out really well.

All in all this is one heck of a calculator and was a favorite at the time. It was an easy slam-dunk replacement for the Litton Royal Digital 5-T, my first calculator. Unfortunately, by the time I’d bought it I was on my way to university and a Maths degree course that was pretty much all “pure mathematics”. There was really no need for me to have a blockbuster scientific calculator like this any more. Perhaps I should’ve taken Physics instead…

Now playing:
Yello - Time Freeze
(from Motion Picture)

## PCPlus 326: Turing and his machines

In August last year, I read Alan Turing: The Enigma by Andrew Hodges, which turned out to be an excellent biography of Alan Turing, especially so since 2012 was the centenary of his birth (I’d bought the Centenary Edition). Hodges is a mathematician and I certainly appreciated the way he described Turing’s inventions and mathematical insights. Despite (or in spite of) that, Hodges detailed Turing’s life and death in great detail, without causing the reader to flag and get bored. The description of...

## Wire sculptures at Rievaulx Terrace

While we were on vacation in England at the beginning of the month, we visited Rievaulx Terrace and Temples . This is kind of an 18th century folly, a landscaped terrace on the hill just above Rievaulx Abbey in North Yorkshire where the designer cut views in the woods on the slopes so that you caught glimpses of the ruins below as you perambulated through the gardens. To top it off, the owner wanted a couple of temples on the terrace as well: at one end the domed Doric Temple and, at the opposite...

## Essay on Prime Numbers

Once upon a time (well, OK, in the mid 70s) in a land far, far away (England), I went to King’s College, London as an undergraduate to study for a degree in Mathematics. Easy peasy, I thought, pure mathematics all day, every day. I could immerse myself in the realm of the pure thought, build up logical edifices, and marvel at how far we’ve come as a race. Not so fast, said someone just before I appeared for my first year, those mathematicians will leave here with a degree, but they won’t...

## PCPlus 324: The history of streaming media

This particular article was prompted by the (June 2012) news that the BBC was going to not only broadcast the 2012 Summer Olympics as normal through its TV channels, but also multicast it via the Internet. (Of course, that was only to UK residents, us US residents had to make do with NBC’s execrable coverage. Unless you knew about and had UK VPN access, cough, cough.) It prompted me to think about how streaming worked over the Internet and to explain it to the layman. I started off however...

## “The Adjacent” by Christopher Priest

Imagine a prism. White light goes in on one side, and the different wavelengths comprising the light are split because they travel at slightly different speeds in the glass. Since the other side is at an angle to the first – the prism is a triangle – these different wavelengths come out as a rainbow. That’s what it is like reading a Priest novel: the true story, whatever it may be, goes into the triangular prism, and comes out as variations of the same tale. In The Adjacent , his latest novel, somehow...

## PCPlus 323: Secrets of Steganography

Ah, steganography, that art of hiding some message in plain sight. These days we’re attuned perhaps to just thinking of hiding a digital message by modifying the bits encoding an image, but it does have a long illustrious history before computers ever came along. There’s Herodotus and his idea of inscribing a message on a wax tablet, underneath the wax; microdots used by spies in WWII and later; using code-words in an otherwise normal-looking letter. But in the age of computers steganography...

# Extras

## Search

I'm Julian M Bucknall, an ex-pat Brit living in Colorado, an atheist, a microbrew enthusiast, a Volvo 1800S owner, a Pet Shop Boys fanboy, a slide rule and HP calculator collector, an amateur photographer, a Altoids muncher.

## DevExpress

I'm Chief Technology Officer at Developer Express, a software company that writes some great controls and tools for .NET and Delphi. I'm responsible for the technology oversight and vision of the company.

## Archives

December 2013 (0)
SMTWTFS
« Nov
1234567
891011121314
15161718192021
22232425262728
293031