lundi 23 juin 2008

Mémoire à moyen terme

Posté par Nicolas (lien permanent)

On me dit souvent que j'ai une bonne mémoire, et c'est vrai. Je m'étonne toujours de la quantité de trucs inutiles dont j'arrive à me souvenir. Je pourrais redessiner de tête la moitié des plans des niveaux du jeu Half-Life alors qu'il est sorti en 1998. Je me souviens par cœur des paroles de certaines chansons japonaises alors que je ne connais même pas le japonais et que je ne les ai pas écoutées depuis 2 ans. Je connais presque toutes les fonctions et API de certains langages informatiques, et j'arrive même à me souvenir de trucs comme des numéros de téléphone, des adresses ou des plaques d'immatriculation alors même que je ne les ai vus ou entendus qu'une seule fois.

Et pourtant, s'il y a bien un truc dont je ne me souviens pas du tout, c'est mon enfance. La plupart des gens que je connais ont des tonnes de souvenirs de leur enfance. Pas forcément des trucs précis, mais ils peuvent ressituer parfaitement le contexte de cette époque, alors que moi, je n'ai que quelques souvenirs précis, qui n'ont bien souvent même pas d'importance...

  • Je me souviens du 11 septembre 2001, je n'avais que 14 ans et j'apprenais dans la voiture en revenant du lycée que des terroristes avaient détruit des building aux États-Unis, mais je ne me souviens pas du tout du reste de cette journée ni du battage médiatique qui a suivi.
  • Je me souviens des Minikeums sur France 3, mais je n'ai plus aucune idée des dessins animés qu'ils passaient.
  • Je me souviens quand je suis tombé de mon lit suspendu et que je me suis cassé le bras, mais je ne sais plus du tout comment on en était arrivés là avec ma soeur.
  • Je me souviens parfaitement du plan de la maison d'un de mes amis de primaire, mais je ne me souviens même plus de son visage et de ce qu'on y faisait.
  • Je me souviens être tombé de vélo et avoir ruiné le vélo en question et aussi de m'être fait très mal en voulant sauter un tronc d'arbre en forêt, mais pas du tout des balades en forêt elles-même, qu'on faisait à Clichy.
  • Je me souviens d'un rêve que j'ai fait il y a plusieurs années, ça parlait de plutonium, de monster trucks, de mes grand-parents et de mafia (faudra m'expliquer celui là un jour), mais je ne me souviens même plus des notes que j'ai obtenues au BAC.
  • Je me souviens de la première rencontre avec Solène à l'aéroport, mais je n'ai plus aucun souvenir de nos vacances en Corse.
  • Je me souviens parfaitement d'un jeu qu'on avait sur le vieux 486, ARTIC ça s'appelait, et c'était ultra-hardcore, par contre, je ne me souviens pas du tout de ce qu'on faisait d'autre sur cet ordinateur.
  • Je me souviens des balades en forêt avec mon grand-père et du rodéo en Corsa sur les quais lors d'une tempête, mais plus du tout de la classe de mer à Dieppe.
  • Je me souviens la première fois que je me suis fait arnaquer, en primaire, une petite voiture contre une fausse pièce de monnaie, mais je n'ai aucun autre souvenir précis de la primaire, à part des lieux.
  • Je me souviens des bons points et des images en maternelle, mais plus du tout qui étaient mes amis, qu'est-ce qu'on y apprenait et à quoi on jouait.
  • Je me souviens m'être coincé le doigt dans la portière du camion quand on a déménagé de Clichy, mais je n'ai absolument aucun souvenir de ma première école maternelle là-bas.
  • Tout comme je me souviens a peu près de l'organisation de la cour au milieu des immeubles alors que je n'ai aucun souvenir de l'appartement ou l'on vivait à l'époque, à part les portes et la disposition du couloir...
  • Je me souviens également très bien des vacances à l'Île Maurice, mais presque rien de la plupart des autres vacances dont j'ai pu profiter à part un ou deux lieux.
C'est quand même foutrement stupide, je pourrais en sortir des centaines des exemples de ce genre. Des fois je me demande si mon cerveau ne ferait pas de la place au fur et à mesure en virant tout ce qui est le plus vieux. Je me souviens qu'en biologie, on nous avait enseigné la mémoire à court et long terme. Moi, j'ai l'impression de n'avoir qu'une mémoire à moyen terme, qui ne retient absolument pas ce qui est important pour moi, et qui vidange régulièrement toutes les vieilles informations, peu importe leur importance.

Quelqu'un d'autre a le même souci ?

samedi 21 juin 2008

Where the Hell is Matt (again)

Posté par Nicolas (lien permanent)

Le mec que j'envie le plus au monde, Matt, est de retour, et cette fois, c'est pas moins de 42 pays visités, et un voyage de plus de 14 mois à travers le monde. J'ai toujours eu envie de tout plaquer pendant un an et partir à l'aventure, espérons que ça se fera un jour... espérons et économisons.



La vidéo haute qualité est visible ici.
Pour rappel, sa première vidéo est ici.
Et les scènes coupées sont ici.

vendredi 20 juin 2008

PHP et les tableaux

Posté par Nicolas (lien permanent)

Aujourd'hui, j'ai eu besoin de trouver la méthode la plus rapide pour chercher une valeur dans un tableau en PHP 5.2.3. Ça paraît super simple dit comme ça, mais le PHP est loin d'être le langage le moins verbeux... Je recherche donc la valeur «lol» dans le tableau suivant :
1, 'ceci est une chaîne de caractères', 2, 'true', 3, 'ceci est une autre chaîne', 4, 5, 'lol..?', 6, 'false', 7, 'lol', 8, 1564891215, 10, ' ', 11, 'fin'
Rien que pour rechercher cette valeur dans le tableau, j'ai réussi à trouver 8 méthodes différentes.
  • Boucler sur les valeurs du tableau avec un foreach($array as &$val) et comparer les valeurs une à une.
  • Passer toutes les valeurs du tableau en clés via array_combine() et faire un array_key_exists($value, $array) dessus.
  • Passer toutes les valeurs du tableau en clés via un array_combine() et faire un isset($array[$value]).
  • Remettre les valeurs en clés mais via array_flip($array) et retenter un array_key_exists($value, $array) dessus.
  • Remettre encore les valeurs en clés via array_flip($array) et tenter un isset($array[$value]) dessus.
  • Effectuer l'intersection du tableau $array et de array($value) et regarder s'il y a une concordance.
  • Utiliser la fonction in_array($value, $array) dédiée à ça de PHP, mais réputée lente.
  • Utiliser la fonction array_search($value, $array) dédiée à ça de PHP, mais réputée lente.
Les résultats sont étonnants et parlent d'eux même :
100000 iterations :
0.3730 — foreach($array as &$val)
1.0708 — array_key_exists($value, array_combine($array, array_fill(...)))
1.0194 — isset(array_combine($array, array_fill(...))[$value])
0.8494 — array_key_exists($value, array_flip($array))
0.7558 — isset(array_flip($array)[$value])
4.2376 — count(array_intersect($array, array($value))) > 0
0.2198 — in_array($value, $array)
0.1967 — array_search($value, $array) !== false
Alors que les fonctions in_array() et array_search() sont réputées lentes, il s'avère que ce sont finalement bel et bien les plus rapides ici. Je me suis alors demandé si elles feraient toujours aussi bien avec des tableaux plus grands, j'ai donc testé un tableau de 1000 entiers au hasard, et voilà :
1000 iterations each :
00.2598 — foreach($array as &$val)
00.4319 — array_key_exists($value, array_combine($array, array_fill(...)))
00.4293 — isset(array_combine($array, array_fill(...))[$value])
00.3286 — array_key_exists($value, array_flip($array ))
00.3351 — isset(array_flip($array)[$value])
16.9131 — count(array_intersect($array, array($value))) > 0
00.0826 — in_array($value, $array)
00.0772 — array_search($value, $array) !== false
J'ai ensuite essayé 10000 entiers, puis 1000 chaînes de caractères, et au final, in_array() et array_search() sont toujours plus rapides. Je me demande si je n'ai pas fait quelque chose de travers. En tout cas, ces résultats sont à méditer.

jeudi 12 juin 2008

Brasse coulée

Posté par Nicolas (lien permanent)

Je dois dire qu'en ce moment, je n'ai vraiment rien à raconter... je n'ai rien à raconter et en plus, je n'ai pas le temps de le faire. J'ai passé après succès mon principal examen de cette année (mémoire) et j'ai donc un peu plus de temps à consacrer à mes projets personnels, dont mon projet sur Portal.

FATIGUÉ

Malheureusement, étant donné que je fais des journées moyennes de 9h au boulot, je dois avouer que quand je rentre chez moi, je n'ai plus trop le courage de m'y mettre. Et quand vient le weekend, je dors et je me repose. Et puis, comme j'ai gagné une vie sociale dernièrement, ça n'arrange pas mes affaires. Néanmoins, ça avance quand même petit à petit. Je voudrais réussir une sortie cet été, quand tout le monde sera en vacances/congés, nous verrons bien.

Images