Inspiration

Souvent nous faisons face à des situations où nous devons nous mettre en équipe. Dans la majorité des cas nous nous mettons avec les gens qu'on connaît déjà et cela limite notre champ d'expertise et notre cohésion.

"J'ai toujours de la difficulté à trouver une équipe." -Zoé P.

What it does

Cela créer le match parfait et donne les équipes les plus compatibles selon l'information des participants afin d'avoir : la meilleure cohésion, la meilleure performance, etc.

How we built it

Pour la collecte des données nous avons utilisé un google form qui envoie les réponses dans un google sheet.

Pour extraire les données nous téléchargons ces données sous un fichier .csv que nous manipulons par la suite avec Python.

Nous utilisons Python pour nos algorithmes et calculer les scores de 1 000 000 de combinaisons possibles.

Une fois la meilleure combinaison trouvé nous l'exportons sous un fichier JSON.

On extrait les données du fichier JSON avec JavaScript pour notre site web.

Nous modélisons notre site web avec HTML/CSS/JS pour afficher les meilleurs équipes.

Finalement nous déployons notre site web avec Firebase link

Challenges we ran into

Nous avons eu de la difficulté à développer l'algorithme d'optimisation. Premièrement, la fonction pour attribuer une note à chaque équipe était complexe et difficile à pondérer. Deuxièmement, nous avions de la difficulté à générer l'entièreté des combinaisons car nous voulions toute les combinaisons possibles de divisions d'équipes. Il était facile de générer toute les équipes possibles mais très difficile de générer les possibilités pour avoir tous les ensembles d'équipes comprenant tous les membres une seule fois. Lorsque nous avons décidé de faire autrement, nous ne savions pas vraiment comment bien gérer un problème d'optimisation avec autant de possibilités.

Accomplishments that we're proud of

Premièrement, nous sommes fier d'avoir réussi à remettre quelque chose. Ensuite, nous sommes fier d'avoir utilisé Firebase pour le déploiement de notre site web car nous n'avions jamais touché à cet outil auparavant. Aussi, même s'il y a grandement place à l'amélioration, nous sommes heureux d'avoir créé un algorithme d'optimisation qui donne des bons résultats. Finalement, nous sommes fier, d'avoir réussi à intégrer nos différent système.

What we learned

Nous avons appris qu'il nous reste beaucoup à apprendre sur plusieurs aspects de l'informatique, du logiciel et des mathématiques. Par exemple, nous n'étions même pas capable de calculer le nombre de cas possible liés à notre problème d'optimisation. Nous avons aussi appris à gérer les interactions entre différent systèmes informatiques (Forms, algorithmes, plateforme web, Firebase).

What's next for Teamder

La suite des choses serait probablement de retravailler le code en place pour le rendre plus flexible pour permettre à l'organisateur d'événement de facilement changer des paramètres d'optimisations sans avoir à programmer quoi que ce soit. Aussi, un interface web plus avancé permettant de d'organiser un événement de recueillir les données des participants en plus d'afficher les équipes sur une plateforme unique.

Built With

Share this project:

Updates