nyroBlog
Ban NyroBlog, by Nyro
Image by Nyro - ?

Tag: Programmation


Forum PHP Paris 2006

Les 9 et 10 novembre 2006 prochain se tiendra le forum PHP à Paris.

La 1ère journée se destinera à la fonctionnalité de PHP :

  • Tour d'horizon de l'univers de PHP (dont PHP6) par l'inventeur de PHP Rasmus LERDORF
  • Ajax et Web Services en PHP avec les API Google AdWords
  • PHP au sein du Service Public Fédéral Finances de Belgique

La 2nde journée sera quant à elle orientée sur la technique :

  • Unicode : une révolution en marche pour PHP6
  • Design Patterns & PHP
  • Sécurité des applications PHP

Vignette de site sur les liens

Retrouvant une connection, je lis tous mes flux RSS.

Et puis je tombe sur celui-ci en particulier.

Ho, vous avez vu la vignette ? Je trouve ça magique, et super intéressant...

Et puis, dans le même temps, je suis tombé sur ce site, qui permet de faire la même chose, mais pas en automatique.
Mais l'avantage ici, est que le code source est disponible sous licence GPL. Et le tutoriel qui va bien.

Soirée télé

Hier soir, j'ai eu le droit à une séance télé par intermittence (ça faisait longtemps que je n'avais pas regardé le transistor autant de temps en une soirée).

En Vrac : NCIS, Numb3rs (que j'aime bien pour son apsect mathématisation et représentation du monde qui nous entoure par des fonctions), un léger coup de Star Ac (nan, je n'étais pas chez moi, j'ai pas eu le choix) pour savoir que Bastien est éliminé (Bastien, c'est qui celui là ? J'en sais pas plus...), Sans aucun doute et son lot d'Arnaques et de super Courbet qui arrange tout ça, et enfin, pour s'endormir, un peu de musique sur M6 avec Club.

Mais vous vous dites : "Mais pourquoi il nous parle de tout ça ?"

Pour 2 choses : La première, entre toutes ces émissions et quelques zapping, il y a bien sûr la pub, notamment 2 qui m'ont marquées : celle de Canal+ avec les militaires et le traitement des images (elle est vieille je crois) et celle de Yahoo. Quand je l'ai vue, je me suis dit, tiens Yahoo qui refait de la pub, ça faisait longtemps; le résultat de leur perte de parts de marché ?

La seconde, est la réflexion que j'ai eu devant Club : regarder (écouter ?) de la musique, ce n'est pas ce qui demande le plus de matière grise... Donc, je me suis amuser à comparer la télé au web, en m'attachant à leur avenir propre.

Pour la télé, on peut s'appercevoir qu'on veut faire de la vidéo à la demande, lorsqu'on arrive sur une chaîne, on a l'émission que l'on veut, ou plus simplement, on veut regarder des émissions en différé (disque dur de la freebox ou de canal+...) Bref, on veut faire de la video on demand.

Pour le web maintenant, on s'aperçoit que c'est le cheminement inverse. Actuellement, l'utilisateur est acteur de son parcours à 100%, choisissant le média [1] auquel il veut accéder en cliquant sur les liens hypertextes. Mais cette tendance s'inverse, grâce notamment aux services web 2.0 qui sont de plus en plus utilisés.

Prenons l'exemple du RSS. Avant, pour lire un article, il fallait se rendre sur le site émetteur de cet article, cherché un peu, et enfin accéder à ce qu'on voulait vraiment lire (sans pour autant qu'on sache ce que l'on voulait lire au départ). Aujourd'hui, avec un agrégateur RSS, on choisit les sites (ou partie de site) que l'on veut lire, et le média considéré vient à nous, lorsque l'agrégateur actualise les flux...

Bon jusque là, ce ne sont que de simples observations. Imaginez maintenant, considérant ces 2 éléments, ce que pourrait devenir le web (et dans le même temps la télé) de demain.

Pourquoi la conjoncture des 2 ne serait-elle pas l'avenir du web ? Un savant mélange de Web 2.0 et de média fournis aux bons moments, aux bonnes personnes. Un genre de Podcast dédié à la fois au son, à la vidéo, aux informations textuelles, aux images (pour résumé, à tous types de média informatif ou lucratif) agrégé automatiquement aux bonnes personnes, sans qu'elles le choisissent intentionnelement. On pourrait imaginer un système basé sur les habitudes de l'ensemble des utilisateurs et leurs similiratés respectives (on se rappelle ici Pandora et ses recommendations de musiques). Ces calculs (on ne peut plus complexe) permettraient de fournir le média en adéquation totale avec l'utilisateur considéré.

Voilà, ma petite analyse personnelle de l'avenir du web (2.0 ?), ce que pourrait devenir un mélange entre télévision et internet. Je ne sais pas si j'ai été assez clair. Même pour moi, c'est flou dans ma tête. Il ne faut pas s'attacher aux moyens techniques qui permettraient d'y arriver, mais véritablement à l'idée d'un tel système.

Qu'en pensez-vous ? Des idées à ajouter ?

[1] média : je choisi le terme média pour prendre en compte ici tous les formats numériques que l'on peut transporter : textes, images, vidéos, musiques etc... J'aurai pu parler d'information, mais beaucoup (et moi le premier) aurait sans doute fait l'amalgame avec les informations du JT de 20h.

JavaScript : Faire une infobulle

Pour un site en construction, j'ai du mettre en place une infobulle sur des images.

J'ai d'abord commencé par chercher à droite à gauche ce qui se faisait, pour voir si je ne pouvais pas trouver un script à réutiliser tout simplement.

Après bien des tests, aucun ne fonctionnait dans mon cas, dans un site tout en Div/CSS.

Donc, j'ai commencé par rechercher comment déplacer une div par rapport à la souris. J'ai trouvé ce dont j'avais besoin sur Tout Javascript. Enfin presque : le seul soucis de ce code, c'est qu'il ne tient pas compte des barres de défilement; autrement dit, si vous descendez dans votre page, votre 'infobulle' changera de place, mais en haut, et donc vous ne la verrez pas. Voici donc le code modifié :

function mouseMove (evt) {
	var x = 0;
	var y = 0;
	var plusX = 0;
	var plusY = 0;
	if (document.layers) {
		x = evt.x;
		y = evt.y;
		plusX = window.pageXOffset;
		plusY = window.pageYOffset;
	} else	if (document.all) {
		x = event.clientX;
		y = event.clientY;
		plusX = document.body.scrollLeft;
		plusY = document.body.scrollTop;
	} else if (document.getElementById) {
		x = evt.clientX;
		y = evt.clientY;
		plusX = window.pageXOffset;
		plusY = window.pageYOffset;
	}
	document.getElementById("popBox").style.left = (x+plusX+15)+"px";
	document.getElementById("popBox").style.top = (y+plusY+5)+"px";
} 
if (document.layers)
	document.captureEvents(Event.MOUSEMOVE); 
if (document.layers || document.all) 
	document.onmousemove = mouseMove; 
if (document.addEventListener) 
	document.addEventListener('mousemove', mouseMove, true);

Vous l'aurez compris, j'ai placé juste derrière mon une div vide avec comme id popBox, qui a comme attribut CSS position: absolute (et d'autres si vous en avez besoin...)

C'est quasiment fini. En effet, j'ai à ma disposition une div qui suit la souris tout le temps. Il ne me reste plus qu'à la cacher par défaut, et à l'afficher au survol des éléments qui doivent avoir une infobulle, et à y insérer le contenu que je veux. Dans mon cas, il s'agissait d'afficher un zoom sur une image au survol de sa vignette. J'ai donc décider d'afficher cette image dans une div invisible; de cette façon, le chargement de l'image commence avant que la personne passe dessus l'image. Et lorsque je dois afficher le contenu, je copie simplement le contenu de la div cachée dans ma div popbox. Le code :

function montre(id) {
 var elt = document.getElementById('popBox');
 elt.style.display = "block";
 elt.innerHTML = document.getElementById(id).innerHTML;
}
function cache() {
 var elt = document.getElementById('popBox');
 elt.style.display = "none";
}

La fonction montre est appellée sur le onMouseOver de l'image, avec en paramètre l'id de la div à recopier. La fonction cache est quant à elle appelée sur le onMouseOut de la même image.

Et voilà, une belle infobulle qui fonctionne super bien avec IE et FireFox.

SearchMash, nouvel outil de recherche de Google

SearchMash On apprend par Benoit Descary que Google lance un nouveau site pour faire ses recherches, SerachMash.

Au premier abord, rien de bien nouveau, on n'y voit juste une nouvelle interface encore plus épuré que celle de google, puisqu'on ne peut cherché que pour le web et des images.

Le 1er petit plus qu'on peut voir, c'est en cliquant sur le nom du site en vert en bas, un petit menu déroulant s'affiche, qui propose en fait les options de recherche de google : link:, related:. De plus, on puet ouvrir le site, l'ouvrir dans une nouvelle page, ou bien (si disponible) ouvrir le copie du site que google a en cache. Bref, rien de bien nouveau, juste une nouvelle présentation des recherches de google.

Mais là, où ca devient intéressant, c'est qu'on peut retrier les résultats. Mais à ça sert ? Dans la partie "Feature", on peut lire : This is just for fun right now, but we have some ideas for how to use this. En français : Pour le moment, c'est juste pour le plaisir mais nous avons quelquesu idées pour utiliser cela.

A partir de là, on peut se poser la question suivante : serait-il en train de mettre en place un nouvel algorithme de recherche prenant en compte les utilisateurs ? Un beau service Web 2.0. de toute façon, je ne vois pas à quoi cela peut servir d'autre...

Et à y regarder de plus près, quand ils disent que c'est juste pour le fun, on peut voir que le classement envoie cette requête Ajax :

http://www.searchmash.com/event/r?i=5&j=4&k=2&ei=CKPfiYXTkogCFRw6CQod7rLeIQ

Les paramètres de la requête :

  • i : numéro d'ordre que l'on déplace
  • j : position vers laquelle on déplace
  • k : numéro de déplacement
  • ei : identifiant de la recherche

Bref, tous les éléments sont ici réunis pour permettre à Google de savoir absolument tous les déplacements que vosu effectuez. On n'imagine sans difficulté qu'ils vont nous faire un bel algotithme prenant en compte tous ces éléments.

Bien sûr, ils n'ont pas oublié d'enregistré le clic sur un site (c'est quand même le plus important, non ?)

Donc, est-ce que les recherches sur google vont prendre en compte les modifications des utilisateurs ? Si oui, à quelle échelle ? L'avenir nous le dira...