Remplacé ou augmenté ?

Cette maxime extraite de l'excellent podcast "Les éclaireurs du numérique" semble être le défi que nous propose l'intelligence artificielle à l'heure où ses progrès apparaissent comme fulgurant aux yeux du grand public (dont je fais partie). Jordan Mariani, collaborateur ITEC, vous emmène dans un voyage passionnant, au cœur de cette révolution de la création de logiciels grâce à l'intelligence artificielle.
ia

En tant qu’architecte, j’ai toujours été fasciné par les possibilités offertes par la technologie et son impact sur notre manière de travailler.

Mais récemment, lors d’une discussion avec un collègue, j’ai été confronté à une réalité qui m’a poussé à repousser mes limites : en tant qu’architecte, je n’étais pas considéré comme un véritable créateur, un “do-er”.

Ce constat m’a déterminé à me lancer dans un projet audacieux : concevoir et mettre en œuvre un produit logiciel de A à Z, en utilisant uniquement des outils d’intelligence artificielle pour m’assister dans cette aventure. Mon objectif était de prouver qu’il est possible de créer un logiciel innovant en faisant appel à la puissance de l’IA et de montrer que, même en tant qu’architecte, je pouvais être un véritable créateur.

NB : Les règles du “jeu” était claires : Aucune minute accordée au projet pendant mes heures de travail. L’enjeu de cette expérience est justement d’évaluer la capacité réelle de ce progrès technologique. J’ai donc travaillé sur ce projet en fin de soirée, lorsque mes obligations professionnelles et personnelles étaient remplies.

Tout au long de cette expérience, j’ai eu recours à divers outils d’intelligence artificielle, tels que ChatGPT (Alors en version 3 / 3.5), Codeium, Tabnine et Quillbot. Chacun d’eux a joué un rôle clé dans les différentes étapes du processus, me permettant de créer non seulement la solution elle-même, mais aussi le blog de présentation du projet, le cahier des charges pour une landing page et la vidéo de présentation de l’outil.

NB2 : J’ai volontairement utilisé l’intelligence artificielle au maximum, y compris pour des tâches pour lesquelles j’avais des idées ou des solutions. Ainsi le nom de la solution, son logo et son thème de couleur ont été “décidées” par chatGPT et Looka.

La création de la solution logicielle

La première étape de mon projet consistait à concevoir et développer la solution logicielle elle-même. Pour ce faire, j’ai utilisé les outils d’IA ChatGPT, Tabnine et Codeium. ChatGPT m’a permis de générer l’initialisation du projet Nuxt, de créer les premières versions des composants VueJS et d’appliquer mes choix de refactoring. Tabnine et Codeium ont été utilisés pour corriger, adapter et améliorer le code fourni par ChatGPT.

Grâce à ces outils, j’ai pu rapidement créer un prototype fonctionnel de mon application, sans avoir à passer des heures à écrire du code à partir de zéro.

Très clairement, sans connaissance et maitrise de l’environnement technique, je ne serais pas arrivé à obtenir quelque chose de fonctionnel. D’une part parce que la documentation connue de chatgpt s’arrête en 2021, et d’autre part car le code fourni par chatgpt 3 ne fonctionne pas toujours.

Cependant, ça a été un accélérateur notable. Là où codeium est excellent pour proposer des solutions techniques “tactiques” à endroit particulier du code, chatGPT s’est révélé très précieux dans les phases de refactoring. Je n’ai qu’à “montrer” à l’outil le refacto que je souhaite, et il l’applique partout. Mieux encore, il sait proposer la mise en oeuvre de design pattern sur un code existant. Je conseillerais vivement à chaque développeur que je rencontre de prendre un peu de temps pour adopter ces outils.

Le blog de présentation du projet

Pour partager mon expérience et les résultats de mon projet avec le monde, j’ai décidé de créer un blog Medium. Pour rédiger les articles de ce blog, j’ai de nouveau fait appel à l’intelligence artificielle, en utilisant ChatGPT et Quillbot. Ces outils m’ont permis de rédiger rapidement des articles de qualité, lui demandant d’adopter un style “engageant et inspirant”.

J’ai mis un peu de temps à utiliser correctement chatGpt et quillbot dans cette tâche. Si je repartais de zero aujourd’hui, le résultat serait plus probant car j’ai “appris” à chatGPT à utiliser mon style personnel.

L’utilisation de quillbot était nécessaire avant cet apprentissage pour “dé-chatgptiser” le style d’écriture des posts de ce blog.

Le cahier des charges pour la landing page

Afin de promouvoir efficacement ma solution logicielle, j’ai décidé de créer une landing page attrayante et convaincante. Pour ce faire, j’ai sous-traité la réalisation à mdm-development. Toutefois, j’ai choisi d’utiliser ChatGPT pour rédiger intégralement le cahier des charges. Grâce à l’intelligence artificielle, j’ai pu créer un document clair et complet, détaillant précisément mes attentes et les objectifs de la landing page.

Le fait de travailler avec une IA pour rédiger le cahier des charges m’a permis de gagner du temps et de m’assurer que tous les aspects importants étaient pris en compte. Cela a également facilité la communication avec l’équipe de développement, qui disposait ainsi d’un document de référence clair et précis pour orienter leur travail.

La vidéo de présentation de ma solution

Enfin, pour compléter ma stratégie de promotion, j’ai décidé de créer une vidéo de présentation de l’outil. Pour ce faire, j’ai utilisé ChatGPT pour écrire le scénario et les textes parlés, tandis que les voix off ont été générées par l’IA intégrée à Clipchamp, l’outil de création vidéo que j’ai choisi.

En combinant ces deux technologies, j’ai souhaité créer une vidéo professionnelle et captivante, mettant en valeur les atouts de ma solution logicielle et incitant les spectateurs à en savoir plus. Le recours à l’intelligence artificielle m’a permis de gagner du temps et de réduire les coûts de production, tout en obtenant un résultat de grande qualité.

Les leçons tirées de cette expérience

Tout au long de ce projet, j’ai appris à explorer de nouvelles façons d’utiliser l’intelligence artificielle pour accélérer la création de logiciels.

De mon point de vue, l’intelligence artificielle peut être un allié précieux dans le développement logiciel, en accélérant le processus de création et en réduisant le risque d’erreurs.

Les outils d’IA peuvent être utilisés de manière créative pour assister dans la promotion et la présentation d’un produit logiciel, comme dans la rédaction de blogs, de cahiers des charges ou la création de vidéos.

Le résultat n’est évidemment pas “exceptionnel”, mais le ratio temps passé/résultat est séduisant. De nombreuses tâches pour lesquelles un résultat passable est suffisant sont largement à la portée de l’IA aujourd’hui.

En tant qu’architecte, ces outils ont pu m’aider à prouver que je pouvais être un véritable créateur en m’appuyant sur la puissance de l’intelligence artificielle pour concevoir et mettre en œuvre un produit logiciel innovant.

Enfin, voici le lien de la “fameuse” vidéo de présentation de cette solution, pour laquelle tous les composants fonctionnent, et qui n’attend que la mise en place de la fonctionnalité d’abonnement :

Partager