Ca y est, c'est officiel, Kappea a son blog : http://blog.kappea.com Et la bonne nouvelle, c'est que je ne vais pas être seul à y écrire. Et oui, comme je l'avais dit, l'équipe s'étoffe... Alors qui est le mystérieux nouveau ? Ma foi, c'est comme pour les sondages des élections, on n'a pas le droit d'en parler avant l'heure officielle. Son nom vous sera dévoilé dans les heures qui viennent... Un peu de patience...
Du coup, je ne sais pas encore ce que va devenir ce blog (déjà bien délaissé ces derniers temps). Je ne pense pas l'arrêter, mais le rythme risque de baisser encore un peu (et oui, c'est possible !).
A part ça, les plus impatients d'entre vous qui veulent en savoir plus sur Kappea devront se procurer le numéro du Journal des Entreprises du mois de mai, édition haut-rhinoise (comment ça tout le monde n'y a pas accès ?). Interview oblige, j'ai donné quelques informations. Mais rassurez-vous, vous les trouverez bientôt sur le blog de Kappea...
lundi 23 avril 2007
jeudi 5 avril 2007
Mon MobileTag

Bien sûr, comme toujours pour une nouvelle techno, il y a différentes sociétés qui développent leur propre standard, espérant devenir l'acteur majeur, et totalement incompatible avec les concurents. Les MobileTags n'échappent pas à la règle. Mais si j'ai bien compris, c'est surtout au niveau mondial : le Japon et certains pays d'Europe utilisent la norme QR-code. En France, il semble n'y avoir que MobileTag.
Plus d'infos ici : https://www.mobiletag.com/beta/fr/
Et si quelqu'un a un téléphone compatible, faites-moi signe, pour vérifier que ça marche...
PS : vous croyez que Technocrati aime ce genre de tags ?
mardi 3 avril 2007
OpenId et PHP
Comme vous le savez sans doute (ou peut-être pas encore), OpenId est un protocole, et n'est pas lié à une technologie. Il est donc possible mettre en place une authentification OpenId quelque soit le langage utilisé pour votre site. Il y a d'ailleurs sur cette page une liste de ressources pour implémenter un client (ou un serveur) OpenId : http://openid.net/wiki/index.php/Libraries
Cependant, on entend régulièrement que celles-ci sont plus ou moins buguées.
Et bien j'ai découvert hier une nouvelle classe développée par OmniTI (qui n'est plus à présenter pour les développeurs PHP). Cette classe permet de mettre en place un client OpenId en quelques lignes.
La documentation n'est pas des plus explicites je trouve (un petit tutoriel ne serait pas du luxe, je verrai si j'ai le temps de faire ça), mais vous pouvez tout de même jeter un oeil ici : https://labs.omniti.com/docs/alexandria/gen.OmniTI_OpenID.html
Bonne programmation...
Cependant, on entend régulièrement que celles-ci sont plus ou moins buguées.
Et bien j'ai découvert hier une nouvelle classe développée par OmniTI (qui n'est plus à présenter pour les développeurs PHP). Cette classe permet de mettre en place un client OpenId en quelques lignes.
La documentation n'est pas des plus explicites je trouve (un petit tutoriel ne serait pas du luxe, je verrai si j'ai le temps de faire ça), mais vous pouvez tout de même jeter un oeil ici : https://labs.omniti.com/docs/alexandria/gen.OmniTI_OpenID.html
Bonne programmation...
lundi 2 avril 2007
GMail : un problème avec l'accès POP ?
De mon côté, ça fait quelques jours que je n'arrive plus à récupérer mes mails GMail dans ma messagerie. L'accès web fonctionne sans souci, mais plus le POP. Pourtant, je n'ai absolument rien changé dans mes paramètres...
Sur le web, je n'ai pas entendu parler d'autres soucis, mais bon... Alors c'est bien beau de pouvoir faire imprimer ses mails gratuitement, mais je préfèrerais pouvoir les lire déjà sur mon ordi...
Sur le web, je n'ai pas entendu parler d'autres soucis, mais bon... Alors c'est bien beau de pouvoir faire imprimer ses mails gratuitement, mais je préfèrerais pouvoir les lire déjà sur mon ordi...
vendredi 30 mars 2007
Des nouvelles de Kappea
Le temps passe, et je me rends compte que je délaisse un peu ce blog. Alors voici quelques infos sur l'avancement de Kappea...
Hier soir, j'étais convié aux Trophées de l'Innovation organisés par le Technopôle de Mulhouse et la Région, car Kappea faisait partie des 18 projets innovants retenus pour concourir. Je n'ai pas eu de prix, mais ce n'est pas grave (quoique, le chèque n'aurait pas fait de mal au compte de Kappea). J'ai pu présenter le projet devant un certain nombre d'officiels et quelques banquiers, ce qui m'a permis de rôder un peu ma présentation. Il y a même un journaliste qui a dit qu'il me recontacterait, mais j'attends de voir.
A part ça, il est aussi assez probable que l'équipe de Kappea s'étoffe dans les semaines à venir : les discussions avancent bien. Un blogger dont le nom n'est pas inconnu pour les assidus du web 2.0. Un peu de patience...
Côté développement, on peut dire que je suis assez content. Les fonctionnalités se mettent en place, la charte graphique avance doucement... Sauf contre-temps majeur, je pense que la première version beta devrait sortir d'ici deux mois.
Voilà pour vous tenir un peu au courant de Kappea.
Rappel : pour ceux qui n'ont pas lu les billets précédents sur Kappea, c'est un nouveau service de petites annonces qui innove par sa stratégie de recherche. L'objectif étant bien sûr d'éviter aux utilisateurs de devoir chercher régulièrement sur plein de sites différents...
Hier soir, j'étais convié aux Trophées de l'Innovation organisés par le Technopôle de Mulhouse et la Région, car Kappea faisait partie des 18 projets innovants retenus pour concourir. Je n'ai pas eu de prix, mais ce n'est pas grave (quoique, le chèque n'aurait pas fait de mal au compte de Kappea). J'ai pu présenter le projet devant un certain nombre d'officiels et quelques banquiers, ce qui m'a permis de rôder un peu ma présentation. Il y a même un journaliste qui a dit qu'il me recontacterait, mais j'attends de voir.
A part ça, il est aussi assez probable que l'équipe de Kappea s'étoffe dans les semaines à venir : les discussions avancent bien. Un blogger dont le nom n'est pas inconnu pour les assidus du web 2.0. Un peu de patience...
Côté développement, on peut dire que je suis assez content. Les fonctionnalités se mettent en place, la charte graphique avance doucement... Sauf contre-temps majeur, je pense que la première version beta devrait sortir d'ici deux mois.
Voilà pour vous tenir un peu au courant de Kappea.
Rappel : pour ceux qui n'ont pas lu les billets précédents sur Kappea, c'est un nouveau service de petites annonces qui innove par sa stratégie de recherche. L'objectif étant bien sûr d'éviter aux utilisateurs de devoir chercher régulièrement sur plein de sites différents...
jeudi 22 mars 2007
Ca y est Ziki s'est mis à OpenID
Oui, bon, je sais, j'ai deux jours de retard pour cette info... Toujours est-il que Jean-François l'a annoncé sur le blog : Ziki accepte la connexion via OpenId, pout ceux qui avaient déjà un compte, et devient serveur d'identité pour tous ceux qui le souhaitent.
Alors oui, c'est vrai, il n'y a pas encore des milliers de sites qui utilisent OpenId pour l'authentification, mais je ne peux qu'applaudir cela.
Les lecteurs réguliers de ce blog (ça existe ?) savaient déjà que c'était dans les tuyaux, il semble que c'est finalement venu assez vite.
Il reste juste à évangéliser un peu auprès des 8000 inscrits, et dans quelques temps vous pourrez tester votre identifiant sur Kappea (et oui, ça avance...)
Alors oui, c'est vrai, il n'y a pas encore des milliers de sites qui utilisent OpenId pour l'authentification, mais je ne peux qu'applaudir cela.
Les lecteurs réguliers de ce blog (ça existe ?) savaient déjà que c'était dans les tuyaux, il semble que c'est finalement venu assez vite.
Il reste juste à évangéliser un peu auprès des 8000 inscrits, et dans quelques temps vous pourrez tester votre identifiant sur Kappea (et oui, ça avance...)
vendredi 16 mars 2007
Petit benchmark PHP : json_encode vs serialize
Âmes non techniciennes, passez votre chemin...
Tout simplement, pendant le développement du site de Kappea, j'ai eu besoin d'une comparaison entre les fonctions json_encode() et serialize() de PHP 5.2
Les deux approches permettent de transformer des variables en chaîne de caractère, et JSON et beaucoup utilisé depuis quelques temps pour les échanges Ajax, car il est implémenté dans différents langages (contrairement à serialize() qui n'est que pour PHP).
Pour moi, l'intérêt est de sérialiser un tableau pour stocker la valeur dans un cookie. Or la fonction serialize() me renvoie une chaîne de caractère qui est environ 40% plus longue que celle de json_encode(). Le gain de place est précieux pour moi, car un cookie a une taille limite (environ 4000 caractères). Mais il ne faut pas que ce gain de place ait un important coût de temps.
J'ai donc fait un petit benchmark qui ne prétend nullement être universel, sur ma machine perso avec Ubuntu 6.10, et j'ai remarqué que json_encode() met environ... 40% de temps de plus que serialize().
Cela dit, la différence n'est tout de même pas énorme, puisque dans mon cas cela équivaut à 2,5 millionièmes de seconde de plus. Je sais que je suis un maniaque de l'optimisation, mais je crois que je vais me satisfaire de ça.
En tout cas, comme je n'avais pas trouvé de comparatif entre ces deux fonctions, je le communique (si ça peut servir à d'autres...)
Tout simplement, pendant le développement du site de Kappea, j'ai eu besoin d'une comparaison entre les fonctions json_encode() et serialize() de PHP 5.2
Les deux approches permettent de transformer des variables en chaîne de caractère, et JSON et beaucoup utilisé depuis quelques temps pour les échanges Ajax, car il est implémenté dans différents langages (contrairement à serialize() qui n'est que pour PHP).
Pour moi, l'intérêt est de sérialiser un tableau pour stocker la valeur dans un cookie. Or la fonction serialize() me renvoie une chaîne de caractère qui est environ 40% plus longue que celle de json_encode(). Le gain de place est précieux pour moi, car un cookie a une taille limite (environ 4000 caractères). Mais il ne faut pas que ce gain de place ait un important coût de temps.
J'ai donc fait un petit benchmark qui ne prétend nullement être universel, sur ma machine perso avec Ubuntu 6.10, et j'ai remarqué que json_encode() met environ... 40% de temps de plus que serialize().
Cela dit, la différence n'est tout de même pas énorme, puisque dans mon cas cela équivaut à 2,5 millionièmes de seconde de plus. Je sais que je suis un maniaque de l'optimisation, mais je crois que je vais me satisfaire de ça.
En tout cas, comme je n'avais pas trouvé de comparatif entre ces deux fonctions, je le communique (si ça peut servir à d'autres...)
lundi 5 mars 2007
Quelques soucis avec ma Fonera
Après 2 mois d'utilisation de ma Fonera généreusement offerte par Wikio, le bilan est mitigé. Non, disons plutôt qu'il n'y avait aucun problème pendant longtemps, mais depuis quelques semaines j'ai des problèmes de connexion un peu pénibles.
Régulièrement, mon PowerBook n'accède plus au réseau alors que je l'utilise. Non pas que je perde le signal, ça semble plutôt être une histoire d'adressage IP. Du coup, je suis obligé de demander un nouveau bail DHCP. Je trouve ça un peu galère.
Pourtant je ne crois pas qu'il y ait eu de mise à jour Airport récemment... Je vais peut-être essayer le firmware modifié de francofon.fr...
Quelqu'un a t'il un retour d'expérience à ce sujet ?
Régulièrement, mon PowerBook n'accède plus au réseau alors que je l'utilise. Non pas que je perde le signal, ça semble plutôt être une histoire d'adressage IP. Du coup, je suis obligé de demander un nouveau bail DHCP. Je trouve ça un peu galère.
Pourtant je ne crois pas qu'il y ait eu de mise à jour Airport récemment... Je vais peut-être essayer le firmware modifié de francofon.fr...
Quelqu'un a t'il un retour d'expérience à ce sujet ?
Ziki et OpenId, on progresse !
Certains vont peut-être penser que j'en fais un petit peu trop sur ce sujet, mais ce n'est pas grave. Je voulais juste vous partager une petite phrase du dernier mail reçu de Jean-François Ruiz :
Ce que je ne sais pas, c'est si il sera juste possible de se connecter à Ziki via OpenId, ou si ils vont implémenter un serveur d'identité (ce qui serait beaucoup plus cohérent je trouve).
Ainsi, quand Jérôme explique que pour la notion d'empreinte numérique (mise en avant d'ailleurs par Jeff), Ziki est plus pertinent que OpenId, le mieux est de dire : faisons les deux ! Mon empreinte numérique, qui recense mes productions et mes traces sur le web, peut aussi me servir d'identité pour me connecter sur de nouveaux services...
Je ne prétends pas que c'est le modèle idéal (il y a d'ailleurs encore de sérieuses questions de sécurité à régler), mais il faut bien avancer dans une direction, non ?
Tu vas être content, on va mettre en place OpenID prochainement sur Ziki (je n'ai pas de date à te donner mais ça va être fait bientot).Moi je trouve ça plutôt bien. Je soupçonne que les annonces faites par Netvibes, Microsoft, AOL et Yahoo ont eu un peu plus de poids que mes billets sur le sujet, mais ce n'est pas grave.
Ce que je ne sais pas, c'est si il sera juste possible de se connecter à Ziki via OpenId, ou si ils vont implémenter un serveur d'identité (ce qui serait beaucoup plus cohérent je trouve).
Ainsi, quand Jérôme explique que pour la notion d'empreinte numérique (mise en avant d'ailleurs par Jeff), Ziki est plus pertinent que OpenId, le mieux est de dire : faisons les deux ! Mon empreinte numérique, qui recense mes productions et mes traces sur le web, peut aussi me servir d'identité pour me connecter sur de nouveaux services...
Je ne prétends pas que c'est le modèle idéal (il y a d'ailleurs encore de sérieuses questions de sécurité à régler), mais il faut bien avancer dans une direction, non ?
jeudi 1 mars 2007
Petit mystère de MySQL
Attention : ceci est un billet plutôt technique (vous êtes prévenus dès le début).
Comme Kappea comporte une partie géolocalisation, j'ai une table cities qui comprend pour l'instant toutes les villes de France (DOM-TOM compris) avec leurs coordonnées (latitude, longitude). Il n'y pour l'instant que les villes française, mais comme je prévois d'ouvrir Kappea à d'autres pays (tiens, une révélation !), j'ai bien sûr un champ country qui est un CHAR(2) et qui est indexé.
Bien. Le décor est planté. Voyons voir ce qu'il y a de mystérieux...
Mais si on analyse la requête, ça devient surprenant...
Je crois qu'il reste encore pas mal de secrets que je n'ai pas percé dans les arcanes de MySQL.
PS: j'ai une version 5.0.32 avec la dernière Ubuntu.
Si jamais un pro de MySQL passe par là, je veux bien quelques éclairages.
Comme Kappea comporte une partie géolocalisation, j'ai une table cities qui comprend pour l'instant toutes les villes de France (DOM-TOM compris) avec leurs coordonnées (latitude, longitude). Il n'y pour l'instant que les villes française, mais comme je prévois d'ouvrir Kappea à d'autres pays (tiens, une révélation !), j'ai bien sûr un champ country qui est un CHAR(2) et qui est indexé.
Bien. Le décor est planté. Voyons voir ce qu'il y a de mystérieux...
Jusque là rien de bien spécial, puisque j'ai bien dit qu'il n'y a que des villes françaises.
mysql> SELECT COUNT(*) FROM cities;
+----------+
| COUNT(*) |
+----------+
| 38949 |
+----------+
1 row in set (0.02 sec)
mysql> SELECT COUNT(*) FROM cities WHERE country = "FR";
+----------+
| COUNT(*) |
+----------+
| 38949 |
+----------+
1 row in set (0.06 sec)
Mais si on analyse la requête, ça devient surprenant...
OK, il passe toutes les lignes en revue. Logique, puisque je ne restreint rien.
mysql> explain SELECT COUNT(*) FROM cities;
+----+-------------+--------+-------+---------------+---------+---------+------+-------+-------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+--------+-------+---------------+---------+---------+------+-------+-------------+
| 1 | SIMPLE | cities | index | NULL | country | 2 | NULL | 38958 | Using index |
+----+-------------+--------+-------+---------------+---------+---------+------+-------+-------------+
1 row in set (0.00 sec)
Et là, je ne comprends plus. Alors que toutes les lignes ont le champ country à la valeur "FR", la recherche par index n'en indique que 19479. Mais la requête donne le même résultat...
mysql> explain SELECT COUNT(*) FROM cities WHERE country = "FR";
+----+-------------+--------+------+---------------+---------+---------+-------+-------+--------------------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+--------+------+---------------+---------+---------+-------+-------+--------------------------+
| 1 | SIMPLE | cities | ref | country | country | 2 | const | 19479 | Using where; Using index |
+----+-------------+--------+------+---------------+---------+---------+-------+-------+--------------------------+
1 row in set (0.00 sec)
Je crois qu'il reste encore pas mal de secrets que je n'ai pas percé dans les arcanes de MySQL.
PS: j'ai une version 5.0.32 avec la dernière Ubuntu.
Si jamais un pro de MySQL passe par là, je veux bien quelques éclairages.
Inscription à :
Articles (Atom)