Agreed.
While I do think that there is plenty wrong with traditional programmer interviews and that new approaches are needed, it isn't really a scalable solution on the candidate's side to spend hours to days on challenges for individual companies if everyone is asking for one. It becomes sort of like everyone wanting their own app store, or their own always-running polling service running on a desktop or mobile or whatever. If there are just a couple of people doing that, no big deal, but once more than a couple of entities start doing it, the system falls apart. If you're Google, Apple, Github, or some other prestige employer you can probably get away with this system even despite the scalability issue; otherwise good luck with it.
As a practical compromise, companies should be willing to waive the specific challenge if the candidate already has their own existing shareable source code they can point to, thus allowing a candidate to reuse the same example as a portfolio piece with multiple companies.
However, few companies are likely to do this since the same basic ego problem that breaks traditional programmer interviews comes into play ("Well we do things very different here, we're very special, so we must make the candidate jump through hoops X, Y and Z").