De notre côté, dans notre domaine qui est le développement d'applications, il s'agit clairement d'une révolution, particulièrement pour notre façon de coder.
Et je ne vais pas parler du fait qu'à présent, tout le monde est capable de faire une page HTMLHTML (HyperText Markup Language) est un langage permettant de décrire le découpage d'une page web. avec un bouton en 2 prompts : c'est un tout autre débat.
Dans cet article, on va plutôt parler de la manière dont l'IA générative peut changer le quotidien de vrais développeurs, qui savaient déjà écrire du code avant, et qui peuvent maintenant le faire encore plus efficacement.
On peut parler d' IA copilot, de pair-programming, d'auto-complétion ou même de génération de code, mais le principe reste le même : une IA qui aide le développeur, de la même façon que votre IDEEnvironnement de développement permettant de faciliter le développement d'applications. vous aide déjà aujourd'hui.
L'IA copilot va principalement vous aider de 3 façons différentes :
Si vous n'avez jamais utilisé de copilot, pour l'instant ça ne vous fait surement pas rêver, mais promis je vais vous en montrer un peu plus !
Le principe d'une IA Copilot, comme son nom l'indique, est d'être avec vous pendant que vous codez, et de vous épargner les tâches les moins intéressantes.
Si vous, qui me lisez, n'êtes pas développeur, vous allez me demander "mais alors, qu'est-ce qu'il vous reste à faire en tant que développeur si l'IA code tout à votre place ?" Ne vous inquiétez pas, au moment de l'écriture de cet article, un copilot est incapable de structurer du code, ou d'imaginer des solutions à des problème complexes.
De plus, il n'a accès qu'au contexte de votre code. Il ne connait pas le cahier des charges, les ateliers que vous avez eu avec le client, ou les réunions avec votre lead. Pour l'instant, il ne fait que du code "à la ligne", c'est-à-dire qu'il va être très utile pour générer du code "bête et méchant". Mais justement, c'est ça qu'on aime ! On peut se concentrer, nous humains, sur la résolution des problèmes complexes, imaginer l'application dans son ensemble, en passant moins de temps sur les tâches peu intéressantes.
Bref vous l'avez compris, personnellement je suis fan.
Pour l'instant, j'ai pu tester en profondeur Github Copilot, et Supermaven, voici un petit retour d'expérience sur ces 2 IA copilot.
Mon premier contact avec l'IA d'auto-complétion. La découverte, l'euphorie, l'insouciance ; tant d'émotions. C'est là que je me rends compte de la puissance de ce nouvel outil, mais également de ses limites :
Pour moi son gros point fort, c'est sa chat box. Il met à disposition une chat box personnalisée, qui peut prendre en contexte des fichiers de code. Vous pouvez également sélectionner directement du code, et parler à l'IA afin de lui demander des choses. Par exemple, vous pouvez prendre une fonction un peu longue, et l'IA peut la diviser en plusieurs petite fonctions afin de réduire la complexité de votre code.
Un cas d'utilisation que je rencontre régulièrement, c'est prendre un algo' un peu complexe, et demander à l'IA s'il peut me l'optimiser. 80% de sa réponse sera surement à jeter, mais si vous pouvez en tirer quelques améliorations, c'est déjà ça !
Au départ, simplement une aventure afin de voir de nouveaux horizons, au final, un véritable coup de cœur. En plus d'être beaucoup plus rapide que Github Copilot, il a également un contexte beaucoup plus grand, et est bien mieux intégré aux IDE. A titre d'exemple, Github Copilot permet seulement d'ajouter du code à votre curseur, ce qui peut être vite embêtant quand le code que vous ajoutez demande de modifier également la fin de la ligne. Supermaven lui, peut remplacer une ligne ou un bloc de code entier.
Gros point faible de SuperMaven, la chat box. Il s'agit juste d'un accès à l'APIUne API est un programme permettant à deux applications distinctes de communiquer entre elles et d’échanger des données. de ChatGPT 4o, sans réel customisation. Elle est beaucoup moins efficace que celle de Github Copilot.
De mon côté, c'est un grand oui ! Et côté outil, que ce soit un Github Copilot ou Supermaven, les deux peuvent être envisagés pour des besoins différents.
Vous êtes un lead et vous avez plus besoin d'un compagnon que vous pouvez challenger pour des problèmes techniques ? Github Copilot sera bien plus efficace !
Plutôt développeur qui mange des lignes de code à longueur de journée ? Supermaven, sans hésiter.
Et en bonus, comme promis, un petit exemple d'une utilisation un peu plus complète d'un Copilot.
Comme vous pouvez le voir, le but n'est pas de suivre bêtement les propositions, mais de travailler ensemble, par exemple en le corrigeant afin qu'il soit plus pertinent par la suite.
"ChatGPT, peux-tu écrire un article sur l'évolution de l'IA et comment utiliser les outils d'IA en tant que développeur ?" Rassurez-vous, cet article est bien rédigé par un humain, avec un cœur qui bat et une passion démesurée pour le développement ! Alors si en tant que développeur, vous avez parfois des doutes sur votre manière d'utiliser l'IA, cet article va vous intéresser ! Mais tout d'abord, reprenons les bases. Quelles sont les différentes catégories d'intelligence artificielle ?
Dans cet article nous allons voir comment créer ses propres graphiques avec la librairie JAVA AWT. Nous utiliserons les bufferedImage pour générer des png en sortie.
Lorsque l’on possède deux datacenters différents, il n’est pas possible de migrer facilement une VM d’un datacenter à un autre directement avec un vSphere.