If you're interested in diving into the specific coding and architectural issues at play here, I highly recommend taking a look at the original blog post outlining the problem. Perhaps most concerning ...