Oracle c. Google : finalement, pas de contrefaçon par les emprunts aux API de Java par ceux d’Android




On rapporte cette semaine que la Cour suprême des États-Unis vient de rendre une décision mettant un clou final dans le cercueil de la fameuse poursuite-fleuve relative à l’usage de composantes liées à Java dans la plateforme Android. Dix ans plus tard, ce litige est finalement parvenu à une conclusion donnant raison à la société Google.

Comme on s’en souviendra, en développant Android et ses API, Google avait imbriqué dans ceux-ci ce qu’elle avait préalablement vu dans les API de Java (aujourd’hui propriété d’Oracle), incluant la structure, la séquence et l’organisation du code de ces composantes logicielles, etc. Le but était alors de créer des applications capables d’interagir avec le langage de programmation Java, ce que Google était parvenu à faire en créant des milliers de lignes de code largement inspirées («copiés», de dire plus tard Oracle) des API liés à Java.

La décision en question vient infirmer la décision de première instance quant à la question de savoir si l’usage de code de la composante logicielle en question (l’API) s’avérait acceptable en vertu de la doctrine de «fair use». C’est maintenant confirmé, rien n’empêchait (juridiquement) Google d’utiliser comme elle l’a fait des éléments de l’interface de programmation (en anglais «API») de Java, en construisant son système d’exploitation Android.

Pour le tribunal, un AP I s’avère être une créature un peu particulière dans laquelle le code est en quelques sortes fusionné à des idées. Pour lui, ici le but de Google en utilisant l’API était de permettre à des programmeurs Java de développer des applications destinées à être exécutées sous Android, sans copier plus que requis pour y arriver. En somme, l’exercice ne dépassait pas ce qui s’avère acceptable en droit, bien qu’il implique une part de reproduction.

Selon la Cour suprême américaine, l’ensemble des quatre facteurs indiquant qu’un usage s’avérerait acceptable parce qu’équitable donne raison à Google dans cette affaire. Ce faisant, on élargit le facteur impliquant les cas où l’usage a transformé l’œuvre («transformative use») en acceptant que l’usage de l’API en question sur la plateforme destinée aux appareils mobiles (Android) nous permette de conclure être ici en présence d’une transformation issue de ce changement du contexte d’utilisation de l’œuvre en question.

Au final, on adopte donc la position que même en présumant que le code de déclarationdeclaring code», en anglais) de l’API en question est protégé par des droits d’auteur (pas quelque chose d’évident, selon plusieurs), le fait d’utiliser ce code sans permission du détenteur des droits, par rapport à Android, ne dépassait pas les bornes.

Plusieurs s’entendent pour dire que la décision rate une bonne occasion de clarifier le traitement juridique à donner aux critères d’évaluation de ce qui constitue de la contrefaçon de composantes logicielles, particulièrement quand la copie implique une copie non littérale, notamment quant à celles qui sont purement fonctionnelles.

À tout événement, l’affaire est désormais bien close, après trois procès différents et deux appels, sans parler d’un coût de quelques dizaines de millions de dollars.

La fin d’un paradigme d’interface sur PC: déplacez vos barres de tâches et onglets sur le côté!

Je remarquais récemment qu’on réalise finalement, après plus de dix ans à progresser vers des écrans beaucoup plus larges que hauts, qu’on devrait peut-être adapter les interfaces logicielles. Je me permets d’en discuter ce matin, m’éloignant un peu du droit le temps d’un billet. Disons qu’assis devant un ordi à longueur de journée, cela s’avère pertinent pour nombre d’usagers de PC, moi compris!

Comme vous l’avez peut-être remarqué, depuis des années, les fabricants d’écrans d’ordi vendent de plus en plus d’écrans « larges », sans doute notamment motivés par le ratio (nombre de pixels horizontaux versus verticaux) des films tournés pour le cinéma, mais désormais souvent regardés à l’ordi. Tellement, en fait, que c’est désormais presque la norme, pour les ordinateurs de bureau (c.-à-d. qu’on ne parle évidemment pas ici d’appareils mobiles) à tout le moins. En effet, pour les ordis de bureau, l’écran typique adopte désormais une forme très rectangulaire, comme un écran de cinéma.

Cela contraste avec la forme presque carrée d’un téléviseur comme ceux qu’on branchait aux premiers ordinateurs personnels. («Flashback» ici de l’ordi de marque Amiga de mon ami Erick ou de mon ordi de marque Commodore VIC-20, circa 1982.) Du carré, on est ainsi graduellement passé à des écrans dont la forme est un rectangle beaucoup plus large que haut. À l’heure actuelle, pour vous donner une idée, la résolution de mes écrans est de 1920 X 1080 pixels. Cela signifie que mes écrans sont 2 fois plus larges que hauts. (C’est d’ailleurs le même phénomène avec les téléviseurs actuels, qui s’acheminent vers la norme 4K, dont la résolution est de 4096 X 2160.) C’est la grande tendance des dix dernières années et une tendance qui est visiblement là pour de bon.

Ce faisant, l’usager moyen assis devant un ordinateur de bureau dispose dorénavant de passablement plus de superficie habitable à l’écran. Plus d’espace à l’écran, plus de choses affichables en même temps, meilleures résolutions, des images plus définies et agréables à regarder, etc. Bref, tout le monde gagne, non?

En fait, ce qu’on réalise maintenant, c’est que cette bonification de nos écrans s’est opérée sans qu’on remette collectivement en question nos interfaces logicielles, notamment la façon dont l’ordi affiche les éléments fonctionnels à l’écran, comme les menus. En gros, on a élargi nos écrans, mais en oubliant d’adapter l’interface pour en tirer profit. C’est que, voyez-vous, depuis toujours, le haut et le bas d’un écran typique est accaparé par des menus, des onglets et des raccourcis, qu’on s’est collectivement habitué à voir stationnés là, et ce, depuis le début des interfaces graphiques (GUI).

Résultat : bien que nos écrans soient désormais très larges, l’espace précieux en haut et en bas des nos écrans est perpétuellement gaspillé. Un des impacts de cela est que nous passons collectivement désormais beaucoup de temps à faire défiler l’écran («scroll-down»), parce que nous sommes incapables de tout afficher sur la portion immédiatement visible de l’écran. En gros, c’est du gaspillage quotidien, chronique, de notre temps et de nos énergies. Bon, voilà, je l’ai dit.

Avec cela, j’en arrive finalement à mon point : Microsoft mettait récemment à jour son fureteur Edge (désormais basé sur Chromium), afin de déplacer la barre d’onglets du haut vers la GAUCHE de l’écran. Eh oui, les producteurs de logiciels commencent finalement à comprendre que l’espace vertical de nos écrans est précieux.

Le problème dépasse d’ailleurs largement (sans mauvais jeux de mots) les applications; il existe de façon très fondamentale dans les systèmes d’exploitation, incluant Windows. Heureusement, de ce côté, Windows 10 offre désormais la possibilité pour l’usager d’évacuer la barre de tâche (traditionnellement placée au bas de l’écran) vers le côté de l’écran. Je vous recommande de l’essayer.

En prime, je vous dirais que si vous utilisez plusieurs écrans, le fait de déplacer cette barre (si souvent invoquée par l’usager) a aussi l’avantage d’en faciliter la manipulation en la rapprochant de l’endroit moyen où se trouve votre curseur à tout moment.

Sous Windows 10, ma recommandation quant à la configuration de votre barre de tâches est la suivante, que je vous offre comme truc de productivité facile à déployer:

  1. affichez la barre de tâches de Windows sur la droite du premier écran (celui situé du côté gauche, si vous avez 2 écrans);
  2. configurez les paramètres d’affichage de Windows pour ne PAS afficher la barre de tâches sur l’autre écran (j’y parviens grâce à une appli nommée Ultramon);
  3. vous avez alors un «pilier» au centre de vos écrans, plutôt qu’une barre en bas;
  4. autre avantage de cette configuration :  en plaçant la barre de tâches à droite, vous évitez notamment que vos onglets d’Edge ne soient affichés dans une 2e rangée sur la gauche, si vous utilisez ce fureteur et déplacez effectivement vos onglets du haut vers la gauche de l’écran.

Essayez-le, vous m’en donnerez des nouvelles! Je ne serais pas surpris que de plus en plus de producteurs de logiciels aillent aussi dans cette direction, ne serait-ce que pour donner le choix à chaque usager du côté de l’écran où il désire placer ses menus, onglets et raccourcis — il était grand temps!

Système ACIS dans des prisons américaines : quand un logiciel vous fait croupir en tôle

Le droit a pour but de régir de vraies choses dans le monde réel. Quand une loi est modifiée, les citoyens, les institutions et les organisations doivent s’y adapter. Mais qu’arrive-t-il quand on se fie sur un programme pour mettre en œuvre une loi, et que la mise à jour n’est pas effectuée? En pratique, vous le devinez, quand cela se produit, la loi telle que modifiée peut ne pas être appliquée, ou du moins plus difficilement, avec des ratés à prévoir. Eh oui, en 2021, c’est un problème bien réel.

Dernier exemple en lice : le programme ACIS utilisé en Arizona (États-Unis), dans le système carcéral, notamment afin de calculer la date de libération des individus incarcérés. Bien que ce programme permette en principe au personnel des pénitenciers de calculer la date de libération des prisonniers, l’opération de cette application permet d’effectuer des calculs prenant en compte les règles liées au calcul des peines, conformément aux lois et aux règlements qui, juridiquement, dictent en principe l’application de la loi à ce sujet. La loi, c’est bien, mais, en pratique, le personnel du Department of Corrections a besoin d’un système qui interprète les règles complexes pour lui, en lui fournissant des réponses claires, y compris quant à savoir quand tel ou tel détenu doit effectivement être libéré.

Le hic? Quand on modifie la loi, comme on l’a fait en Arizona en 2019, le programme ACIS doit être modifié, afin d’ajuster les règles qu’applique sa programmation, en arrière-plan, pour parvenir à des réponses qui s’avèrent conformes avec ce que la nouvelle loi dicte. Or, les médias rapportaient récemment que malgré la modification de la loi en 2019, ACIS n’a pas encore été modifié pour calculer les dates de libération conformément à la nouvelle mouture de la loi, laquelle comprend des allègements pour certains détenus dans certaines circonstances.

Le résultat, semble-t-il, c’est que certains détenus demeurent en prison au-delà de la date à laquelle ils auraient dû être libérés si les nouvelles règles avaient été appliquées adéquatement. En pratique, le personnel doit tenter de calculer manuellement l’effet des nouvelles règles, alors que le programme effectuait auparavant ce calcul pour eux, menant potentiellement à des retards et à des erreurs dont les détenus font les frais.

Il s’agit là d’un bon exemple du problème associé au fait pour nous tous, fonctionnaires appliquant nos lois compris, d’en venir à trop se fier à des outils informatiques. En cas de désuétude, de défectuosité ou de bris, les êtres humains peuvent malheureusement s’avérer dorénavant incapables d’appliquer eux-mêmes les règles, avec les effets qu’on peut prévoir sur la justice.

Comme le dit l’adage en anglais : «You never gain something but that you lose something » (qui gagne quelque chose perd invariablement autre chose).