Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Ponicode opère une levée de fonds de trois millions d'euros pour poursuivre le développement de son IA qui augmente la qualité du code

Le , par Sandra Coret

116PARTAGES

10  0 
Ponicode, startup créée en juin 2019, spécialiste de l’Intelligence Artificielle et des data sciences, annonce une levée de fonds en seed de trois millions d’euros menée par Breega, accompagné de Kima et de Plug & Play Ventures, l'un des fonds d’investissement les plus actifs de la Silicon Valley, et d’une vingtaine de Business Angels. Les membres de l’équipe de Ponicode ont également contribué à la levée de fonds. À cette levée s’ajoute un prêt d’un million d’euros auprès de Bpifrance.

L’Intelligence Artificielle au service de la qualité du code

Ponicode a développé une plateforme basée sur l’IA et le machine learning qui teste les différentes fonctions des programmes informatiques pour décharger les développeurs de tâches fastidieuses et chronophages. Entraînée sur des millions de lignes de codes cette plateforme génère des tests unitaires et propose des améliorations aux développeurs pour qu’ils livrent un code sans erreur. Ainsi Ponicode améliore la qualité des produits, accélère leur mise sur le marché et contribue à l’innovation en entreprise.
Un an après sa création, Ponicode a déjà franchi plusieurs étapes majeures comme le lancement en juin 2020 de la bêta publique de sa solution et l’intégration en mai 2020 du programme de Microsoft, AI Factory, à Station F dont l’un des objectifs est de former des champions européens de l’IA.

Ponicode est constitué d’une équipe de 11 passionnés, ultra-qualifiés, multiculturels et prêts à relever le défi de faire entrer le code dans une nouvelle ère. De même une communauté de fans et d’early adopters a déjà testé la bêta privée et est très enthousiaste pour la suite.

Ponicode est la troisième entreprise de Patrick Joubert, expert en IA. En 2011, il avait fondé Beamap, société de conseil spécialiste du cloud et rachetée en 2014 par Sopra Steria. Il avait ensuite créé Recast.AI en 2015, plateforme conversationnelle collaborative accessible aux développeurs pour créer des chatbots, et acquise par SAP en janvier 2018.


Un marché en croissance exponentielle lié à la révolution numérique

Ce financement permettra à la startup d’étoffer son équipe R&D pour continuer à développer son produit afin qu’il réponde le plus précisément possible aux besoins des entreprises. L’objectif est de doubler la taille de l’équipe en un an, de démarrer la phase de commercialisation auprès des entreprises et entamer le déploiement à l’international et notamment aux États-Unis.

“La qualité du code est devenue un enjeu clé pour les entreprises dans un monde où le numérique a transformé tous les pans de la société. Au coeur du numérique se trouvent les logiciels développés grâce à des millions de lignes de code. Par exemple, il y a dans les smartphones autant de logiciels que dans une voiture soit environ 100 millions de lignes de code. Pourtant les logiciels sont encore trop souvent buggés ce qui peut avoir des conséquences désastreuses. Ce n’est pas acceptable et le code doit faire sa transition vers une qualité irréprochable. Nous voulons élever les standards et devenir un acteur majeur de l’évolution des pratiques de développement.” précise Patrick Joubert, co-fondateur et CEO de Ponicode

“Avec sa techno d'IA de génération automatique de tests unitaires, Ponicode résout un véritable pain point pour les développeurs qui, jusqu’à ici étaient obligés d'écrire eux-mêmes leurs tests unitaires pour s'assurer que les lignes de code écrites remplissent bien la fonction souhaitée. L’interface produit Ponicode s'intègre directement dans l'environnement de développement (IDE) offrant ainsi une expérience résolument innovante et sans couture aux développeurs. Breega est ravi de faire partie de cette nouvelle aventure et d’accompagner Patrick et Baptiste, tous les deux des entrepreneurs chevronnés dans leur conquête de ce marché extrêmement prometteur”, ajoute Maximilien Bacot, Founding Partner chez Breega.

“Nous sommes très heureux d’accompagner Ponicode et leur permettre de faire rayonner leur solution IA de par le monde. Depuis un an l’équipe ne cesse d’innover pour proposer un produit complet et adapté au besoin actuel des développeurs. Nous leur faisons confiance pour poursuivre ce développement et s’internationaliser.” précise Alexis Robert, partner chez Kima Venture.

«Nous avons tout de suite aimé l'idée de s'attaquer au problème de la qualité du code à la source et de créer un produit que les développeurs utiliseront en permanence, de manière transparente. La passion avec laquelle Patrick et toute l'équipe de Ponicode nous ont montré les premiers résultats de leur travail et expliqué leur ambition pour l'entreprise a fait le reste. Nous sommes très fiers de travailler avec ce mélange exceptionnel de talents et de les soutenir tout au long de cette aventure passionnante. » ajoute Martin Lehmann VC chez Plug and Play Ventures.


À propos de Ponicode

Ponicode est une startup créée en juin 2019 et destinée à faciliter le quotidien des développeurs. La startup a développé une solution low code à base d’IA, elle permet de générer des tests unitaires en JavaScript en quelques clics dans VSCode. L’ambition de Ponicode est d’aider les développeurs à produire un code de qualité, plus rapidement, et surtout de se concentrer sur ce qu’ils aiment le plus : coder.

Source : Ponicode

Et vous ?


Pensez-vous qu'une IA peut améliorer la qualité de votre code ?

Voir aussi :

La rubrique Intelligence artificielle
La rubrique ALM

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Pyramidev
Expert confirmé https://www.developpez.com
Le 17/07/2020 à 19:06
Sur le site de Ponicode, on voit un exemple de fonction isEmailValid et le test unitaire associé :



Il y a deux points sur lesquels il faut faire attention à propos des tests unitaires.

Le premier point, c'est qu'il ne suffit pas que chaque instruction soit exécutée par au moins un test pour que l'on puisse considérer que le code a été testé dans suffisamment de cas.
Dans l'exemple ci-dessus, on peut changer le comportement de la fonction, par exemple en modifiant l'expression régulière, sans que ça ne change le résultat du test unitaire. Même quand on utilise des outils de mesure de couverture de code, il faut quand même que la diversité des tests soit évaluée par une personne avec un cerveau.

Le deuxième point, c'est que coder proprement des tests unitaires fait appel à des compétences en architecture de programme. Il y a plein de manière différentes d'écrire des tests unitaires et il faut trouver la manière avec laquelle la suite de tests est la plus facile à mettre à jour. Cela implique non seulement de factoriser le code, mais aussi de réfléchir où on dirige les dépendances (ex : est-ce qu'on teste directement la fonction ou bien une fonction appelante ? La bonne réponse dépend des cas.)
Dans l'exemple ci-dessus, pour éviter de dupliquer le code des tests de isEmailValid, on pourrait définir un tableau de chaînes qui correspond à des exemples d'adresses courriels avec un format valide et un deuxième tableau d'objets dont le format n'est pas valide. Comme ça, on peut itérer sur ces tableaux pour les tests. Le jour où on veut ajouter un exemple à tester, il suffit d'ajouter directement un élément dans un des deux tableaux au lieu d'ajouter un tas de lignes.
Là, on est dans un cas simple. Dans des cas plus compliqués, il arrive qu'on code des fonctions qui ne sont appelées que dans les tests unitaires. Ces fonctions servent alors à rendre les tests unitaires plus courts et à réduire la quantité de code qui dépend directement des fonctions testées.

Je n'ai pas testé Ponicode. Il aura peut-être un intérêt pour générer quelques tests unitaires que des développeurs retravailleront ensuite. Mais il ne devra surtout pas être vu comme un remplaçant des développeurs pour écrire les tests unitaires. Écrire correctement des tests unitaires demande de vraies compétences.
1  0 
Avatar de codec_abc
Membre confirmé https://www.developpez.com
Le 17/07/2020 à 13:59
Un outil qui vérifie des propriétés sur le code il y en a beaucoup depuis longtemps et on appelle ça un ... compilateur. C'est sur que c'est pas aussi sexy qu'un truc à base d'IA mais ça à l'avantage d'être formel, déterministe et reproductible. Ce genre d'outil qui surf sur l'IA pour se faire de la pub a aucun intérêt d'un point de vue dev car aucun n'a encore prouvé son utilité. Le seul truc qui va plaire dans cet outil, c'est qu'ilpeut générer des tests unitaire tout seul pour faire monter une métrique (le taux de couverture de tests unitaire). Alors forcément, ça va plaire aux managers, qui en tant que non technique, n'ont pas compris qu'on peut avoir 100% de tests unitaire sur une base de code merdique et qu'en plus 100% de tests unitaires ne garantie pas non plus le bon fonctionnement d'un programme. Mais bon rien de nouveau sous le soleil.
0  0 
Avatar de eric44000
Membre à l'essai https://www.developpez.com
Le 17/07/2020 à 16:12
Automatiser les tests unitaires chronophages et onéreux est alléchant. Il n'empêchent que l'IA n'est pas fiable à 100% mais un taux d'erreur de 5% est admissible dans la plupart des cas. Par contre trouver l'origine d'un bug risque d'être plus compliqué qu'auparavant.
Pour ce qui est des applications critiques comme l'industrie nucléaire, le transport aérien... 100% est requis. L'IA n'a pas sa place pour le zéro défaut.
0  0