Journal Advent of Code 2021

Posté par  . Licence CC By‑SA.
Étiquettes :
18
1
déc.
2021

C'est quoi l'Advent of Code ? Un calendrier de l'avent avec des problèmes de programmation, tout simplement. La difficulté est croissante tout au long du mois.
Quel langage peut-on utiliser ? Celui qu'on veut ! Trop bien, c'est l'occasion d'en apprendre un nouveau !
Il suffit d'un compte github, twitter, … pour se logger sur le site. C'est gratuit, mais on peut participer aux frais si on le souhaite.
Chaque petite fenêtre du calendrier s'ouvre à minuit UTC-5, ce qui fait 6 heures du matin chez nous si je ne me trompe pas. Donc si on veut être dans le "leaderboard" il faut se lever de bonne heure ;)

Personnellement c'est la première fois que je participe, et comme je n'ai pas trouvé de traces de cet événement sur linuxfr (à part un petit commentaire bien caché), je me suis permis de faire un petit journal.

C'est par là -> https://adventofcode.com, amusez-vous bien !

  • # dommage

    Posté par  (site web personnel) . Évalué à 2. Dernière modification le 01 décembre 2021 à 11:55.

    C'est dommage, avec des lunettes un peu sales comme les miennes, le site est difficile à lire. Et puis créer un compte juste pour voir si c'est rigolo, bof …

    • [^] # Re: dommage

      Posté par  . Évalué à 0.

      Il n'y a pas besoin de créer un compte sur le site, juste avoir un compte github, out twitter, etc. Ca marche avec oauth

      • [^] # Re: dommage

        Posté par  (site web personnel) . Évalué à 2.

        mea culpa
        créer un compte -> se logger

        • [^] # Re: dommage

          Posté par  (site web personnel) . Évalué à 4.

          créer un compte -> se logger

          Ou vraiment créer un compte, dans le cas où l'utilisateur ne possède pas un compte GitHub, Google, Twitter ou Reddit. Ce qui à mon humble avis est encore pire (au niveau vie privée) que de créer un compte avec une adresse électronique jetable. Le mieux serait sans bien entendu pas d'authentification du tout. :-)

  • # Souvenirs des entretiens pendant le confinement

    Posté par  . Évalué à 6.

    Pour faire ça toute l'année codingame est assez rigolo (et plutôt pratique pour s’entraîner sur un langage qu'on apprend).

    • [^] # Re: Souvenirs des entretiens pendant le confinement

      Posté par  . Évalué à 4. Dernière modification le 02 décembre 2021 à 04:54.

      On tourne assez vite en rond avec des stratégies de résolution relativement identiques (même problème à résoudre, malgré un énoncé différent).

      En soit, c'est normal je pense, la fonction de base, telle qu'utilisée par les recruteurs, est de faire du gros filtre. Un bon développeur, pour peu qu'il s’entraîne un peu, aura un score qui le différenciera peu d'un autre.

      J'ai eu une autre plateforme à utiliser une fois, un peu plus "amusante" à mon avis. Seul le temps total est borné (et volontairement trop court pour tout réaliser) : il faut donc faire des choix, et parfois s'arrêter en cours d'implémentation d'une solution si une réponse juste prend trop de temps à atteindre, voir carrément sauter la question si on n'a pas d'idée à priori :)

      Ça donne lieu à des échanges plus "égalitaires" : le recruteur n'avait pas sauté les mêmes que moi, mais avait dû en sauter quand même.

      A priori, les tests ont évolué depuis, mais au cas où, c'était isograd. Ils semblent avoir borné le temps et inclus un système anti-cheating[1].

      1: Je me demande bien l'utilité de ces systèmes, j'ai rarement vu des boulots sans accès total à de la documentation. Juste souvent pas la bonne documentation, ou son absence sur des développements internes :p

      Matricule 23415

  • # Ça avait été signalé en 2019

    Posté par  (site web personnel, Mastodon) . Évalué à 6.

    Dans cette dépêche il y a toute une liste de calendriers de l'Avent dont celui-là.

    Cela dit c'est super bien de le signaler et d'y participer, merci.

    « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

  • # On participe aussi

    Posté par  (site web personnel) . Évalué à 4.

    Avec l'équipe de Squadracer on participera aussi à l'advent of code. On sera disponible sur twitch chaque jour à 17h30 pour partager ce moment avec toute personne bienveillante.

    On codera principalement en ruby.

  • # Project Euler

    Posté par  . Évalué à 2.

    De mon côté, j'ai découvert il y a peu de temps le projet Euler : https://projecteuler.net/
    Et c'est très similaire avec des énigmes très "mathématique"…

    Axel

  • # choix du langage

    Posté par  . Évalué à 4. Dernière modification le 06 décembre 2021 à 17:25.

    J'y voyais une occasion d'essayer un nouveau langage comme certains. Finalement, c'est tellement frustrant de renoncer à son confort et sa productivité que je suis parti en AWK pour les premiers, plus faciles puis en Python pour les plus compliqués.

    Ce qui est marrant c'est que tu ne proposes pas ton code mais la réponse à une question posée, peut importe le moyen. Je comprends la facilité d'implémentation du côté du gars qui gère ça, pas besoin d'avoir une ferme de compilos. Mais aussi ça permet de trouver la réponse avec des moyens peu orthodoxes - genre du bon vieux pipe de commandes unix (sort, nl, grep, uniq) - quand le bon algo ne veut pas sortir :)

    Il y a en gros 90'000 participants. Certains publient leurs soluces sur GH, GL ou autre. Cherchez aussi "aoc20nn" pour chaque année. Cela permet de comparer une solution dans un autre langage à la solution qu'on a produit dans un langage qu'on maîtrise. C'est instructif.

    Honnêtement, cela m'a pas mal conforté dans le choix de Python :) Les solutions en Go font quinze fois plus de lignes et sont peu lisibles dans leurs intentions. Les solutions en C++ et SCala m'ont fait mal à la tête. En haskell, c'est joli mais pour du jetable, le typage c'est too much.

    J'ai par contre été grandement surpris par Rust qui pour un langage très performant car low level, a des solutions très concises proches du Python. Un gars a quand même résolu tout le calendrier 2018 en moins de une seconde … d'exécution, hein, pas de programmation :)

    Et pour ceux qui veulent triper, chercher des solutions en APL, c'est de l'ordre du mystique.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.