879 karma · joined March 19, 2012
I write the DataGenetics blog. http://www.datagenetics.com/blog.html
Numeric keypad layouts mimic calculator layouts, which in turn, mimicked the original ‘adding machines’. The inventors of these early devices did not perform extensive user based testing (as it often the case in technology; early adopters end up creating standards that others follow, good or bad).
The whole point of the article is the Bell labs undertook an extensive user based study to investigate which layouts might be better (Pretty much the first time this testing had been done on this issue). They tested both canonical forms of the (3x3)+1 layout and selected what we now know today as the telephone layout. (If I had to speculate as to why this layout performs slightly better than the calculator layout, I might suggest that, in the West, we read left->right and top->bottom and so this is the more natural numbering scheme).
Had extensive testing been performed by the original adding machine developers, maybe both devices would use the same layout.
Interestingly, the most creative benefit I’ve heard for keeping the calculator layout as it is, is because calculators are often used to sum up real world measurements, and these fall under to purview of Benford’s Law* Because of this, the keys which are more likely to be used as the leading digits are closer to the at-rest position of the hand and require less energy to move and press … yeah … I’m not convinced either, but it sounds good
/\/ick
I dig Gray Code too, and here are some pretty pictures http://datagenetics.com/blog/november32014/index.html
Even though I now live in the USA, it appears I've never been into McDonalds and had need to note the sizes these items are sold in. I will not comment further on this :)
(Where is the 'best' place to stand to minimize the average distance required to answer three phones place on a wall).
Other Pi sites seem to follow similar protocol. It will create an "off-by-one" for most answers, but since the string that is the furthest away does not start with a "3", other than the off-by-one, it will not change the results :)
I did actually put quite a bit of thought into how I was going to put in the code samples. I elected to use BASIC like syntax because IMHO, this is close to as common denominator as possible and most universally understood (this is not an invite to start a flame war!)
I also elected to start by arrays at 1, rather than 0. The purest in my wanted to use zero, but to make it more universally understood, I elected to use one (because it also relates to the real world and card #1). I think more people will understand it this way.
The other thing I almost did not do (but changed my mind at the last minute), was to in-line the swap function and enumerate all three steps. I almost wrote it with Swap(i,s) function instead. Half of me thinks using a function is easier to understand, the other half likes the in-line for explaining it.
It's not as if the logic is very hard, there's one loop.
I'm curious what others think. Was it hard to understand? I'm always keen to learn more. Could I have explained it easier with the changes above?
I'll get my coat ...
I agree, it's a fascinating subject. I wanted to give a high level perspective and there were some liberties taken.
Joking aside. DataGenetics is the consultancy company I set up when I was doing that line of work. It was all about spotting trends/patterns/explanations in data (sort of like the DNA), and the term described the work I did. A lot of the work I did was related to video games, and what the characteristics (chromosomes) were about games and how they performed. When selecting a business name, you can chose to attempt to describe your business function in the name "GreatPokerHands", "DataGenetics", "CheapTickets" or you can try an obscure reference "Amazon", "King", "Zynga" and then spend additional money educating people on that brand and what it represents. (Amazon sell things online, and has nothing to do with the river. If we listen to Jeff, he says the name was selected because it started with the letter "A", so will appear first on lists).
I continue to blog under DataGenetics as I own the domain, and have followers there. It's a hobby. Not every post is about data, either, it's just a place I put my thoughts. It's my hobby.
A slightly different variant, is how to make it totally random selection http://www.datagenetics.com/blog/june52013/index.html
Sorry, I don't mean to cause offence to anyone. I blog things I find interesting. I use my own words, create my own animations, derive my own formulas (and the spelling and grammar mistakes are all mine!)
When I use the photos/images from others, I give credit and link back to sources as much as I can from available data.
I've have on the order of 100 blog articles now. I'm sure over the course of these I've trodden on a few feet (sorry), just as much as I've blazed new trails.
We can all become better by listening to feedback, and I'll try to do better at providing additional sources of information and inspiration.
Sure, this might cause the next day to be a slower start, but you have to balance this out against the peace of mind you get from leaving the office and having no worry about. That is worth a lot (and might cause me to sleep better and be more productive the next day?)
It's like doing the dinner dishes before going to bed so you don't have to wake up to them (or not enjoying the rest of the evening because you think you'll have to do them in the morning).
Like George, I'll often plan my next day ahead so that I know what I'm going to do to hit the ground running (Optimize the code I wrote last night, add input error correction, cough add comments or tighten up the format ...)
All these things aside. Do what works for you!
(characters used, length, common sub-strings ...)