Combien faut-il de points pour avoir le droit d'envoyer des pm ?Cette question est (de loin) en tête des FAQ. Et la réponse n'est pas simple. Historiquement, la limite en nombre de points pour envoyer des pm est faite pour éviter que des petits malins fraîchement inscrits assaillent les membres de questions sur les challenges, de manière à progresser plus rapidement. Et accessoirement, ça évite aussi le spam de certains qui voudraient faire la publicité de leur site après inscription sur NC. Bref, la limite théorique serait aux alentours de 150 à 200 points.
Bon, maintenant, je souhaite pondérer un petit peu. Il est déjà arrivé que cette limite ne suffise pas, et dans ce cas, ce n'est pas bon signe pour toi. En effet, NC reçoit régulièrement des petits malins qui cherchent à tricher, de diverses manières. Malheureusement pour eux (et heureusement pour ceux qui jouent le jeu), les administrateurs veillent, discrètement. Il arrive donc qu'ils décident de brider le compte de quelqu'un, sans pour autant l'avertir, avant de procéder à un banissement. Donc, méfiez vous, si vous ne pouvez pas envoyer de pm avec plus de 200 points, réfléchissez si vous n'avez pas quelque chose à vous reprocher.
J'ai l'impression que cette épreuve ne marche pas ! Comment contacter les admins ?Avant d'embêter quelqu'un parce que tu supposes que l'épreuve est cassée, essaie quelques réflexions préalables :
- As-tu bien compris le but de l'épreuve ?
La plupart des créateurs d'épreuves n'hésitent pas à pimenter en ajoutant des fausses pistes. C'est pour le fun. Alors évidemment, de temps à autre, on a l'impression que l'épreuve est cassée. Ce n'est pas le cas. Vérifie aussi que tu as bien saisi la réponse comme c'est attendu (un espace qui traîne, un tiret qui manque ?).
- Quand a eu lieu la dernière validation ?
La page d'une épreuve permet l'accès aux dates de validation de chacun, et affiche même la date et l'heure de la dernière validation. Si quelqu'un a validé l'épreuve il y moins de deux jours, c'est probablement qu'elle marche parfaitement.
- Pourquoi l'épreuve serait-elle cassée ?
Les épreuves ont peu besoin de maintenance (un admin avisé, et donc feignant, s'arrangerait même pour qu'il n'y en ait pas du tout), donc d'opération manuelle. Il y a donc peu de raison pour qu'elle se soit cassée toute seule. Vérifie dans les news et dans le forum si une grosse opération a été effectuée sur le site (nouvelle version, changement de serveur...) ou sur l'épreuve (il peut arriver qu'une correction ait conduit les admins à modifier l'énoncé).
Á l'heure où j'écris, une exception notable concerne les épreuves de hacking dont l'espace de stockage sature de temps à autre. Dans ce cas, il faut effectivement remonter le problème courtoisement à un admin (ou un habitué, qui pourra faire passer le message).
- Non, mais là, je suis sûr de moi, y'a quelque chose qui ne marche plus !
Avant d'embêter les admins (qui ont une vie, en plus de faire fonctionner le site, ce qui, même si cela ne se remarque pas, leur prend beaucoup de temps), demande conseil à des membres ayant déjà résolu l'épreuve. Mais vraiment en dernier recours et de façon tout à fait polie : eux aussi ont une vie.
J'ai validé une épreuve sans comprendre, ou je voudrais savoir comment les autres ont fait !C'est pour cela qu'a été créé une catégorie particulière dans le forum, appelée «afterwards». Comme pour la catégorie d'aide, il existe un fil par épreuve. Ce fil n'est accessible qu'à ceux ayant validé l'épreuve, et leur permet de discuter des méthodes de résolutions, d'échanger du code source, ou de proposer des améliorations.
Pour y accéder, clique par exemple sur la petite étoile rouge-orange, en haut à droite de la page d'une épreuve.
Un petit mot pour ceux qui sont impatients de faire partager leur code source :
Utilises-tu un langage particulier, peu usité sur NC (du ruby, du Lisp,
du PHP) ? Ton algorithme est-il révolutionnaire par rapport aux autres (un one-liner en Perl, ou un algorithme de complexité linéaire là où tout le monde brûle du CPU en O(n²) ) ? Bref, ton code source a-t-il un intérêt à figurer au Panthéon de l'épreuve ? Il est assez fatigant de relire les mêmes codes source, et même s'il est très légitime d'être fier de sa production, évite de publier tes œuvres si cela apporte peu à la communauté.
Évidemment, les règles habituelles du forum s'appliquent tout particulièrement aux afterwards : inutile de poster juste pour dire «c'est trop facile, je l'ai torchée en 30s» ou «Tarbernacle ! Ça faisait 2 heures que j'étais dessus, elle est 'achement dure». Pour être tout à franc : tout le monde s'en fout.
Je perds des points tous les jours ! Comment cela est-il possible ?C'est dû à l'originalité du classement mis en œuvre sur NC. Le nombre de points que rapporte la résolution d'une épreuve est variable en fonction du nombre de personnes ayant validé. Cela évite le casse-tête d'avoir à mettre un nombre de points fixe lors de la création de l'épreuve, avant de se rendre compte que finalement, elle devrait valoir plus ou moins (et tous les recalculs que ça suppose par la suite).
Alors évidemment, pour éviter de favoriser ceux qui passent beaucoup de temps sur le site, et résolvent les épreuves très rapidement après leur publication, le nombre des points de chacun est recalculé à chaque fois qu'une épreuve perd des points.
Mais tout ceci est expliqué tout en détail dans la page suivante :
http://www.newbiecontest.org/index.php?page=calculpoints
Comment puis-je proposer une épreuve ?Allons ! Il y a un lien dans la page d'accueil du site ! Je suis même étonné que tu ne sois pas tombé dessus alors que tu lis cette FAQ qui n'est pas plus facile à trouver.
http://www.newbiecontest.org/index.php?page=proposerepreuveUn petit mot avant de te lancer. Créer une épreuve, c'est du boulot (j'en sais quelque chose : je n'en ai jamais eu le courage). Et on ne le fait pas pour soi, mais pour les autres. Les grands principes d'une bonne épreuve sont toujours les mêmes :
- originalité : as-tu validé assez d'épreuves pour te rendre compte si ce que tu proposes n'existe pas déjà ? Ne va pas non plus créer une copie conforme d'une épreuve vue sur un autre site : d'abord parce qu'il y a de fortes chances que les autres membres fréquentent aussi ce site. Ensuite parce que c'est manquer de respect pour le créateur de l'épreuve originale (mais, après tout, si on lui demande gentiment et qu'il accepte...).
- pédagogie : le but d'une épreuve n'est pas de se faire mousser. C'est plus une méthode pour faire apprendre quelque chose à ceux qui la résoudront. Idéalement, c'est une manière d'enseigner une petite partie de ses connaissances aux autres, de manière la plus didactique possible.
- difficulté : la difficulté est toute relative. Chacun a ses domaines de prédilection, et on peut être amené à valider une épreuve en quelques minutes alors que d'autres n'auront jamais le déclic. Ça peut être également dû à un piège laissé (consciemment ou non, d'ailleurs) par le créateur vicelard. D'une manière générale, les épreuves récentes de NC essaient d'éviter les devinettes (en anglais guessing) et cherchent en général à aiguiller le challenger par de multiples clins d'œil. L'idéal étant de prévoir à l'avance les indices qui pourront figurer dans l'énoncé.
- plaisir : là, c'est un critère très objectif, mais il faut que les challengers prennent plaisir à résoudre l'épreuve.
Voilà, une bonne épreuve, c'est tout ça à la fois. Il faut réussir à équilibrer à peu près tous ces critères, et réussir à faire un joli paquet cadeau, sans pli et bien fini. Ce n'est pas simple et cela doit prendre du temps.
Je ne parviens pas à m'authentifier dans les épreuves de programmation ! Aaaaah. Probablement la GRANDE question du site. J'ai d'ailleurs fait exprès de la mettre tout en bas pour essayer de forcer les gens à lire le reste. Mais je suis un grand fourbe, il est vrai. Malheureusement, je ne donnerai pas de méthodes toutes faites ici. Je vais tout de même essayer de donner des pistes.
D'abord, pour ceux qui ne l'auraient pas encore compris, le maître mot concernant l'authentification sur le web est «session». Et par extension, on trouve rapidement le mot «cookie». La première chose est donc de se documenter sur ces deux mots là en particulier.
Ensuite, l'authentification restant un aspect critique de la sécurité sur le web, il peut être utile de jeter un oeil sur les épreuves de la catégories «hacking», si ce n'est déjà fait. En effet, celles-ci vont forcément aborder un moment ou à un autre les problématiques qui y sont liées.
Enfin, comme nous sommes sur un site de challenges, que l'on ne croit pas tout que l'on nous dit et qu'on est fermement adepte des méthodes d'expérimentation, pourquoi ne pas justement observer quelque chose qui fonctionne déjà ? Comme son propre navigateur par exemple (ici, le mot clef est «sniffer») ? Peut-être qu'en reproduisant son comportement... ?
Un dernier mot. Il y a un fil à ce sujet épinglé dans la catégorie «Épreuve de programmation» dans le forum. Cela peut être une autre source d'information, même si, à mon sens, les quelques points cités plus haut devraient suffire à régler la question (et note que cette démarche peut être appliquée à bien d'autres domaines que les seules épreuves de programmation sur NC).
Je ne trouve pas la réponse à ma question dans cette FAQ !À ce niveau, il y a plusieurs possibilités :
- peut-être que cette question n'est pas si fréquente, ce qui rend sa présence ici discutable. Alors discutons-en.
- peut-être que les gens posant cette question le font systématiquement lorsque j'ai le dos tourné, en conséquence de quoi je n'en ai pas eu connaissance. Mais cela s'avère peu probable, tant il est vrai que je n'ai pas de vie hors de newbiecontest.
- effectivement, il s'agit d'une fréquente question qui mérite de figurer dans cette FAQ. En conséquence de quoi je t'engage à la poser dans le fil qui suit, ou de la soumettre par pm (à moi, à un modéro, ou à un admin). Cette FAQ n'est pas fixe et je serais enchanté de l'enrichir.
Oui, mais non, je cherche la réponse à LA question !Il fallait le dire tout de suite. Dans ce cas, la réponse est «42».