Unix, Linux, NeXTstep, Mac OS X et moi

Tiens, un commentateur m'incite à écrire quelques lignes sur Linux ou la programmation système…

À la fin des années 80, après avoir goûté à différents systèmes d'exploitation comme CP/M, DOS, Mac OS, les systèmes des Atari ST et des Commodore Amiga, etc., j'ai été conquis par l'esthétique des systèmes Unix. Je cumulais les livres sur le sujet et j'y goûtais dès que j'en avais l'occasion. Et puis, un certain Steve Jobs a fait parler de lui : il proposait des machines fabuleuses, les stations NeXT, dont le système (NeXTstep) faisait partie de la famille des Unix… J'avais commandé les brochures et je m'étais rendu au CNIT à la Défense pour assister à des démonstrations. Mais, je n'étais même pas encore entré au lycée et j'étais donc très loin de pouvoir m'offrir l'un de ces objets d'exception. Objets d'exception à plus d'un titre : aspect extérieur, conception interne, architecture du système Unix, interface magnifique, logiciels innovants, programmation visuelle orientée objet, etc. À ce moment-là, je ne me doutais pas que pas mal d'années après, j'allais pouvoir acquérir une NeXTstation…

Bien avant cette acquisition, j'ai commencé mes études d'informatique à Lille en 1993. Les environnements de travail étaient assez variés : NetWare, AS/400, etc. Et il y avait deux salles où je passais beaucoup de temps : la salle des stations IBM RS/6000 sous AIX (donc un Unix) et la salle des stations Sun sous Solaris (aussi un Unix). J'avais ces machines à ma disposition et elles étaient connectées à Internet ! Les performances des stations IBM étaient époustouflantes et, sur les stations Sun, il y avait Mosaic pour découvrir les premiers sites Web. Je pouvais enfin me plonger complètement dans le monde Unix, en particulier : programmation système, programmation réseau et programmation parallèle. On recodait les commandes du système, on décortiquait les trames sur le réseau, on jouait avec certains protocoles, on réalisait des calculs distribués… Je me souviens avoir codé un outil qui modifiait les images pour compenser les problèmes de rendu de l'imprimante. Cet outil utilisait la puissance de calcul de tous les ordinateurs de la salle. J'avais parcouru beaucoup de serveurs FTP afin de trouver de grosses images pour les tests. Les résultats étaient convaincants !

De manière naturelle, j'avais récupéré la version 0.99 de Linux, sur un nombre impressionnant de disquettes, et je l'avais installée sur l'un de mes disques durs. Depuis 1993, je n'ai plus quitté Unix. À partir de 1995, j'ai poursuivi mes études à l'UTC. Outre les VAX sous VMS (notamment pour les e-mails), les Mac et les PC, nous (les étudiants) avions un serveur sous Linux au service informatique. Nous l'exploitions pour de nombreux projets, souvent en relation avec le Web. Avec mon ami Renaud Sirdey, nous avions développé un nouveau format graphique et interactif pour le Web (IGF) dans le cadre d'une collaboration avec HP. Ensuite, nous avons eu des comptes sur des serveurs sous Digital Unix. Pine pour les e-mails, j'adorais ! D'ailleurs, Gmail et ses raccourcis au clavier me rappellent d'excellents souvenirs d'utilisation de Pine, en mode texte et au clavier. Toujours avec Renaud Sirdey en collaboration avec HP, nous avions développé un système de cartographie multiéchelle pour le Web (Map WAN). Le codage de l'interface graphique nous avait permis de nous pencher sur X11 et Motif. Map Wan tournait sur plusieurs Unix, parmi lesquels HP-UX (que je n'avais pas encore cité). À cette époque, j'avais des données issues de l'usage de divers environnements : DOS, GeoWorks (quel plaisir…), Windows, Mac OS, VMS, Unix. Je n'avais pas encore récupéré mes données plus anciennes, par exemple mes premiers programmes simplement recopiés à la main sur du papier ou encore les logiciels ou jeux que j'avais enregistrés sur cassettes. Mais, j'avais deux objectifs.
  1. Récupérer toutes mes données depuis l'école primaire, conserver les fichiers originaux (sur leur support d'origine et dans mes archives numériques) et les migrer vers des formats aussi standards que possible.
  2. Garder de quoi faire revivre ces données : les machines (virtuellement via des émulateurs, mais aussi physiquement), les systèmes d'exploitation et les logiciels, le tout au sein d'un environnement vraiment robuste tel Unix.

Aujourd'hui, ces deux objectifs sont atteints. Mais, il y a eu quelques étapes intermédiaires. L'une d'elles a été un intérêt certain de ma part pour BeOS à la fin des années 90. C'est intervenu au cours d'une période où je travaillais au bureau sous Solaris (avec des stations Sun Ultra 30), sous AIX (IBM RS/6000) et sous Windows (avec un PC portable et des stations de travail IBM, Compaq ou HP), alors que j'avais sur mon réseau personnel un PC principal sous Linux, un PC de test sous Windows et une NeXTstation… Avant d'avoir cette dernière, j'avais creusé un peu la programmation sous Linux en développant un pilote pour une carte d'acquisition vidéo (DGi-1+, très peu répandue). Après quoi j'avais écrit une application exploitant ce pilote pour afficher les séquences d'images (voir l'illustration ci-dessous) en me basant sur une librairie (BasicX) de Renaud Sirdey. J'avais aussi fait une version qui stylisait les images en mode texte. Nous étions en 1999. Je jouais avec cette carte d'acquisition depuis une dizaine d'années. Au tout début des années 90, j'avais écrit un pilote en assembleur sous DOS avec une application de pilotage qui m'avait permis de construire un appareil photo numérique d'environ un mètre cube… Par la suite, j'avais profité de mon étude de synthèse à Lille en 1995 pour développer avec des amis un système plus complet : second ordinateur de pilotage à distance, traitement des images en temps réel avec divers filtres (netteté, contours, etc.), transitions, décodage de Canal + et reconnaissances de formes (les pièces de Tetris le jour de la soutenance dans un amphi comble…). J'avais même procédé à un portage sous Windows en 1997, avec de nouvelles fonctions : matrices personnalisées pour les filtres, impression, enregistrement et lecture vidéo. Cela avait été l'occasion de concevoir une compression vidéo avec ou sans perte.

Et puis un jour, Mac OS X est arrivé… Apple avait racheté NeXT et NeXTstep s'est retrouvé métamorphosé en Mac OS X. NeXTstep semblait avoir 10 ans d'avance à sa sortie, mais Mac OS X est arrivée à l'heure : celle pour moi de changer d'Unix, depuis Linux vers Mac OS X.

Voici une copie d'écran de Dginux, l'application utilisant le pilote que j'ai développé sous Linux pour la carte d'acquisition DGi-1+ :

012dginux

Malgré les nouveaux stocks d’iPhone 3G, je ne l’achète pas

J’aime beaucoup le concept de l’iPhone. Je n’avais pas acheté le premier modèle, surtout parce qu’il ne proposait pas de fonction d’enregistrement vidéo en standard. Quand l’iPhone 3G est arrivé, j’ai été surpris de voir que cette fonction ne faisait pas partie de sa fiche technique. Mais, j’avais tout de même décidé de l’acheter. En effet, la synchronisation en continu avec le service MobileMe m’intéressait particulièrement. Un autre argument en faveur de l’iPhone : la possibilité (enfin) d’installer des applications tierces via l’App Store.

Je n’étais pas pressé, car les premiers retours sur la version 2.0 du programme interne de l’iPhone, sortie avec le modèle 3G, mettaient en évidence certains soucis justifiant d’attendre un peu. Par ailleurs, la déclinaison 16 Go en noir a très rapidement été en rupture de stock. Aujourd’hui, l’iPhone 16 Go est à nouveau disponible en noir et plusieurs problèmes ont été corrigés. Pourtant, je ne l’achète pas. Et ce, principalement pour les quatre raisons suivantes :
  1. Les outils permettant d’enregistrer de la vidéo ne sont pas accessibles via l’App Store, ils nécessitent un iPhone modifié pour être installés. De plus, la qualité fournie est vraiment trop faible.
  2. Le service MobileMe ne fonctionne toujours pas correctement pour moi (voir l’illustration ci-dessous). Et comme j’utilise plutôt les services de Google, je préférerais une synchronisation directe de ce côté-là.
  3. J’ai lu trop de témoignages négatifs sur la gestion de la 3G par l’iPhone 3G. On parle souvent de difficultés d’accrochage.
  4. Orange se moque vraiment du monde en parlant d’illimité alors que le débit ne correspond pas à ce que permet la 3G+ et qu’il est aussi question d’un quota mensuel de téléchargement. L’interdiction de faire de la voix sur IP me dérange aussi, tout comme l’interdiction d’utiliser l’iPhone comme modem.

Résultat : je garde mon téléphone actuel, un Nokia E61i, et je porte mon attention encore un peu plus sur les futurs téléphones qui seront équipés du système de Google (Android). 

Voici une copie d’écran du message d’erreur de MobileMe quand je lui demande d’afficher mes calendriers :

011mobileme

Je vais continuer un blog personnel sur Posterous

Posterous est une plate-forme de blog ultra simple. On publie sur son blog (qui peut être un podcast) en envoyant des e-mails (contenant éventuellement images, sons et vidéos) ou des SMS. On reçoit par e-mail une copie des commentaires… Auxquels on peut répondre par e-mail. J'aime beaucoup cette approche, notamment parce qu'ainsi, le contenu (notes et commentaires) n'est pas seulement sur le Web : il en existe un double dans la messagerie (par contre, on ne reçoit pas encore de copie d'une note que l'on aurait modifiée sur Posterous.com après son envoi).

J'ai découvert Posterous sur TechCrunch fin juin et j'ai tout de suite commencé à tester cette plate-forme de blog. Ensuite, les vacances… Et en août, quelques-uns de mes contacts se sont aussi lancés dans un test. Cela a été l'occasion d'essayer les nouvelles fonctions apparues entre temps et de me demander si j'allais continuer un blog personnel sur Posterous.

Je me suis donc abonné, au sein de Posterous, aux blogs de mes contacts et au blog officiel de Posterous. Cela se fait en un clic quand on est connecté sur un blog. On peut ensuite consulter une page où sont regroupées les notes des différents abonnements. Mais on peut aussi ajouter l'adresse du fil RSS de ces abonnements dans son lecteur RSS. Un seul fil pour tous les abonnements, ça peut être pratique. Évidemment, il y a aussi un fil RSS pour chaque blog. Posterous permet également de publier le contenu envoyé sur d'autres plates-formes (Twitter, Flickr, Tumblr, Blogger, Wordpress, Movable Type, Typepad, Livejournal et Xanga). J'utilise cela pour Twitter.

Alors, j'ai envoyé quelques notes sur divers sujets. Me sentant à l'aise dans ce système efficace, je me suis posé cette question : « Que me manque-t-il pour faire de ce début de blog Posterous mon blog personnel ? » La réponse : la gestion de mon nom de domaine, comme sait le faire Blogger (par exemple, www.RendezVousCreation.org est géré par Blogger). Et là… Les développeurs de Posterous annoncent la disponibilité de cette fonction ! Dans la foulée, je dépose BlogNico.com et, après la configuration de mon domaine et de Posterous, ça fonctionne. Donc, je vais continuer ce blog personnel sur Posterous.

Bien sûr, cette plate-forme est très jeune et je suis preneur de quelques fonctionnalités supplémentaires :
  • l'intégration de FeedBurner pour la gestion du fill RSS ;
  • la gestion des catégories de notes ;
  • la personnalisation du thème graphique ;
  • la possibilité d'ajouter des images de manière simple quand on édite une note après l'avoir envoyée ;
  • l'encodage correct des titres envoyés vers Twitter (il y a effectivement un petit souci à ce niveau-là actuellement, mais développeurs m'ont dit y travailler…) ;
  • la recherche par mots clés au sein d'un blog ;
  • l'envoi par e-mail d'une copie d'une note que l'on aurait modifiée sur Posterous.com.

Voici une copie d'écran de la configuration de mon blog personnel sur Posterous :

009posterous

Mon deuxième livre sur les jeux vidéo

Je parlais dans ma note précédente de mon premier livre sur les jeux vidéo : Émulation et jeux vidéo (paru en 2001 chez Micro Application). Depuis sa publication, je travaille sur un second livre sur le sujet : Video Game Screenshots: Cartridge Quintessence. Ce livre, écrit en trois langues avec Lilian Piluso, présentera une sélection d’environ 250 jeux vidéo sortis en cartouche sur les systèmes suivants (quelques précisions entre parenthèses, en particulier les noms dans les autres régions du monde) :
  • Atari 2600 ;
  • Atari 8-bit (notamment Atari XE Sytem) ;
  • Nec PC Engine (Nec Turbo Grafx 16) ;
  • Nintendo Entertainment System (Nintendo Famicom) ;
  • Nintendo Super NES (Nintendo Super Famicom) ;
  • Nintendo 64 ;
  • Sega Master System (Sega Mark III) ;
  • Sega Mega Drive (Sega Genesis) ;
  • SNK Neo Geo.

Au départ, j’ai travaillé sur beaucoup plus de systèmes (y compris l’arcade), mais il y a fallu n’en garder que quelques-uns pour éviter d’avoir un livre hors norme au niveau du nombre de pages. À ce propos, quelques discussions avec Winnie Forster de GAMEplan m’ont permis d’affiner l’axe éditorial. Il s’agit donc d’une sélection de jeux vidéo en cartouche, hors consoles portables. Ce support ancre la sélection dans le temps et sur le marché des consoles de jeu. Une partie du livre explique la démarche et l’autre présente la sélection. Pour chaque jeu, il y a sur une page :
  • le titre ;
  • l’année de sortie ;
  • la photo de la console concernée ;
  • des informations additionnelles (titre alternatif, nom de la console, éditeur, développeur, nom de la série et informations sur la version d’arcade s’il y a lieu) ;
  • un texte de présentation (merci à Lilian Piluso pour la rédaction) en trois langues (allemand, anglais et français) ;
  • une photo de l’écran de titre (1/8 de la page) ;
  • une photo du premier niveau (la moitié de la page).

La particularité de ce livre est de proposer des photos d’écran de haute qualité. Non pas des copies d’écrans réalisées à l’aide d’émulateurs, mais de réelles photos prises sur un téléviseur à tube cathodique affichant le signal provenant des consoles d’origine. L’idée est de reproduire, dans un média à haute résolution (un livre), le rendu visuel des jeux correspondant à ce que les joueurs ont vu. L’ambition est donc liée à la conservation de ce rendu si particulier (avec des lignes horizontales clairement visibles).

Cette approche est complexe :
  1. Il faut faire la sélection en croisant des critères simples. J’ai un certain nombre d’heures de jeu derrière moi et une solide documentation, mais je ne suis pas expert dans tous les genres et sur toutes les consoles. J’ai donc soumis des versions préliminaires de ma sélection à des amis, divers contacts et plus largement sur des forums spécialisés, comme ceux du site Gros Pixels.
  2. Il faut regrouper de nombreuses informations sur les jeux. Je me suis aidé de quelques grosses bases de données, par exemple Moby Games.
  3. Il faut posséder toutes les consoles et tous les jeux en question. Cela m’a pris plusieurs années. Heureusement que certains contacts au Japon et aux USA ont pu parfois me dépanner.
  4. Il faut prendre les photos. C’est un sujet difficile pour de multiples raisons, notamment : il faut éviter les bandes trop sombres ou trop claires sur l’image, et l’effet de moiré (comme un scintillement visible sur la photo). Après avoir testé différents équipements de vidéo professionnelle, j’ai finalement trouvé une solution vraiment satisfaisante.
  5. Il faut écrire les textes de présentation. Pour cela, j’ai eu la chance de rencontrer Lilian Piluso qui a rédigé tous ces textes.

Autre point capital : il faut que je trouve un éditeur…

Voici la couverture de mon premier livre, Émulation et jeux vidéo :

008emulationetjeuxvideo

Quelques mots sur les images dans Posterous

Posterous publie les images que l'on envoie par e-mail. Par contre, cette plate-forme de blog  très sympathique ne permet pas d'ajouter facilement une image à une note déjà envoyée. Pour le faire, il faut héberger l'image ailleurs et éditer le code HTML de la note pour afficher l'image. Il me semble que cela n'est pas vraiment dans l'esprit Posterous… Donc, j'imagine que cela va vite changer !

En attendant, j'ai tout de même fait ces manipulations pour ajouter une image à mes deux premières notes.

J'ai pris la photo de ma première note (un ordinateur Commodore 64) à l'occasion de la rédaction de mon premier livre sur les jeux vidéo (Émulation et jeux vidéo, paru en 2001 chez Micro Application). À cette époque, mon appareil photo numérique était en panne, tout comme mon appareil argentique. J'avais donc fait cette photo (comme toutes celle du livre) avec le mode photo de mon camescope. Cela explique le rendu médiocre de l'image.

Tiens… La photo illustrant ma troisième note dans Posterous (un téléphone Nokia 5110) a été prise avant que l'appareil photo numérique en question ne tombe en panne. La différence de qualité est nette, mais on voit clairement le vignettage (les coins assombris).

Voici un aperçu des images de mes six premières notes dans Posterous :

007images

Impressions sur le téléviseur Philips 47PFL5603H

Je profite de la HD dans mon salon depuis pas mal de temps, mais via un moniteur Apple Cinema Display dont la diagonale est loin d’atteindre les grandes tailles des téléviseurs actuels. Alors, j’ai voulu profiter de la victoire des disques Blu-ray sur le HD DVD et de l’arrivée d’un nouveau modèle de PlayStation 3 fin août pour renouveler mon équipement. Tout a bien commencé puisque mes critères de choix m’ont conduit vers un seul modèle (en tout cas chez mon fournisseur).

Les critères étaient :
  • 1080p ;
  • écran mat ;
  • pied pivotant ;
  • tuner TNT HD ;
  • temps de réponse rapide ;
  • taille supérieure ou égale à 46″ ;
  • rapport qualité/prix bien noté dans la presse.

Et je n’avais pas besoin des caractéristiques suivantes :
  • entrée VGA ;
  • finesse extrême ;
  • disque dur intégré ;
  • système Ambilight ;
  • technologie 100 Hz.

Cela m’a conduit directement au Philips 47PFL5603H. Et voici mes impressions après quelques heures de test… 

L’aspect visuel est agréable. En particulier : on ne voit pas les enceintes (que je n’utilise pas). La télécommande a l’avantage d’être assez petite et simple, mais elle doit vraiment viser son capteur pour que le téléviseur s’exécute. Les menus sont efficaces : on y trouve assez rapidement ce que l’on cherche. Après avoir désactivé de nombreuses options d’affichage (surtout l’accentuation de la netteté), l’image est splendide. Par contre, il faut être plutôt en face. Si l’on est un peu sur le côté, on pourra profiter du pied pivotant pour finalement se retrouver vraiment en face. En tout cas, l’aspect mat de l’écran atténue les reflets de manière tout à fait convaincante. En faisant les branchements, je tombe sur une sortie SPDIF (donc le son numérique). Bonne surprise : je m’empresse de la brancher sur mon ampli. Je vois aussi une prise USB. Elle devrait m’être utile quand quelqu’un passe à la maison avec une carte mémoire pleine de photos à visionner rapidement.

En attendant, je branche sur le téléviseur un Mac portable en HDMI grâce à un câble DVI/HDMI, un récepteur satellite et une PlayStation 2 grâce à des prises Péritel et un camescope en HDMI. J’attrape une cassette HDV et j’appuie sur la touche de lecture… Les premiers pas de ma fille comme je ne les avais jamais vus… La taille de l’écran y est pour beaucoup : les détails prennent vie, servis par une luminosité, un contraste et des couleurs qui montrent clairement leur présence. J’enchaîne avec l’une de mes captations de concerts… Ah, ce soir-là, quel bel éclairage… Je bascule vers le Mac et je lui fais diffuser un film en 1 920 sur 800 pixels : tout juste impeccable ! Pour les signaux vidéo parvenant au téléviseur par les prises Péritel, il faut quand même que je me recule légèrement de l’écran puisque là, on est en SD (576 lignes maximum). Là encore, je suis impressionné. L’image est propre, à mon goût (donc après avoir désactivé pas mal de choses).

Dans l’idée de pousser le test un peu plus loin, je branche ma sonde de calibration et j’obtiens un profil de couleurs intéressant : le résultat est moins contrasté, mais les couleurs sont très proches. Je baisserai donc le contraste plus tard. Je termine par la mise à jour via une clé USB et un ordinateur connecté à Internet. La manœuvre est simple. Mais malheureusement, le téléviseur ne détecte pas les fichiers de mise à jour. J’essayerai à nouveau plus tard…

Le bilan est donc très positif dans l’ensemble. Le Philips 47PFL5603H répond tout à fait à mes besoins actuels et ceux à venir dans un futur proche (jouer à la PS3 et à la Wii pas seulement chez des amis et visionner des disques Blu-ray). Par ailleurs, ses quelques inconvénients sont mineurs pour moi. Alors, si vos besoins sont similaires et que vous cherchez aussi un téléviseurs, n’hésitez pas !

Mise à jour : j’ai essayé à nouveau d’appliquer la mise à jour et cette fois-ci, c’est passé. Cela règle un problème important : la désactivation du contraste dynamique n’était pas pris en compte. Maintenant, sans contraste dynamique, le rendu de l’image est stable et le téléviseur correspond vraiment à ce que cherchais.

Et voici une petite photo de la base de ce téléviseur Philips 47PFL5603H :

006philips