dimanche 8 août 2010

Le chacal

Dernièrement, j'ai réécouté le film « Le Chacal » ("The Jackal"). J'ai eu une impression de déjà vu en regardant la scène dans la station de métro « Center Station » de Washington. En effet, cette scène a été tournée à Montréal dans la station de métro Lionel-Groulx. Voici quelques images comparatives.



samedi 20 février 2010

Abandon de Facebook

Certains ont remarqué que je suis beaucoup moins actif sur Facebook. J'ai décidé de couper le temps perdu sur ce site pour certaines raisons que je vais survoler dans le billet qui suit.

[Ne pas] Rester en contact avec ses amis
Tout d'abord, je crois que Facebook nuit à l'entretien de relations avec nos connaissances de "proximité moyenne". Par connaissances de proximité moyenne, je parle des personnes qu'on voit occasionnellement soit parce qu'elles demeurent à une certaine distance de nous (une à trois heures de transport), ou simplement les personnes qui ne sont pas des amis proches, mais avec lesquelles on entretient encore une relation. Je crois que l'effet de Facebook sur ces relations nous donne l'impression de rester en contact avec ces personnes et ainsi négliger des rencontres réelles. Ainsi, on ne reste pas en contact avec ces personnes, mais on est plutôt au courant des nouvelles que cette personne publie.

Jusqu'à dernièrement je croyais que j'étais le seul à penser comme cela, mais j'ai quelques amis qui ont quitté Facebook ou qui ont grandement réduit leur temps passé sur ce site à cause de cela.

Politiques de confidentialité qui changent à tous les vents
Les récents changements dans la section des paramètres de confidentialité étaient censés améliorer celle-ci, or il en était tout autrement. Premièrement, les valeurs proposées par défaut rendent la plupart des informations du profil visibles de tous. Même le fondateur de Facebook s'est fait prendre. Aussi ces changements rendent publics certains éléments sans pouvoir les rendre privés. Parmi ces éléments il y a l'image de profil, le nom, le sexe, la ville courante, les pages, les groupes et la liste d'amis. Cette dernière peut être cachée de tous (sauf pour les amis) en cochant une case d'une boîte de configuration pas facile d'accès.

Tout récemment, lors du changement de design du site, une autre fuite d'informations s'est ajoutée. Elle concerne les applications installées ou utilisées. En effet, par défaut tous nos amis peuvent voir les applications qu'on utilise ainsi que la date de la dernière utilisation. Plus grave encore, ceci inclut aussi les applications qui ont été supprimées de notre profil. C'est une preuve que Facebook garde des traces de tout ce qu'on a fait, même si cela a été supprimé.

Tout cela me donne l'impression que dans un avenir plus ou moins lointain, toutes les informations sur Facebook vont être rendues publiques, les paroles du fondateur abondent en ce sens.

Dédoublement de l'information
Puisque je suis inscrit à plusieurs sites sociaux comme youtube, lastfm, flickr, google reader, identica, delicious, etc., j'avais décidé de publier ces mises à jour sur Facebook. Ceci avait pour avantage de centraliser toutes mes mises à jour et permettre aux personnes qui ne sont pas inscrites à ces sites d'accéder à ces informations. Cependant, il y a deux inconvénients majeurs à cette méthode :

Premièrement, ceci engendre un dédoublement d'informations pour mes amis qui sont inscrits sur les mêmes sites que moi. Le meilleur exemple est identica : ceux qui me suivent sur identica revoient mes mises à jour de statuts sur Facebook aussi en plus de les lire avec leur client identica. Cela ajoute des informations inutiles dans leur page d'accueil de Facebook.

Le deuxième inconvénient à publier les informations en provenance des autres sites est que les commentaires sont écrits sur Facebook et sur le site d'origine. Les commentaires ajoutés sur Facebook pourraient apporter une valeur ajoutée aux éléments d'origine, mais ils seront visibles par très peu de personnes et rapidement oubliés. Dans l'éventualité que je publie le lien de ce billet sur Facebook, je crois qu'il va y avoir plus de commentaires sur ma publication Facebook que sur la page même du billet, et ce, même si les commentaires sur mon blogue sont ouverts à tous.

Rapport Signal/Bruit trop faible
Je ne vous apprends rien, il y a beaucoup de trucs inutiles sur Facebook. Quoiqu'il soit possible de filtrer les personnes produisant la majorité des actualités inutiles, certaines ne sont pas filtrables. Parmi celles-ci, il y a les nouvelles amitiés, les nouveaux groupes et les nouvelles pages de nos amis. J'ai même essayé certaines extensions de navigateurs web, mais sans satisfaction.





Aussi le système d'invitation ne permet pas de bloquer les invitations d'une personne. Certaines personnes aiment spammer leurs amis avec des invitations à joindre des groupes à la noix, ou à installer des applications sans but.




Certaines pages ont un design qui peut sembler questionnable. Je n'ai pas de doute que cette disposition a été choisie à la suite d'études du comportement des utilisateurs. Cependant, pourquoi changer quelque chose qui marchait bien? Pourquoi pas un design qui est personnalisable? Pourquoi la page d'accueil a six liens menant à notre compte?




C'est pour ces raisons que maintenant j'utilise la version allégée et même la version pour appareils mobiles qui sont plus rapides et qui présentent seulement les informations utiles.

Quiz
Non, je ne veux pas savoir quel type de fruit que je suis... lâchez-moi avec vos invitations de quiz. Aussi il y a les tests de QI "à la con". Si tu passes un de ces tests sur Facebook, je peux dire que ton vrai QI est probablement inférieur à la moyenne. Par curiosité j'en ai passé un (voir la phrase d'avant) : si j'avais bel et bien 145 de QI, je serais en train de faire quelque chose de plus utile que d'écrire un billet de blogue à propos de Facebook!

Tonnes d'amis
Je ne sais pas comment les personnes qui ont plus de 1000 amis sur Facebook font pour s'y retrouver. On dirait que maintenant la compétition n'est plus sur le nombre de contacts MSN mais sur le nombre d'amis sur Facebook. Certaines personnes que j'ai croisées une fois ou avec lesquelles j'ai déjà eu un cours (sans leur parler) veulent m'ajouter comme ami... pourquoi?

Personne fictive qui a beaucoup d'amis [douteux]
Pour le plaisir, j'ai créé un compte bidon pour voir combien d'amis cette personne allait avoir. Son image de profil est une photo d'un décolleté assez imposant. Quelques mois après la création de ce compte, cette personne a presque le double d'amis que moi et certaines de ces personnes semblent mariées et avec des enfants. Alors, pourquoi ajouter une personne inconnue sur Facebook? (même si elle a un beau décolleté)




Les taches
Heureusement, je n'ai pas été victime de ces personnes, mais j'en connais certaines qui l'ont été. Les taches commentent presque toutes les publications d'une autre personne. La plupart du temps les commentaires sont inutiles et centrés sur la personne qui commente au lieu de l'être sur la personne qui a créé la publication. (Voir le dernier lien de mon billet pour avoir une image)

Futur
En résumé, je ne crois pas que je vais fermer mon compte Facebook. J'ai l'intention de poursuivre ce que je fais présentement, c'est-à-dire suivre les mises à jour de statuts par flux RSS (un de plus dans mon Google Reader) et me connecter avec Facebook Lite lorsque ça va être vraiment nécessaire. Pour l'instant, je raconte ma vie sur mon compte identica. Pour les mêmes raisons de dédoublement mentionnées plus haut, je ne sais pas si je vais continuer à publier sur ce compte toutes mes activités d'Internet.

Je ne suis pas encore décidé à l'idée de désactiver mon "Wall" et si je réactive le pont entre identica et Facebook, mais en désactivant les commentaires (ou en ne leur répondant pas). Je vais voir avec le temps.

Finalement, j'ai trouvé un "article" qui résume bien certains irritants présents sur Facebook.

jeudi 3 décembre 2009

Activités de photographie

Au cours du mois de novembre, j'ai décidé de participer à deux projets de photographie. Ces activités vont stimuler ma créativité et me permettre de passer plus de temps à faire de la photographie qui était un passetemps mis de côté pendant mes études. Sans plus tarder, voici une courte description des activités.

Projet 52
C'est un projet qui semble assez prometteur qui a été proposé par un ami de l'université. Chaque semaine, un thème est choisi et des photos doivent être prises à propos de ce thème. Les photos sont ensuite ajoutées dans le pool du groupe sur flickr. D'une à sept photographies sont publiées par semaine. Trois de mes amis participent aussi à cette activité de photographie.

Bac bleu


365Days
Ce projet consiste à avoir une photo de soi chaque jour. Je trouve que c'est un peu de narcissisme, mais ça laisse place à l'originalité. En effet, c'est un vrai défi d'avoir une photographie différente pour tous les jours. Les photos de ce projet sont regroupées dans un album sur flickr.

Ces activités ont pour effet d'augmenter mon désir de me procurer un nouvel appareil photo, en occurrence un DSLR. Finalement, j'attends les résultats finaux de ces projets avec impatience!

samedi 20 juin 2009

Installer Skype sur une ubuntu 64bits

Skype est disponible en version 64bits pour ubuntu, il n'est pas nécessaire d'utiliser les librairies 32bits. Il suffit de suivre ces étapes :
  1. Ne pas suivre les tutoriels sur internet qui demande le téléchargement de scripts et de paquetages provenant de sources non vérifiées ou d'utiliser les librairies 32bits.
  2. Télécharger le paquetage 64bits pour ubuntu. Il est à noter qu'il n'est pas visible dans la page de téléchargement.
  3. Installer le fichier "*.deb" tout juste téléchargé.
Une entrée dans le menu va être automatiquement ajoutée.

mercredi 17 juin 2009

Montréal en photos

Voici une compilation de photos comiques prises depuis mon arrivée à Montréal.


Vente de rénovation dans une quincaillerie : ça fait concept. (rue St-Laurent près de Rachel)


Combat de gangs de rue. En réalité, c'est les "grandeur nature" au Mont-Royal. (parc du Mont-Royal)


Maman, le vendeur de glaces à l'air d'un pédophile... (parc du Mont-Royal)


Les vêtements gossés qui épousent les formes de votre corps, maintenant avec 33% moins d'échardes! (rue St-Laurent près de Rachel)


Dépêchez-vous, les déjeuners fondus sont en "spécial" avant 16h. (cartier chinois)


Sans commentaire. (Ave Mont-Royal près du métro)


La terrace du Jean-Coutu (Ave Mont-Royal près du métro)


Jawa Auto 2. Qu'est-ce qu'il est arrivé au Jawa Auto 1? Aussi, est-ce que je peux avoir un droïde? (rue Lajeunesse près du métro Crémazie, à côté du Sandcrawler)


Cette affiche me fait vraiment penser au logo de tqs, même si en réalité il est assez différent. (coin Laurier/ St-Denis)


Fôtes d'ortografes sur une affiche pour un événement culturel (place des arts)


L'enfer du stationnement, surtout que c'est à recommencer cinq mètres plus loin... (Vieux-Montréal)


Interdiction d'arroser les plantes. (Parc Jean-Drapeau)


HiPhone. (coin St-Denis/Sherbrooke)


Enfin il y a une place de stationnement là-bas, humm attends une minute... (rue Villeneuve près de la rue St-Laurent)

lundi 1 juin 2009

Montées de lait

Provigo, Loblaws, Maxi, et cie...
Comment avoir l'air plus vert tout en empochant plus d'argent?
Charger nos sacs d'épicerie 5¢ tout en ne "récompensant" plus ceux qui amènent leurs sacs réutilisables.

STM
Wow la nouvelle carte OPUS est vraiment extraordinaire, profitons-en pour couper les tarifs réduits (sauf pour la carte mensuelle) sans trop que ça paraisse.

Microsoft
Comment rétrécir le nombre de failles de sécurité entre notre produit (Internet Explorer) et celui d'un compétiteur (Firefox)?
Installer une faille sur le navigateur concurrent.

GM
Merci GM d'avoir détruit le transport en commun dans un grand nombre de métropoles américaines en faisant des magouilles avec l'industrie du pétrole et des pneumatiques. Merci d'être entêté à construire de grosses voitures pour gros américains. J'espère que tu vas avoir ce que tu mérites.

mercredi 27 mai 2009

Promesses de stages

Ceux qui ont déjà fait des stages coops à l'université connaissent les promesses de stages. Il s'agit des promesses que l'on fait au début du stage en prenant en compte que durant les stages on a plus de temps libre que lors des sessions de cours. Cependant, les quatre mois du stage passent sans que ces promesses ne soient réalisées. Pour ce stage-ci, j'ai décidé de publier ma liste de promesses de stage sur ce blog afin de m'encourager à les respecter. Ainsi, à la droite vous allez voir trois listes qui correspondent respectivement à la liste des promesses à faire, celles en cours et celles terminées. Les objets de la première liste sont classés en ordre de priorité tandis que les autres listes sont classées par ordre de réalisation des promesses, les plus récentes étant au début. On va savoir si la publication de telles listes va améliorer le nombre de promesses réalisées.

dimanche 10 mai 2009

Première semaine de stage

Les paragraphes qui suivent vont résumer les premières impressions que j'ai eues lors de ma première semaine de travail.

Entreprise
Premièrement, je fais mon stage dans une petite entreprise (~15 employés) nommée Aurora MSC. Aurora oeuvre dans le domaine médical en fournissant aux médecins un portal web leur permettant de transférer des cas vers des spécialistes ou faire du "peer review". Aussi, Aurora développe une application permettant de transférer et de visualiser des images d'échantillons numérisés à l'aide d'un microscope numérique. Puisque ces images peuvent atteindre plusieurs gigaoctets de taille, il faut utiliser une méthode efficace pour les transférer en chargeant seulement les morceaux de l'image qui sont utiles. De plus, Aurora offre un portal éducation permettant aux étudiants en médecine d'avoir des exemples de cas, porter un diagnostic et de répondre à des quiz. Aurora est situé sur le boulevard René-Lévesque Ouest à Montréal, à la hauteur du métro Lucien-L'allier, donc près du centre-ville et très près de la rue Crescent.

Environnement de travail
L'environnement de travail est beaucoup plus décontracté que de ce j'ai été habitué à voir lors de mes stages précédents. En effet, pas besoin d'avoir un badge avec photo en permanence sur soi ou d'avoir une autorisation de sécurité pour entrer dans l'aire de travail. Aussi, je n'avais pas besoin de remplir une foule de documents d'une utilité douteuse. De plus, on est libre de choisir notre horaire pourvu qu'on soit là de 11h à 15h. Aussi, on est maître de notre ordinateur : on choisit le système d'exploitation sur lequel on veut travailler, l'environnement de développement (IntelliJ IDEA est fortement recommandé) et les autres logiciels que l'on veut installer. Cela fait une grande différence avec les postes de travail "standardisés" du gouvernement où il n'est pas permis d'installer des logiciels autres que ceux certifiés par la direction générale de l'informatique. En résumé, mon système est un Core 2 Duo @ 2.67Ghz avec 4G de RAM qui roule sur une ubuntu 9.04 sur lequel j'ai installé l'environnement KDE et configuré un bureau étendu sur mes deux écrans de 19 et 20 pouces.

Les bureaux de travail sont disposés dans une aire ouverte où il est facile de communiquer avec nos collègues. Il y a une cuisinette sur place ainsi qu'une table de baby-foot afin de se détendre de temps en temps. Il y a une grande diversité dans les employés. Environ la moitié parle en anglais et nous avons un Allemand et deux Arabes. La cohésion du groupe est vraiment grande et certaines personnes ajoutent beaucoup de dynamisme grâce à leur grand sens de l'humour. Deux fois par semaine, il y a un stand-up meeting où chaque employé se lève dans le bureau et à tour de rôle explique ce sur quoi il travaille et les problèmes rencontrés. Ceci permet de savoir les tâches effectuées par les autres employés et permet d'apporter notre avis/aide. Finalement, une fois par semaine il y a un "code review" où chaque employé présente ce qu'il a fait pendant la semaine et reçoit les commentaires des autres employés.

Travail à faire
Aurora utilise l'approche de programmation extrême (Extreme programming) qui consiste à découper une tâche de développement en plusieurs itérations durant habituellement deux semaines. À la fin de l'effort de développement, il y a une phase de stabilisation où le développement de nouvelles fonctionnalités est interrompu afin de corriger les bogues restant avant la sortie du produit final. Mon stage a débuté durant cette période de stabilisation, donc j'ai eu surtout des bogues à corriger durant la première semaine. Ceci m'a permis de comprendre comment fonctionne le système tout en faisant de quoi utile pour l'entreprise. Un peu plus tard, je vais participer au développement de nouvelles fonctionnalités dans les portails web pour ensuite, vers la moitié du stage, axer les efforts sur le visualisateur d'image.

Durant ma première semaine seulement, j'ai travaillé avec les technologies suivantes : Hibernate, WebWork, JSP, JBoss, MySQL, YUI, Java, EJB, JIRA, Confluence et d'autres qui ne me reviennent pas en tête.

Conclusion
Si j'avais à qualifier ma première semaine de stage par un seul mot, j'utiliserais le mot "Liberté" grâce à ce que j'ai expliqué précédemment et aussi par le fait que mon superviseur de stage est très ouvert aux suggestions qui pourraient influencer les tâches que j'aurais à accomplir. Finalement, je crois que c'est vraiment bien de travailler dans une petite entreprise, puisqu'on peut influencer le groupe et on se sent moins une unité de production qui n'a pas de nom, mais un numéro d'employé.

samedi 2 mai 2009

Fin de session et début de stage

La fin de session est maintenant arrivée. Après le sprint final des travaux, j'ai eu quatre examens qui suivaient un horaire assez correct. Les examens se sont bien passés malgré le manque de motivation que j'avais lors de leur préparation.

La fin de session rime avec la fin des études pour certains. En effet, la plupart de mes collègues du baccalauréat ont terminé leurs études cette session-ci et un party a été organisé afin de souligner cet événement. C'est un sentiment vraiment bizarre que dire au revoir à un si grand nombre de personnes en même temps. Aussi, aux résidences certaines personnes ont terminé leurs études ou leur séjour au Canada. Après avoir passé de bons moments en leur compagnie au cours des derniers mois, les adieux ont été assez émouvants.

Mon déménagement s'est bien passé, j'ai mis la plupart de mes effets personnels à l'entrepôt des résidences et une amie m'a fait un lift pour Montréal (merci Sophie!). La première impression que j'ai eue de mes colocs français est vraiment bonne, ils m'ont même fait des crêpes à mon arrivée! Ils sont en stage en mécanique à la Polytechnique jusqu'à la fin du mois de juillet.

lundi 6 avril 2009

Recherche d'appartement

Comme vous le savez déjà, j'ai un stage à l'été à Montréal et il fallait donc que je me trouve un endroit où habiter pendant ces quatre mois. Au début, je voulais prendre un appartement avec certains de mes voisins des résidences qui ont eux aussi un stage dans la région de Montréal. Cependant, je me suis vite rendu compte que les offres pour les appartements meublés, disponibles pour seulement quatre mois et près de nos endroits de travail respectifs étaient plutôt rarissimes, je me suis résolu à commencer les recherches pour une chambre seule. Contrairement aux appartements, les offres pour les chambres abondaient. Il me fallait entre une demie-heure et une heure pour faire le tour des annonces du jour sur le site de kijiji. Il y avait environ une nouvelle annonce aux quinze minutes dont certaines étaient douteuses comme une qui annonçait un logement à 1000$/mois ou gratuit pour les femmes. Après l'épluchage de plusieurs offres et quelques échanges de courriels, je me suis planifié une journée de visite en gardant en tête que je pourrais y retourner plus tard si les logements visités ne me convenaient pas. Trois visites étaient planifiées lors de cette journée.

La première visite était dans un condo près du métro Frontenac où chaque chambre était louée individuellement. Je n'ai pas apprécié le quartier qui semblait délabré et dans lequel je ne me promènerais pas seul la nuit. De plus, les règlements étaient vraiment stricts en ce qui concerne les espaces communs, par exemple on ne pouvait pas ajouter de plantes dans le salon. Aussi, seulement un petit réfrigérateur était fourni dans notre chambre. Les points forts de ce logement était que les meubles étaient très récents et il qu'un système de climatisation central allait être installé avant mon arrivée (allait-il vraiment être installé?).

Le deuxième logement était situé à 15 minutes du métro Mont-Royal, un peu avant le parc Jeanne-Mance. J'ai eu un peu peur en voyant l'extérieur du bâtiment parce que c'était très vieux comme style, presque délabré. Une fois à l'intérieur, c'est beaucoup mieux même si ça reste un vieux bâtiment. La chambre est un tout-compris, même la vaisselle est incluse. Les autres locataires, un étudiant en musique et un autre qui travaille tout le temps, ont l'air très gentils. La chambre à louée était celle d'un étudiant en physiques à McGill qui part en Colombie-Britannique pour l'été.

Le dernier logement que j'ai visité était sur la rue Christophe Colomb à la hauteur de la rue Bélanger, près du métro Jean-Talon. Il s'agissait d'un 6½ tout inclus dans lequel vivaient deux françaises. Le logement était bien entretenu, meublé et propre cependant je trouvais que son emplacement était un peu trop éloigné du coeur de la ville. Aussi, j'ai trouvé ce logement un peu trop cher (600$/mois).

Après réflexions, j'ai décidé de passer l'été dans le deuxième appartement que j'ai visité (celui proche du Mont-Royal). J'ai vraiment hésité entre celui-ci et celui proche du métro Jean-Talon. Ce qui m'a convaincu était surtout son emplacement (coin Clark et Ave. Mont-Royal). En effet, il est situé entre le métro et le Mont-Royal, proche des rues St-Denis et St-Laurent. De plus, il y a une épicerie, un gym et une SAQ à moins de cinq minutes de marche. Je vais pouvoir aller travailler en métro ou en autobus (~25min), et si je suis courageux, en vélo. C'est sur que ce n'est pas le plus bel appartement de Montréal ni le plus récent, mais je crois qu'il va convenir à mes besoins pour l'été. La seule crainte que j'ai est le bruit qui pourrait y avoir la nuit. Pour finir, voici quelques photos de la chambre que je vais occuper :

mercredi 1 avril 2009

Kubuntu Jaunty Bêta - Partie 2 : Premières impressions

Quelques jours se sont écoulés depuis que j'ai installé la version bêta de Kubuntu 9.04 (Jaunty). Voici mes premières impressions :

Points forts :
  • Le démarrage est très rapide (merci ext4) : il s'écoule seulement 15 secondes entre le démarrage et l'invite de connexion de kdm. Le démarrage complet prend moins de 50 secondes.
  • Les composants de saisie (champs de texte, cases à cocher...) sont maintenant affichés correctement dans firefox.
    Firefox sous intrepidFirefox sous jaunty
  • Lors du premier lancement d'amarok, il demande l'installation des codecs manquants.
  • Le plasmoïde de gestion du réseau. Ce n'est plus une application kde3 qui gère les connexions réseau.
  • Le plasmoïde de gestion de l'énergie. Les options sont mieux disposées que le précédent.
  • Le nouveau gestionnaire de paquetages est vraiment intéressant. Il est très rapide comparé à Synaptic, c'est juste dommage qu'il avertit des dépendances seulement lorsqu'on applique les changements.
  • J'ai enfin réussi à utiliser un écran externe de 22 pouces à sa résolution maximale.
  • La mise en veille et l'hibernation fonctionnent.

Points faibles :
  • Il n'y a pas d'éditeur d'images installé par défaut.
  • Piètres performances graphiques : les effets de kwin sont lents et j'obtiens un score de 323FPS avec glxgears contre 1030FPS sous intrepid. Cela semble un bug auquel plusieurs personnes font face.

samedi 28 mars 2009

Kubuntu Jaunty Bêta - Partie 1 Installation

J'ai installé la bêta de Kubuntu Jaunty Jackalope sur mon ordinateur afin de tester ce que la nouvelle version de mon système d'exploitation favori avait à montrer. Je l'ai installée sur une partition réelle afin de voir si tout mon matériel était supporté ainsi que pour comparer les performances avec mon système actuel.

J'ai téléchargé le disque d'installation (version desktop pour amd64) par torrent et je l'ai ensuite gravé sur un disque. Lorsqu'on démarre sur le disque, on a une fenêtre de dialogue qui nous invite à choisir la langue de notre choix. Ensuite le système démarre et on a droit au bureau par défaut de kde4. On peut maintenant lancer l'assistant d'installation de Jaunty en sélectionnant une icône sur le bureau. L'installation se passe en six étapes.

La première étape est un message de bienvenue permettant de changer la langue sélectionnée lors du démarrage.


La deuxième page permet de sélectionner notre fuseau horaire. Il est à remarquer que l'affichage du fuseau sélectionné est incorrect.


Ensuite, on peut sélectionner la disposition clavier voulue. Encore là, il n'y a rien de bien sorcier.


Nous sommes maintenant rendus à l'étape la plus cruciale de l'installation : le choix des partitions sur lesquelles faire l'installation. J'ai trouvé que l'affichage de cette étape est particulièrement long. Étant donné le pêle-mêle de mes partitions, j'ai choisi le partitionnement manuel. Aussi, j'ai choisi de tester le système de fichier ext4.


L'avant-dernière étape permet la création de l'utilisateur par défaut ainsi que le choix du nom de l'ordinateur.


La dernière étape est un résumé des options d'installation choisies. On a accès à une boîte de dialogue afin de changer certains paramètres avancés comme le gestionnaire d'amorçage.


L'installateur procède ensuite au formatage des partitions ainsi qu'à la copie des fichiers. Après un temps de copie d'une dizaine de minutes, l'installateur télécharge et installe les paquets contenant les traductions pour la langue sélectionnée.


À la fin de l'installation, une fenêtre nous invite à redémarrer l'ordinateur. Le processus d'installation a pris environ 35 minutes sur mon ordinateur. Les seuls problèmes que j'ai eus avec l'installateur étaient l'affichage incorrect du fuseau horaire sélectionné ainsi que la présence de quelques textes qui était encore en anglais.

À venir : mes premières impressions et les différences de performance...

lundi 23 mars 2009

[Truc C++] Faire un bon singleton

Dans le cadre d'un projet à l'université, il a fallu que j'implémente le patron de conception (design pattern) singleton. Puisque je n'ai jamais fait cela en C++, j'ai parcouru la Toile afin de trouver un exemple qui semblait correct. J'ai implémenté un des exemples semblables que j'ai trouvés. Cependant, le professeur m'a dit que cela n'était pas correct parce qu'il pouvait faire fuir des ressources. Il m'a donné le lien vers son site où il expliquait une implémentation correcte. J'ai décidé de le partager puisque la plupart des exemples sur internet ne sont pas corrects.

samedi 21 mars 2009

Les jeux sont faits

Lundi soir passé, j'ai reçu les cotes des employeurs à propos des entrevues pour le stage de cet été. Je crois que je ne suis pas très habile en entrevues, j'ai souvent été coté deuxième et même j'ai été coté 0 à un poste. Néamoins, je vais officiellement faire mon stage de l'été chez Aurora MSC au centre-ville de Montréal. Comme la plupart ne connaissent pas cette compagnie, voici la description de l'entreprise écrite dans l'offre qui était affichée.

Aurora MSC est un pionnier dans le développement de solutions de gestion et visualisation d'images numériques complexes pour le secteur de la santé. Nos solutions assistent les médecins dans la recherche de traitements et le diagnostic de maladies afin d'améliorer l'état de santé des patients.

Il s'agit de la première fois que je vais travailler à Montréal et même la première fois que je vais vivre dans la métropole. Je sens que je vais avoir du plaisir à essayer de trouver un appartement (déjà meublé en plus!). Je compte profiter des quatre mois que je vais passer là-bas pour me faire une idée de la ville (ville béton ou ville en vie). En quatre mois, je crois que je vais être capable de me faire une idée de Montréal afin de savoir si je voudrais travailler là-bas plus tard.

lundi 16 mars 2009

Cabane à sucre

Hier, il y avait une sortie à la cabane à sucre organisée par les résidences. Nous sommes allés à la cabane "Au bec sucré" à Valcourt.

Après un rallye digne de la petite école où il fallait remplir une dictée trouée à l'aide de charades (voir nos réponses à la fin de ce billet), on a mangé de la tire (surprise!). À l'heure du souper, nous avons eu droit à un copieux repas digne d'une cabane à sucre. Tout au long de la journée, on pouvait lâche son fou en glissant sur une pente aménagée pour la cause.

Bref, ce fut une journée hors de l'ordinaire qui a permis de recharger nos piles avec le soleil qui régnait cette journée-là.

Voici la transcription de nos réponses à la dictée trouée (merci Mathieu). On n'a pas gagné de prix, mais on a eu la mention des réponses les plus drôles.

Il y a très longtemps, dans un pays merveilleux, vivait une chef de parti prénommée Pauline. Elle vivait dans son château avec ses deux serviteurs André et Bernard qui avaient les cheveux bleus.

Elle avait obtenu ce mandat de luxe en se moquant de son père qui aimait se faire masser.

Un jour en dansant le chachacha avec son amoureux René Lévesque sous un champignon elle sortit une pépine de la poche de sa robe et lui piquâ le bras. Il en mourut.

Les lois de son Québec natal lui donnèrent un châtiment exemplaire, c'est-à-dire de mourir à l'assemblée nationale activé par un bleuet.

Charest eut beau demander de l'aide de ses amis avocats Gagliano et Jean Chrétien, mais ceux-ci n'eurent aucun recours valable.

Pauline, durant qu'elle récitait son manifeste dans la chambre des communes, il y eu dérogation, un référendum et une question pas claire. Suite à cette débandade, elle eut un char de marde et fut libérée.


Finalement, voici un exemple de charade qui nous aidait à remplir les trous.

dimanche 15 mars 2009

Fiérement emballé (sic)

Ayant terminé de manger les mandarines que j'avais achetées, je me suis résous à jeter leur emballage. En accomplissant ce geste, j'ai remarqué quelque chose qui clochait sur l'emballage. En effet, le texte en français était tellement en mauvais état que j'ai tout de suite pensé qu'il a été traduit par un traducteur automatique que l'on trouve sur internet. J'ai d'abord commencé l'enquête avec le service de Google sans succès. Malgré que le texte est maltraité, il ne correspond pas à celui de l'emballage. J'ai ensuite continué l'investigation sur le site de traduction de Yahoo, BabelFish (qui en passant tire son nom du livre de Douglas Adam) : la traduction boiteuse vient effectivement de ce site.

Une image vaut mille mots, je vous laisse le soin de faire une règle de trois pour savoir combien en valent trois...

L'emballage :

La traduction de google :
La traduction par BabelFish (la même que l'emballage) :

samedi 14 mars 2009

Entrevues

Enfin, les semaines d'entrevues sont terminées. Je me compte chanceux d'avoir eu beaucoup d'entrevues ces derniers jours. En effet, certains de mes voisins aux résidences ainsi que certains collègues du bacc ont eu un nombre limité d'entrevues et même j'ai une voisine qui n'a même pas eu une seule entrevue.

Je trouve toujours les semaines d'entrevues éprouvantes puisque je suis tellement stressé à l'idée d'avoir des entrevues que j'en ai de la misère à dormir. Après avoir passé deux semaines à dormir entre deux et cinq heures je me sens relativement fatigué.

Au cours des six entrevues que j'ai eues, voici les questions qui m'ont été le plus souvent posées :

Questions générales :
  • Quel est ton plus grand défaut?
  • Quelle est ta plus grande qualité?
  • S'il y a quelqu'un qui ne travaille pas (ou travaille mal) dans ton équipe, qu'est-ce que tu fais?
  • Si tu rencontres des problèmes que tu n'arrives pas à résoudre, qu'est-ce que tu fais?
Questions informatiques :
  • Qu'est-ce que le polymorphisme?
  • Qu'est-ce que l'héritage?
  • Qu'est-ce qu'une méthode virtuelle (en C++)?
  • Quels sont les avantages de la programmation orientée objet?
  • Quels sont les avantages des approches itératives?
  • Parle-moi du projet dont tu es le plus fier d'avoir fait.
  • Quelles sont tes connaissances en Java/C++/SQL/UML?
J'attends avec impatience la remise des cotes de la part des employeurs afin de savoir où je vais aller en stage à l'été.

jeudi 5 mars 2009

[Truc C++] Opérations mathématiques sur des éléments d'une séquence

La méthode std::accumulate() est utile pour faire des opérations mathématiques sur une suite d'élements délimitée par des itérateurs par exemple les éléments d'un vecteur. Le premier paramètre est l'itérateur de départ, le deuxième paramètre est l'itérateur de fin. Le troisième élement est la valeur de départ, souvent 0 pour une somme et 1 pour une multiplication. Le quatrième paramètre, qui est optionnel, est une opération binaire à appliquer, par défaut c'est la somme. Avec cette méthode, on se rapproche de la programmation fonctionnelle!

#include <iostream>
#include <vector>
#include <iterator>
#include <numeric>
#include <functional> // pour la multiplication

using std::vector;
using std::cout;
using std::accumulate;

int main()
{
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
v.push_back(4);

cout << accumulate(v.begin(), v.end(),0) << std::endl;
cout << accumulate (v.begin (), v.end (), 1,
std::multiplies<int>());

return 0;
}

Tout bon mathématicien du dimanche pourrait prédire que les sorties de ce programme sont 10 et 24.

mercredi 4 mars 2009

Développement durable

Lors d'une entrevue, un interviewer m'a dit que le stagiaire embauché pour l'été allait faire l'analyse et, si le temps le permet, l'implémentation d'un renouvellement d'un système qui avait été en production pendant une vingtaine d'années. Il est à la recherche d'un langage de programmation qui va permettre au nouveau système d'avoir une durée de vie aussi longue que l'ancien système. Ceci m'a amené à me poser la question suivante : quels langages de programmation actuels permettraient de créer un système d'une assez grande amplitude pour une aussi longue durée de vie? Essayons de trouver une technologie qui permettrait cela.

Python
J'ai été surpris que Python ait été abordé par la personne avec qui j'ai eu l'entretien ce matin. Malgré sa popularité croissante, je crois que Python n'a pas encore fait ses preuves comme langage pouvant résister au temps. Un autre point contre l'utilisation de Python comme langage durable est sa grande volatilité. En effet, la version 3 de Python qui est parue récemment n'est pas rétrocompatible avec les anciennes versions. On ne peut pas savoir si ceci va se reproduire à l'avenir. Aussi, puisque le bassin de programmeurs Python actuel est assez limité, les programmeurs Python seront d'autant plus rares dans le futur si le langage est encore fonctionnel, mais moins populaire. D'un autre côté, Python supporte plusieurs plates-formes (possibilité de changer de plate-forme durant la vie du système) et simple à apprendre.

.Net
Avec une nouvelle version tous les deux ans qui assurent une rétrocompatibilité *presque* complète est-ce que les produits créés avec la technologie de Microsoft vont vieillir avec grâce? Laissez-moi en douter. Premièrement, les logiciels vont être confinés sur des ordinateurs qui ont un système d'exploitation Windows. Le support de Microsoft pour Windows n'est pas éternel, mais il tout de même possible de continuer à l'utiliser sans support malgré les risques potentiels. Aussi, dans une vingtaine d'années, est-ce que le framework .Net 3.5 va être encore supporté ou encore utilisable alors qu'une version proche de 10.5 du framework va être sortie? Est-ce que le langage va être aussi éphémère que d'autres en provenance de Microsoft comme VB6 ou le BASIC?

C++
Ce langage de programmation est celui que je crois être en mesure de répondre aux besoins d'un environnement de production pendant une vingtaine d'années. Premièrement, C++ a déjà fait ses preuves et le standard change rarement et les changements apportés ne sont pas majeurs. Cependant, il arrive que le code source doit être modifié afin d'être compilé par un compilateur plus récent (par exemple, la transition entre GCC 3 et GCC 4). Le bassin de programmeur C++ est de grande taille.

Java
Je crois que Java est au même niveau que C++ pour la création d'applications durables : les changements de version passent souvent sans embûches et le nombre de développeurs Java est assez grand pour suffire à la demande pour les futures maintenances. De plus, contrairement aux programmes C++, les applications Java ont moins de dépendances envers des librairies externes qui peuvent être rendues obsolètes pendant la durée de vie du système.

Conclusion
Il se peut que les analystes en poste il y a vingt ans se posaient la même question et qu'ils trouvaient eux aussi que les langages de programmation de leur époque ne semblaient pas être appropriés pour un projet axé sur le long terme. Ils ont toutefois réussi à créer des systèmes qui ont su résister au temps. Peut-être que dans vingt ans, les programmeurs Java vont être une denrée rare et prisée comme le sont les programmeurs Cobol actuels. Finalement, il y a une possibilité que la qualité de l'analyse du système importe plus que le langage de programmation choisi lors de la création d'un système ayant une longue durée de vie.

samedi 28 février 2009

[Truc C++] Lecture d'un fichier vers un vecteur et l'inverse

Le programme C++ suivant lit un fichier d'entiers et l'emmagasine dans un vecteur. Ensuite le contenu du vecteur est sauvegardé dans un autre fichier.
#include <iostream>
#include <vector>
#include <iterator>
#include <fstream>
using namespace std;

int main()
{
ifstream is("in.txt");
ofstream os("out.txt");

vector<int> v (istream_iterator<int>(is), (istream_iterator<int>()));
copy(v.begin(), v.end(), ostream_iterator<int>(os, "\n"));
return 0;
}

Le constructeur du vecteur appelé est celui qui prend deux itérateurs comme paramètres afin d'initialiser le vecteur, un de début et un de fin. Le premier itérateur correspond à un itérateur sur le fichier alors que le deuxième est un itérateur représentant une erreur de lecture par exemple la fin du fichier.

La fonction "copy" prend trois paramètres :
- Un itérateur de début de lecture
- Un itérateur de fin de lecture
- Un itérateur d'écriture

Finalement, "is" et "os" peuvent être respectivement remplacés par "cin" et "cout" afin de lire ou écrire sur la console au lieu d'un fichier.