I tried two QR readers on the photos in the article. They did not detect the code.
Would it have been much more effort for the photographer to take a photo that was scannable? Or is there just too much variance in the arrangement and no reader would actually scan it even without a photo?
Might be a problem with the combination of your monitor and your phone camera. I tried Barcode Scanner on Android, and it scanned it without a hitch. Hell, I had more trouble scanning a QR code I hand-drawn in blue on white paper...
An old QR app I had for a long time (from when QR codes were first introduced, many years ago) failed to read it too. Some of the bits look ambiguous too --- e.g. taking the upper left corner bit of the upper left locator square to be (0,0), what's the bit at (16,11)? It's both noticeably darker and lighter than its neighbours, like it was cut out and then grew back slightly.
Those which can't read the code probably use traditional thresholding to reduce the input into 0-1 first, while those which can are using some variation of https://en.wikipedia.org/wiki/Soft-decision_decoding algorithm.
It doesn't help either that the middle was blanked out, eating into the error correction budget.
I scanned it with WeChat and the public WeChatID of the company popped out - haomengshenghuo, whose direct translation of english is: life with good dreams.
It worked with the scanner in the built-in camera app in iOS 11, but I had to manually adjust the brightness (issue with scanning off a computer screen?)
Would it have been much more effort for the photographer to take a photo that was scannable? Or is there just too much variance in the arrangement and no reader would actually scan it even without a photo?