Gromitt::Revues de code

Aller au contenu | Aller au menu | Aller à la recherche

samedi 26 avril 2008

Téléportation

Petit état des lieux après une bonne période de silence bloguesque...

Le quartier ?
Finie la jungle grouillante !
Finis les centres d'achats surpeuplés, puants et sales !
Les voisins du dessus (les concierges du bloc, en passant) ?
Fini le bruit en permanence !
Fini le plafond qui risque de s'écrouler sous leur poids (120kg chacun !) les soirs de hockey parce qu'ils sautent partout en gueulant comme des animaux !
Finie leur arrogance quand je vais les voir pour leur dire de se calmer !
Finie la puanteur crasseuse quand on passe devant leur porte !
L'appartement ?
Fini le demi-sous-sol obscur !
Finie la cuisine toute petite, dure à entretenir et mal conçue !
Finie la salle de bain toute petite, dure à entretenir et mal conçue !
Finies les fenêtres qui se resalissent dès qu'il pleut !
Fini la puanteur dès qu'on sort dans le couloir, à cause du local à poubelles !
Fini le propriétaire (que je n'ai jamais vu en personne, d'ailleurs) juste bon à encaisser les chèques de loyer !

Adieu Côte-des-Neiges !

(Adieu Montréal aussi !)

TÉLÉPORTATION !!!1!

On vit en "région" !

lundi 17 décembre 2007

FINI FINI FINI !

Ayé !!!!

Je reviens du dernier examen de ma dernière session à Polytechnique !

Adieu la "maison qui rend fou" (Copyright "Les douze travaux d'Astérix") !

  • Occupations des prochaines journées : rien !
  • Occupations des prochaines soirées : rien !
  • Occupations des prochaines fins de semaines : rien !

Ok, ok, j'exagère un peu là, va falloir préparer les cadeaux de Noël, la petite escapade au chalet à Charlevoix, laver du linge, ranger l'appart, mais, c'est pas grave... PARCE QUE J'AI PLUS QUE ÇA À FAIRE !

jeudi 06 décembre 2007

Noël au La Baie

Noël approche à grands pas (et, en passant, j'ai plus de travaux scolaires à faire) !

Noël, Noël, Noël !

NOËËËËËËËËËËËL !

"We wiiish you a merry Christmas,
We wiiish you a merry Christmas,
We wiiish you a merry Christmas,
And a happy New Yeaaar !"

NOWEL !

Le Père du même nom, les sapins, les guirlandes qui clignotent, celles qui clignotent pas, les boules (!), la neige qui tombe, les paysages blancs, les enfants qui courent et sautent partout, les cadeaux, et... Le magasin La Baie !

Le magasin La Baie de Montréal, c'est :

  • des décorations de Noël deux mois avant l'heure, avec des grandes bandes de velours rouge et vert
  • un 1er étage qui sent tous les parfums du monde (Chanel, Dior, Yves-Saint-Laurent, et j'en passe)
  • des vêtements de Noël (en rouge et vert encore)
  • des allées bondées de vieilles madames anglophones trop maquillées et trop parfumées qui achètent des tonnes de conneries hors de prix

Rien que pour voir ce spectacle désolant d'argent lamentablement englouti par des dindes d'intérieur, je m'offre un tour au La Baie, ça me met d'excellente humeur !

Et vous, vous faîtes quoi dans le temps des fêtes ?

mardi 04 décembre 2007

Ça achève...

Le dernier TP est en cours, il est tard, je suis crevé, mais je lâche pas !

lundi 03 décembre 2007

Laissez-moi tranquille !

21h24 : DRRIING

- "Allô ?"
- "Bonjour, meugneumeugneu agence de marketing meugneumeugneu..."
- "Non merci."
- "Pardon ?"
- "Non, je suis pas intéressé !"
- "Pourrais-je parler à quelqu'un d'autre ?"
- "Euh quoi ?"
- "Pourrais-je parler à quelqu'un d'autre à votre domicile ?"
- "??? Non !"
- "Pardon ?"
- "NON !"
- "Au revoir"

21h25 : CLAC

Merci ma banque !

Cela doit faire 3 ans que j'ai fait convertir mon compte-chèque en "compte à épargne progressive", dans une banque dont je tairai le nom pour ne pas faire de peine à la Caisse Desjardins :

  • tant que je maintiens un solde supérieur à un certain montant (1000.00$ pour être précis), mes retraits / chèques / transferts / virements sont des transactions gratuites, et ce, pour un nombre illimité de transactions.
  • tant que je maintiens ce solde, mon compte ne me coûte rien (pas de frais fixes d'utilisation)
  • j'obtiens des intérêts tous les mois, basés sur le solde de mon compte (je n'ai pas trouvé le taux, ni les clauses, en fait, je n'ai pas cherché, mea culpa)

Depuis 1 an, ce type de compte a été profondément modifié : aujourd'hui, pour que mon compte et mes transactions soient gratuites, il faut non seulement que je maintienne un certain solde dans mon compte, mais qu'en plus, je n'excède pas un certain nombre de transaction. Mon compte a ainsi été automatiquement converti vers le nouveau système. De mémoire, il faut que je maintienne maintenant 2500.00$ pour ne pas avoir de frais fixes mensuels à payer, et je n'ai plus droit qu'à 25 transactions. Dans le document informatif reçu par la poste, ils disaient que ça coutait moins cher aux clients. Ah bon, hében tant mieux ! Le document disait également que j'avais le droit de changer le seuil du solde à maintenir, et cela, gratuitement (wow, trop merci), pendant une certaine période (qui doit être aujourd'hui terminée). En contrepartie, plus le solde à maintenir est bas, moins j'ai un nombre élevé de transactions "gratuites", il faut quand même bien que ma banque "gagne sa vie", ça coûte cher d'entreposer tout cet argent. Donc, au téléphone, je demande à baisser ce seuil au niveau précédent (1000.00$), mais là, on me dit que je n'ai droit qu'à un nombre ridiculement bas de transactions par mois (un chiffre inférieur à 10, il me semble), et que vu mon utilisation, ce n'est pas très avantageux :

- "Mais alors, votre modification, là, elle est pas du tout avantageuse pour les clients, ça finit par coûter plus cher dans le fond ?"
- "Euh... ben oui, c'est un peu plus coûteux pour le client au final."
- "Pourquoi le document informatif il dit le contraire, c'est un mensonge ?"
- "Non non, ce n'est pas un mensonge, c'est juste que ça va vous coûter plus cher."
- "Ah bon, ouf, j'ai eu peur !"

Bref, dès que possible (et surtout, dès que je trouve mieux), je quitte ma banque pour aller voir ailleurs, parce que ce genre de relevé de transactions, ça me fait hurler de rire / rage / peur / colère (rayer les mentions inutiles, s'il y en a) :

Petit exercice, calculez le taux d'intérêt annuel pour un solde d'environ 1500$ (maintenu sur un mois), en vous basant sur les données de l'image. Calculez également le solde à maintenir pour que mon compte me rapporte 1.00$ par mois.










(Si vous avez trouvé 0.048% et 25000$, vous pouvez rire ou pleurer, au choix)

vendredi 30 novembre 2007

Clin d'oeil

Comprenne qui pourra, encore une fois !

mercredi 28 novembre 2007

BRRRRRR !

Ça y est, l'hiver arrive, sans retard aucun, avec son scénario classique d'entrée en matière :

  1. de la neige tombe
  2. on voit plus le sol, on marche comme des démineurs dans les escaliers extérieurs, à tatons
  3. de la pluie tombe, de la grosse pluie qui, avec chaque goutte, t'inonde le visage
  4. la neige fond un peu à cause de la pluie
  5. on se fait pièger par des flaques cachées sous la neige, nos chaussures sont noyées à chaque fois qu'on descend d'un trottoir
  6. un ti coup de froid pendant la nuit
  7. ZWWWIP ! les trottoirs glissent (en fait, TOUT glisse, du moment que tu mets le pied dessus, loi de Murphy ?), et faire un tour à l'épicerie devient une mission dangereuse qui te fait gesticuler dans tous les sens pour vaguement garder ton équilibre, et accessoirement, pour conserver un nombre minimal de dents intactes
  8. on reprend au premier point, en baissant la température un peu plus à chaque fois, et en augmentant les quantités de neige

À mes yeux, c'est maintenant clair que l'hiver a été inventé par un sadique !

lundi 26 novembre 2007

Découverte

You're all that I have and you're all that I need
Each and every day I pray to get to know your peace
Wanna be close to you, yes I'm so hungry
You're like water for my soul when it gets thirsty
Without you there's no me
You're the air that I breathe
Sometimes the world is dark and I just can't see
With these, demons surround all around to bring me down to negativity
But I believe, yes I believe, I said I believe
I'll stand on my own two feet
Won't be brought down on one knee
I'll fight with all of my might and get these demons to flee
Hashem's rays fire blaze burn bright and I believe
Hashem's rays fire blaze burn bright and I believe
Out of darkness comes light, twilight unto the heights
Crown Heights burnin' up all through the twilight
Said, thank you to my God, now I finally got it right
And I'll fight with all of my heart, and all a' my soul, and all a' my might

Matisyahu - King without a Crown

Trop merci Véro de m'avoir fait découvrir ça :)

dimanche 25 novembre 2007

Ayé !

mardi 20 novembre 2007

Pression critique

Pfffff... Plus que quelques semaines et mes études à Polytechnique seront enfin terminées !

4 années et 4 mois,
9 sessions de cours, 2 emplois d'été, 2 sessions de stage,
environ 1600 jours d'existence avec l'étiquette "étudiant" sur le front.

I CAPOTE BEN RAIDE !

Comment expliquer ça un peu plus en détail ?

Il me reste 4 travaux d'équipe à remettre, 4 examens finaux à passer, et ce sera la libération finale, mais la motivation semble se faire de plus en plus rare lorsqu'on approche d'une telle extremité !

Courage !

Je pense à tout ce qui s'en vient :

  • un boulot plaisant (on va quand même prendre le temps de chercher)
  • un bel appart, jouli, confo, grand, tout ça
  • un niveau de vie amélioré (après m'être quand même pas mal privé)
  • plein de temps (ben j'espère en tout cas) pour être avec ceux que j'aime
  • INSERT SUGGESTIONS HERE

et à tout ce qui ne sera plus aussi hein :

  • plus de travaux à faire à la maison, le soir, la nuit, les fins de semaine
  • plus d'examens (et accessoirement plus besoin de subir la correction de tyrans lunatiques) !
  • plus besoin d'acheter des livres impossibles à revendre sur des sujets qui me laissent froid voire congelé
  • plus de cafétéria monopolistique à la bouffe chère et immonde (je suis pas à l'abris de ça en fait)
  • plus besoin d'avoir affaire à des secrétaires aigries, hargneuses, laides et dans des pantalons de cuir moches (non, je ne citerai pas de nom !)
  • INSERT SUGGESTIONS HERE AUSSI

J'ai donc très hâte à ma libération inconditionnelle, mais en même temps, je suis déjà ailleurs, loin dans ma tête, comme si je m'élevais au-dessus du sol, que je me déconnectais de la réalité des études... Faudrait pas pourtant ! Ce n'est pas encore fini ni gagné, alors on se botte le derrière et on finit la pile de travaux, monsieur Gromitt !

...

Fainéant, rêveur, endormi va !

...

'tit con !

samedi 23 juin 2007

PHP 5.2, SPL et les matrices

Avec PHP, il est parfois frustrant de ne pas avoir accès à la surchage des opérateurs, tels que "+", "-", "[]", "()", etc. Lorsque vient le temps d'implémenter une classe de matrice mathématique, il serait pourtant pratique de pouvoir accéder aux valeurs de celle-ci directement :

$matrix = new Matrix(3, 4);

$matrix[2][1] = 1.0;

Joie ! C'est possible avec SPL et son interface "ArrayAccess", qui permet d'accéder aux attributs d'un objet par l'intermédiaire de l'opérateur "[]".

On peut par exemple imaginer l'implémentation (simpliste) suivante pour la gestion des matrices :

final class MatrixColumn implements ArrayAccess {
  private $size;
  private $values;
  public final function __construct($size) {
    $size = (int) $size;
    if ($size < 1) {
      throw new InvalidArgumentException();
    }
  $this->size = $size;
  $this->values = array_fill(0, $this->size, 0.0);
  }
  public final function offsetExists($row) {
    return array_key_exists($row, $this->values);
  }
  public final function offsetGet($row) {
    $row = (int) $row;
    if (!$this->offsetExists($row)) {
      throw new InvalidArgumentException();
    }
    return $this->values[$row];
  }
  public final function offsetSet($row, $value) {
    $row = (int) $row;
    $value = (float) $value;
    if (!$this->offsetExists($row)) {
      throw new InvalidArgumentException();
    }
    $this->values[$row] = $value;
  }
  public final function offsetUnset($row) {
    throw new Exception();
  }
  public final function size() {
    return $this->size;
  }
}

class Matrix implements ArrayAccess {
  protected $width;
  protected $height;
  protected $columns;
  public function __construct($width, $height) {
    $width = (int) $width;
    $height = (int) $height;
    if (($width < 1) ||
        ($height < 1)) {
      throw new InvalidArgumentException();
    }
    $this->width = $width;
    $this->height = $height;
    $this->columns = array();
    for ($i = 0; $i < $this->width; ++$i) {
      $this->columns[$i] = new MatrixColumn($this->height);
    }
  }
  public final function offsetExists($column) {
    return array_key_exists($column, this->columns);
  }
  public final function offsetGet($column) {
    $column = (int) $column;
    if (!$this->offsetExists($column)) {
      throw new InvalidArgumentException();
    }
    return $this->columns[$column];
  }
  public final function offsetSet($column, $value) {
    $column = (int) $column;
    if (!$this->offsetExists($column) ||
        !($value instanceof MatrixColumn) ||
        ($value->size() != $this->height)) {
      throw new InvalidArgumentException();
    }
    $this->columns[$column] = $value;
  }
  public final function offsetUnset($column) {
    throw new Exception();
  }
}

Il aurait été possible de faire hériter les classes "MatrixColumn" et "Matrix" de la classe SPL "ArrayObject" plutôt que de l'interface "ArrayAccess", ce qui aurait permis d'utiliser la fonction "count()", cependant, il aurait également fallu implémenter des itérateurs, ce qui n'était pas l'objectif principal de ce billet.

Amusez-vous bien !

dimanche 11 mars 2007

Traduction pitoyable

Il y a des produits dont la traduction de la notice laisse à désirer, et puis il y a des produits qui font pitié par eux-mêmes :

La marque du produit a été volontairement rendue floue afin qu'on ne puisse pas lire "Zippo" sur la bouteille d'essence à briquet. Doh !

mardi 27 février 2007

Visiteurs poilus

Un petit aperçu des visiteurs imprévus que l'on reçoit de temps en temps chez nous.

jeudi 14 décembre 2006

Le mot du jour : implexe

Sachant qu'un individu a deux parents (la plupart du temps), et qu'implicitement chacun a à son tour deux parents (soient quatre grands-parents), on peut affirmer qu'à chaque génération, le nombre d'ancêtres est doublé, ce qui revient à la formule N = 2^G (où N est le nombre d'ancêtres et G la génération). Dix générations en arrière (soient environ 250 ans), ce sont 1 024 arrière-arrière-...-grands-parents qui ont "contribué" à l'existence d'un individu. Pour 20 générations (500 ans), ce sont 1 048 576 ancêtres, et pour 50 générations... 1 125 899 906 842 624 (1 million de milliards) d'ancêtres vers l'an 750.

Bref, soit on nous cache quelque chose sur notre passé démographique, soit tout le monde couchait avec tout le monde !

Plus d'informations ici : http://fr.wikipedia.org/wiki/Implexe