Obligement - L'Amiga au maximum

Lundi 08 août 2022 - 03:23  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

Actualité (récente)
Actualité (archive)
Comparatifs
Dossiers
Entrevues
Matériel (tests)
Matériel (bidouilles)
Points de vue
En pratique
Programmation
Reportages
Quizz
Tests de jeux
Tests de logiciels
Tests de compilations
Trucs et astuces
Articles divers

Articles in english


Twitter

Suivez-nous sur Twitter




Liste des jeux Amiga

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


Trucs et astuces

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


Glossaire

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


Galeries

Menu des galeries

BD d'Amiga Spécial
Caricatures Dudai
Caricatures Jet d'ail
Diagrammes de Jay Miner
Images insolites
Fin de jeux (de A à E)
Fin de Jeux (de F à O)
Fin de jeux (de P à Z)
Galerie de Mike Dafunk
Logos d'Obligement
Pubs pour matériels
Systèmes d'exploitation
Trombinoscope Alchimie 7
Vidéos


Téléchargement

Documents
Jeux
Logiciels
Magazines
Divers


Liens

Sites de téléchargements
Associations
Pages Personnelles
Matériel
Réparateurs
Revendeurs
Presse et médias
Programmation
Logiciels
Jeux
Scène démo
Divers


Partenaires

Annuaire Amiga

Amedia Computer

Relec


A Propos

A propos d'Obligement

A Propos


Contact

David Brunet

Courriel

 


Point de vue : Le développement de Rave (quatrième partie)
(Article écrit par Daniel Jedlicka et extrait de Rear Window - juin 2022)


Note : traduction par David Brunet.

Les cinq derniers pour cent

Dans les milieux du management, il y a une plaisanterie récurrente selon laquelle les cinq derniers pour cent d'un projet représentent 95% du temps de réalisation total. Si vous êtes un développeur de logiciels, ce paradoxe amusant peut vous rappeler quelque chose, car vous l'avez sans doute déjà expérimenté. Votre projet avance rapidement jusqu'à ce qu'il atteigne un point où il est presque terminé, à l'exception de quelques petites choses qui ne le rendent pas encore diffusable. Ces "quelques petites choses" peuvent transformer la phase finale du projet en un cauchemar qui s'éternisera pendant des mois, voire des années.

J'ai appris cette leçon lorsque je travaillais sur ma première application AmigaOS 4, le dictionnaire WordNet, en 2009. Je venais de redécouvrir la passion de l'Amiga après neuf ans d'utilisation exclusive d'un PC, et j'étais très enthousiaste à l'idée de développer pour une communauté où chaque nouveau logiciel semblait faire la différence. J'ai réalisé une version préliminaire du programme en deux semaines environ, avec l'interface graphique et tout le reste - puis j'ai passé deux mois de plus à peaufiner WordNet et à l'amener à l'état de version diffusable. L'une des raisons est que j'ai dû apprendre certaines spécificités d'AmigaOS 4 et revoir des choses que j'avais oubliées. Mais en toute honnêteté, c'est ma mauvaise planification qui a causé le plus de retard. La notion de produit minimum viable m'a complètement échappé à l'époque, et j'ai continué à ajouter fonctionnalité sur fonctionnalité jusqu'à ce que je sois rattrapé par la fatigue et la frustration.

On pourrait croire que je sois tombé dans un piège similaire avec le projet Rave, surtout si vous vous souvenez que dans mon précédent billet, j'espérais pouvoir sortir le programme avant la fin du mois de mars 2022. Mais la raison était différente cette fois-ci, et je peux dire honnêtement que la sortie aurait eu lieu si seulement les événements n'avaient pas encore pris le dessus sur moi.

En testant Rave au début du printemps 2022, je me suis rendu compte d'un défaut de conception dans le système de gestion de projet du programme qui rendait difficile l'interruption fiable et sûre d'une opération en cours. Comme une nouvelle conception du fonctionnement interne de Rave prendrait un temps considérable (que je n'avais pas), j'ai pensé publier le programme tel quel et l'améliorer plus tard. Cependant, vers la fin du mois de mars 2022, l'école pour laquelle je travaille m'a informé que j'allais superviser un groupe d'étudiants pendant leur stage en Allemagne, qui était censé avoir lieu en mai 2022. L'idée de passer une semaine entière sans pression parentale m'a tout de suite plu, car cela sentait l'occasion d'examiner le problème de plus près.

Le stage s'est déroulé à Chemnitz, une ville de Saxe autrefois connue sous le nom de Karl-Marx-Stadt. Il est vite devenu évident que la formation de mes étudiants était organisée avec la rigueur et l'efficacité proverbiales des Allemands, ce qui me rendait pratiquement inutile en tant que superviseur, car tout avait été pris en charge. J'avais donc encore plus de temps à perdre que prévu et (à l'exception d'une promenade occasionnelle) j'ai passé la majeure partie de la semaine dans ma chambre à chasser des bits et des octets sur mon fidèle ordinateur portable.

Rave
Je suis la deuxième personne à gauche, avec Karl Marx et mes étudiants

La possibilité de se concentrer sur Rave pendant plusieurs heures par jour a fait toute la différence, par rapport à mes séances de programmation tardives et fatigantes à la maison. Je me souviens d'un message sur un forum dans lequel un utilisateur Amiga bien intentionné essayait de motiver les développeurs en leur disant d'essayer de s'asseoir pour programmer tous les jours, même si ce n'était que pour cinq minutes. Mais ce n'est pas ainsi que cela fonctionne, malheureusement. En réalité, un programmeur ne peut faire que peu de travail en une heure, donc laisser tomber les cinq minutes - surtout lorsqu'il travaille sur un projet de grande envergure. À cet égard, la semaine passée à Chemnitz s'est révélée être une véritable bénédiction. Le fait de m'y plonger avec toute ma concentration m'a permis de réécrire entièrement le système de gestion de projet, y compris l'API des greffons et le module des entrées-sorties, ce qui, autrement, aurait pris des mois. Le résultat est une conception plus simple, plus fiable et nécessitant moins de communication entre les différents composants du programme.

Entre autres choses, il est maintenant plus facile de créer un greffon car le programme principal et le module maître du greffon se sont vus confier certaines tâches communes. L'architecture des greffons doit encore être améliorée : actuellement, seuls les greffons de traitement sont gérés, c'est-à-dire ceux qui prennent des données audio et les modifient. Cela convient à l'application d'effets, mais j'aimerais aussi introduire des greffons qui génèrent du son, ou simplement analysent les données et affichent des informations à leur sujet. Cela va prendre un certain temps avant que l'architecture ne devienne suffisamment bonne, mais quand ce sera le cas, je l'ouvrirai pour que d'autres personnes puissent développer des greffons pour Rave si elles en ont envie.

Et bien sûr : le problème qui a tout déclenché a maintenant disparu. Comme je l'ai déjà dit aux personnes qui me suivent sur Facebook ou Ko-fi, toute opération en cours - même le chargement, la sauvegarde et le traitement - peut maintenant être interrompue en toute sécurité en appuyant sur la touche "Échap". En fait, je pense que Rave gère mieux l'interruption que SoundForge Audio Studio 16, qui est mon éditeur préféré sur PC. Lorsque vous interrompez une opération dans SoundForge, le programme affiche une demande de confirmation mais l'opération se poursuit sans interruption. Donc si vous prenez votre temps et ne cliquez pas tout de suite sur le bouton "OK", l'opération peut s'être terminée entre-temps. Pour être honnête, je ne trouve pas cela très utile (ou logique). Dans Rave, l'opération attend que vous répondiez à la requête, puis elle continue ou s'arrête. C'est, je crois, le comportement attendu, et c'est l'un des avantages de ma réécriture.

Rave
Rave : interruption au milieu d'une opération de changement de niveau

Plus important encore, le programme est maintenant prêt à être diffusé dans le monde. Au cours de l'année écoulée, il y a eu des moments où j'ai sérieusement douté que je serais un jour capable de le dire, mais voilà : je suis heureux d'annoncer que les derniers cinq pour cent du projet ont été achevés, et que la version initiale de l'éditeur Rave peut enfin être téléchargée sur OS4depot. C'est tellement bon de le dire que je suis tenté de le redire, ce qui est tout à fait idiot, mais vous pouvez imaginer à quel point je suis heureux maintenant que ce poids a disparu de ma poitrine. J'ai l'impression de laisser tomber une pierre de la taille de la tête de Karl Marx à Chemnitz !


[Retour en haut] / [Retour aux articles] [Article précédent]