@skyfaller Depends on your goal. If you want to defend against most scrapers, iocaine can be enough, in my opinion.
It's not perfect, and there are scrapers that sometimes get through. There are ways to catch a bunch that iocaine can't, through behavioural analysis - that is something iocaine can't do yet, and likely won't for a while1.
Or, to put it differently: I'd never say iocaine functions best alone. There's always something where other tools can improve one's defenses. Whether that's practical, or worth it, is something that'll have to be decided on a case by case basis.
My goal is to make iocaine "enough", so that I don't need to use anything else for my own stuff.
I have made some experiments, I know how to teach iocaine to keep some state, but it's a lot of effort, and requires considerably more resources than iocaine uses currently. So I'm holding off on implementing these until it becomes necessary. Hoping the bubble will burst sooner. ↩︎