Posts tagged with bug

De plus en plus déçu par Linux

Feb 21, 2010 in bug, libre, linux, video | Informatique

Cela fait maintenant 7 ans que j’utilisais Linux exclusivement. Si je trouve que c’est un environnement de travail (en tant que développeur) agréable, j’arrive malheureusement à une autre conclusion sur mon ordinateur personnel. Mon père et ma compagne utilisent Linux (Ubuntu) que je maintiens pour eux et en sont contents. Et tant mieux! Une machine Linux est certainement beaucoup plus simple pour moi à maintenir qu’une machine Windows :) Je suis sûr que mon père ne télécharge pas de joli virus en .exe sur son ordinateur, du moins, si il le fait, ça ne fera pas trop de dégâts ;)

Cependant, tout n’est pas rose. J’ai failli m’arracher les cheveux sur l’installation d’une imprimante, finalement, faire la mise à jour de la distribution m’a sauvé, mais c’est un peu pénible d’en arriver à ça juste pour une imprimante. Je ne compte pas les problèmes de wifi que j’ai eu l’année dernière sur les portables que nous avons ma compagne et moi. J’ai également eu de gros problèmes de performances avec les drivers video Intel. Enfin, si l’on s’en tient au problème matériel, sur mon dernier portable, un Acer Aspire 1810TZ, je dois désactiver dans le bios l’AHCI si je souhaite démarrer linux en moins de 3 minutes…

J’écris ce billet depuis Windows 7. Après avoir essayé et réessayé de faire du montage video sous Linux avec Pitivi, Kdenlive, Avidemux, et autres, j’en ai eu marre des plantages, des problèmes d’incohérence de temps et d’images. C’est ainsi que j’ai essayé le logiciel pour Windows fourni avec la caméra : Total Media Extreme Showbiz. Le nom est très caricatural, mais le logiciel est simple et efficace pour fusionner et/ou découper les videos issues de la caméra, en .mp4 H264/AAC. Le manque de fonctionnalités est évident, mais je n’ai même pas réussi à faire la même chosesous Linux!! Je n’ai pas encore essayer de le faire fonctionner avec Wine. Mais la suite est pire, le meilleur logiciel gratuit que j’ai trouvé pour faire le montage video final est Windows Live Movie Maker!

J’ai redécouvert le calvaire du Dual-Boot… Lorsque je suis sous Windows, je dois passer par le webmail pour lire mes mails (tout l’inconvénient d’utiliser un client mail lourd habituellement), je n’ai pas accès à mes fichiers Linux. Le pire, c’est que je dois aller dans le bios à chaque fois que je change de système pour modifier le réglage du disque dur (PCI vs AHCI)!!

Le développement logiciel est quelque chose de long et compliqué, j’en sais quelque chose. Si je suis pour le Logiciel Libre, je constate malheureusement que celui-ci ne peut s’imposer partout, le développement bénévole fait sur le temps libre a ses limites. Et il n’est pas toujours facile de trouver un business model compatible avec le logiciel libre, n’en déplaise à certains!

Howto génération de bugs - épisode 3

Nov 13, 2007 in cpp, bug, programmation | Informatique

Petit exemple de code qui ne fait pas ce pourquoi il a été écrit

[cpp]
void MoveCharacter(Character& character, bool slowly)
{
   ...
   // Check we can move (to go not too fast)
   while (character.CanStillMoveRL(walking_pause) && ComputeHeightMovement (character, height, true));
   {
       // Move !
       Game::GetInstance()->character_already_chosen = true;
       // Eventually moves the character
       character.SetXY( Point2i(character.GetX() +character.GetDirection(),
                                character.GetY() +height) );
       // If no collision, let gravity do its job
       character.UpdatePosition();
   }
   ...
}

Le bug se situe ici dans le ; à la fin du while. La suite est alors considérée comme un bloc indépendant qui sera exécuté 1 seul fois et systématiquement à chaque fois que la fonction MoveCharacter() est appelée, ignorant complètement le résultat du test du while

PS: ce code a été écrit et modifié pour http://www.wormux.org Wormux. Je me suis bien pris la tête à chercher cette erreur bête (dont je suis l’auteur)!

La jouissance du bug corrigé

Feb 14, 2007 in bug, programmation | Informatique

Aujourd’hui, je suis heureux :)

Je vais passer une agréable soirée avec ma compagne, mais en plus, j’ai corrigé un gros bug cette après-midi!!

C’est assez hallucinant de voir d’ailleurs le plaisir ressenti lorsque le bug qu’on a traqué pendant des heures trépasse enfin. On fait le test, on se dit : j’espère que c’est bien ça, il commence à être #@&$%¤ ce bug. Et là, c’est inespéré, le test se déroule …, on scrute avec attention le résultat… OUI! Victoire!! Le bug est corrigé!

Quel extase d’avoir passé des heures pour 2 lignes mal placées… le résultat est tellement agréable qu’on en oublierait les ronchonnements et les arrachages de cheveux!! À tel point qu’on se dit que c’est plus jouissif de corriger un bug poilu que de coder des trucs simples, surtout si c’est des trucs pour le boulot ;)

Howto génération de bugs - épisode 2

Jan 05, 2007 in bug, programmation | Informatique

Et voici le retour de l’opération génération de bug en C/C++.

Comme une bonne illustration veut mieux qu’un long discours :

~~~~ {.cpp} char* substring(const char * chaine, int debut, int longueur) { char buffer[512]; strncpy(buffer, chaine[debut], longueur); return buffer; } ~~~~

Howto génération de bugs - épisode 1

Dec 14, 2006 in bug, programmation | Informatique

Je démarre une série Howto génération de bugs. À chaque fois, je vais présenter un bout de code potentiellement générateur de bug, mais pourtant exploité en production ;) Je m’appuierai uniquement sur du vécu, c’est à dire du code que j’ai eu l’occasion de corriger/nettoyer dans le cadre de mon travail…

Épisode 1 :

~~~~ {.cpp} class A { private: char commentaire; … };     A::methode(char cm, …) { commentaire = “NO_COMMENT”;   if (cm != NULL) strcpy(commentaire, cm);   … } ~~~~