Articles

Faut-il tester plus le code généré par l'IA ?

L’utilisation des technologies d’intelligence artificielle (IA) pour générer du code est en plein essor. Mais faut-il tester plus le code généré par l’IA ?

Les outils alimentés par l’IA pour écrire du code, tels que GitHub Copilot, sont de plus en plus populaires dans le développement logiciel. Ces outils promettent d’accroître la productivité, mais certains affirment également qu’ils démocratisent la programmation en permettant aux non-programmeurs d’écrire des applications. Mais comment savons-nous vraiment si le code écrit par un outil IA est adapté à son objectif ?

Data is key to understanding the effectiveness of AI-powered code writing tools. By collecting data on the code written by these tools, we can measure the quality of the code and determine whether it is suitable for use in production. This data can also be used to identify areas where the tools need improvement, and to provide feedback to developers on how to improve their code. 

Les outils alimentés par l’intelligence artificielle pour écrire du code, tels que GitHub Copilot, sont de plus en plus populaires dans le développement logiciel. Ces outils promettent d’accroître la productivité, mais certains prétendent également qu’ils démocratisent la programmation en permettant aux non-programmeurs d’écrire des applications. 

Mais comment savons-nous vraiment si le code écrit par un outil IA est adapté à son objectif ?

Les données sont essentielles pour comprendre l’efficacité des outils d’écriture de code alimentés par l’IA. En collectant des données sur le code écrit par ces outils, nous pouvons mesurer la qualité du code et déterminer s’il est approprié pour une utilisation en production. Ces données peuvent également être utilisées pour identifier les domaines où les outils doivent être améliorés et fournir des commentaires aux développeurs sur la façon d’améliorer leur code. 

Les outils alimentés par l’IA peuvent être un moyen très utile pour accélérer le développement logiciel et réduire les coûts. Cependant, pour tirer le meilleur parti de ces outils, il est important de disposer de données fiables sur leur efficacité et leur qualité. Les données peuvent également être utilisées pour améliorer les outils et fournir des informations aux développeurs sur la façon d’améliorer leur code. 

Les données sont donc essentielles pour comprendre comment les outils alimentés par l’IA peuvent être utilisés efficacement et de manière responsable. Les entreprises qui veulent tirer le meilleur parti de ces outils doivent recueillir des données sur leurs performances et leurs résultats afin de pouvoir prendre des décisions éclairées sur leur utilisation. Les données peuvent également être utilisées pour améliorer les outils et fournir des informations aux développeurs sur la façon d’améliorer leur code. 

En conclusion, les outils alimentés par l’IA peuvent être un moyen très utile pour accélérer le développement logiciel et réduire les coûts. Cependant, pour tirer le meilleur parti de ces outils, il est important de disposer de données fiables sur leur efficacité et leur qualité. Les données sont donc essentielles pour comprendre comment les outils alimentés par l’IA peuvent être utilisés efficacement et de manière responsable. Les entreprises qui veulent tirer le meilleur parti de ces outils doivent recueillir des données sur leurs performances et leurs résultats afin de pouvoir prendre des décisions éclairées sur leur utilisation. 

Source de l’article sur DZONE

Garder son emploi, mais pas le même.

Garder son emploi est une décision difficile à prendre lorsque l’on souhaite changer de métier, mais c’est possible ! Découvrez comment.

## Est-ce que le examen OCP a encore du sens?

Récemment, j’ai consacré trois articles à mon étude réticente pour l’examen OCP-17 Java, en donnant des conseils sur la façon de rendre l’effort moins pénible. Je ne l’ai pas encore passé. Avec chaque nouvelle avancée en assistance à la programmation IA, affiner vos compétences en tant que compilateur humain me semble de plus en plus anachronique. C’était toujours un acte de masochisme, mais je suis de plus en plus convaincu qu’il n’y a aucun avantage professionnel à devenir bon dans quelque chose que la machine est supérieure. Je concède que toute poursuite peut être bénéfique ou agréable pour des raisons autres que la simple utilité, mais en tant que développeur, je suis payé pour être productif. Passer un bon moment au travail est un plus, et les compétences que l’OCP exige ne sont pas mon idée de plaisir.

De nombreuses tâches intellectuelles qui sont difficiles pour les humains sont faciles pour les ordinateurs (échecs, arithmétique, apprentissage par cœur) et le sont depuis des décennies. Nous avons inventé les langages de programmation de haut niveau et la collecte des déchets car les êtres humains sont terribles pour inverser les bits et gérer la mémoire. La feuille de route des langages informatiques et des outils est celle de l’abstraction croissante. GitHub Copilot et ses semblables ne sont que la prochaine étape inévitable pour éliminer la complexité accidentelle.

Bien que je sois un développeur expérimenté, je n’ai pas le temps ou l’envie de passer des heures à apprendre des concepts qui ne sont pas directement liés à mon travail quotidien. De plus, je ne vois pas l’intérêt de passer un examen qui ne me donnera pas une certification reconnue par l’industrie. Cependant, je suis conscient que l’utilisation des données est essentielle pour les développeurs modernes. Les données sont utilisées pour prendre des décisions, améliorer les performances et créer des produits innovants. Les développeurs doivent être à l’aise avec les bases de données, l’analyse des données et le traitement des données. Les compétences en matière de données sont très recherchées par les employeurs et peuvent être acquises par le biais d’un cours ou d’une formation en ligne.

Je pense que les développeurs doivent se concentrer sur leurs compétences en matière de données plutôt que sur l’apprentissage d’un langage de programmation spécifique. Les technologies évoluent rapidement et il est important de rester à jour. Les développeurs doivent être en mesure d’utiliser les technologies les plus récentes et les plus pertinentes pour leurs projets. Les compétences en matière de données sont essentielles pour réussir dans ce domaine et devraient être une priorité pour tout développeur.

Source de l’article sur DZONE

On June 29th, GitHub announced Copilot, an AI-powered auto-complete for programmers, prompting a debate about the ethics of borrowed code.

GitHub is one of the biggest code repositories on the Internet. It hosts billions of lines of code, creating an unparalleled dataset with which to train a coding AI. And that is exactly what OpenAI, via GitHub, thanks to its owners Microsoft has done — training Copilot using public repositories.

The chances are you haven’t tried Copilot yet, because it’s still invite-only via a VSCode plugin. People who have, are reporting that it’s a stunning tool, with a few limitations; it transforms coders from writers to editors because when code is inserted for you, you still have to read it to make sure it’s what you intended.

Some developers have cried “foul” at what they see as over-reach by a corporation unafraid of copyright infringement when long-term profits are on offer. There have also been reports of Copilot spilling private data, such as API keys. If, however, as GitHub states, the tool has been trained on publicly available code, the real question is: which genius saved an API key to a public repository.

GitHub’s defense has been that it has only trained Copilot on public code and that training AI on public datasets is considered “fair use” in the industry because any other approach is prohibitively expensive. However, as reported by The Verge, there is a growing question of what constitutes “fair use”; the TLDR being that if an application is commercial, then any work product is potentially derivative.

If a judge rules that Copilot’s code is derivative, then any code created with the tool is, by definition, derivative. Thus, we could conceivably reach the point at which a humans.txt file is required to credit everyone who deserves kudos for a site or app. It seems far-fetched, but we’re talking about a world in which restaurants serve tepid coffee for fear of litigation.

There are plenty of idealists (a group to which I could easily be accused of belonging) that nurture a soft-spot for the open-source, community-driven web. And of course, it’s true to say that many who walk the halls (or at least log into the Slack) of Microsoft, OpenAI, and GitHub are of the same inclination, contributing generously to open-source projects, mentoring, blogging, and offering a leg-up to other coders.

When I first learnt to code HTML, step one, before <p>hello World!</p> was view > developer > view source. Most human developers have been actively encouraged to look at other people’s code to understand the best way to achieve something — after all, that’s how web standards emerged.

Some individuals are perhaps owed credit for their work. One example is Robert Penner, whose work on easing functions inspired a generation of Actionscript/JavaScript coders. Penner published his functions online for free, under the MIT license; he also wrote a book which taught me, among other things, that a while loop beats a for loop, a lesson I use every day — I’d like to think the royalties bought him a small Caribbean island (or at least a vacation on one).

There is an important distinction between posting code online and publishing code examples in a book, namely that the latter is expected to be protected. Where Copilot is on questionable ground is that the AI is not a searchable database of functions, it’s code derived from specific problems. On the surface, it appears that anything Copilot produces must be derivative.

I don’t have a public GitHub repository, so OpenAI learned nothing from me. But let’s say I did. Let’s say I had posted a JavaScript-powered animation from which Copilot garnered some of its understanding. Does Microsoft owe me a fraction of its profits? Do I in turn owe Penner a fraction of mine? Does Penner owe Adobe (who bought Macromedia)? Does Adobe owe Brendan Eich (the creator of JavaScript)? Does Eich owe James Gosling (creator of Java), if not for the syntax, then for the name? And while we’re at it, which OS was Gosling using back in the mid-90s to compile his code — I doubt it was named after a fruit.

If this seems farcical, it’s because it is. But it’s a real problem created by the fact that technology is moving faster than the law. Intellectual property rights defined before the advent of the home computer cannot possibly define an AI-driven future.

 

Featured image uses images via Max Chen and Michael Dziedzic.

Source

The post Poll: The Ethical Dilemma at the Heart of GitHub’s Copilot first appeared on Webdesigner Depot.


Source de l’article sur Webdesignerdepot