Category: Uncategorized

  • Using OpenAI ChatGTP to solve advent of code 2022 – challenge

    Context

    ChatGTP seems amazing. I’m trying to see how good it is on solving programming puzzle.
    At the period of the year (december), there is the perfect advent of code that is giving us a brand new puzzle every day. I’ve tried succesfuly ChatGTP to solve 2022 day6, but now I want to better understand on which it’s good or not, what problem would be harder to solve.

    My Rules

    The idea is to use OpenAI ChatGTP to solve the puzzles. The constraint is that I have to copy the entire answer it gives me, run the program and get the answer. No modification of the program allowed.
    I’ll use ruby as it’s the langage I’m the most familiar with. It will help me understand errors in the program so I can give it tips.
    I will resolve the puzzle by myself first.

    Existing days

    Day 1
    Day6 (lack screenshots and real code)

  • Build the team you would want to join

    It’s natural for you to sometimes feel drawn to the perceived advantages of another team, especially when you see your current team as lacking in some way. However, it’s important to remember that every team has its own strengths and weaknesses, and that moving to a new team isn’t always the solution to your dissatisfaction.

    Instead of seeking to join a new team, you should first consider how you can help make your current team the best it can be. This may involve bringing new ideas and perspectives to the table, or taking on additional responsibilities to help the team achieve its goals. By working together and collaborating, you can help create a positive and productive work environment within your current team.

    It’s also important to remember that the grass isn’t always greener on the other side. The team that seems so attractive at first glance may have its own challenges and drawbacks that aren’t immediately apparent. Before making the decision to move to a new team, you should carefully consider the potential benefits and drawbacks of such a move.

    In conclusion, instead of seeking to join a new team, you should first strive to make your current team the best it can be. By working together and collaborating, you can create a positive and productive work environment where you can thrive. And even if the other team seems attractive, it’s important to remember that the key to success and fulfillment often lies in making the most of the opportunities and resources that are already available to you.

    This text has been written with the help of openAI, picture generated by Dall-e

  • 1er sur la recherche google “Benoit Lafontaine”, check !

    Après un certain temps, j’ai réussis mon challenge d’arriver premier sur la recherche google “Benoit lafontaine” !

    Voici le screenshot d’une recherche google, on voit que j’y trust la première place (ainsi que d’autres lien sur la première page)

    Au passage, je remarque que c’est linked in qui arrive sur le devant de la seine, ils ont surement trusté les recherches de personnes. Mes article sur le blog OCTO arrivent pas très loin, ainsi que ma vidéo sur le déploiement continu à l’USI.

    Un peu de “vanity metric” ça fait pas de mal.

    Donc, ça c’est fait 🙂

  • Can’t Buy Love [Johnny Osbourne]

    Allez, vu que j’aide Faustine à faire son blog, ça me donne envie de reprendre.

    Et forcément, je vais commencer par un peu de reggae (pour changer). Avec Thiamo en train de dormir sur mon dos j’ai envie de proposer une love song.

    Donc ça sera Can’t Buy Love par Johnny Osbourne.

    Pas grand chose à rajouter, cette tune est juste trop belle.

  • Rough Road [Warrior King]

    Un tube de 2002 que j’ai réécouter hier chez un pote, une bonne soirée “à l’ancienne” comme on dit.
    Soit dit en passant, c’est quand même bien con, puisque les soirées “à l’ancienne” vont forcément être différentes suivant les gens. Rapidement, la soirée à l’ancienne d’hier, c’était du monde dans un appart’, pas mal de bouteilles, des discussions sur le monde, l’argent (et DSK de temps en temps), des parties de mini-ping-pong entre 2 gorgées de caipi. Et tout ça baigné par du gros son joué par des mecs qui se relaient et passent des disques sur des platines.

    Donc, la je veux partager “Rough Road” de Warrior King, une tune que j’avais un peu oublié, mais quand elle passe tu fais “ouais…”.

  • 2ème sur “Benoit Lafontaine”

    Haha…
    Résumé de l’épisode 1 “premier-de-la-recherche-benoit-lafontaine-sur-google” : l’objectif étant simplement d’être le premier résultat d’une recherche google.
    Ca faisait un certain temps que je n’avait pas regardé, mais je viens de vérifier, et ho miracle, je suis passé de la place 6 à la 2ème place.

    Alors, est-ce que c’est juste le blog OCTO qui est mieux référencé qu’avant ? un effet de bord du nouvel algo de google ? Va savoir…
    Et ça me fait penser que les résultats sont différents sur la version “.com” de google, mais j’y squatte quand même la 2ème position (avec d’autres homonymes) et la 3ème place. D’ailleurs, on y vois que quora remonte plus vite sur la version “.com” que sur la version “.fr”.

    Allez, encore un peu d’effort et j’y suis !

  • Premier de la recherche “Benoit Lafontaine” sur google

    En ce moment, quelques collègues se penchent très sérieusement sur le SEO (Search Engine Optimization ou optimisation pour les moteurs de recherche sur wikipedia).
    Et comme ils ont la bonne idée d’en parler, ça m’a donné une idée de challenge :
    redevenir premier sur la recherche google sur mon nom, Benoit Lafontaine (ouais je sais ça fait bizarre de le dire en entier).

    Donc, bon je part pas de très loin vu que pour l’instant je suis en 6eme position :
    L’idée est de partager rapidement les quelques actions que je vais entreprendre et de regarder le résultat au fil des jours / mois / années.

    Mes premières actions :

    • Mettre mon nom sur ce site (dans les about me et dans ce billet)
    • Faire des articles avec du contenu (parce qu’y parait que google regarde ça maintenant)

    J’ai raté un truc, c’est de mettre mon nom directement dans l’url du blog, bon OK, tant pis.
    Mais au passage, je vais aussi travailler sur le terme “joel1di1“, parce que quand même, depuis le temps qu’on m’appelle comme ça, je devrait être premier c’est tout. Donc, là y’a juste un mec sur myspace qui me passe devant, et ça c’est pas cool, surtout que myspace, c’est mort non ?

    Si vous voulez m’aider : un like, un tweet c’est cool, un article qui pointe vers ce lien.

  • La Bagarre [Kamini]

    On m’a montré cette tune y’a pas longtemps, elle me fait juste bien marrer.

    La Bagarre de Kamini : (bon c’est con, on peut pas la mettre en direct)
    http://www.youtube.com/watch?v=kLbKbg8XFBU

  • Mock Java Mail

    Aujourd’hui, en me levant, j’ai vu un gars très respectable (Mister DOJ) twitter un lien vers http://mocksmtpserver.codeplex.com, grosso modo, c’est un mini serveur SMTP qui crache dans la console tous les mails qu’il devrait envoyer.
    Alors, ca à l’air bien comme ça, reste que d’un premier coup d’oeil, j’aurai tendance à préférer mock-javamail. Et si respectable DOJ ne mentionne pas mock-javamail, d’autres ne doivent pas en connaître l’existence.
    Le truc dommage, c’est qu’en recherchant un peu, on retrouve plus la doc (oracle qui rachète sun, tout ca).
    Y’a peut-être un projet qui à pris la suite (et dans ce cas, je suis pas au courant), mais en tout cas, ca marche toujours bien et ça permet de mocker l’envoi de mail (remarquez avec un nom comme ça, on aurait pu s’en douter). Mais à la différence de mocksmtpserver, il va faire ça en mémoire.
    Aller un petit exemple de code…
    Prenons le cas où on utilise spring et comme dans la doc (http://static.springsource.org/spring/docs/3.0.x/reference/mail.html) on envoi ses mails avec un bout de code tout simple :

    public void sendMessage() {
        // of course you would use DI in any real-world cases
        JavaMailSenderImpl sender = new JavaMailSenderImpl();
        sender.setHost("mail.host.com");
        MimeMessage message = sender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(message);
        helper.setTo("test@host.com");
        helper.setText("Thank you for ordering!");
        sender.send(message);
    }

    Un truc magique avec, c’est que pour mettre le mock et tester ce bout de code, il suffit de mettre le jar dans le classpath de notre application, donc si vous utilisez Maven (si vous l’utilisez pas, faites le), on rajoute la dépendance :

    
    <dependency>
      <groupId>org.jvnet.mock-javamail</groupId>
      <artifactId>mock-javamail</artifactId>
      <version>1.7</version>
      <scope>test</scope>
    </dependency>
    
    

    Et hop, comme par magie, les mails ne sont plus envoyés mais stockés dans une grosse Map, et voici un test qu’on peut faire :

    @Test
    public void testSendMessage() throws Exception {
        // Hop, c'est là que c'est cool, on accède à une pseudo boite mail des users (une List), le tout en mémoire
        Mailbox mailbox=Mailbox.get("test@host.com");
        assertTrue(mailbox.isEmpty());
    
        // l'appel de la méthode
        mailer.sendMessage();
    
        // on teste qu'on a bien reçu un message
        assertFalse("The mock mailbox is empty", mailbox.isEmpty());
        assertEquals(1,mailbox.size());
    
        // vu qu'on est en mémoire, on peut tester le contenu
        Message message=mailbox.get(0);
        assertEquals("Thank you for ordering!",message.getSubject());
    }

    Donc, pour moi, ça reste LE framework à retenir pour tester l’envoi de mail en java car il est simple d’utilisation, non-intrusif, bref il fait le job et il le fait bien.

  • Killing In The Name [Rage Against The Machine]

    Allez hop, un petit plaisir en ce superbe samedi.
    Je suis en bourgogne, ca tue cette région (bon le fait que le temps soit magnifique alors que ca fait juste 7 mois qu’il fait moche y est ptet pour quelque chose)
    Donc le petit plaisir, c’est cette tune bien connue de Rage Against The Machine :
    Killing In The Name.
    Alors cette chanson est au choix :
    – La chanson de Clément lors de son Kararocké (voir un épisode précédent)
    – La chanson sur laquelle Faust s’est tordu le coup lors d’un marriage
    – La chanson qui a battu X-Factor pour la “christmas number one” ça se passe par ici (c’est un peu long mais c’est rigolo) : http://www.youtube.com/watch?v=LUPYIShaX1s
    Et comme dirait mon pote Tamo

    “Fuck you! you will do what I told you”