Why are they different?
If the language is the same, and the text link is the same then why are the QR-Codes Different?
I am convinced that QR-Codes are passing on more information than you realize.
While some may say that it is simply a generator difference, I am not convinced. Each QR-Code is readable by quickmark, and apparently contains the exact same URL. But when generating a new QR-Code from existing QR- codes the offspring is unique. So the only conclusion we do have is that the generators are marking the code by who generated it, and subsequently the quickmark generator is passing on something from the first generator. …So far the time stamp theory has proven negative.
QR Code Generators Tested
QucikMark – iphone
qrcode.kaywa.com
zxing.appspot.com
Images of QR-Codes and the subsequent matings of QR-Code Generators.
We will call this one big papa as this spurred the research…
The text link generated by this QR-Code is : http://google.com/m/place?georestrict=input_srcid%3A6a8383041e7e4ce8 according to QuickMark (Big mama). Quickmark then provides an option to re-create this QR-Code….
Yes… they are different… but they carry the same url. So Big Daddy and Big Momma are produced a new baby.
Here is Big Mama’s DNA of the same text/link as generated by big quickmark on direct input:
Different.
So lets test the text link with an online generator… Number one in the SERP for QR-Code Generator was.. qrcode.kaywa.com
No surprise at this point but this is….. Different.
And now if you scan qrcode.kaywa.com (sample #1) with #QuickMark and hit the create button…
Different… yet the same text/link…?
Next Generator on the search engine zxing.appspot.com:
And offspring between QuickMark and Zxing:
Time stamp???? No. Here is recreation 2 of big daddy and big momma 30 minutes apart.
Summary
While the intended information is the same, link/text, the QR-Codes are clearly different based on how they are generated. It seems to me that they must be passing on additional information. To what end or what information I cannot say. I am not going to accuse quickmark as being the mother of all whores or Google as being the anti-christ. Although it is amusing that if this were true.. quick “Mark” could easily be the “Mark of the Beast” if google, which is a number, is indeed the “Beast”. How many zeros in a google??? Was that 666??? Just kidding!
Feed the beast!
Can someone give me a viable explanation as to why these QR-Codes are different? What information is being passed on?
The good news is there’s quite a reasonable explanation for this, and it’s nothing sinister.
It is not at all true that the same input text results in the same QR Code. First, QR Codes have a selectable amount of error correction: level L, M, Q or H. This controls how much extra bits are used to allow for error correction. For the same input, a different EC level will result in a different code.
QR Codes also have a notion of ‘mask pattern’ which helps regularize the distribution of black and white modules. The encoder can and should pick the one that achieves the best distribution. This also opens the possibility of different codes for the same input.
Finally QR Code has special encoding modes for special kinds of text. For example it can encode digits in normal ‘byte mode’, or in an efficient ‘numeric mode’. Same input — different encoding — different QR Code.
So you believe that the the quickmark differences are due to mask pattern, even when the input is the same… I can buy that. Thanks.
But it still seems irregular that duplicating a QR-Code and using the same quickmark generator would produce 4 unique QR-Codes which all have the same data.
Is it possible to recognize the generator or the heritage of recreated QR-Codes? Or is it possible that the quality level of the orginal is duplicated? Why wouldn’t the quickmark always produce the optimal QR-code for the data?
Hmm actually you have a bit of a point, and I am surprised. The Quickmark generator actually encodes this:
http://google.com/m/place?georestrict=input_srcid%3A6a8383041e7e4ce8 #QuickMark
It’s actually adding an anchor info to the end of that URL! That is not cool, in my book.
I was actually going to say earlier, well, some of these encoders are actually encoding a redirector URL that goes through their servers, things like that, and in fact that’s what’s up here, in a way.
You can read QR codes here: http://zxing.org/w/decode.jspx to see what they really say, including raw bytes. You can use the underlying open source code if you like to dig into any property of the code you like: error correction level, mask pattern, encoding method, etc.
Nothing says what generated it, no; there’s just no provision for hidden info, timestamps, etc. in the specifications. Even if you did something non-standard along these lines… it wouldn’t get very far since no readers would accept or do anything with it.
So while my points stand, actually you were correct in suspecting this encoder isn’t actually encoding what you think it will.
I can vouch for the Google encoder, in the Chart API, which was the forerunner of the encoder in ZXing (code.google.com/p/zxing) of which I am a developer. It doesn’t pull any funny business, just encodes what you tell it to.
Thanks Sean, I owe you one!
Hi guys, this is Mike at QuickMark. Can you tell us the exact steps of how you encoded #QuickMark into the QR Code?
Currently #QuickMark is added to the end of URLs when end users tweet a particular URL to Twitter. If it is showing up in other places then it is likely a bug and we would like to get that fixed.
As Sean mentioned, different encoding methods produce different looking QR Codes, even though they encapsulate the same intended information.
We can also assure you that our QR Code generator is not adding any hidden info and would like to help clear up this misunderstanding.
Thanks Mike for checking in. I am not sure which QR-code he used to get the #quickmark I just rescanned all of the marks above with my iphone quickmark app to double check the info that was being created. All of your links and plain texts look to be the same.
The settings on my Quick Mark under share are Charset UTF-8.
The auto executes are all turned off. The data matrix for 2d is turned on.
Again, I am surprised that even though the link being passed on is the exact same, the quickmark created 4 different looking QR-codes. I personally have not double checked Sean’s new input about the #quickmark being added.
Hello, thanks for your reply. I have not yet been able to find #QuickMark added to the barcodes I generated myself, perhaps I am missing something?
Scanning QR Codes generated by other sources and then recreating them with QuickMark is likely to present a different looking barcode, due to the aforementioned technical mechanisms in previous posts.
But our generator should present the same looking QR Code if the source data is the same (without changing encoding options). To confirm this, you can scan each of the QuickMark screenshots above and immediately recreated them with QuickMark, the output image should be the same as the screenshot.
Please also feel free to check out online barcode generator at http://www.quickmark.com.tw/En/diy/?qrLink
What has this got to do with pest control
…. Hmmm, You do have a point…. well as a marketer I’d like to be able to use QR codes, so I researched a little on QR code creation. So directly, a QR code is not going to control your pests. But since I do marketing for a pest control company, than indirectly it does. But thanks for visiting and asking your questions.
Is it possible the reason for the code generating differently is because the number of reviews change? Just a thought.
The number of reviews…. No. The codes were all created the same day.
I don’t much about coding even in the broadest sense, much less in the technical detail that you are conversant in… but my question is this:
Is it possible to think of a qr code as a first “paver” on a potentially limitless path? The first paver (being the one in plain sight) has within it an encoded trigger which can send information (timestamps etc.) to any number of secondary pavers/urls? It would seem that if this were the case, then the pathway need not be a one-directional plunge of information, but move like capillary action beneath the surface. Are you suggesting that the observed differences could account for these types of triggers?
Other than marketing applications, what are other potential sinister uses of such a coding matrix? (Not intended by the good folk that were part of the development, of course.)
I don’t think that it’s a time stamp. There was no difference when creating a QR code with the same info but at different times. It seems that the differences were based on the QR code generator. Not sure what purpose the differences would serve.
wow, just start viewing this page while doing my qr code generator project.
it seems that there is a different qr codes generated EVEN with the same error correction level AND masking pattern.
You can see from some of the image thos003 posted.
some of the qr code generated have the same error correction level and masking pattern but it generate different QR code.
to know about the error correction and masking pattern please refer to wiki.
the generator i make was also make different one from all the generator from the web.