La loi de l'abstraction qui goutte appliquée à la neige
vendredi 31 janvier 2003 :: perrick :: Connexe(s) :: aucun commentaire :: aucun trackbackDepuis ce matin, il neige à Lille. Il est 14h, et c'est 15 cm de poudre blanche qui recouvre la capitale des Flandres.
Les voitures roulent au pas, et même parfois reculent en essayant de grimper sur un pont. Le bus qui devait m'accompagner jusqu'au bureau n'arrive pas à quitter son arrêt. Bref la ville avance au ralenti : au rythme des piétons qui passent encore partout.
Et j'en viens à me demander ce qui se passerait si les enfants apprenaient d'abord à conduire - avant de savoir marcher ? Un exemple de la loi de l'abstraction qui goutte ?
un magazine sur l'Open Source
vendredi 24 janvier 2003 :: perrick :: Connexe(s) :: aucun commentaire :: aucun trackbackhttp://www.theopenenterprise.com/ est un magazine en ligne orienté vers - vous l'aurez deviné - les technologies Open Source dans le monde des grandes entreprises, américaines principalement. Un magazine récent mais déjà des articles intéressants, je le suivrai de près. Comme quelques autres titres du groupe : http://www.techweb.com/.
Introduction aux b-blogs
jeudi 23 janvier 2003 :: perrick :: Connexe(s) :: aucun commentaire :: aucun trackbackKathleen Goodwin, CEO de iMakeNews, publie un article intéressant - en anglais - sur l'avancement des weblogs dans le milieu professionel. :: on pk :: rentre dans cette catégorie encore hybride pour l'instant puisqu'on y parle parfois de No Parking, mon entreprise.
http://www.clickz.com/em_mkt/enl_strat/article.php/1572551
Quand ça ne tient qu'à un fil...
vendredi 17 janvier 2003 :: perrick :: Connexe(s) :: aucun commentaire :: aucun trackbackPendant 2 jours, on a été privé de connexion haut débit au réseau internet. Résultat ? On s'occupe : chantier, rangement et connexion RTC. Parce que pendant que le web ne marche pas, les transporteurs eux fonctionnent bien : les dossiers suspendus, ramettes de papier et autres bricoles commandés hier sont bien arrivés ce matin. Quand est-ce que le web deviendra une "commodity" comme voudrait nous le faire croire IBM ?
Depuis j'ai trouvé un article intéressant sur l'expérience suédoise : pour ceux qui ne parlent pas anglais, l'article explique que les opérateurs de télécommunication ont été choisis sur des critères de couverture plutôt que sur des enchères astronomiques. Résultat on peut utiliser son portable partout, y compris à Norrbotten en Laponie. Ca laisse songeur...
Optimiser la négation Comparaison entre != et NOT()
lundi 30 décembre 2002 :: perrick :: MySQL :: un commentaire :: aucun trackbackPlongé dans le refactoring d'openTIME, j'en profite pour faire quelques tests sur mes requêtes SQL. Cette fois-ci, il s'agit de comparer "!=" et "NOT()".
Concrètement ça donne :
"SELECT name, user_id FROM project WHERE id != 1"
contre
"SELECT name, user_id FROM project WHERE NOT(id = 1)"
Après un test en local (W2K + Apache 1.3.24 + PHP 4.2.0 + MySQL 3.23.39), puis sur 2 serveurs différents, le résultat est là : "!=", 2,35 s. contre "NOT()", 2,52 s. (moyenne sur 20 éxécutions du script de test). Ce n'est peut-être pas un gain de temps énorme sur les 1000 itérations du code mais c'est toujours ça de pris.
Si vous avez d'autres trucs SQL (ou MySQL), n'hésitez pas à les partager : les commentaires sont là pour ça aussi.
Les joies du 'register_globals' sur OFF
vendredi 27 décembre 2002 :: perrick :: PHP :: un commentaire :: aucun trackbackDepuis quelques temps déjà - PHP version 4.2.1 il me semble - une $valeur_dans_formulaire n'est plus accessible directement dans un script PHP. Il faut passer par $HTTP_GET_VARS['valeur_dans_formulaire'] ou bien par $HTTP_POST_VARS['valeur_dans_formulaire'], suivant l'action dans le code HTML.
Depuis ce temps donc, openTIME suit scrupuleusement ces recommandations.
Sauf que je viens d'installer pour la première fois une version d'openTIME sur un serveur avec la version 4.3.0RC3 avec register_globals à OFF (je sais que la version RC4 est sorti depuis mais que voulez-vous...) et que j'ai *redécouvert* que dans les register_globals, il n'y avait pas que les variables POST et GET. Il y a aussi les variables SESSION et SERVER !
Donc adieu à $HTTP_X_FORWARDED_FOR et autre session_register(). Et bienvenu à $HTTP_SERVER_VARS['HTTP_X_FORWARDED_FOR'] & $HTTP_SESSION_VARS[''].
Certains préfèrent mettre en place des hacks pour que ça puisse continuer à tourner sans problème. Ici à No Parking, on préfère un peu de refactoring pendant les fêtes.
Fond d'écran : PIX Festival Un goodie à télécharger
lundi 16 décembre 2002 :: perrick :: Connexe(s) :: aucun commentaire :: aucun trackbackBens de TeamChman, comme toute une série de designers, participait le 13/12/2002 à une "web jam" lors du Pix Festival à Lille. Comme le but du jeu était de créer des fonds d'écran, il en a préparé un sur le thème "russian torture" et "no parking". Voici ce que ça donne :
.
Il est là pour vous : à télécharger et à installer sur votre PC / Mac / Linux préféré.
Pour ce qui ne connaisse pas ce type d'évènement, aller faire un tour sur http://www.vectorlounge.com/. Si vous n'avez pas encore installé Flash, ce n'est pas la peine d'y aller faire un tour ;-)
LABEL dans un formulaire : ACCESSKEY et A HREF II
mercredi 11 décembre 2002 :: perrick :: Développement :: un commentaire :: aucun trackbackEn faisant un petit tour par les logs, je me suis rendu compte qu'un des articles les plus lus ici correspondait à l'utilisation de LABEL dans un formulaire. En voici donc une deuxième utilisation possible :
Sous IE et Mozilla & Co, le raccourci clavier "Alt + P" permet d'aller directemnt dans le champ "Mot de passe". Je vous laisse faire le test. Ensuite n'hésitez pas à aller faire un petit tour dans le code source pour voir comment c'est fait...
Au passage, ça marche aussi dans une balise <A HREF="page.html" ID="label">. C'est ce que j'utilise dans openTIME pour offrir un raccourci clavier : on peut toujours revenir vers la page principale avec un simple raccourci clavier. Le rêve de tous les développeurs ;-)
PS : ça fonctionne aussi sur le site officiel du PHP.
Vous avez dit 'marketing' ? II
mardi 3 décembre 2002 :: perrick :: Connexe(s) :: aucun commentaire :: aucun trackbackToujours autour du marketing des NTIC - et de l'industrie logicielle - un site propre, clair et agréable avec beaucoup d'astuces : Connect Direct.
Depuis 1996, il y a un article par mois sur leurs techniques commerciales et marketing. Et si les titres des premiers articles peuvent faire sourire (par exemple : "TO WEB OR NOT TO WEB" date de 1996), le contenu est souvent à la fois intéressant et pertinant.
De loin le meilleur site que j'ai trouvé ces derniers temps - dans la rubrique 'marketing'.
Vous avez dit 'marketing' ?
jeudi 28 novembre 2002 :: perrick :: Connexe(s) :: aucun commentaire :: aucun trackbackAprès la phase de développement pure de notre outil openTIME, il est temps de penser à sa commercialisation... Et pour ça il faut "répondre à la demande" - le boulot d'un commercial - et aussi "créer la demande" : c'est là qu'intervient le marketing. Et comme l'industrie informatique est assez particulière, voici quelques liens que je suis en train d'explorer :
Les articles du Fuzzygroup
En particulier : Marketing Software When You Are a Small Company.
Software Market Solution
Recommandé par Joel on Software. A lire sa question qui tue.
Le weblog d'Andy Meadows : 347.com
Si vous en avez d'autres dans vos favoris, vous pouvez toujours les partager : pk@noparking.net ou en commentaire.
L'interface d'openTIME continue son évolution
vendredi 22 novembre 2002 :: perrick :: Ergonomie :: aucun commentaire :: aucun trackbackL'évolution d'openTIME continue... A présent, voici ce que ça donne (en réduction ;-) :
[image perdue]
Pour ceux qui découvrent openTIME pour la première fois, c'est un logiciel intranet qui permet de valoriser les heures passées par projet / dossier / client / etc... C'est surtout l'outil en gestation au sein de No Parking - mon entreprise.
Au menu de cette évolution, le passage vers les feuilles de style (CSS). C'est un courant qui prend de l'ampleur avec la campagne pour les standards sur le net, mais aussi avec les actions marketing de Mozilla ou d'Opera - et de sa version 7.0 beta très prometteuse.
Ceux qui s'intéressent à la propagation de ces feuilles de style sont invités à consulter deux weblogs en particulier :
- Holovaty.com
- Les standards du W3C
Sinon un des principaux avantages de cette conversion, c'est que le nombre des images utilisées s'est considérablement réduit : d'une bonne quinzaine, on est passé à deux. Et d'ici quelques temps, je pourrais peut-être vous donner l'impact réel sur les temps de téléchargement.
Le test de Jamie Après celui de Joël
mercredi 20 novembre 2002 :: perrick :: Développement :: aucun commentaire :: aucun trackbackDans "Jamie On Game Development", James Fristrom reprend le test de Joël (Spolsky) et l'adapte à l'univers du jeux vidéo. On y retrouve, entre autres, le grand classique "reuse as much as you can and replace as much as you can" avec de nouveaux exemples (et même l'exception qui confirme la règle ;-).
Quand on sait que mes voisins et clients font du jeux vidéo (TeamChman, ça vous dit quelque chose ?), ce weblog prend une saveur très particulière...
Attention peinture fraîche
jeudi 14 novembre 2002 :: perrick :: Connexe(s) :: aucun commentaire :: aucun trackbackNo Parking est en plein travaux actuellement : la semaine prochaine on descend d'un étage. En attendant vous m'excuserez si je ne mets pas à jour :: on pk ::.
Mais où est donc OR par rapport à IN ?
vendredi 8 novembre 2002 :: perrick :: MySQL :: aucun commentaire :: aucun trackbackIl y a quelques temps en épluchant la doc MySQL je suis tombé sur un "comparison operator" intéressant : IN.
Il peut remplacer OR dans une commande SQL : ainsi
"SELECT name, user_id FROM project WHERE id IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)"
est équivalent à
"SELECT name, user_id FROM project WHERE id = 1 OR id = 2 OR id = 3 OR id = 4 OR id = 5 OR id = 6 OR id = 7 OR id = 8 OR id = 9 OR id = 10"
Et s'il est plus élégant à mon goût - car plus court, il restait une question en suspens : qui est le lièvre et l'autre la tortue ?
Bilan IN gagne là aussi contre OR : 0.986s contre 1.067s sur 1000 itérations.
PS : il s'agit d'un petit test rapide en local (W2K + Apache 1.3.24 + PHP 4.2.0 + MySQL 3.23.39), pas d'un benchmark complet.
Le butineur se relèvera...
lundi 4 novembre 2002 :: perrick :: Développement :: aucun commentaire :: aucun trackbackUn texte très intéressant de Paul Prescod : pourquoi le butineur ne peut pas mourir ?
4 bonnes raisons :
- une interface utilisateur presque identique dans tous les butineurs
- le lien URL (on peut ouvrir n'importe quelle appli à partir de n'importe quelle autre)
- pas d'installations sur le poste client
- et son corollaire, indépendance du poste client (mon PC à la maison, ma boîte Unix au bureau ou un MAC dans un web café font tous l'affaire)
Quatre fonctionnalités irrésistibles ?