Suivez-nous sur X

|
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z,
ALL
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
Point de vue : De petites choses, projet de nouvelles classes BOOPSI pour ReAction
(Article écrit par Daniel Jedlicka et extrait de Rear Window - octobre 2025)
|
|
Juillet a commencé chaud en République tchèque, alors j'ai décidé d'éviter les rues de ma ville natale
et de rester à l'intérieur pour éviter les coups de chaleur ou, pire, les crises cardiaques. À mon âge, le
risque est toujours présent. Au lieu de cela, je me suis installé à l'ombre avec une boisson fraîche et,
comme prévu, mon Amiga. Ainsi, même si l'image pourrait suggérer une escapade à la plage, je suis en fait
chez moi et je m'occupe.
J'ai récemment pris contact avec AmigaLabs, un groupe informel de développeurs de logiciels composé de
personnalités d'AmigaOS 4 comme Andrea Palmatè, Alfkil Wennermark,
George Sokianos, Ryan Dixon, Roman Kargin
et d'autres. L'esprit du groupe, qui prône l'ouverture et le partage, et son intérêt pour AmigaOS 4
correspondent parfaitement aux idées que j'ai exprimées dans mon
précédent article. Je les ai donc
contactés pour savoir si je pouvais les aider.
Vous savez peut-être qu'AmigaLabs a débuté comme une initiative visant à porter un moteur de navigateur
WebKit plus récent, une tâche colossale à laquelle je ne pouvais en aucun cas contribuer, étant donné
mon manque d'expérience en C++, en compilation croisée, en environnements de développement modernes, etc.
Cependant, comme le travail sur WebKit (et, par conséquent, sur le navigateur Web
Odyssey) nécessitait
une modernisation générale de la chaîne d'outils de développement d'AmigaOS 4, AmigaLabs s'est progressivement
transformé en un projet plus vaste visant bien plus qu'une simple amélioration de l'expérience de
navigation des utilisateurs. Aujourd'hui, le groupe se concentre également sur le portage de bibliothèques
essentielles et le développement d'outils facilitant la vie des programmeurs AmigaOS 4, ce qui ouvre la
voie à l'intégration de logiciels plus modernes sur la plate-forme.
C'est là que j'ai vu une opportunité de mettre mes compétences à profit, car s'il y a bien un domaine dans
lequel je peux me targuer d'une certaine expertise, c'est l'écriture de classes BOOPSI, les éléments
constitutifs des interfaces utilisateur Amiga. En tant que programmeur, j'utilise BOOPSI depuis qu'AmigaOS 3.5
a introduit la boîte à outils ReAction
en 1999. Au fil du temps, j'ai appris à connaître très précisément
les forces et les faiblesses de ce cadre d'applications ; une connaissance qui s'est approfondie lorsque
j'ai plongé dans les méandres du fonctionnement interne de BOOPSI et commencé à écrire mes propres classes.
Vous savez, c'est une chose de les utiliser en tant que programmeur d'applications pour créer ses interfaces
utilisateur ; c'en est une autre de les écrire, de les déboguer et de m'assurer qu'elles fonctionnent bien
avec Intuition et le reste du système.
J'ai beaucoup appris à ce sujet au cours de mes années sur le projet
Enhancer Software d'A-EON Technology,
qui a joué un rôle important dans mon apprentissage de BOOPSI. J'ai écrit deux tutoriels pour Enhancer Software
et contribué à quelques autres, avant que le projet ne change de direction et que l'énergie initiale ne
s'essouffle. Je suis néanmoins très reconnaissant de cette opportunité : sans Enhancer Software, je n'aurais
jamais appris ni réalisé ce que je sais aujourd'hui.
L'une de ces raisons est que, pour que le cadre d'applications de programmation d'interface utilisateur
graphique d'AmigaOS réponde aux besoins des logiciels modernes, il doit évoluer avec eux. Cela paraît
évident, mais pourquoi n'observe-t-on pas une telle croissance ? Est-ce simplement le reflet de l'inertie
générale dans laquelle AmigaOS 4 est progressivement tombé ? Est-ce le scénario habituel : d'autres priorités,
pas de feuille de route, une équipe de développement surchargée ? C'est fort possible. Mais je pense personnellement
que l'une des raisons est que BOOPSI reste largement fermé. La boîte à outils ReAction est entre les mains
de quelques rares personnes qui comprennent BOOPSI, et compte tenu de leur implication dans de nombreuses
autres tâches de développement d'AmigaOS 4, elle a été laissée à l'abandon. On ne reçoit au mieux que
des mises à jour et des corrections de bogues sporadiques. Cela ne diminue en rien leurs efforts, loin de
là, mais vu de l'extérieur, ce n'est tout simplement pas suffisant.
Depuis des années, je prône l'ouverture du code de ReAction par Hyperion
afin que d'autres puissent y participer :
pour aider à localiser et corriger les bogues dans le code, contribuer à des fonctionnalités, voire créer
de nouvelles classes pour le système. Il est crucial de corriger rapidement les bogues : les classes BOOPSI
sont des blocs de construction, et d'autres composants en dépendent. Une classe défectueuse détruit à son
tour toutes les classes ou composants qui en dépendent. J'ai moi-même eu pas mal de situations où j'ai
signalé un problème, pour le voir corrigé et publié des mois (voire des années) plus tard, au lieu d'un délai
raisonnable.
Je comprends la nature fermée du système d'exploitation et sa propriété complexe, et j'avoue avoir peu
d'informations sur les contraintes juridiques qui y sont liées. Néanmoins,
cette
information me donne l'impression qu'Hyperion est propriétaire de ReAction et devrait donc être libre d'en décider. Un autre
argument est que l'ouverture des sources de la classe ne pourrait guère causer de dommages. Une grande
partie de ce qui constitue une classe BOOPSI est du code passe-partout : des modèles qui se répètent
ou varient dans le cadre d'applications. Il n'y a pas de recette secrète, pas de technologie précieuse
à protéger du reste du monde. La conception est bien connue et vieille de 35 ans.
Mais bien sûr, de telles choses échappent au contrôle de nous, simples mortels Amiga, et sans véritables
oreilles pour écouter, tout argument se transforme en un discours inutile. Alors, me souvenant de ce
que j'ai dit dans le billet précédent - que la communauté AmigaOS 4 devrait commencer à organiser elle-même
ce qu'elle peut organiser et se concentrer sur ce qu'elle peut influencer - je reviens maintenant à mon
introduction et explique pourquoi j'ai commencé à écrire cet article.
Mi-juin 2025, j'ai proposé à AmigaLabs de développer un ensemble de classes BOOPSI gratuites et compatibles
avec ReAction, afin de compléter l'offre AmigaOS 4 actuelle. Cette proposition s'inscrivant dans la
stratégie des membres d'AmigaLabs en matière d'outils de développement, elle a été très bien accueillie.
Le projet suivra un plan et quelques règles. Tout d'abord, aucune des nouvelles classes ne se fera
passer pour une classe existante sous le même nom ; ce genre de pratique n'a jamais été source de confusion
et d'incompatibilité. L'idée est d'ajouter de nouvelles fonctionnalités et de combler les lacunes de
la boîte à outils, plutôt que de réimplémenter ce qui est déjà disponible. Ensuite, la distribution sera
aussi simple que possible : les classes seront téléchargeables depuis
OS4Depot là où les utilisateurs
d'AmigaOS 4 se tourneront naturellement, et les mises à jour seront gérées via l'outil standard AmiUpdate
du système. Enfin, les nouveaux composants seront bien documentés, avec des exemples, afin de faciliter
l'apprentissage et d'aider les développeurs à les utiliser sans trop de tâtonnements. Et surtout : les
tutoriels seront disponibles en code source sur GitHub sous une licence non commerciale, pour que les
développeurs intéressés puissent participer ou simplement apprendre à créer une classe BOOPSI (car lorsqu'il
s'agit de matériel d'étude, rien ne vaut le code fonctionnel).
En résumé, nous allons avancer petit à petit vers un ReAction ouvert. Et dès les premiers jours chauds
de juillet 2025, le mouvement a commencé. Je progresse péniblement dans le code plutôt que sur le
sable de la plage, et je regarde les résultats de débogage plutôt que de contempler des couchers de
soleil spectaculaires. Il n'y a pas de palmiers, et pourtant, mes paumes sont moites. Je ne peux pas
dire que je manque d'idées pour de nouvelles classes, et j'en ai déjà une bien avancée. Suivez cet
espace pour plus d'informations sur l'avancement des travaux. En attendant, passez un bel été, de
préférence dans un endroit plus frais que le mien !
|