samedi 28 mars 2009

Le Dernier discours

Comme plusieurs, j'avais entendu parler de Randy Paush et de son Dernier discours l'année dernière. Pour ceux qui ne le connaissent pas, il était professeur à l'université américaine Carnegie Mellon. Il enseignait l'informatique, plus précisément dans le domaine de la réalité virtuelle. Randy est décédé l'été dernier des suites d'un cancer.

J'ai finalement pris le temps de visionner le Dernier discours. Dans celui-ci, Randy Paush nous explique comment il a réalisé ses rêves d'enfants et comment il a travaillé à aider d'autres à réaliser les leurs également. Loin d'être déprimé par la fatalité de son état (qu'il connaissait au moment de prononcer ce discours), il nous décrit avec enthousiasme et humour les événements importants de sa vie. Au travers son histoire, il nous partage ses valeurs, axées sur l'ardeur au travail, l'intégrité et l'optimisme. « On ne peut changer les cartes qui nous sont données, juste la façon dont on va les jouer », telle est sa maxime. Il nous partage aussi sa passion pour l'enseignement et sa carrière universitaire.

Le livre, que je l'ai lu la semaine passée, est une extension du discours. Randy élabore davantage sur les anecdotes racontées lors de ce dernier. Il prend aussi le temps de nous parler de sa famille (il était père de 3 jeunes enfants). Il nous enjoint une leçon importante: apprécier la vie et chaque instant de celle-ci. Elle peut être courte ou longue, on ne sait jamais. Il nous exhorte aussi à apprécier les gens qui nous entourent et à trouver ce qu'il y a de bien dans chacun, même si c'est parfois plus difficile avec certaines personnes!

Donc un livre émouvant, mais bien écrit, qui fait beaucoup réfléchir.

vendredi 20 mars 2009

Mes 3 outils de l'heure

Je considère que de bons outils informatiques adaptés à vos besoins sont essentiels pour être productif si vous passez vos journées à travailler avec un ordinateur. J'ai décidé de partager 3 des outils qui me sont le plus utiles dernièrement.

Evernote

En début d'année, Google a annoncé qu'il stoppait le développement du produit Google Notebook. J'utilisais ce produit depuis environ 2 ans, mais pas de façon exclusive: je sauvegardais encore des notes directement sur mon poste ou sur Google Docs. J'ai donc commencé à chercher un remplaçant. J'ai découvert Evernote grâce à Lifehacker et j'ai été immédiatement accroché! L'application web est excellente, mais c'est l'application PC que j'utilise la majorité du temps. On peut y ajouter des notes directement à partir du presse-papier ou d'une page web. Toutes les notes sont indexées ce qui rend les recherches très rapides. On peut ajouter des tags à chaque note pour une meilleure classification. Mais surtout, ce sont les raccourcis clavier que je considère très pratiques. Grâce à eux, de n'importe quelle application, on peut rapidement envoyer du contenu vers Evernote. D'autres fonctionnalités sont à signaler comme un module de capture d'écran permettant de sélectionner facilement des portions de l'écran à envoyer vers le presse-papier, un fichier ou, évidemment, Evernote. Il y a aussi un OCR qui est automatiquement exécuté quand on insère une note avec une image, permettant ainsi de retrouver du texte dans les images. Finalement, l'aspect que je trouve le plus important est que mes notes sont accessibles partout. Quand on utilise l'application PC, les notes sont automatiquement synchronisées, ce qui les rend disponibles sur tous les PC que j'utilise. Il y a une version payante qui offre davantage d'options, mais la version gratuite me convient très bien jusqu'à maintenant.

CLCL

CLCL est un outil qui me permet de sauvegarder plus d'un élément à la fois dans le presse-papier. Ça peut paraître banal, mais je ne peux plus m'en passer! Par exemple, si je dois faire du copier-coller de plusieurs éléments, au lieu de me promener continuellement entre la source et la destination, je vais une fois à la source copier tous les éléments que j'ai besoin, et quand je retourne à l'application où je veux coller, tout est dans le presse-papier. Aussi, ça me permet de rendre des valeurs que je colle fréquemment toujours disponibles. Je considère que c'est une des applications qui me fait gagner le plus de temps durant une journée de travail.

Launchy

Un autre outil dont je ne peux absolument plus me passer! Launchy est un petit programme permettant de démarrer d'autres applications. On appuie sur Alt+Espace (configurable) et une petite boîte apparaît qui permet d'écrire le nom de l'application que l'on veut démarrer. Mais en fait, pas besoin de taper le nom au complet, car dès que Launchy comprend quelle application vous voulez (souvent après seulement une lettre), l'icône de l'application apparaît à la droite de la boîte. À ce moment, vous pouvez appuyer sur Enter et le programme sera lancé. C'est fou le temps qu'on sauve ainsi! Je me suis débarrassé de ma liste d'icônes en bas de l'écran, ce qui sauve aussi de l'espace. On peut également passer des paramètres au programme à exécuter. Launchy permet aussi de faire des recherches sur Google (ou un autre moteur de recherche). En effet, si vous tapez du texte que Launchy ne peut associer à un nom de programme, au moment où vous appuyez sur Enter, Launchy va lancer votre navigateur avec le texte de la boîte en recherche sur Google. On peut aussi s'en servir comme calculatrice et pour chercher des mots dans un dictionnaire. Plus besoin maintenant de quitter les mains du clavier pour prendre la souris quand on veut démarrer une application!

N'hésitez-pas à me faire part de vos outils favoris si vous le voulez!

mercredi 11 mars 2009

Un peu de fiction cette année...

Je dois avouer que je ne suis pas un grand lecteur de fiction (pas dans le sens de science-fiction mais dans le sens de fictif). Adolescent, j'en lisais beaucoup, mais depuis quelques années, j'ai préféré lire des livres de type documentaire (en anglais non-fiction). Mais après avoir lu, à quelques reprises, des remarques à propos de l'intérêt de lire davantage de fiction, je me suis fixé l'objectif d'en lire un peu plus cette année.

Donc comme premier roman de l'année, j'ai lu L'homme qui rétrécit de Richard Matheson. Je suis tombé sur ce livre un peu par hasard à la bibliothèque, ayant été intrigué par la quatrième de couverture. Après quelques recherches, je me suis aperçu que ce livre est un classique de science-fiction et son auteur est un des très prolifiques du genre. Un film basé sur le livre a même été fait dans les années 50.

En gros, j'ai bien aimé le livre. L'intrigue est bien faite et le style est tout à fait intéressant. L'idée d'un homme qui rétrécit jusqu'à devenir de la taille d'une araignée est assez originale! De plus, le livre aborde les thèmes de la survie quotidienne et de l'attente de la mort avec des idées qui porte à réfléchir. Une de ces idées est que la vie nous réserve toujours des surprises, malgré les changements inévitables qu'elle apporte.

Pas mal pour mon premier roman de l'année!

vendredi 6 mars 2009

Unicode et encodages

Pour mon projet courant, je dois gérer des fichiers qui ont différents formats d'encodage. Ça m'a permis de me rendre compte que je ne comprenais pas très bien les notions d'encodage et d'Unicode. J'ai donc pris du temps pour mieux comprendre le tout, et j'ai fini par me dire pourquoi pas ne pas en faire profiter d'autres!

Unicode

Le principe d'Unicode est de définir un index pour chaque charactère possible et imaginable (appelé des code points), mais pas de définir comment ceux-ci seront représentés (encodés) par un ordinateur.

Avec les premières versions d'Unicode, on pouvait représenter tous les charactères sur 2 bytes. D'où l'idée répandue que c'est un format de 2 bytes. Mais le standard a évolué depuis et maintenant, 2 bytes ne sont plus suffisants pour représenter tous les caractères.

Encodages

L'encodage ANSI est un encodage 8 bits (1 byte) de Microsoft. Il est basé sur ASCII pour les 127 premiers charactères et définit des caractères pour les langues occidentales pour les caractères 128 à 255. On appelle aussi cet encodage Windows-1252 ou CP1252.

L'encodage ISO-8859-1 est aussi un encodage 8 bits. Comme ANSI, il est basé sur ASCII pour les 127 premiers charactères et définit des caractères pour les langues occidentales pour les caractères 128 à 255. Il est très semblable à ANSI pour les caractères 128 à 255, mais il y a des différences (voir "ISO-8859-1 and Windows-1252 confusion" sur cette page).

UTF-8 est un encodage qui s'adpate en utilisant de 1 à 4 bytes selon le caractère. Il peut encoder tous les caractères Unicode. Un des avantages de cet encodage est que, si on n'utilise que des caractères ASCII, tous les caractères n'utiliseront qu'un 1 byte ce qui permet à de vieux programmes qui ne manipulent que des caractères ASCII de 1 byte de continuer à fonctionner.

UCS-2 est un format d'encodage 16 bits (2 bytes). Il supporte la majorité des caractères Unicode, mais pas tous car il n'utilise jamais plus de 16 bits pour un caractère.

UTF-16 est aussi un format d'encodage 16 bits (2 bytes). Mais contrairement à UCS-2, il peut représenter des caractères sur 32 bits (4 bytes) au besoin pour encoder tous les caractère Unicode.

Et Java?

Pour la classe String, avant la version 5, Java, ne pouvait représenter que les caractères Unicode pouvant tenir sur 16 bits (comme UCS-2). Mais depuis la version 5, on peut utiliser tous les caractères Unicode, qui seront encodés en UTF-16. (voir javadoc de la classe java.lang.Character).

Références

BetterExplained
JoelOnSoftware
dmiessler