Track vs Route

a map

(C) OpenStreetMap contributors

I am a self-confessed GPS aficionado. Didn’t care for GPS for years on ground of having a very good map reading wife by my side, but one day, we started using Google Navigation in the car. We upgraded to a entry-level Tom-tom (on grounds of the more accurate GPS unit and no need for data connection), and I am now walking the surface of this planet with a Garmin eTrex 30 mobile GPS unit in hand.

I love it, and hate everything that comes with it or, more to the point, hate everything that fails to come with it.

Garmin assumes users already know all about GPS navigation. For example, they do not consider details such as the difference between a route and a track worth explaining. The Garmin software didn’t find my approval, and I am delighted to find a selection of independent offerings. At some point, I thought I had found my home in http://www.outdooractive.com/en/, until I discovered that their exported routes are actually tracks.

So, what is a route, what is a track?

A route is a set of waypoints between start and end of a journey. The waypoints help the routing system to choose between alternative routes, and offer milestones for the trip. The point is that the GPS navigation system finds its own way from one waypoint to the other, and it can guide you along the way: turn right in 50 meters, make a u-turn when possible, take the 3rd exit.

A track, by contrast, is a very dense collection of waypoints. The system can draw a line from one waypoint to the other, and it can show you where you are relative to the track, but it cannot guide you along the track or back onto the track if you lost it.

A track is a record of where you (or where somebody else) has been in the past, a route is a navigable instruction for future trips.

The closest I could find is the well-made http://www.bikehike.co.uk/mapview.php site. Ignore the mediocre Ordinance Survey map display and plan your route with Google maps, and then export a route. This actually exports a route, not a track. This route will have way too many waypoints however. The GPS device only handles a few waypoints per route. You can ask the software to cut the number of waypoints. It’s just too bad that one cannot decide which waypoint enters the exported route; this is the result of an algorithm over which the user has no control.

I enjoy exploring all this free software, but would absolutely love to pay a reasonable price for a good route planning software for hiking and cycling. Frustratingly such software doesn’t seem to exist. Suggestions, anyone?

Amazon Spectrum Analysis

01-05-2015 16-32-01Do you use the Amazon Music player? Yes? Did you ever watch the small orange “bar graph” display?

You might want to watch it a little closer. I realized only now that this is a simple animated display which bears no correlation to the audio stream, let alone a result of real time spectrum analysis.

Well, maybe it’s better that way. I need my CPU for things that matter to me. But I am fascinated to notice how easily fooled I was, and how this dumb animated picture gives the illusion of science, high-tech, something sophisticated.

So, I reckon it’s a pretty clever piece of engineering given how dumb it is.

A Blinkenlight

DSC_0215I call it Ein Blinkenlight For 1000 Thoroughly Modern Monkeys, 448 LEDs and One Great Bard, and it is ready!

My Blinkenlight plays on the philosophical question whether 1000 monkeys using 1000 typewriters eventually produce the works of William Shakespeare, given enough time. My 1000 monkeys are thoroughly modern monkeys: they exist in form of a digital emulation, programmed into a Raspberry Pi mini-computer, and they use a predictive texting system rather than classic typewriters. Their output is shown on a display made from 448 LEDs.

The predictive texting system is trained with one or more of the works of the great bard.

The monkeys begin with a randomly selected word out of all the words in the training vocabulary. The next word is randomly chosen, but with a probability matching the word distribution in the original work. For example, king may follow my with a probability of 40%, sword may follow my with a probability of 30%, land and dog with 20% and 10%, respectively. Juliet may never appear after my, not in Hamlet. Punctuation and capitalization follow a similar principle of random selection to match the distribution in the training material.

This process is repeated over and over, producing an intriguingly Shakespearean-esque but nonsensical series of words.

This Google+ post has a little video attached, demonstrating the blinkenlight working with both Hamlet Prince of Denmark and Romeo And Juliet.

Smug

Over 27000 photos and over 124GB later, the transfer of our digital photos from our self-hosted gallery to smugmug.com is complete. I am sure you’ll find the new photo site easier to navigate and a lot faster. See if you can find yourself at photos.gauweiler.net.

Not In Vain

fig-1Nice to know that my pretty drawings weren’t done in vain. We’ve been published at http://www.controleng.com/single-article/prototyping-peer-to-peer-applications-for-the-industrial-internet-of-things/73ec533ccc5868e71d7af61241f41dca.html, how nice.

A good drawing is more than 1000 words, they say. If it isn’t worth at least 1000 words, I usually add, it isn’t worth having. I love diagrams which provide a wealth of information, if one only takes the time to look at it.

How Weird

DSCF0616I am a late starter in computer programming, at least for my generation. I didn’t have an interest in computing until the mid 80s. A good choice, in hindsight, because this is about when the first decent home computers begun to emerge.

In, other words, I’ve been most of my past quarter of a century, and a little more, cranking out source code in a variety of programming languages. Some were cool, some were annoying, some where crap. Some where mainstream, some were soon forgotten, some where invented by myself (and some of those thankfully remain unknown to the world).

Anyway, the point is that I spend all those many years typing code in a fixed width font such as Courier:

if (something happens) then
// ey! it worked!
tell anyone
else
try something else
end if

(Well, OK, maybe my typical code looks somewhat different, but I think you get the drift.)

As it turns out, I am currently exploring a programming environment whose principal visual novelty is to use a variable-width font by default:

if (something happens) then
// ey! it worked!
tell anyone
else
try something else
end if

How weird is that!?

Seriously. This is quite a step for a guy like me.

 

Enhanced by Zemanta

Scratch That

DSC_0764When is the last time you watched a 12-year old using Scratch?

I had my first (and so far last) opportunity just a few days ago. In conversation, it turned out that one of our visitors, a 12 year old boy growing up in a household with very limited technology awareness was familiar with Scratch, the MIT’s programming tool for kids: http://scratch.mit.edu/. So, I took the boys upstairs, and gave them access to a mouse, keyboard, and a Raspberry Pi running Scratch.

It was for them to take the front row and time for me to step back, occasionally leaning over their shoulders for a better look.

This programming tool is obviously easy to understand and comes with a very flat learning curve, and is made to stimulate. Can you make it eat the monster? or when they hit the tree, they’ll die or other creative ideas were shouted out by the younger of the boys, while the eldest solved practically every task thrown at him in this manner. He didn’t always know how to do it, but looking around and browsing the available programming building blocks, we’d soon find a way.

After a very short time, he had a cat and wing-flapping bats chasing each other, scoring at certain events and exhausting their lives at others, messages were sent and received, sound was coming from the speakers, environmental factors changed, and he even sketched together his own character. Rough and primitive as it was, the total was just very impressive and awe-inspiring.

I had heard of Scratch before, but seeing it in action used by children is something different altogether.

Excellent stuff.

 

Enhanced by Zemanta

Don’t Use the Force, Luke!

DSC_0754I am happy to announce an update to the Amalgamation Project, adding basic direct printing support.

I struggled for a while with printing, and discovered that many others on the world wide web struggle with the same issue. Site after site asks the same question, screams the same outrage: How does one make Adobe Flex print in landscape mode? How do I force the FlexPrintJob class to a certain behaviour or effect? How do I get control over this process?

Funny, that. The simple answer is that you don’t.

The user choses the print preferences and page orientation, and the printer hardware may dictate a particular format or further restrictions. You, and I, and the Flex software, aren’t supposed to enforce any particulars. We are supposed to deal with it.

In terms of software architecture, this is an interesting and welcome shift of policy. Once I realized that this is what happens, the printing solution falls out just so.

One never stops learning, and one shall never stop re-thinking things once learnt.

 

Enhanced by Zemanta

Full Circle

DSC_0323One for the technical folk today, but maybe not without a general morale:

I can’t help wondering how software design for graphical user interfaces came about over the years. Back in the early days, you’d use a text editor to describe the graphical design in a cryptic language (hey, who remembers AES and GEM?).

Then Borland came with a barely audible Poof! and introduced true rapid application development, a click, drag and drop approach that supports the design of graphical user interfaces in a WYSIWYG way. Delphi and C++ Builder were great, I thought. In hindsight, Borland accomplished little: they coined the term RAD (or, at least, they were among the first to have one), and then lost Anders Hejlsberg to Microsoft. Borland has gone out of business (I think), and Embarcadero Software looks after the leftovers.

Then came .NET, Microsoft’s first true RAD tool. Anders Hejlsberg’s design in a different framework, and finally adopted by the mainstream, how nice.

I am now looking at declarative languages. Well, everybody is. It’s quite the hype. Adobe’s Flex with MXML, or Microsoft’s Windows Presentation Framework (WPF with XAML) and Metro. Brilliant. I love both (with an inclination towards WPF and C#).

It’s just so very nice to see that we’re now free to choose a method of describing the graphical design in a cryptic language (hey, but it’s XML! Must be cool!), just like in the good old days.

Something definitely came full circle here.

Enhanced by Zemanta

Defeat

DSC_0722As much as I hate to admit it, I have to admit defeat: for years, I used to digitally sign my email messages using an SSL certificate. I chose S/MIME because I felt it’s integration is superior to PGP, and I chose to sign digitally because I feel this is the right thing to do.

Few people sign their emails with a digital signature, but if everyone did, we had a fraction of today’s issues with unwanted emails of all kinds. Receivers could be confident that a correctly signed email actually comes from me, rather than from an imposter. Just like we sign a normal letter or even a greeting card, we should sign our electronic mail and documents.

Nowadays, however, I send and receive email messages from mobile devices as well as from more than one PC, using webmail tools and dedicated email tools alike. I notice with regret that only a small fraction of my email tools support digital signatures (let alone integrated encryption). Since only a portion of my messages are signed, I might as well stop signing all together.

It’s a real shame that we always seem to settle for the least common denominator.

Enhanced by Zemanta

Amalgamation Update

baby-lottieJust a little note to say that the Amalgamator has been updated with its third-generation algorithm. It’s a surprisingly tough challenge, but I am well pleased with the current engine.

Error-free amalgamation of the demo text with an overall ratio of 0.76, compared to the previous algorithm, which reached an overall ratio of 0.84 on the same text (and not without errors in the general case) – I am well pleased.

The Amalgamation site is right here.

One-Oh-Nine-…

DSC_0577I never noticed this in the past, but over the last couple of weeks, it happened several times: The person in front of me at the supermarket check-out removes the last item from the belt, accepts the total, inserts the payment card. After a few seconds of modern-age meditation (during which both the cashier and the customer look at their respective displays in a trance-like state), the cashier prompts the customer:

Enter your pin, please.

On several occasions now, I could not help overhearing the customer replying with the number, or speaking the digits as they were typed in: One-Oh-Nine…

Funny that.

I wonder if it also has a serious side. As we all got accustomed to the chip-and-pin process, the whole thing becomes a daily routine (many times per day for many of us). I think that we might subconsciously relax our own security levels because it no longer is an extraordinary thing to do. Is it time for the next best secure cashless payment scheme?

Enhanced by Zemanta