For the record, I included a sonnet that I found on Wikipedia, cited it, and got a call-back - so they're clearly OK with poetry being outside of my skill set.
In all cases that I've seen, the companies are small (5-15 current employees) startups where hiring a candidate with the right personality and attention to detail is just as important as having the right skills on paper. These companies seem to want people who have spent some time looking at the posting to make sure they want to be part of the startup experience, as opposed to people who will take anything.
It's a way to start to filter out people who want a job from people who want this job, which is something the hiring company wants to do.
Just because someone sends his resume without reading the ad doesn't mean he'll take the job. He may just want to know whether the company finds him interesting before he will think whether this job is what he wants.
Granted, not reading the posting thoroughly is not a good indicator, but it really is an extremely minor one. If the candidate is poor there will be plenty of other reasons to disqualify, and if it's an otherwise good candidate it's really not worth getting too worked up over.
More recently we've begun to filter applications like this, and now instead of 200 applications in the first 48 hours we probably get 6 or 8 - but all of those match our requirements. Sure we could be missing out on some awesome person but it's not worth my time looking through 200 applications to find him.
Amusingly though, in the example that you brought my strategy would have been pretty good. Instead of reading through your ad until I got to the place I am disqualified for the job, I would have just sent the resume and not wasted any more of my time. Since I'm not getting the job in either case, I have only saved myself time.
Additionally, there is always the chance that because of other accomplishments mentioned in my resume, the company will still hire me.
I'm not saying my strategy is the best one. I'm starting to think I should change it. But this is an example of when it is beneficial.
Had you read the posting and spent a few minutes explaining why you were good at the two things they asked for, you would have been called in for an interview.
My first reaction to this was "why would this guy need to send off more than half a dozen resumes to get a job?", followed shortly by "my god, how much damage is this guy doing to his career?"
One thing you'll quickly notice if you have to do any hiring in this industry is that there's a vast pool of unhirable developers out there. These guys have very little chance of landing a job, so they're forced to apply for every single job out there in the vain hope that they'll be able to fool somebody into hiring them. Because they don't have time to craft good cover letters to each of those shops, they are very easy to detect, and their resumes tend to go straight into the trash.
By emulating their tactics, the Parent is essentially placing himself into this "untalented pool" voluntarily. Dude, if you're listening, please stop. All you're doing is blacklisting yourself out of the industry.
Remember - manual filtering has a failure rate just as much as any automated approach, the trick is to balance out the false positive/negative rates so that they're acceptable for your purposes.
In any case, if you're a startup, you probably don't want anybody who doesn't have enough of a sense of humour to enjoy the odd silly game in the middle of the mind numbing toil of a job hunt. If I was looking and saw an ad like this I'd probably take a few minutes off to learn about italian sonnets whether I was planning to apply for the job or not, and be glad that I'd been inspired to look.