logo Homepage
+  NewbieContest
Username:
Password:
  Voir les messages
Pages: [1] 2
1  Général / Sondage pour le site / Re : Re : Trop d'épreuves sur NC ? le: 27 Avril 2016 à 01:06:58
Je réagis aussi rapidement concernant les clientside. Oui, ça peut être "risible" comme tu le dis Celelibi. Mais elles n'en restent pas moins indispensables (imho) pour mettre un pied à l'étrier et comprendre comment fonctionne une page web. Je ne pense donc pas que les premières épreuves de clientside disparaissent (au pire la forme peut etre refaite, éventuellement). Par contre, il est totalement envisageable d'en créer de nouvelles, plus actuelles, avec du jquery inside, ce qui fait plus récent.

Certes, des épreuves simples sont nécessaires pour commencer doucement. Cependant je pense que sur 6 épreuves à la mécanique très similaire, certaines peuvent être fusionnées / supprimées.

D'autres sont clairement améliorables, ou complètement pourraves. Pourtant elles pourraient devenir potables avec très peu d'efforts.
2  Général / Sondage pour le site / Re : Re : Trop d'épreuves sur NC ? le: 26 Avril 2016 à 00:56:48
Puis après j’ai progressé. Les épreuves de cryptographie de CommComm m’ont fait partir tellement, mais tellement loin - mon esprit est allé récolter moult énergies cosmiques dans les quatre coins de la galaxie au point d’avoir créé une liaison télépathique avec le Grand Monarque, celui qu’on appelle l’Homme Vert - que j’ai appris des tas de choses qui n’ont rien à voir avec l’idée de base. Et pour ça je ne remercierai jamais assez l’auteur de ces épreuves. Plus que d’enseigner une technique, un concept, il enseigne une manière de raisonner, de chercher la solution, de se perdre pour mieux la trouver. D’accord, y a du guess qui parfois m’a fait dérailler au point d’avoir eu besoin d’éclaircissements, mais sans ces épreuves, je pense que beaucoup de challengers sur NC n’en seraient pas où ils en sont aujourd’hui.
Tu sais, j'ai passé beaucoup de temps à l'école. Et comme beaucoup, je me suis rendu compte que connaître le prof aide souvent à avoir des meilleures notes. Ça aide à comprendre si une question comme "Écrivez un programme qui, pour une année donnée, affiche le nombre de jours séparant Noël du jour de l'an." est un prétexte pour faire du calcule de dates ou s'il attend un printf("7\n");. C'est un peu ce genre choses qu'on retrouve dans les épreuves de CommComm et les épreuves de guessing. On ne sait pas trop où veut en venir le créateur de l'épreuve et le côtoyer aide à comprendre sa façon de penser.

Seulement voilà, les épreuves NC, c'est pas des contrôles comme à l'école. La plupart des mecs qui ont créé les épreuves ne sont plus là. Et ici on peut beta-tester les épreuves et les ajuster avant de les publier sans avoir à se soucier de la deadline de la fin de semestre ou de la contrainte de durée de l'exam.

Tu refuses que NC change, mais malheureusement c'est impossible qu'il ne change pas. Même s'il ne changeait pas techniquement, il changerait tout de même par le turnover des gens qui fréquentent ce site. Des anciens partent, des nouveaux arrivent ; ainsi va la vie. Le passé, c'est un endroit sympa à visiter, mais ce n'est pas un endroit où vivre. Si tu veux que NC soit pour les nouveaux ce qu'il a été pour toi, il faut qu'il évolue. Sinon il deviendra une vitrine du passé avec ses vétérans qui feront rôder l'esprit des anciens tels des fantômes dans un grand espace abandonné.

Et cette évolution passe par un rafraîchissement régulier des épreuves. Il faut /dev/nuller (et remplacer) les épreuves de mauvaise qualité avec de multiples solutions tout aussi logiques et correctes, comme ça a été le cas avec "Ange ou démon ?". Il faut aussi /dev/nuller et remplacer les épreuves quand leurs références socio-culturel ou technologique seront dépassées.


Catégorie ClientSide
Personnellement je serais pour la suppression de la catégorie ClientSide tout en répartissant les épreuves intéressantes dans les catégories Hacking, Crypto et Cracking. Si cette catégorie peine à trouver un nom et de nouvelles épreuves, ce n'est pas un hasard, c'est qu'elle est mal foutue dès le départ. La catégorie JavaScript est très ancrée dans l'état d'esprit des sites de hacking des années 90 / début 2000 quand l'état des technologies était différent et quand l'internet n'avait pas encore trouvé sa place dans la population. La catégorie JavaScript était une tradition sur les sites proposant des challenges de hack, se repompant tous les épreuves les uns sur les autres. NC n'échappe d'ailleurs pas à la règle, j'avais déjà vu bon nombre de ces épreuves sous une forme ou une autre sur le site newshacker en 2002 (notamment Game Over qui m'avait pas mal marqué et que j'avais résolu en QuickBasic).

Aujourd'hui, les épreuves à base de prompt et alert sont assez risibles car ces fonctions ne bloquent plus du tout la fenêtre du navigateur et les debuger javascript facilitent grandement le travail. À l'époque ces épreuves poussaient à comprendre le fonctionnement général du web quand le développement web n'était pas encore un métier. Elles poussaient à se rendre compte qu'on est les seuls maître à bord de ce qui s'exécute sur notre machine. Aujourd'hui elles se résolvent toutes avec les 3 mêmes cliques. L'évolution des technologies et de la société par rapport aux technologies a fait perdre une grande partie de leur intérêt à ces épreuves.


Nombre d'épreuves
Je suis d'accord avec Womb et d'autres: qu'il y ait beaucoup d'épreuves n'est pas un problème. Par contre, que la méthode de résolution soit très similaire d'une épreuve à l'autre devient très vite lassant. Tu viens pour apprendre des nouvelles choses, et au final tu te contente de répéter 5 fois la même chose avec des variations triviales. C'est pas motivant. Et je pense que c'est essentiellement ce point que voulait soulever max2070 à propos des épreuves en doublon. En tout cas c'est le point que je soulève.

Surtout dans les épreuves de crypto (j'ai pas trop testé la stégano) plusieurs épreuves se limitent à passer des heures à écumer les sites de crypto pour trouver des symboles qui ressemblent (et des fois ça ressemble mais c'est pas les bons). Et pour beaucoup d'autres il suffit de trouver l'algo (quand il n'est pas clairement indiqué dans l'énoncé) puis appliquer exactement la même méthode à clair connu.


- sont basé sur trop de guess
- sont absolument pas réalistes/cohérentes
Pour celles-là, si tu proposes une épreuve mieux faite, je pense qu'elle pourra remplacer l'ancienne.

de manière à garder n'avoir que des épreuves de qualité et motiver les contributeurs
Je pense que c'est les challengeurs qu'il faut motiver avant tout. S'ils le sont, les contributions suivront.
3  Général / Sondage pour le site / Re : Re : Épreuves de prog qui font découvrir des notions nouvelles de mathématiques le: 28 Février 2016 à 04:48:39
Je ne serai favorable au level up du niveau en math des challenges de prog qu'à la condition que ça reste de l'algo ou des très classiques maths discrètes, algèbre linéaire, ce genre de choses. Et pas des théorèmes obscures sur des sous-branches obscures des maths.

J’ai voté pour la première option. Ça serait cool d’avoir des épreuves de ce genre. La difficulté à mon avis est de trouver des problèmes intéressants qui ne sont pas solvables sans trouver “la solution mathématique avancée“. Je pense que pleins de problèmes seront solvables par un brute force, avec juste un temps d’exécution plus long.

Bref, j’espère que ça ne sera pas le cas de celles que vous publierez, j’ai hâte de les voir.
Je plussoie allègrement ce commentaire.
Avoir des instances de problèmes assez larges permettrait de faire parler la complexité asymptotique au lieu de la technologie utilisée comme c'est souvent le cas dans les épreuves actuelles.
4  Général / Suggestions/Dev. du site / Re : Classement Historique!! le: 02 Août 2015 à 13:54:57
Ainsi, on pourrait avoir un ”classement historique“ en plus du classement normal, ce qui rendrait justice aux anciens comme Nms ou moins anciens comme Spaulding, qui ne sont plus vraiment actifs sur le site. Ça serait sympa de savoir tous ceux qui ont été 1er, 2ème, etc... à travers l’Histoire.
Tiens, je n'avais pas bien compris cette histoire de second classement. J'étais plus parti dans l'idée d'une information à rajouter au "profile challenge" dans le but d'avoir une vue synthétique de l'historique du classement de cette personne. Alors qu'en fait, ce que tu voudrais c'est l'historique du classement global.
Je ne pense pas qu'un classement similaire à celui-là avec les informations historiques soit très pertinent. Avoir été premier en 2007 n'est pas comparable avec être premier en 2015. Il y a de nouvelles épreuves et un turn over de challengers. Donc dire que l'un est meilleur parce qu'il a été premier plus longtemps ne me semble pas avoir beaucoup de sens.

Par contre, une page qui récapitule qui dans l'histoire a été premier, ça peut être intéressant.
Mais étendre ça à la deuxième place et suivante me semble un peu hasardeux. D'une part parce que plus on descend dans le classement, plus il y aura de gens qui ont occupé cette place. D'autre part parce que garder uniquement la meilleure position des challengers ne te dira pas qui a passé le plus de temps en 2eme position.

J'explique ce dernier point : Si on ne garde que la meilleure position, celui qui a passé sa vie à être deuxième et qui a fait un bond en première position pour une heure (premier à valider une nouvelle épreuve) n'apparaîtra pas dans la liste des personnes qui étaient deuxièmes.

Certes, ça rendrait hommage aux challengers anciennement bien classés, mais ça ne refléterait pas l'état historique du classement.

L’échelle des points n’a changé qu’une fois depuis l’introduction de l’échelle logarithmique. Avant ça, on peut supposer qu’il n’y a jamais eu de points fixés. On pourrait même supposer que l’échelle n’a jamais changé, je crois que ça ne changera pas grand chose au résultat.
Je ne suis pas sûr que ça soit négligeable. Il faudrait faire le test.

Si je comprends bien ce que tu proposes, ça serait encore plus compliqué à calculer, vu qu’il faudra garder l’historique des places non-record également ?
Tout à fait, mais je n'avais pas bien compris ce que tu voulais.
5  Général / Suggestions/Dev. du site / Re : Classement Historique!! le: 31 Juillet 2015 à 22:13:00
Tu veux garder la plus longue période ou bien les cumuler ?

Pour créer cette statistique à partir de l'historique de validations, il faudrait tenir compte des changements d'échelle de points. Il y en a eu plusieurs dans l'histoire de NC six jeunes m'abusent. Quelqu'un a-t-il les échelles de points historique et leurs dates d'application ?

Maintenir cette statistique à jour risque d'être parfois un peu long.
Chaque fois qu'un mec valide une épreuve, son classement augmente, donc le classement d'autres personnes diminue (potentiellement celui de beaucoup de personnes). Cette validation va donc potentiellement terminer la "période de meilleur score" de toutes les personnes qu'il vient de dépasser, il faut donc toutes les vérifier et les mettre à jour.

Mais surtout, je me demande si c'est réellement pertinent de ne garder que le meilleur classement et la plus longue période (ou durée cumulée). Ça n'est à mon avis pertinent que pour le top 10 ou top 100, mais c'est ce qui t'intéresse, n'est-ce pas ? Pour les autres le classement est plus flou et je pense qu'il vaudrait mieux une courbe qui dit combien de temps on a passé avec un classement meilleur ou égal à x.
6  Général / Suggestions/Dev. du site / Re : Date de parution des épreuves dans le minidump le: 05 Juin 2015 à 22:29:12
Yep, je rendrai ça public.
7  Général / Suggestions/Dev. du site / Date de parution des épreuves dans le minidump le: 03 Juin 2015 à 16:18:08
Bonjour,

Il y a peut-être un an, la date de parution des épreuves a été ajoutée dans la liste des épreuves. Serait-il possible de l'exporter dans les minidump disponibles ici: http://www.newbiecontest.org/index.php?page=statsite ?

Cela permettrait notamment de tester diverses formules de calcul des points.


Celelibi
8  Général / Général / Re : Avis aux professionnels de la Sécurité Informatique le: 12 Mars 2015 à 01:48:23
Je trouve ce topic assez amusant. Chacun y va de ses petites généralités qui le mettent en avant.

J'sais pas si c'est ironique ou pas ^^'
On a tous une expérience différente, et en ce sens, je ne pense pas que qui ce que soit ait tort. Je ne critique et ne contredit personne. Ça m'a simplement frappé quand j'ai vu que tout le monde sortait ses petites généralités pas forcément concordantes avec les autres.
Notre expérience biaise notre point de vue. Et pire que ça, on ne retient et/ou n'a envie de partager que les expériences qui ont été positives pour nous.
Ce n'est pas un reproche, c'était juste une remarque un peu meta.

Disons que ce topic (du moins la deuxième page) pourrait être caricaturé comme ceci :
"Les diplômes ça sert à rien" dit le mec sans diplômes.
"Les dipômés en costard n'y connaissent rien" dit le mec en short avec un t-shirt Docker.
"Pas tous les diplômés, hein !" dit l'ingénieur.
"C'est important de connaître le modèle OSI" dit l'admin réseau.
"C'est indispensable de savoir coder !" dit le codeur fou.

Et cette vision du topic m'a amusé.


* dans un laboratoire de recherche de simulation (expérimentale et numérique), le manager de tout le personnel de recherche était incapable de faire fonctionner un PC ni un minitel Je dis cela, je ne dis rien Il donnait également des cours qui n'était jamais fini: on devait nous-mêmes finir le cours. Mais voilà: il récupérait tout le matériel pour le laboratoire et par la même occasion, il jouait les gros bras.
Je cite cet exemple, mais ça serait valable pour les autres.

On demande aux managers de manager, pas de coder.
Combien de startup ont coulé parce qu'une bande d'informaticiens avec des idées et des compétences n'étaient pas capable de gérer une entreprise ?
Steve Jobs en 1983 est allé débaucher en le PDG de Pepsi-Cola pour le mettre directeur général chez Apple. Apple avait besoin d'un vrai directeur, pas d'un demi-technicien en baskets, et Steve Jobs l'avait bien compris.

J'ai aussi connu une chercheuse (en informatique) qui m'a dit ne plus avoir codé depuis ses 14 ans. Mais qu'importe ! Elle n'a pas besoin de coder dans son travail et ne donne pas de cours de programmation.

L'important c'est que chacun soit conscient des limites de ses propres compétences, et de faire confiance à "ceux qui savent". C'est un exercice difficile de reconnaître la compétence chez les autres (cf l'effet Dunning-Kruger) et certains n'y arrivent pas.


Non, ce que je dis, c'est que du peu d'expérience que j'ai, pendant toutes mes années d'études, je ne me suis pas cantonné à ce qu'on nous apprenait, je suis allé voir ailleurs, monté mes projets, découverts des techno, des notions, des domaines, (et un clin d'oeil à NC, également, qui m'a poussé dans mes retranchements).
Bravo, tu fais parti d'une minorité. Un étudiant comme on aime en avoir. Malheureusement les gens comme toi sont trop peu nombreux.

Et encore une fois, je ne contredis personne, je pense que tout le monde a raison.
9  Général / Général / Re : Re : Avis aux professionnels de la Sécurité Informatique le: 11 Mars 2015 à 19:26:42
Je trouve ce topic assez amusant. Chacun y va de ses petites généralités qui le mettent en avant.

Ce sont ceux qui ont appris par coeur des choses et qui vous les refourguent dans un emballage sans valeur ajoutée (souvent la preuve de leur incompétence).
Des idiots, y'en a partout.

Certes, tu trouveras beaucoup de M2 qui n'ont aucune compréhension de ce qu'ils ont appris et qui se cantonnent à leur sacro-saint cours d'archi-n-tiers. Ah ça oui, j'en ai connu quelques uns.

Mais tu trouveras aussi beaucoup de techos à la vision bornée par les languages et outils qu'ils connaissent. Ces fashion victimes de l'IT excités comme des pucelles à la découverte de Node.js ou de Docker, qui vont en foutre dans tous leurs prochains projets sans se demander si c'est adapté, et encore moins se demander si ces technologies sont si révolutionnaires que ça. Ces mecs qui ont un mal fou à appréhender des concepts un poil abstraits même s'ils sont implémentés par leurs outils fétiche du moment. Ceux qui ne comprennent pas quand tu tentes de leur expliquer que leur truc ne marchera pas sur des exemples non-triviaux.



Après, encore une fois, ça veut trop rien dire pour moi. Un mec qui kiffe l'IT mais qui connait pas encore tout ça, c'est plus intéressant qu'un mec qui comprend mais qui s'en tape et qui fera le minimum.
Un mec qui kiff mais qui est mauvais, c'est pas mieux. Les boulets aussi ont leurs passions. J'en connais quelques uns aussi, des mecs qui ont l'air passionnés mais qui ne comprennent rien à rien et reviennent constamment à la change avec des questions plus stupides les unes que les autres et ne progressent jamais. Ces mecs qui oublient de réfléchir, qui ne retiennent pas ce que tu leurs a répété 10 fois, qui ne font pas le lien entre les différents trucs que tu leur a dit.

À choisir, mieux vaut quelqu'un qui fera le minimum en traînant les pieds que quelqu'un qui tentera de tout faire mais fera tout de travers en emmerdant les gens constamment.

Ensuite, en ce qui concerne les connaissances préalables, je ne bosse pas dans le secteur de la sécu, mais je dirais que de manière générale, pour un job dans le domaine de l'informatique :
J'ai déjà vu un admin réseau chez Renater qui ne savait pas coder.
J'ai déjà vu une développeuse d'IHM chez Itron qui ne touchait pas au réseau.
L'intersection de leurs compétences est quasi-nulle. L'informatique est un domaine trop large pour qu'il y ait des compétences à absolument avoir.
10  Programmation / Langages compilés / Re : Re : Optimiser un programme C dont les variables ne comportent qu'un seul bit le: 10 Mars 2015 à 09:16:35
Je crois que les bit field sont quand même implémentés avec des int, et on n’échappe pas aux shifts et aux masks. Je ne crois pas que le compilateur optimise ça tout seul, mais je vais vérifier.
Si tu veux packer plusieurs bits dans un byte, tu n'échapperas pas aux shift+mask. Avec un bit field ils seront simplement générés par le compilateur.
La pertinence des opérations groupés comme tu cherches à le faire dépend fortement du ratio entre tes opérations groupées et tes accès aux bits.

Dans l'idée je dirais de commencer par compiler l'implémentation naïve avec -O2 ou -O3 et désassembler pour voir le code généré.
Faire de même avec un simple bit field. (gcc reconnaîtra peut-être plus facilement l'optimisation sur un bit field que sur des char.)
Recommencer avec un union qui englobe le bit field et un uint*_t en faisant à la main l'opération sur l'entier. (Note: vérifier que sizeof de l'union est égal au sizeof de l'entier. Si le bit field est plus large que l'entier, ça va chier.)
Tu pourrais aussi tenter de mettre tes bits dans des char et simplement remplacer le bit field par un tableau ou une struct de 4 ou 8 char. Pas de shift, mais seulement 4 ou 8 opérations groupées. (À moins d'aller taper dans le MMX/SSE pour jouer avec des mots plus grands.)

Et si le but c'est d'optimiser le temps d'exécution, la seule bonne stratégie c'est de faire des benchmarks.
11  Programmation / Langages compilés / Re : Optimiser un programme C dont les variables ne comportent qu'un seul bit le: 10 Mars 2015 à 03:05:35
Tu veux peut-être un bit field.
Si tu veux être sûr de faire des opérations sur des mots de 32 ou 64 bits, il va te falloir un union aussi, mais ce comportement n'est pas standard.
Tu peux même aller plus loin avec les instructions vectorielles type SSE.

Mais avant d'optimiser à la main, vérifie que ton compilateur n'optimise pas déjà tes opérations.
12  Challenges / Aide Programmation / Re : Re : Prog - Jean-Claude et son réveil le: 11 Juin 2009 à 15:14:02
En même temps, je peux me tromper, mais il me semble que tu peux assez facilement emuler windows sous nunux (ou autre). Il n'y a aucune discrimination
J'ai bien parlé de payer...
Parce que pour le faire tourner dans une machine virtuelle ou un émulateur, il faut bien en posséder une copie. Ce qui nécessite de dépenser quelques centaines d'euros...
À moins que newbiecontest ne cautionne le vol de logiciels...
13  Challenges / Aide Programmation / Re : Prog - Jean-Claude et son réveil le: 11 Juin 2009 à 14:22:54
[Déterrage]
Il faut vraiment l'exécutable pour valider ?
Soit l'exécutable est exécuté, et saimal ! Moi je vais envoyer un trojan...
Soit il n'est pas exécuté, mais juste vérifié, et dans ce cas il sert à rien si y'a le code source à côté.

De toutes façons cette épreuve c'est de la discrimination envers les gens qui n'ont pas de quoi se payer un windows...
[/Déterrage]
14  Challenges / Aide Programmation / Re : Prog - Sénior vs Junior le: 11 Juin 2009 à 13:51:53
A-t-on le droit de savoir de quelles architectures matériel il était fan le papi à son époque ?
15  Challenges / Aide Programmation / Re : Prog - Ascii Art le: 10 Mai 2009 à 16:01:01
Bien sûr. J'ai même les log bruts sous les yeux.
Mais bon, osef, ça prendra juste plus de temps que prévu.
Pages: [1] 2