"Convertir" une string en boolean

jeanjean_ac Messages postés 32 Statut Membre -  
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je suis en train de développer un système pour faire des test A/B sur mes pages. Concrètement, quand une page s'affiche, un appel Ajax va demander une des deux versions du test au serveur et l'affiche au visiteur. L'objectif étant bien entendu de voir les différences dans Google Analytics.

Mais j'ai besoin que mes utilisateurs ne soient pas perturbés par un affichage aléatoire : chaque utilisateur doit toujours recevoir la même version.

J'ai pensé me baser sur l'adresse IP, qui est suffisante à cette échelle pour identifier un utilisateur.

Il me faudrait donc une solution pour transformer en adresse IP en 'A' ou 'B' ; ou plus généralement, "convertir" une string en boolean...

La problématique, c'est de garder la probabilité de 50/50 à chaque tirage. Sachant que les adresses IP ne sont pas distribuées aléatoirement (un provider se voit attribué un lot d'adresses IP qui commencent par les mêmes chiffres), je recherche un algo qui ne prênent pas en compte cette spécificité. Il faudrait un truc comme l'algo MD5 : à la moindre variation d'un seul caractère, il y a 99.99% de probabilité que le résultat soit différent.

J'espère que quelqu'un pourra me renseigner :)

PS: Si vous vous intéressez aux tests A/B : https://alistapart.com/article/a-primer-on-a-b-testing/

Jean
A voir également:

1 réponse

eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Bonjour,

Sans prendre un algo bien compliqué tu pourrais te contenter de tester la parité du dernier chiffre non ?

eric
0
jeanjean_ac Messages postés 32 Statut Membre
 
Salut eric,

Je sais pas.... j'ai des doutes sur les probabilités.... puis c'est pas générique...

Dans mon cas de figure ça peut peut-être marcher, je vais faire des tests pour voir si ça tombe vers 50/50.

Merci
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Je sais pas.... j'ai des doutes sur les probabilités....
Tu penses qu'un FAI va donner d'abord toutes les adresses paires puis les impaires ?
Sans compter qu'il ne peut attribuer que celles qui sont libres
0
jeanjean_ac Messages postés 32 Statut Membre
 
Non, mais le dernier chiffre a plus de chance d'être entre 1 et 5, vu que les adresses vont jusqu'à 255. Ensuite, je n'ai aucune idée du comment de la répartition des adresses, mais je sais que c'est un paramètre qui peut faire changer les probabilités.

Théoriquement par contre y'a 50% d'avoir du pair entre 0 et 5 comme entre 0 et 9. Mais en pratique, je viens de faire le tests sur environs 800 visites et ça donne du 58/42 ce qui est pas trop mal. Par contre, beaucoup de disparités en fonction de la provenance... l'échantillon est peut-être un peu trop petit pour savoir...

La méthode aléatoire me donnait en "moyenne" du 52/48 sur des échantillons de la même taille.
0
jeanjean_ac Messages postés 32 Statut Membre
 
Je vais laisser tourner cette nuit histoire d'avoir un échantillon plus large. On en reparle demain :)
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Si tu crains que tous les n° ne soient pas attribués tu peux toujours tester la parité de la somme des 2 ou 3 derniers nombres de l'IP.
eric
0