Archive pour août 2010

Coming out (encore ?)

Mercredi 25 août 2010

Ouais, encore.

J’ai pas trop l’habitude de parler de mon boulot ici, mais une fois n’est pas coutume et mort aux habitudes !

Après la mort de Seanodes, (à ne pas confondre avec Seanodes !) et quelques mois d’errance ventés, j’ai rejoint Studec, société toulousaine spécialisée dans l’ingénierie documentaire. Le but initial était de rapidement prendre en charge la gestion de projet offshore en Inde. Mais il en va des embauches comme des mariages: des fois ca marche, des fois ca ne marche pas.

J’ai eu la sensation désagréable de jouer le rôle d’Archibald Tuttle, que tu connais surement chez lecteur ! Mais oui…. réfléchis….

« J’ai choisi ce boulot pour l’aventure, les voyages ; on aide les gens… »

Il s’agit de l’homme qui lutte contre la bureaucratie et se fait finalement dévorer par la paperasse.

Plutôt que de connaitre le même destin, je me suis enfui, j’imagine entendre derrière moi un “on l’a perdu” de circonstance, pendant que mon cerveau est parti sillonner les vertes prairies en Estafette. (toujours la même référence, mais revoir la version director’s cut)

Et puis j’ai finalement atterri (il faut bien) dans le monde “merveilleux” des médias, du côté de Ramonville st Agne, en espérant que ca se passe bien. Objectif: apporter une expertise stockage à des experts des formats audio-vidéo. Retour à une échelle humaine, et surtout la possibilité d’éviter d’avoir à faire des choses stupides et inutiles sans moyen pour faire ce qui est réellement nécessaire.

Rien à voir avec la choucroute, mais décidément, ce film est terrible. A voir et revoir, surtout par les temps qui courent.

Compatibilité du XML de QT

Samedi 21 août 2010

Voici la méthode la plus propre que j’ai trouvé pour écrire des fichiers XML en UTF-8 compatibles entre Windows et Linux avec Qt. (2.6.2 sous Windows et sous Linux):

Ecrire:


QDomDocument doc("toto");
QDomElement root=doc.createElement("toto");
// ... remplir root
QDomProcessingInstruction instr =doc.createProcessingInstruction("xml","version=\"1.0\" encoding=\"UTF-8\"");
doc.appendChild(instr);
doc.appendChild(root);
QFile file(_userFile);
if (!file.open(QIODevice::ReadWrite | QIODevice::Truncate))
{
// gestion d'erreur
}
QTextStream stream("file");
stream.setCodec(QTextCodec::codecForName("UTF-8")); // Sous Windows, forcer UTF-8, sinon il utilisera le codec de la locale
stream << doc.toString();
file.close();

Passer par un QDataStream et/ou un QByteArray n’est pas une bonne idée.
Par ailleurs, la BOM UTF-8 en début de fichier est correctement lue sous Linux mais pas sous Windows (pourquoi ? mystère…). Donc il vaut mieux la supprimer et spécifier l’encodage en tant que processing instruction XML.

Pour lire:


QDomDocument doc("tata");
QFile file("myFile");
if (!file.open(QIODevice::ReadOnly))
{
// gestion d'erreur
}
if (!doc.setContent(&file, &errorMsg))
{
// gestion d'erreur
}

Descartes et la biodiversité

Samedi 21 août 2010

Un vieux souvenir de philo de Terminale [1]:

“Se rendre maitre et possesseur de la nature” — Descartes, dans le Discours de la Méthode

Descartes est (il parait !) un élément philosophique fondateur de la France, dite, justement, cartésienne.

La tendance actuelle est plutôt d’encourager le respect de l’environnement et la biodiversité, notre maitrise des lois de la nature étant devenue suffisante pour pouvoir défigurer la nature. Alors, contradiction ?

Peut-être pas, si on considère que pour Descartes cette maitrise de la nature signifiait la compréhension et la réutilisation en faveur de l’homme des mécanismes qui la règle. Je reste tout de même suspicieux: Descartes avait-il imaginé l’explosion des sciences et techniques actuelles et des débordements associés ?

Ou alors devenir maitre et possesseur de la nature nous porte jusqu’à réussir à la préserver de nos propres actions pour mieux en tirer bénéfice ?

[1] 6/20 au bac la première fois, 5/20 la seconde fois.Le chemin est long et tortueux … surtout quand on part dans le mauvais sens.

La petite citation du mois qui remonte le moral

Jeudi 12 août 2010

Sarkozy, il faut lui marcher dessus. Pour deux raisons. Un, c’est la seule chose qu’il comprenne. Deux, ça porte chance.

– attribué à Jacques Chirac

C++ vs Java

Jeudi 5 août 2010

Et c’est parti pour un troll des familles comme à la belle époque !

A ma gauche: Java

  • Cohérent de bout en bout.
  • Ne s’appuie pas sur un langage tout pourri des années 70; repensé par la base.
  • Bibliothèque large
  • Bonne intégration pour les SI et le Web
  • Disposent d’EDIs vraiment efficaces, comme Eclipse.

Mais…

  • Plutôt inadapté pour le TR et l’embarqué proche du système (mais ca n’a jamais été l’intention initiale)
  • Pas hyper-innovant non-plus. L’objectif est la cohérence et la productivité
  • Souffre d’une image de gros consommateur de mémoire…
  • Son GC est parfois incontrôlable

A ma droite, C++ (c’est de droite, C++ ???)

  • Construit sur un langage connu, C
  • Passe bien en embarqué et système

Mais:

  • Hérite de problèmes du C
  • … Rajoute une couche de problèmes par dessus - héritage multiple, templates…qui le rende bugogène.
  • Lourd à compiler (merci les templates)
  • Peut rester assez proche de la machine en cas de besoin
  • Niveau bibliothèque pour les SI, c’est pas ça (mais ce n’est pas son intention). Quant au web…
  • Le bazar niveau standard.
  • Dur à rendre cross-plateforme.
  • Pour les EDI, c’est la galère (à cause du préprocesseur, entre autres).

Moralité: C++ par dépit, mais Java quand c’est possible !