SEPTEO

Septeo est un groupe d’éditeurs de logiciels originaire de Montpellier qui se positionne comme le 1er acteur européen des Legatech, spécialisé dans les solutions et services IT à destination des professionnels du droit, de l'immobilier et des entreprises.

 

Plutôt orienté technologies Microsoft et environnements .NET, nous utilisons diverses stacks au sein des 16 filiales (PHP / JAVA J2EE / NODE.JS / MOBILE) suivant les besoins.

En plein changement culturel, nous allons vers plus d'agilité, le DevOps et la livraison de valeur en continu.

Nous remodelons nos applications pour migrer dans le Cloud sous forme d'architectures orientées Microservices et une forte industrialisation des process manuels (Tests, déploiements, monitoring).

 

Nous prenons des stagiaires et des alternants de tous niveaux de formation, tout au long de l'année !

 

Plus d’informations : https://www.septeo.fr/nous-rejoindre.htm

Contact RH : gpSepteo-Recrutement@septeo.fr

 

 

Le défi: Frankencode : créer la vie avec du code !

Theme:

Algorithme / Jeu de la vie / Automate Cellulaire

Lot:

Bons d'achat Amazone pour les 3 premières équipes

1er prix : 200 €

2ème prix : 100 €

3ème prix : 50 €

Pour accompagner votre défi principal de la Nuit de l’info, SEPTEO vous propose de faire patienter les utilisateurs de votre application durant les phases de chargement, de processing ou au moment du login en remplaçant les animations type barre de progression, sablier, spinning wheel par une animation basée sur le « Jeu de la vie ».

Le but est donc de coder un composant autonome qui anime le « jeu de la vie » de façon aléatoire ou en fonction de l’état d’avancement d’un processus.

 

En hommage à John Horton Conway son inventeur qui a été victime de la Covid-19 au mois d’avril dernier. Codez et faites preuve de créativité !

Vous êtes libres de représenter l’état de la grille comme bon vous semble, de générer un état initial aléatoire (montrer une activité) ou pré défini (montrer une progression définie). Un plus serait la possibilité d’ajouter des cellules à la volée alors que l’évolution est en cours. 

 

Bonne chance à tous !

 

Elements attendus

Le jeu de la vie a été inventé par le mathématicien John H. Conway en 1970. C’est un « jeu à zéro joueur », puisqu'il ne nécessite pas l'intervention du joueur lors de son déroulement. Il est un bon exemple d’un système où une règle locale simple donne lieu à un comportement global complexe. 
 
Le jeu se déroule sur une grille à deux dimensions, théoriquement infinie (mais de longueur et de largeur finies et plus ou moins grandes dans la pratique), dont les cases — qu’on appelle des « cellules », par analogie avec les cellules vivantes — peuvent prendre deux états distincts : « vivante » ou « morte ». 
 
Une cellule possède huit voisins, qui sont les cellules adjacentes horizontalement, verticalement et diagonalement. 
 
À chaque étape, l’évolution d’une cellule est entièrement déterminée par l’état de ses huit voisines de la façon suivante : 
  • une cellule morte possédant exactement trois voisines vivantes devient vivante (elle naît) ; 
  • une cellule vivante possédant deux ou trois voisines vivantes le reste, sinon elle meurt. 
 
On peut également formuler cette évolution ainsi : 
  • si une cellule a exactement trois voisines vivantes, elle est vivante à l’étape suivante. 
  • si une cellule a exactement deux voisines vivantes, elle reste dans son état actuel à l’étape suivante.
  • si une cellule a strictement moins de deux ou strictement plus de trois voisines vivantes, elle est morte à l’étape suivante. 
 
Comme exemple de comportement complexe émergeant de ces quelques règles, il y a le planeur. Cette structure réapparaît toutes les quatre itérations, mais décalée d’une cellule en diagonale. C’est donc un habitant de la grille du Jeu qui a la capacité de se “déplacer” !
 
Voici quelques liens intéressants qui décrivent en général certaines structures du Jeu: 
 
 

Mode de restitution

Afin de pouvoir juger la qualité de votre code, nous vous invitons à rendre votre réalisation sur un Github.

La livraison d’un applicatif/démo mettant en œuvre ce composant en dehors de l’application principale de la nuit de l’info démontrant toutes ses fonctionnalités sera un plus !