Pixel

Journée Innovation D'avril 2020

28/04/2020

Hello ! Notre dernière journée inno à Frianbiz, d’ailleurs comme toutes les versions précédentes, était pleine de créativité et d’artisanat du logiciel. Le principe est toujours le même : bosser sur une idée de projet et d’avancer au max pour pouvoir présenter à la fin de journée un poc fonctionnel.

Durant cette edition, on a eu l’opportunité de travailler sur different sujets et de nombreuses technologies et frameworks :

  • Une carte de visite electronique via tags NFC
  • Création de bot pour Moji
  • Migration de l’IHM du planning Lego en Pixi js
  • Test client Socket
  • Outil de génération de CV: Episode 2

Carte visite électronique via NFC par Eric, Loic et Mohamed

L’idée était tout simplement de moderniser et numériser la carte de visite classique. Du coup nous avons proposé de développer une application ( avec ses 2 versions Android & iOS ) qui permet l’écriture de l’ensemble des informations que peut contenir une carte visite, sur des tags NFC . L’accès à ses infos se fera par un scan simple du tag personnalisé, qui dirigera vers un fichier VSC directement enregistrable sur l’application Contacts.

Notre projet iOS était basé sur cet article, tandis que celui d’Android était une implementation par cas d’usage de la documentation officielle. Illustration de Carte visite électronique via NFC

Création de bot pour Moji par Joe et Benjamin

Pour que les utilisateurs de notre jeu Moji ne se retrouvent pas seuls dans un salon lorsqu’ils se connectent, nous avons décidé de créer un bot qui leur permettrait de jouer quelques parties en attendant les copains :).

Avant de pouvoir faire du machine learning ( \o/ ), nous avons d’abord réfléchi à un algorithme basique pour faire en sorte qu’il interagisse avec un joueur et qu’il donne des réponses pertinentes.

Pour cela, le bot utilise l’historique des bonnes réponses des parties précédentes (le film trouvé et la suite d’emojis utilisée). Dès que le joueur humain saisit un emoji, le bot cherche dans ses datas les réponses qui contiennent ces emojis. Plus une suite d’emojis est utilisée pour un film, plus il y a de chances que le bot propose le film associé en premier.

Par exemple, à chaque fois que le roi lion est trouvé avec ??, le poids de cette réponse est incrémenté. Un simple tri sur la requête permet au bot de donner ce film avant un autre.

Notre stack :

  • Algorithme du bot en Node.js sur le serveur
  • Bdd MySQL
  • Typeorm pour interagir avec la BDD Pour conclure, la journée était un peu courte pour appréhender un sujet aussi vaste que l’IA mais la réflexion autour de l’algorithme du bot était très intéressante.

Refacto du planning Lego en Pixi js par Antoine et Guillaume

Lors d’une précédente journée innovation, nous avons réalisé un planning couplé à un serveur permettant d’assigner un projet à un développeur pour une journée. Le tout en temps réels grâce aux sockets et une interface en VueJS.

Suivis de plusieurs ajouts en termes de fonctionnalités et d’une quantité de données importante. Nous avons commencé à ressentir une baisse de performance de notre planning, dû au binding VueJS étant appliqué sur un trop grand nombre d’éléments.

Pour améliorer les performances de notre planning, nous nous sommes intéressés à PixiJS qui est une librairie JavaScript permettant de créer des applications en WebGL. Grâce à cette technologie, notre planning peut dorénavant utiliser la puissance de la carte graphique lors des rendus, ce qui augmente drastiquement les performances et nous permet d’avoir une marge quand aux améliorations possibles.

Je vous laisse avec l’article complet pour plus de détails.

Test client Socket par Lucas

Nous avons donc mis en place un client VueJS permettant la connexion au serveur socket via un formulaire demandant l’URL ainsi que le port. Une fois la connexion établie, l’interface change afin de montrer l’état actif de la connexion. Par un envoi d’un fichier JSON décrivant les différents events envoyé et reçu par le serveur ainsi que les objets attendus. Ce qui permet de paramétrer le client afin d’émettre et d’écouter tous les évents. Ainsi, nous pouvons visualiser les évents que le serveur envoie au client avec la contenue des datait transmise mais aussi le nombre de fois ou cet évent est envoyé. De même, nous pouvons voir les datas envoyé via les émetteurs du client et le nombre d’envoi. Amélioration future:

  • Permettre un envoi de data modulable qui permettra d’envoyer directement via le client des jeux de données complètent et ainsi voire les retours du serveur.
  • Amélioration de l’interface utilisateur ainsi que l’expérience utilisateur.

Outil de génération de CV par Lancelot

Lorsque vous étiez étudiant ou jeune travailleur, ne vous est-il jamais arrivé de devoir faire un CV pour un entretien et n’avoir aucune idée de comment le rendre agréable à parcourir ? C’est dans cette optique que j’ai pu travailler lors de cette journée inno sur un prototype de générateur de CV.

L’objectif était donc de proposer à l’utilisateur au travers de templates préfabriqués, un outil lui permettant de créer facilement un CV qu’il pourra ensuite partager ou imprimer comme bon lui semble. Pour cela il lui suffit de remplir les champs d’un formulaire et d’observer le remplissage de son CV au fur et à mesure qu’il remplit le formulaire.

Le formulaire en question propose donc de remplir les informations basiques que l’on retrouve sur la plupart des CV : les informations de base, telles que le nom, le prénom, l’email, l’adresse, mais aussi la formation, les différentes expériences professionnelles, les compétences technique et bien évidemment les loisirs.

L’outil actuel n’étant qu’un prototype il ne permet pas de faire tout ce que nous avons imaginés à @Frianbiz. A termes, nous voudrions avoir une multitude de templates de CV avec une personnalisation plus poussée pour que l’utilisateur puisse créer le CV qui lui correspond le plus ! Présentation d'un CV

C’était tout pour cette journée ! On vous donne rendez-vous pour la prochaine...

#Continuous Improvement
#Innovation
#Development
red pixel blue pixel