IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Actualités Discussion :

Code Hunt, le jeu de Microsoft Research qui vous apprend à programmer

  1. #1
    Expert éminent sénior

    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2011
    Messages : 283
    Points : 18 071
    Points
    18 071
    Par défaut Code Hunt, le jeu de Microsoft Research qui vous apprend à programmer
    Code Hunt, le jeu de Microsoft Research qui vous apprend à programmer
    à travers différents puzzles

    Microsoft Resarch a annoncé ce 15 mai le lancement de Code Hunt, un jeu en ligne pour toute personne intéressée par la programmation informatique et qui souhaite en apprendre davantage d'une manière facile et amusante.

    Le jeu se présente sous forme de puzzles à résoudre où le joueur doit écrire le code source permettant d'arriver au résultat escompté et donc de passer au puzzle suivant. Autre aspect important de la programmation informatique qui est repris dans Code Hunt : l'optimisation de la solution. En effet, un code optimisé permet au joueur de gagner plus de points.

    De son côté, Microsoft a annoncé : « Aujourd'hui nous sommes heureux d'annoncer le lancement de Code Hunt, un jeu sur navigateur web pour quiconque intéressé par la programmation. Nous avons créé Code Hunt pour profiter du fait que toute tâche peut être plus efficace et plus durable quand cela est amusant ».

    Ce projet a été mené à bien grâce à deux ingénieurs de Microsoft Research, Nikolai Tillmann et Peli de Halleux. Il est basé sur une précédente expérience, Pex4Fun, et sur la technologie Pex : l'implémentation Microsoft de l’exécution symbolique dynamique, qui permet d'analyser un programme et de déterminer l'impact de chaque entrée sur l’exécution du programme. Quant à la plateforme utilisée, il s'agit du cloud Microsoft Azure. Ce choix est dicté par la facilité du passage à l'échelle de la plateforme.

    Par ailleurs, les chercheurs ont publié un papier pour expliquer l'approche utilisée. Ils présentent alors Code Hunt comme « un puzzle que les joueurs doivent explorer à l'aide d'indices présentés comme des cas de test. Les joueurs modifient leur code de manière itérative pour le faire correspondre au comportement fonctionnel des solutions secrètes ».

    Enfin, il est à noter qu'à l'heure actuelle le jeu ne propose que deux langages de programmation : C# et Java. Mais il ne serait pas étonnant qu'il s’enrichisse d'autres langages dans un futur proche.

    Source : blog.msdn.com

    Et vous ?

    Qu’en pensez-vous ?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 192
    Points : 395
    Points
    395
    Par défaut
    C'est marrant. Par contre, je dois être un peu débile, puisqu'après le tuto je bloque au niveau 1.6...

  3. #3
    Membre éclairé

    Homme Profil pro
    Architecture logiciel
    Inscrit en
    Janvier 2013
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecture logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 103
    Points : 713
    Points
    713
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    using System;
    public class Program {
             public static int Puzzle(int x) {
             return 4/x;
             }
    }

  4. #4
    Membre expérimenté
    Avatar de Jarodd
    Profil pro
    Inscrit en
    Août 2005
    Messages
    851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 851
    Points : 1 717
    Points
    1 717
    Par défaut
    Pareil

    On passe 20mn à faire des +2 et *3, et paf on se retrouve de suite avec un calcul bien bizarre

    Edit : je 'navais pas actualisé donc pas vu la réponse de Sirus.

  5. #5
    Membre expert
    Profil pro
    undef
    Inscrit en
    Février 2013
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France, Lot (Midi Pyrénées)

    Informations professionnelles :
    Activité : undef

    Informations forums :
    Inscription : Février 2013
    Messages : 957
    Points : 3 527
    Points
    3 527
    Par défaut
    Amusant... Au bout de 10 exercices du même type, on est largement en zone d'agacement. En sus, le programme balance des erreurs de syntaxe quand on fait int L[] plutôt que int[] L .

  6. #6
    Membre confirmé Avatar de athlon64
    Profil pro
    Inscrit en
    Février 2009
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 243
    Points : 547
    Points
    547
    Par défaut
    C'est du Microsoft craché...

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 37
    Points : 36
    Points
    36
    Par défaut
    Ce jeu est pas mal, par contre il peut mettre du temps avant de valider la réponse et ça devient agaçant.

  8. #8
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 86
    Points : 85
    Points
    85
    Par défaut
    J'aime bien le concept du jeu, mais le moteur de calcul est débile.

    01.10, il me pose le problème suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    using System;
    public class Program {
        public static int Puzzle(int x, int y) {
            return 0;
        }
    }
    Avec dans le tableau de résultats:
    X = 1, Y = 1, Expected = 1, Your Result = 0, Mismatch
    X = 2, Y = 2, Expected = 2, Your Result = 0, Mismatch

    Réponse de ma part
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    using System;
    public class Program {
        public static int Puzzle(int x, int y) {
            return x;
        }
    }
    Ce qui répond au problème
    Et là, il me sort "Wrong answer"
    Et il affiche le tableau
    X = 1, Y = 1, Expected = 1, Your Result = 1, Check
    X = 2, Y = 2, Expected = 2, Your Result = 1, Check
    X=2, Y = 65, Expected = 23, Your Result = 2, Mismatch


    C'est complètement idiot, et certainement pas fait pour apprendre à coder.
    Apprendre à conceptualiser et résoudre des équations, je veux bien, mais développer sûrement pas.

    Ou alors si, à développer avec un client de mauvaise foi.
    Client: Mais ça marche pas votre truc, ça fait pas ce que je demande.
    Dev: Mais si, regardez, c'est sur le cahier des charges.
    Client: Mais il est pas bon votre cahier des charges, l'appli doit faire ça.
    Dev: C'est VOTRE cahier des charges, et votre besoin là, il est pas noté.
    Comment on peut résoudre un problème dont on n'a pas toutes les problématiques ? C'est idiot, et donc, pas au point.

    Je peux comprendre que ma solution proposée soit pas la bonne, très clairement.
    Mais que l'énoncé soit pas complet dès le départ, ça biaise le truc.

    - Choisis un nombre entre 1 et 10
    - Bah 7
    - Raté, c'était 15

  9. #9
    Membre habitué
    Inscrit en
    Juillet 2002
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 190
    Points : 165
    Points
    165
    Par défaut
    Hello world,

    déjà, il y a une erreur dans le titre et l'article (ResEarch) ^^.

    J'ai essayé hier le jeu en voulant le proposer à mon petit frere pour esperer qu'il apprenne en s'amusant. Il a quand même été pris au jeu en essayant de résoudre les éénigmes proposées.
    La question qui demandait les matchings sivants : 29 -> 0; 2->4; 3->1; 1->4 n'était pas évident et pourtant il a trouvé, car il a longtemps cherché car je pense qu'il y a inconsciemment l'esprit jeu video qui revient (passer absolument un niveau).

    Je n'ai pas fait encore tout les niveaux, mais pour la "débilité" du programme, pour la 01.10, il s'agit de trouver une relation entre x et y, donc ne retourner que x semble ne pas répondre à la consigne ...

    Sinon, je trouve que c'est une bonne initiative et qu'il est normal que ca ne marche pas trés bien, ils ont du faire ca trés vite.

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par 23JFK Voir le message
    En sus, le programme balance des erreurs de syntaxe quand on fait int L[] plutôt que int[] L .
    Peut-être parce que c'est une erreur de syntaxe (en C# en tous cas)

  11. #11
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 86
    Points : 85
    Points
    85
    Par défaut
    Citation Envoyé par SQUAL Voir le message
    Hello world,
    Je n'ai pas fait encore tout les niveaux, mais pour la "débilité" du programme, pour la 01.10, il s'agit de trouver une relation entre x et y, donc ne retourner que x semble ne pas répondre à la consigne ...

    Sinon, je trouve que c'est une bonne initiative et qu'il est normal que ca ne marche pas trés bien, ils ont du faire ca trés vite.
    On est bien d'accord, ma solution était idiote.
    Mais ma remarque est sur le fait de changer la consigne d'un exercice APRES que le joueur ait donné sa réponse.
    Ce qui est aberrant en terme de développement (même si ça se fait souvent).

    J'avais aussi proposé 2x-y comme solution à ce même puzzle, et ça a aussi été refusé.

  12. #12
    Membre confirmé Avatar de athlon64
    Profil pro
    Inscrit en
    Février 2009
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 243
    Points : 547
    Points
    547
    Par défaut
    C'est peut être un test de QI de la NSA

  13. #13
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par Delioneras Voir le message
    On est bien d'accord, ma solution était idiote.
    Mais ma remarque est sur le fait de changer la consigne d'un exercice APRES que le joueur ait donné sa réponse.
    Ce qui est aberrant en terme de développement (même si ça se fait souvent).
    En fait je pense qu'il faut pas voir ça comme "la consigne". La consigne, c'est de trouver le code qui donne le résultat attendu. A chaque fois que tu exécutes, il t'affiche un échantillon d'entrées avec la sortie attendue, mais l'échantillon n'est pas nécessairement exhaustif, donc parfois il faut tatonner...

    En tous cas les premiers niveaux sont assez chiants... j'espère que ça devient plus intéressant après

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Août 2005
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 123
    Points : 356
    Points
    356
    Par défaut
    Citation Envoyé par Delioneras Voir le message
    On est bien d'accord, ma solution était idiote.
    Mais ma remarque est sur le fait de changer la consigne d'un exercice APRES que le joueur ait donné sa réponse.
    Ce qui est aberrant en terme de développement (même si ça se fait souvent).

    J'avais aussi proposé 2x-y comme solution à ce même puzzle, et ça a aussi été refusé.
    Il faut voir ça comme un jeu, non comme un exercice.

  15. #15
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 86
    Points : 85
    Points
    85
    Par défaut
    Citation Envoyé par mattdef Voir le message
    Il faut voir ça comme un jeu, non comme un exercice.
    Encore une fois, je sais. Mais en l'occurrence, on peut pas nier que le tableau de résultat fait implicitement parti de l'énoncé du problème.
    De facto, le "jeu" est biaisé.

  16. #16
    Futur Membre du Club
    Profil pro
    Développeur Back-End
    Inscrit en
    Mai 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Mai 2006
    Messages : 8
    Points : 9
    Points
    9
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public class Program {
        public static int Puzzle(int x, int y) { 
            return x + y/3;
        }
    }

  17. #17
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Quelqu'un a réussi à avoir le score max au niveau 02.05 ? J'ai fini par trouver la solution, mais je vois pas comment simplifier le code encore plus...

    EDIT: ah bah si en fait...

  18. #18
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 184
    Points : 409
    Points
    409
    Par défaut
    Citation Envoyé par Delioneras Voir le message
    Encore une fois, je sais. Mais en l'occurrence, on peut pas nier que le tableau de résultat fait implicitement parti de l'énoncé du problème.
    De facto, le "jeu" est biaisé.
    La programmation c' est la plupart du temps du tâtonnement, en ce sens ce jeu est très didactique: il arrive bien souvent qu' on pense avoir solutionné un problème et qu'en fait on ai oublié un cas de figure. Le jeu n'est pas "biaisé", il suit ds règles, c'est au joueur de s'y faire pas le contraire

  19. #19
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 184
    Points : 409
    Points
    409
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Quelqu'un a réussi à avoir le score max au niveau 02.05 ? J'ai fini par trouver la solution, mais je vois pas comment simplifier le code encore plus...

    EDIT: ah bah si en fait...
    Peut être un indice? J' ai utilisé une fonction récursive et Math.Pow ça tient sur 3 lignes et j'obtient que le score de 2/3.
    Sur quoi se basent-ils pour noter le skill?

  20. #20
    Membre expérimenté Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Points : 1 540
    Points
    1 540
    Par défaut
    Il faut regarder dans cette direction : http://fr.wikipedia.org/wiki/Nombre_...dal_carr%C3%A9
    Il était une fois [...] Et ils vécurent heureux et eurent beaucoup d'enfants!

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/03/2012, 18h55
  2. Réponses: 7
    Dernier message: 17/11/2011, 06h18
  3. Microsoft Research fête ses 20 ans
    Par Hinault Romaric dans le forum Actualités
    Réponses: 6
    Dernier message: 28/09/2011, 18h51
  4. Réponses: 4
    Dernier message: 19/03/2009, 21h38
  5. Code pour créer un graphique sur données qui peuvent varier
    Par Valérie32 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 13/06/2008, 14h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo