PermaLinkSkinizi Laptop skins
Bonjour à tous Eh ben oui, me re-voilou pour vous donner des news.

Allons droit au but : Skinizi marche très bien. On est a plusieurs milliers de commandes. Economiquement c'est du solide. Ma femme a pu quitter son job --> mission accomplie

Skinizi a pas mal évolué, nous faisons maintenant des laptop skins :



Ces stickers pour laptop cartonnent ! Comme vous pouvez le voir, de très nombreux artistes nous ont rejoint. Les visuels plaisent énormément, bref c'est du tout bon

Je vous remerci une nouvelle fois de vos encouragements et de votre aide initiale. Skinizi aurait vraiment eu du mal à décoller sans vous.

A bientôt pour de nouvelles news !

  13:12:02 |  


PermaLinkDes news !! et puis bonnes fêtes !!
Non non vous ne rêvez pas, vous êtes bien sur Domlike.net et il y a bien un nouveau billet

Je voulais vous tenir informé de l'évolution de Skinizi. Aprés tout ce que vous avez fait pour moi, je vous doit bien cela. Voici donc un premier bilan aprés nos premier 3 mois d'ouverture.

En terme de vente, j'ai déjà écoulé plusieurs centaines de skins (Ceux qui veulent avoir le nombre exact peuvent m'envoyer un mail). C'est vraiment encourageant et la courbe des ventes ne cesse de progresser. A l'heure actuelle, on vend 5 fois plus de skins par semaine qu'au début de l'aventure qui avait pourtant bénéficier de plusieurs annonces sur différents  blogs.

J'ai eu la surprise de constater que plus de la moitier de mes clients étaient des clientes Je n'avais pas du tout anticipé cela. C'est une bonne surprise et ça prouve que j'ai de la marge côté homme car la majorité des possesseurs d'iPod sont des hommes.

Mais ma grande satisfaction vient de l'internationnal car je réalise plus de 45% de mes ventes à l'étranger. Avoir passé des heures à contacter différents blogs étrangers pour leur parler de Skinizi n'a pas été vain. Le travail paye de ce côté là.

Les produits proposé ont aussi évolué, on propose maintenant des skins pour iPod Nano 2G/3G/Video/Classic/Touch et même iPhone. Pour le lancement des skins pour l'iPod Touch et de l'iPhone nous avons fait réaliser un petit clip trés sympatique que voici en avant première :

Pas mal non ?

Tout ce ceci pour dire que l'aventure continue et qu'elle n'est pas pret de s'arrêter Merci une nouvelle foi d'avoir contribué au bon lancement de Skinizi.

Bonnes fêtes à tous

iPhone skins - iPod Touch skins - Sono Portable

  21:14:56 |  


PermaLinkFirst feedback (French)
Une semaine après le lancement de Skinizi, premier bilan…

Le bilan est plutôt positif à vrais dire. J’ai eu pas mal d’articles forts intéressants sur plusieurs blogs. Voici une liste pas du tout exhaustive :

France : Espagne : Italie : Germany : United States : Je fais le forcing pour les autres pays mais le marketing et moi on n’est pas super copain donc je vais lui payer un coup et ça devrait aller mieux entre nous

Côté commandes (le principal me direz-vous) ben c’est pas trop mal pour une première semaine car on comptabilise plusieurs dizaines de commandes. Je ne vais pas dire combien car il parait qu’il ne faut jamais le dire dans le e-commerce 8-) (Envoyez moi un email si vous voulez vraiment savoir). Bref, on est sur les rails.

Je tenais vraiment à remercier tout ceux qui m’ont aidé par des liens, des infos, des encouragements. Merci à vous tous et même à celui qui a mit un lien sur le forum sos.cocu.org … non non je ne plaisante pas, tenez d’ailleurs regardez cette copie d’écran de mes sites référents :



Aussi bien que Dominoarea

Et n'hésitez pas à continuer de parler de Skinizi autours de vous !

iPod skins - Protection écran iPod

  10:47:45 |  


PermaLinkHELLLLP !! (English version)
To my precious English speaking readers .

I'm not used to blog in English. I only do it for important news and this post is very important for me, may be the most important post of my blog.

You (may ) know me as a Domino consultant among thousands. And I am. But I went to launch a new website. I'll still be a Domino consultant but I try to create a new activity for my wife. She wants to work at home and I try to make her dream come true.

So let me introduce you :
iPod skins


For those who are too lazy to click on the link, Skinizi is an online shop selling iPod skins . Several friends (artists) created some wonderful designs. At the moment, there are already 14 skins available, and more will come for the new iPods. I also created a pictures gallery on flickr to give a better idea of the product.

Yes, nothing to do with domino

As you might know, the most difficult is to make my site known. Without publicity I am sure to failed. So that's the reason why I really need your help. I need you to speak of this site everywhere you can. I trust a lot in the butterfly effect, even a small comments on a forum can produce a large publicity. Of course for those who own a blog, posts are welcome . If you'd like to see the product and test it before discussing it on your site, I'll be happy to send you one for free. Just tell me which one you'd like to have, and your address, then I'll send it to you immediately.

The opening of my new website is a big adventure for me. If you have any comments on the site, the contents, the lay-out, or if you have any ideas on the new product, please don't hesitate a single second to tell it to me. I need all the help I can get!

It was a very long and difficult project and I'll never succed without help, so a BIG thanks to:

Renaud from Ftel who is a crazy talented designer.

and...

Joe, Gabriel, Marilyn, Sjef, Frédéric, Christophe, Rodolphe, Damien, Laurent, etc…

It is really a chance for me to have as much friends to count on.

iPod skins - iPod screen protection

  17:08:09 |  11 


PermaLinkHELLLLP !! (French version)
Ces dernier temps, vous l'avez sûrement remarqués, je blogue un peu (bon beaucoup, ok...) moins qu'avant. Ca fait maintenant plus de deux ans que j'ai commencé ce site. L'idée au départ était de me faire connaître, de transmettre et de partager ce que j'avais appris par moi-même et auprès d'autres consultants.

En deux ans de blog, je n'ai jamais rien demandé en retour. Je n'ai jamais rien demandé non plus pour Domgle ainsi que pour mes autres contributions. Et bien aujourd'hui, pour la première fois, je me permets de vous demander de l'aide.

Vui vui donc en gros si j'ai pu un peu vous aider à vous faire mousser auprès de votre client ou de votre patron ben c'est le moment de renvoyer l'ascenseur 

Tout d'abord, laissez moi donc vous présenter ce qui m'a éloigné de ce blog depuis tant de temps :

Lets me introduce you...
iPod skins


Bon pour ceux qui ont la flemme de cliquer sur le lien, Skinizi est un site de vente de skins pour iPod. Je me suis associé avec plusieurs artistes autour du globe qui m'ont créé des visuels à tomber par terre. Il y en a pour tous les goûts ! Ces visuels sont donc reproduit sur des skins adhésifs. Mais je reviendrai en détail sur la période de préparation qui m'a semblé interminable dans d'autres billets.

Aujourd'hui si j'ai besoin de vous c'est pour créer le plus gros buzz possible autours de son lancement. Comme dirai les Wampas, j'ai pas le compte en banque de Manu Chao, je ne peux pas me payer une grosse campagne de pub hollywoodienne avec Jessica (oui encore elle...) qui court au ralenti sur la plage avec un iPod skinné à la main. Non ça je peux mais qu'en rêve... Donc ma seule chance de réussir dans ce projet c'est VOUS. J'ai vraiment vraiment besoin de vous tous sur ce coup.

Comment m'aider ?

Bien c'est très simple, si vous avez la chance d'avoir un blog, ça serait cool de faire un petit billet sur skinizi (je vous donnerai un skin si vous voulez en tester un). Tous les liens vers Skinizi sont importants même ceux des sites peu fréquentés. En plus des utilisateurs que vont m'amener ces liens, il y a le page rank de google qui augmente et j'aurai donc plus de chance de me retrouver en tête de liste. Bon et si ce n'est pas du tout le sujet du blog, vous pouvez toujours cacher le lien par css .

Pensez aussi à toutes les personnes autour de vous qui possèdent un ipod. Ce serait sympa de leur forwarder un lien vers skinizi et dites leurs de faire de même (Un mail du style : si vous envoyez ce mail à plus de 6 personnes qui ont un iPod ben une chose merveilleuse arrivera dans votre vie toute pourrie )

Et le must, si vous connaissez des personnes dans la presse qui pourraient publier l'information n'hésitez pas à me le dire.

Bref, tout ce qui est possible et inimaginable pour faire monter le buzz et faire de ce lancement une réussite.

Une dernière précision :

Je ne change pas de métier. Si ce site réussi, cela permettra à ma femme de travailler à domicile ce qui a depuis longtemps été son rêve. J'aimerai lui offrir cette chance (vui vui vous avez le droit de pleurer là )

Et pour finir, un grand merci à tout ceux qui m'ont aidé dans ce projet. Je n'y serai jamais arrivé tout seul.

Grand merci à :
Renaud de chez Ftel qui fait mine de ne pas le savoir mais qui a un talent de fou.
Et dans le désordre : Joe, Gabriel, Marilyn, Sjef, Frédéric, Christophe, Rodolphe, Damien, Laurent, etc…

C'est vraiment une chance pour moi d'avoir autant d'amis sur qui compter.

iPod skins - Protection écran iPod

  17:38:50 |  20 


PermaLinkPerte de focus lors de la notification "Nouveau message"
L'été est propice à traiter les choses qu’on n’a pas le temps de régler le reste de l’année. Parmi ces « choses » que j’avais en cours, il y avait cette demande d’une utilisatrice qui disait à peu prêt ça :

«Lorsque je suis dans Word, Excel ou tout autre application et que je reçois un message, pourquoi je suis rediriger direct sur Lotus et l’alerte "Vous avez un nouveau message". C’est très énervant, j’ai envie de pleurer, Julien je t’en pris aide moi »

Bon j’suis pas sur de la fin mais l’esprit y est

Après quelques recherches, je me suis rendu compte que ce n’était pas lié à Lotus mais plutôt à Windows. J’allais appuyer sur « Forward » et balancer ça à l’expert windows du coin mais je me suis dit que ça pouvait être intéressant. Et bien intéressant ça l’est à moitié mais en tout cas la solution est très simple :

Copier/coller le code ci-dessous dans un «.reg » et exécutez le pour modifier la base de registre :

Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Control Panel\Desktop] "ForegroundLockTimeout"=dword:00030d40 "ForegroundFlashCount"=dword:00000003

Redémarrez et voila, on ne perd plus le focus !

  20:58:24 |  11 


PermaLinkOffres estivales Ytria
Quand on parle d'été, on pense soleil, plage, tong, bob Ricard, bikini, île de la tentation et aussi et surtout professionnel que nous sommes : les offres estivale Ytria . Vui vui Ytria devient petit à petit un incontournable dans l'univers Domino. Un petit cocorico car cette société Canadienne a été fondée par un Français.

Donc je me joint à Yogi pour vous annoncer l’offre estivale de Ytria. J’en ai déjà parlé plusieurs fois ici, je ne vais donc pas revenir sur la qualité de ces produits et surtout du gain de productivité lié à leur utilisation. Non, je vais simplement vous inviter à essayer ces produits car le temps que vous allez perdre à faire ces tests vous le gagnerez forcément en productivité :



  20:25:15 |  


PermaLinkProductivité caféinée
Lorsque l'on est prestataire de service, payé à la journée, il est normal que les clients attendent de nous une certaine assiduité et concentration tout au long de la journée. Ceci afin de rentabiliser au mieux la journée payée.

Bon ça c'est dit...

Dernièrement un de mes clients a fait réaliser un film sur le bon vivre au sein de son entreprise par une équipe de journalistes. En visionnant ce film et particulièrement le chapitre "Aménagement d'un nouvel espace détente", un doute m'est venu :

Tiens mais c'est pas moi là qui touille mon café ?!



Ah ben si c'est bien moi...



Ca c'est pas de bol quand même. Je vais 3 fois au café par an et ça tombe pile poil quand il tourne un film ! (bon vous n'êtes pas obligé de me croire sur ce coup ) Ceci étant dit, mon client ne m'en veut pas trop car il y est lui aussi sur la vidéo . Finalement j'ai eu du bol.

Plusieurs moralités à l'histoire :
  • Un journaliste c'est fourbe
  • Toujours soigner son profil droit
  • Faire le gars qui bosse, même au café
  • La télé ça ne fait pas que grossir, ça allonge les nez aussi...


  09:17:12 |  14 


PermaLinkPhotos d'Irlande
Comme prévu, voici un petit échantillon de photos de mon dernier voyage en Irlande. Avec le recul, c'était une très bonne semaine de vacances qu'il me tarde de renouveler. Mes prochains jours de congés seront pour fin août. Je me raccroche donc à ces excellents souvenirs en attendant les suivants.











  20:40:46 |  10 


PermaLinkThe ultimate "Working with list" help page
On connaît tous la page d’aide du designer nommée "Working with List". On y est normalement tous passé et on en a vite fait le tour. Cette page a le mérite d’exister mais les exemples présentés ne nous aident pas des masses lorsque l’on veut faire des opérations un peu plus complexes.

J’ai donc eu l’idée de faire une page d’aide qué sapélerio Quézac…ou non plutôt « The ultimate working with list help page»

Cette page sera un aggloméré de tous les exemples glanés ici ou là de gestion des listes en @formula. Pour l’instant c’est simplement une entrés de blog mais je vais vite la mettre dans les articles une fois bien terminée. Oui, parce que j’ai pas la prétention de tout connaître et d’avoir tout vu (quoi que …quand j’y pense… ). Donc si vous avez-vous aussi de beaux exemples de formules (courtes) impliquant des listes, elles sont les bien venues.

The ultimate working with list help page


DIFFERENCE :
All unique entries in list 1 but not in list2

list1:="......";
list2:=".....";
reslist:=@unique(@trim(@replace(list1;list2;"")));


AND :
All unique entries in both list 1 and list2

list1:="......";
list2:=".....";
list3:=@replace(list1;list2;"");
resList:=@unique(@trim(@replace(list1;list3;"")));


OR (SUM):
All unique entries in either list1 or list2

resList:=@trim(@unique(List1:List2));


XOR :
All unique entries in list 1 or list2 but not in both

list1:="......";
list2:=".....";
list3:=@replace(list1;list2;"");
list4:=@replace(list2;list1;"");
resList:=@unique(@trim(list3:list4));


All numbers within a given range
list:=1:2:3:4:5:1:2:3:4:5:1:2:3:4:5;
lower:=2;
upper:=4;
p0:=@text(list);
p3:=@Trim(@Replace(p0;@Replace(p0;@Right(@Text(List-lower);"-")+p0;"");""));
res:=@texttonumber(@Trim(@Replace(p3;@Replace(p3;@Right(@Text(upper-@texttonumber(p3));"-")+p3;"");""


How many dates in a list are less than a given date ?
rem "subtract list from date to get list of +ve & -ve nos";
p1:=@Text(Date-DateList);
rem "change all entries which are -ve";
p2:=@Explode(@ReplaceSubstring(@Implode(p1;"/");"-";"*");"/");
rem "now replace unchanged entries from orig list";
p3:=@TextToTime(@Trim(@Replace(@Replace(p2;p1;@Text(DateList));p2;"")));
@elements(p3)


Extract the dates upper than a specific date within a date list
orig := [12/12/2007]:[25/07/2009]:[01/01/2007] ;
dateLimit := [04/07/2007];
secs:= @Text(orig-dateLimit ); after:= @Replace(secs; "-"+@Trim(@Right(secs;"-")); "");
tmpResult:= @Trim(@Replace(after; secs; @Text(orig)));
result := @TextToTime(tmpResult);


Extract dates corresponding to a specifics weekdays within a date range
Weekday := "2" : "3";
StartDate := [01/04/2002];
EndDate := [10/04/2002];
R := @TextToTime(@Explode(@TextToTime(@Text(StartDate) + " - " + @Text(EndDate))));
D := @Replace(@Text(@Weekday(R)); Weekday; "X" + Weekday);
W := @Trim(@Right(@Left(@Explode("<" + @Implode(D + "=" + @Text(R); "<") + "<"; "X"); "<"); "="));
@Prompt([OK]; "Test"; @Implode(W; "; "))


Calculate the number of weekdays between two date fields
diffDays := (EndDate - StartDate) / 86400 + 1;
strtDay := @Modulo(@Weekday(StartDate); 7);
endDay := @Modulo(@Weekday(EndDate); 7);
result := (diffDays - endDay + strtDay - 8) * 5 / 7 - @Max(-2; -strtDay) - @Min(1; endDay) + 5 - strtDay + endDay

  20:56:28 |  


PermaLinkiNotes pour SmartPhone
Dernièrement, un client m’a demandé si on pouvait utiliser iNotes avec leurs gsm. La plupart des employés de cette société sont équipés de Nokia 5070. C’est un vieux modèle qui n’est plus commercialisé mais qui peut tout de même accueillir Opera mini.

iNotes n’est pas utilisable avec les browsers embarqués dans les gsm, que ce soit IE Pocket PC ou Opéra mini ou un browser « constructeur », cela ne change rien à la donne. iNotes est bourré de javascipt, il y a des popup partout et les css sont un cauchemar à interpréter, il n’est donc pas étonnant de tomber là-dessus :



Ils ont bien fait les choses chez lotus, ils testent le navigateur à la place de nous afficher un truc tout pourri

Ce qui semble le plus poser de problème à la dernière génération de mini navigateur c’est moins le javascript que les css. Pour preuve, j’ai pu tester Domgle (recherche ajax) avec Opéra mini beta 4 et grande a été ma surprise (oui je parle un peu comme Yoda en ce moment) lorsque je me suis rendu compte que le navigateur exécutait mon code ajax sans problème mais qu’il interprétait mal ma css et affichait les résultats en vrac :



En fait c’est plutôt ma css qui n’est pas adapté au navigateur.

Bref passons… Donc, non, iNotes n’est pas utilisable avec un navigateur de gsm / pda / smartphone. Par contre, on peut tout à fait imaginer proposer, à l’aide d’une vue simplifiée, la liste des mails "en arrivés" ainsi que l’agenda de l’utilisateur. On peut aussi créer un masque simplifié de visualisation et d’envoi de mail.

Je suis loin d’être le premier à avoir pensé à cela, Rob Wunderlich publie même une base contenant des éléments de structure à copier dans le modèle de BAL. Rob a fait du bon travail mais son code à plusieurs limitations :
  • Il n’est pas compatible V5 (mon client est encore en V5 jusqu'en octobre).
  • Les entrées de l’agenda ne sont pas disponibles.
  • Sa vue des messages en arrivé fait intervenir @UserName dans sa sélection (pas bon du tout pour pleins de raisons…).
  • Un petit bug en V7 : lors de l’envoi de mail, ben le mail il part pas et il est sauvegardé en brouillon (en fait c’est un bug de @mailSend en V7).
Bon pour toutes ces raisons et surtout parce que mon client était intéressé par ma proposition, j’ai repris le travail de Rob pour palier aux limitations sus nommées (oui je parle aussi comme Arielle Dombasle parfois).

Voici donc le résultat après une petite journée de travail :

La vue agenda

La vue inbox


La visualisation d’un message


Rédaction d’un message



Avec un peu plus de temps, on peut faire mieux mais ceci convient tout à fait pour le moment. Il ne faut pas aussi oublier que plus c’est light plus c’est rapide à l’affichage (même en 3G, on a vraiment l’impression de revivre l’époque du RTC parfois…).

Pour ce qui est des tests et pour éviter de ruiner votre forfait, vous pouvez utiliser ces émulateurs très pratiques Opera Mini Beta 4 ou la version 3.1.8.

  21:35:18 |  


PermaLinkOpenPreferences
Dans la série « j’en apprends tout les jours avec Domino » voici ma dernière trouvaille : la commande ?OpenPreferences.

Pour commencer ouvrez votre navigateur et tapez cette url :
http://Nom de votre serveur/$Preferences.nsf?OpenPreferences

Pour les gros faignants vous pouvez vous servir de mon serveur :
http://www.domlike.net/$Preferences.nsf?OpenPreferences

Bon voilà pour les présentations, maintenant à quoi elle sert cette base ? hein ? Je ne vais pas vous refaire la seule page de l’aide du designer y faisant référence, non, je vais simplement reprendre le premier paragraphe qui fait une bonne synthèse :

« Dans une application Notes, de nombreux paramètres, tels que la façon dont est formatée une valeur de date ou d'heure ou les préférences de langue par défaut, sont définis via le système d'exploitation de l'utilisateur. Ce dernier a la possibilité de modifier ces paramètres en fonction de ses préférences. Dans une application Web, les formats sont déterminés par les paramètres installés avec le navigateur. La commande URL OpenPreferences permet aux utilisateurs d'applications ouvertes dans un navigateur de sélectionner les formats d'affichage à mettre en oeuvre pour les applications résidant sur un serveur ou sur tous les serveurs au sein d'un domaine. »

Il y a aussi cette remarque très intéressante :

« Remarque Les paramètres que l'utilisateur définit pour OpenPreferences ne prévalent pas sur les paramètres personnalisés que vous spécifiez pour une colonne de vue ou un champ. »

Quand utiliser cette base ?
Oui cette base peut paraître au premier abord complètement inutile mais à y réfléchir de plus prêt pas tant que ça en fait. Prenez le cas d’un utilisateur itinérant utilisant une application web :
Ses paramètres peuvent changer suivant le pays ou il se trouve.
Suivant les politiques windows (GPO) il peut ne pas avoir la possibilité de changer celles-ci.
La base lui serait très utile.
Mais pour nous, développeur, la plus grande utilité que je vois à cette base c’est la possibilité avec son propre pc de « simuler » ce que verront les utilisateurs d’autres pays en terme de format de date/heure de currency, etc…

Ca m’aurait permis d’anticiper certains problèmes (de ce type)

Comment fonctionne cette base ?
En fait depuis le début de ce billet je parle de base mais il n’en est rien. Ce n’est pas une base. Si vous regardez votre serveur domino vous ne verrez pas de $Preferences.nsf. De plus ce qui actionne l’apparition de ce ces paramètres c’est la commande ?OpenPreferences. Cela fonctionne comme la commande url ?login qui, elle, fait apparaître le masque d’authentification.

Le code des pages qui apparaissent est placé dans le répertoire data/domino/template. Les fichiers concernés sont les suivants :



Comme vous disposez des sources il est tout a fait envisageable d’adapter celles-ci à votre convenance et même l’intégrer de manière transparente dans une de vos application.
Le fonctionnement général est assez simple. Vous définissez vos paramètres et ils sont stockés dans un cookie :



L’étendue de ces préférences est donc liée au domaine.

Je ne sais pas si je suis le seul sur terre à être passé à côté mais je pense bien que ça me servira dans le futur (au moins à me la péter ).

  17:48:07 |  


PermaLinkIntégration de XML/SWF Chart dans Domino
Dans une de mes dernières applications web, mon client m’a demandé un module "Statistiques". Ce module devait comporter plusieurs graphiques basés sur les données saisies par les utilisateurs de l’application.
Je me suis souvenu d’un article de Philippe qui parlait de XML/SWF Chart.

J’ai donc suivit ses conseils et adapté assez facilement ce fabuleux outil de représentation graphique et voici un exemple de rendu :



Pas mal non ? Je peux vous dire que ça a fait sont petit effet. N’hésitez donc pas une seconde à utiliser cet outil. Et encore merci à Philippe.

  22:03:38 |  10 


PermaLinkMicrosoft vs Lotus
Pour ceux qui manquent d'arguments pour défendre Domino face aux produits proposés par Microsoft ou ceux qui veulent bien affûter leurs armes, voici un document très intéressant. Ce petit doc de 13 pages compare les produits Lotus Vs Microsoft à fonctionnalité égale :



Il détaille la multitude de produits Microsoft nécessaires pour égaler les fonctionnalités natives de Domino. Juste un exemple très parlant si l'on compare seulement les produits nécessaire pour avoir une solution de messagerie + messagerie instantanée :

Microsoft Messaging, Basic and Instant Collaboration
  • Windows Server 2003
  • Windows Server 2003 CAL
  • Active Directory 2000 or 2003 – Part of the Windows server licensing
  • Exchange Server 2003
  • Exchange Server 2003 CAL – Includes Outlook 2003
  • Internet Explorer 6 SP1 – for full OWA functionality including S/MIME and gzip compression
  • Windows Live Communication Server – Only runs on Windows Server 2003
  • Windows Live Communication Server CAL
  • SQL Server
  • Windows Messenger 5.1 or Office Communicator 2005
  • Outlook 2003 – for integrated email presence awareness

IBM Messaging, Basic and Instant Collaboration
  • Lotus Domino Server (Messaging Only)
  • Lotus Notes client CAL (Messaging Only)
  • Server OS of choice to host Domino & Sametime (Windows, UNIX, Linux, OS/400, ZOS, Solaris etc.)

Et l'on parle ici seulement des fonctionnalités de Mail+IM. Je vous laisse découvrir dans ce document la liste des produits Microsoft nécessaires dés que l'on veut ajouter en plus un environnement collaboratif

Ce document est à passer et à exposer à toutes les sociétés qui envisagent de migrer à court ou moyen terme. Même si elles ne font pas machine arrière, elle ne pourront pas dire que vous ne les avez pas prévenue en voyant leur TCO (Total cost of ownership) exploser !

  18:50:09 |  


PermaLinkI'll be back !
Il parait qu'une des règles d'or lorsque l'on a un blog c'est de ne jamais s'excuser de son inactivité. Je ne sais pas qui a fait ces règles (et je m'en balance un peu d'ailleurs) mais je ne vais pas la respecter et donc m'excuser . Désolé aussi de ne pas avoir répondu à certains mails durant cette période et ceux qui ont eu une réponse ont eu de la chance .

Pourquoi cette inactivité prolongée ? Ben j'en sais trop rien en fait. J'aime être en « suractivité cérébrale», avoir plein de choses sur le feu, tout ça. Mais peut-être que ces derniers temps j'ai trop abusé. Je ne suis pas si multi-tâche que je le pensais.

Parmi ces fameuses tâches qui m'ont fait m'écarter de ce blog il y en a une sur laquelle je reviendrai bientôt ici et qui me prend beaucoup de temps. Je ne peux par trop en parler mais c'est quelque chose auquel je tiens beaucoup. Je ne peu pas en dire plus mais sachez que j'aurai bientôt besoin de vous. Comme dirait un ami pilote de l'air « Something is cooking » (si ça c'est pas du teasing !).

Ce blog et certains mails n'ont pas été les seules victimes de ma baisse de régime. Je suis allé en Irlande mais je n'ai finalement pas assisté au ILNUG comme prévu. Les résumés de cet évènement qui fleurissent ici ou là, me font un peu regretter ce choix (surtout quand je vois ceci !) mais je n'avais vraiment pas l'esprit à ça. Donc pas de résumé du ILNUG de ma part mais de très bons souvenirs d'Irlande (photos are coming).

Heureusement qu'il y a plusieurs blogs francophone sur Domino, vous avez pu continuer à être informé des dernières nouvelles par l'éternel Dominux et ses confrères dont vous trouverez la liste dans la colonne de droite.

Bon ben maintenant que c'est dit, il va falloir que je m'y remette !

  19:39:31 |  


PermaLinkTester son Anti-virus
Comment savoir si l’anti-virus de mon serveur Domino fonctionne ?

On ne vous a jamais posé cette question ? Personnellement, on me l’a posé plus d’une fois.
La plupart des sociétés dans lesquelles je suis intervenu faisait entièrement confiance à l’éditeur et ne procédaient à aucun test véritable.

Attendre une attaque pour voir si tout fonctionne bien, est un peu risqué à mon sens.

Une des solutions est d’utiliser les fichiers de test que la plupart des éditeurs mettent à disposition de leurs clients. C’est une bonne solution mais j’ai tendance à penser que c’est un peu de la triche. Rien ne nous prouve que l’anti-virus détectera bien les futurs « vrais » virus.

La solution qui à ma préférence c’est ce que propose Eicar. Ce site met à notre disposition un fichier exécutable viral inoffensif. C’est un peu comme une petite bombe nucléaire sans sa charge atomique. Vous pouvez télécharger l’exécutable simple ou bien l’exécutable zippé (une ou deux fois) pour voir si votre AV dézippe correctement. Vous désactivez l’AV de votre station et vous téléchargez ce fichier pour faire un petit envoi de mail avec celui-ci en PJ. Vous pouvez ainsi voir si tout fonctionne comme prévu. Bref c’est pour moi une très bonne solution et sans danger.

A vos tests !

  20:53:44 |  


PermaLinkMalentendu sur les BackEnd documents en LS
Dernièrement, on m'a demandé de me pencher sur une application V5 qui malgré un module de gestion de « locks » de document, générait toujours des conflits de sauvegarde. En y regardant de plus prêt je me suis rendu compte assez rapidement de l'erreur du développeur ayant conçu ce système de lock. Je pense que c'est une erreur dont on a tous été l'auteur à nos débuts et qui nécessite un petit éclaircissement.

En LotusScript, lorsque l'on ouvre un document avec un client lourd, on peut en exploiter le document frontal (frontend document, client side). Dans les évènements du masque, on le retrouve souvent en paramètre nommé "Source" mais on peut aussi récupérer cet objet par la propriété "CurrentDocument" de l'objet NotesUIWorkspace.

Le document frontal est un document en mémoire qui est spécifique au client qui ouvre ce document. Lorsque l'on veut mettre à jour les données du document frontal avec le document en arrière plan (backend document, server side) on utilise la méthode reload.

Ce que l'on sait moins (en tout cas au début) c'est que le document en backend est lui aussi en mémoire côté client et que les modifications du document réalisées par un agent ou un autre utilisateur ne sont pas répercutées tant que le document ouvert n'a pas été fermé et ré ouvert.

Prenons un cas concret :
  • Deux utilisateurs A et B ouvre le même document en lecture.
  • L'utilisateur B édite le document et modifie le champ toto et le fait passer de la valeur "litoto" à "cpasdrole".
  • L'utilisateur B enregistre et ferme le document.
  • L'utilisateur A entre en modification, fait un reload mais la valeur du champ toto est toujours à "litoto". De plus, dans le post mode change ou dans un bouton d'action, si l'on regarde la valeur du source.document.toto(0) il sera aussi égal à "litoto".
  • L'utilisateur A ferme le document et l'ouvre a nouveau et le champ toto a bien pris la modification de l'utilisateur B.

Pour accéder au « vrai » document en backend, la solution est donc d'accéder au document par un autre biais que le notesuidocument. Vous pouvez faire comme ceci par exemple :

Dim vw As NotesView
Set vw = Source.Document.ParentDatabase.GetView("(UNID)")
Set BackEndDoc = vw.GetDocumentByKey(Source.Document.UniversalID)

Ou "(UNID)" est une vue dont la première colonne est égal à @Text(@documentUniqueID).

J'espère avoir été clair car ce n'est pas évident à expliquer tout ça. Concernant la gestion des locks, il y a plusieurs solutions possibles que je n'explorerai pas ici. Je voulais juste mettre le doigt sur ce mal entendu trop répété concernant les BackEnd documents.

  22:25:16 |  201 


PermaLinkSuivi des faits
Tout comme plusieurs de mes confrères blogueurs, je n’ai pas toujours donné de suite à tous mes billets. Je profite donc de celui-ci pour faire le point :

  • Concernant ma passion soudaine pour la course à pied, elle s’est un peu (beaucoup) estompée après ma tendinite du moyen fessier. En fait après une radio, j’ai découvert que cette tendinite n’en était pas une mais que c’était une fracture ischio-pubienne. Une tendinite qui met trois mois à guérir c’était louche aussi… Bon en tout cas une fracture c’est un peu plus classe qu’une tendinite de la fesse

  • Concernant mon imprimante, j’ai finalement acheté une HP Photosmart 6180. Les divers tests que j’ai pu voir (celui-ci notamment ) plaçaient HP et Canon en tête. J’ai longtemps hésité et j’ai décidé de rester fidèle à HP vu que je sortais d’une très bonne expérience.

  • Concernant le réseau d’indépendants, il se met en place petit à petit. L’idée suit son cours et les débuts sont encourageants. J’en profite pour renouveler mon offre : Si vous êtes indépendant que vous avez plusieurs années d’expérience à votre actif et que vous souhaitez faire parti de ce réseau, n’hésitez pas en m’en faire part. Inversement si vous êtes client sachez qu’il existe un moyen de s’offrir des prestations de grandes qualités pas plus onéreuses qu’en SSII.

Pour la suite, J’essayerai de donner suite un peu plus systématiquement à mes billets…

  07:39:49 |  


PermaLinkPlacetypes Lotus Quickr 8
La sortie de Lotus Quikr 8 approche est on commence en savoir un peu plus sur la bête. Pour ceux qui ont besoin de rappel, sachez que Lotus Quickr 8 est la suite de Lotus Quickplace 7. IBM avait plus ou moins abandonné Quickplace pour se rendre compte il y a seulement quelques mois du potentiel intéressant de celui-ci face à la monté en puissance de la demande d’applications collaboratives évoluées (Social Network).

Dernièrement, IBM a donc demandé à la société SNAPP de créer 11 templates (placetypes pour quickplace) à introduire dans cette nouvelle version :

  • Project Management
  • Ideas and Innovation
  • Image Repository
  • Meeting and Agenda Management
  • Activities Integration
  • Contact Management
  • Dynamic Surveys
  • Corporate Communications Management
  • Collaborative Presentation Development
  • Issues Escalation, Workflow and Management
  • J2EE Document Library Integration


Dans la lignée des derniers développements d’IBM, ces templates utiliseront le toolkit dojo. Et en plus ils seront gratuits… Que demande le peuple ?

  10:01:52 |  10 


PermaLinkInstallation d'un Serveur Sametime 7.5 FP1 sous Windows.
La semaine dernière, je vous annonçais que j'allais passer une partie de la semaine à installer un serveur Sametime 7.5 chez un de mes clients. Cela c'est bien passé dans l'ensemble. J’ai tout installé en une journée (serveur Domino inclus) et j'ai mis deux jours à régler 2 petits bugs (la fameuse règle des 80/20...). Voici donc un tout petit résumé de cette installation.

Lire la suite . . .

  20:53:38 |  12 


PermaLinkImprimante multifonctions
Ce matin, après 7 ans de bons et loyaux services mon imprimante HP OfficeJet T45 a rendue l'âme :



C'est la courroie qui entraîne les têtes d'impressions qui a rompue. Elle était extrêmement usée et je sentais que la fin était proche.
Durant sa petite vie, elle a tout de même connue 4 PC et malgré son câble parallèle un peu "has been" (enfin, lent surtout...) elle remplissait très bien son rôle. Ce fut vraiment un très bon investissement.

Maintenant, je dois donc la remplacer et je pense rester fidèle à HP avec une Officejet 6310 ou 7210 à moins que vous ayez une meilleure piste ?

  11:59:41 |  


PermaLinkMessages d'erreur
J'imagine la tête du traducteur devant traduire ces messages d'erreur :



Il faut dire que je l'ai bien cherché, j'ai utilisé la commande :
@Command( ViewSwitchForm ; "form2" );

Si j'ai un conseil à vous donner c'est d'éviter d'utiliser ViewSwitchForm dans vos développements. Il y a pas mal d'effet de bords autours de cette commande. Préférez un lui ce code LS :

doc=uidoc.Document
uidoc.close
doc.form="form2"
workspace.EditDocument(false,doc)

Vous aurez moins de surprise...

  08:15:18 |  


PermaLinkV8 et Blog de Pierre Moysan
Ben non je n’ai pas encore travaillé sur la V8…J’ai honte fouettez moi, je le mérite. En fait j’ai une petite excuse :
La sortie de la V8 à coïncidée peu ou prou à l’apparition chez moi d’une petite maladie intestinale plus communément appelé gastro .
Du coup ça m’a mis en retard dans mon travail et j’ai loosé jusqu'à ce week-end pour tout rattraper (sauf la gastro ).

Je ne vais donc pas vous causer de la V8 mais d’un blog qui mérite vraiment le détour. Ce blog c’est stergann.org de Pierre MOYSAN. Certains d’entre vous le connaissent déjà mais pour les autres sachez qu’il mérite de rentrer dans vos readers rss. Voici deux de ces derniers billets qui ont attirés mon attention :


En plus Pierre est un vrai passionné d’astronomie. Beaucoup de mes amis croient que moi aussi je suis un passionné d’astronomie car j’ai un gros télescope dans mon salon. En fait je le sors que de temps en temps à mes invités ou mes enfants pour regarder la lune ou la nébuleuse d’Orion.

  21:04:34 |  16 


PermaLinkLotus Notes et Domino 8 Beta sont sortis !
Hier soir sans rien dire à personne, les petits jokeurs d’IBM ont mis la beta de Lotus 8 en download. C’était sans compter sur la vigilance de Jean-Yves Riverin alias JYR sur Dominoarea qui fut le premier au monde à télécharger et à poster son commentaire sur le tout nouveau forum ND8 :



JYR premier au monde sur quelque chose, c’est un évènement aussi important que la sortie de la béta (C’est pour rire JYR… Je précise parcequ’il est Canadien est ils ont pas toujours le même humour que nous ces gens là )

Me concernant il me reste actuellement 1,2Go à télécharger (C’est là ou j’suis content d’être à 2Mo en download) :





Les versions disponibles sont Windows, AIX, iSeries, Linux etSolaris.

Thanks again to JYR and stay tune for the next event !!

  09:10:00 |  12 


PermaLinkAutomatiser le redémarrage d’un serveur Domino sous Windows
Bon je sais que la première question que vont se poser certain c’est :

Pourquoi automatiser le redémarrage un serveur Domino ?

Ben il y a plusieurs raisons possibles :
  • Certains problèmes liés à la tache http et à sa gourmandise en RAM.
  • Pour faire des opérations de maintenance (compact, updall, fixup) sur les bases log.nsf, names.nsf, mail.box, etc…
  • Pour faire des sauvegardes bases fermées.

Comment automatiser ce redémarrage ?
  • Si il s’agit d’un simple redémarrage, on peut créer un document programme tel que celui-ci :



  • Si il s’agit d’un arrêt puis d’un démarrage x minutes plus tard, on peut exécuter un .bat avec les instructions suivantes :

    net stop "Lotus Domino Server (LotusDominoData)"

    on fait nos trucs

    net start "Lotus Domino Server (LotusDominoData)"

    On peut même écrire ce que l’on veut dans le journal système windows avec ce type d’instruction :
    logevent -s S -r "Script Event" "Shutdown Completed."

En fait aucune de ces deux solutions ne me convient vraiment :
  • Pour la première, on ne peut pas effectuer d’actions entre l’arrêt et le redémarrage du serveur.
  • Pour la seconde, on est obligé de passer par le scheduler de windows pour exécuter le .bat à heure régulière. Cela n’est possible que si il y a une session d’ouverte car le schéduler n’est pas un service windows…
C’est là ou j’ai besoin de votre expérience. Comment faîte vous ?

On m’a orienté vers Crontab qui peut être exécuté comme un service windows. Le connaissez-vous ?

  21:07:49 |  30 


PermaLinkMy Gelaskins
Joe Litton dans un de ces derniers billets a parlé de son ipod 30Gb ainsi que du skin qu'il a acheté sur le site de Gelaskins. C'est vrai qu'un ipod traîne souvent dans les poches et ça se raye vite.

J'ai donc choisi le mien et il est arrivé aujourd'hui. Ca se pose facilement et ça rend plutôt bien.



Bon le problème c'est que l'on ne voit plus que j'ai acheté le rouge et que je suis un gars hyper généreux mais sinon ça donne bien.
Dans 2 ans quand je voudrai donc le vendre dix fois moins chers que je l'ai acheté, il sera nickel chrome !

A propos si vous aimez le rock indépendant, je vous conseille fortement le groupe Karate. C'est ma plus belle découverte 2006.

  20:25:12 |  


PermaLinkHeberger un serveur Domino en 2007
Pour un particulier, héberger un serveur Domino est quelque chose de relativement onéreux comparé à d’autre type de serveur d’application (php en particulier).
L’hébergement le meilleur marché est actuellement l’offre de dominodeveloper qui pour 25$/mois vous offre un hébergement mutualisé avec 200Mb d’espace disque et 2Go de bande passante mensuelle. Depuis plus d’un an que domlike.net y est hébergé, je n’ai eu que très peu de problème. Ils ont une hotline très réactive. La seule lacune vient de la mutualisation en elle-même et des faibles performances du serveur.

Du coup je me suis intéressé au système de location de serveur. Yogi nous parle régulièrement de sa Dedibox. J’y ai donc jeté un oeil ainsi qu’à son seul concurrent sérieux à savoir Kimsufi. Après une courte analyse, l’offre Dedibox semble d’un meilleur rapport qualité prix mais ce qui m’a fait vraiment pencher en faveur de cette dernière c’est la communauté de passionnés qui se sont regroupés autour du forum dedibox-news. C’est un peu le Dominoarea de la dedibox .

Pour 36 € par mois on dispose du serveur suivant :
  • Processeur 2GHz
  • 1024 Mo RAM DDR-2
  • Disque dur 160Go SATA-2
  • Bande passante illimitée !!!

Bref, j’ai donc commandé ma Dedibox le 26 février et elle m’a été livrée le 28. Je me connecte à mon interface de gestion, demande la distrib W2K3 serveur :



En moins de 10 minutes je parviens à me connecter à ma dedibox via une session Remote Desktop.

Je bricole encore un peu dessus mais je ne devrais pas tarder à migrer le site j'ai déjà migré le site. Je pense que vous allez vite vous rendre compte de la différence de perfs...

Aujourd'hui, ce système d'hébergement est pour moi la meilleure solution et pas seulement pour un particulier. Bien sur il faut maîtriser l'administration du serveur mais ça reste vraiment à la porté de tout le monde (je parle bien sur des distributions Windows).

Prochain article : Installer un serveur Domino sur une Dedibox W2K3

  14:28:25 |  23 


PermaLinkPrésentation Lotus Notes 8
Voici une présentation flash exposant quelques nouvelles fonctionnalités de LotusNotes 8. C’est la première fois que l’on en voit « officiellement » autant.

Le seul truc qui n’a pas (encore) changé c’est le workspace.

  07:27:43 |  


PermaLinkIrish Lotus Notes User Group
Cette semaine je me suis inscrit au séminaire 2007 du Irish Lotus Notes User Group. Cette manifestation se produira le 24 et 25 mai prochain à Dublin.

iLug 2007

L'édition 2006 avait été un vrai succès et cette année est aussi très prometteuse. Plusieurs éléments m'ont incité à m'inscrire :
  • La beta de Lotus Notes 8 devrait être sortie. Fini les print-screen. On aura du concret sous les yeux et dans les mains.
  • Je vais enfin pouvoir rencontrer et discuter avec Ed Brill, Alan Lepofsky, Julian Robichaux, Bruce Elgort, Bill Buchan, etc...
  • Ces deux jours sont entièrement gratuit
  • C'est en Irlande et Ryanair a eu la bonne idée d'ouvrir une ligne Biarritz/Shannon à 0,38 € l'AR :

J’espère aussi qu’il y aura quelques frenchies dans le lot.

Du coup j'en profite pour passer une semaine de vacances avec toute ma p'tit famille. Je ne suis jamais allé en Irlande. Je ne devrais pas être déçu, on m'en a dit que du bien.

  21:39:58 |  12 


PermaLinkIPod Nano 8Gb
Ben oui j'ai craqué et comme dirait Lorie,  j'suis une fashion victim.
En fait, ça faisait longtemps que je lorgnai dessus sans franchir le pas... jusqu'à ce lundi ! Donc messieurs mesdames, laissez moi vous présenter mon nouvel ipod nano 8Gb :



Les premières impressions sont plutôt bonnes. La prise en main est à la hauteur de sa réputation. Très vite on navigue sans difficulté dans les divers menus.

Arrivé chez moi, je télécharge iTunes (31Mo tout de même) et je plugue mon ipod. Tout de suite il me propose de m'enregistrer (ce que j'ai fait) et de mettre à jour le firmware de la 1.1.1 à la 1.1.2. Tout est fait en 3 minutes montre en main.

Concernant iTunes, on m'en avait dit le plus grand mal mais force est de constater qu'il est plutôt facile à utiliser.

Première surprise, l'Ipod ne fait pas 8Go mais 7.4Go. Renseignements pris l'OS ferait 300Mo et le reste est utilisé par divers softwares. On ne peut pas dire qu'ils aient hyper optimiser l'espace disque côté OS... Cela veut-il dire que les premiers Ipod 2go ne faisaient en fait que 1.4Go ?!

Premier rip de CD et plantage sur le dernier morceau... Mon lecteur CD semblait boucler sans arrêt sur la fin du morceau. En suivant, je ripe une dizaine de CDs sans problème. Ripper un Cd reste tout de même assez long. Je n'ai pas calculé mais il va bien me falloir une bonne journée pour ripper toutes mes CDs (+- 400). La bonne surprise c'est la vitesse de synchronisation entre le PC et l'IPod, c'est vraiment très rapide avec à peu prêt 10 secondes pour un album transféré.

Concernant la qualité d’écoute, elle est plutôt bonne. J’ai fais par contre l’erreur d’acheter des écouteurs type « implant auriculaire » (45€) que je ne supporte finalement pas. Je préfère largement les écouteurs d’origines.

Voilà pour les premières impressions. Je vous en dirais sûrement des nouvelles ces jours-ci.

  20:43:53 |  11 


PermaLinkRecherche freelances compétents désespérément
Il m’arrive régulièrement d’avoir des demandes de prestation dont je ne peux donner suite par manque de disponibilité ou par éloignement géographique trop important.

Pour donner suite à ces demandes je voudrais créer un réseau d’indépendants (développeurs et administrateurs). Le but final étant de garantir aux clients en plus d’une excellente qualité de service, une réactivité et une disponibilité accrue.

Je suis déjà en contact régulier avec quelques indépendants triés sur le volet mais je suis loin de couvrir le tout le territoire national ! Donc si vous êtes freelance et que vous êtes intéressé par cette idée, contactez moi par email.

  21:52:27 |  15 


PermaLinkMonitorer les transferts d' emails externes
Lors de prestation en administration, j'ai régulièrement cette demande :

"Est-il possible d'être automatiquement alerté lorsque l'on ne reçoit plus de mail de l'extérieur ou lorsque ceux que l'on envoi ne sortent pas ?"

Envoyer et recevoir des mails est l'une des fonctions primaire de notre système d'information et portant cette fonctionnalité n’est pas si évidente que ça à monitorer.

Le problème principal vient du fait qu'il existe de plus en plus de serveurs intermédiaires (Anti-virus, Anti-Spam, serveur relais, etc.…) entre notre serveur Domino et l'extérieur (et inversement). On est donc potentiellement de plus en plus sujet à la défaillance d'un de ces éléments et du coup à la rupture du transfert des mails.

Si l'on souhaite anticiper les appels des utilisateurs suite à ce type de problème il faut mettre en place un système de monitoring. Mais comment faire ?

Je me suis longtemps posé cette question jusqu'a ce que je découvre que certain providers disposent d'adresse email de type ping@provider.com (si vous voulez un exemple envoyez moi un mail). Ces adresses renvoient un mail en réponse de celui envoyé. Dans le corps du message tous les champs du mail envoyé sont présent ce qui est trés utile.

La découverte des adresses ping m'a ouvert les yeux sur la solution suivante :
  • 1 Un agent envoi un mail à l'adresse ping toutes les 5min avec le unid du document qui à servi à créer le mail en sujet. Ce document est stocké dans la base.
  • 2 Un agent exécuté "before new mails arrives" reçoit la réponse du ping et flage "reçu" le document ayant servi à l'envoi. Le mail reçu est supprimé.
  • 3 Toutes les 20 min le serveur de monitoring exécute un fichier JScript qui effectue une requête AJAX sur un vue affichant la liste des mails n'ayant pas reçu de réponse dans les dernière 20 minutes.
  • 4 Si il y a plus de 2 documents n'ayant pas reçu de réponse, le serveur de monitoring lance une alerte.

Voici le schéma général :



Dans la base de monitoring, une vue affiche les mails envoyés avec le temps de réponse :



L'outil de monitoring que je conseille à tout bout de champ c'est Advanced Host Monitor. Il n'est pas cher (de 100 à 600$), il fait tout et en plus il a eu plein d'Awards.

Voici le test créé dans host monitor :



Voici les source utilisés :

Jscript pour HostMonitor - Voici l'agent d'envoi d'email - Voici l'agent de réception d'email

Cela fait plus d'un mois que ce système de monitoring est maintenant en place et il s'avère très efficace. N'hésitez pas à me contacter ou à écrire un commentaire si vous avez besoin de renseignement supplémentaire sur cette solution.

  09:24:51 |  


PermaLinkDomgle V1.2 is Out (English)
A new release of the fabulous search tool called Domgle is out :



I was not alone to work on this release. A special thanks to Renaud Gouffé for this fantastic design. There are new functionalities and a new error reporting system :



You can follow the project's evolution and download the Domgle db on openNTF. The online demonstration is still available here .

Thank you to Ed Brill and Julian Robichaux to have spoken about Domgle on their "How to sell Notes inside your organisation"(ID212) presentation :



You can download their presentation here.

Domgle is now in production environment in a lot of companies. For those who think about installing and customising Domgle but don't have time or people for it, don't hesitate to ask me .

  18:48:38 |  


PermaLinkDomgle V1.2 disponible
La version 1.2 du fabuleux outil de recherche multibase nommé Domgle est maintenant disponible :



Je ne suis pas le seul à y avoir travaillé, vous pouvez remarquer le beau design et le code HTML tout clean réalisé par Renaud Gouffé. Il y a aussi de nouvelles fonctionnalités et un nouveau système de rapport d’erreur :



Vous pouvez continuer à suivre l’évolution et télécharger les sources de ce projet sur openNTF. La version de démonstration est toujours dispo ici.

Je profite de ce billet pour remercier Ed Brill et Julian Robichaux pour avoir parlé de Domgle durant leur présentation "How to sell Notes inside your organisation"(ID212) lors de la dernière LotuSphere à Orlando :



Merci à Smicky sans qui je n’aurai jamais su qu’ils en avaient parlé. Vous pouvez d'ailleurs télécharger leur présentation ici.

Domgle est maintenant en production dans de nombreuses sociétés. Pour ceux qui envisagent de mettre en place ou de customiser Domgle sachez que je reste à votre entière disposition .

  18:16:56 |  


PermaLinkMise en place de google ADSense et modification du flux rss
La fréquentation de ce site augmentant de manière régulière, j’ai été obligé de passer à l’abonnement supérieur chez dominodeveloper.
Je payais 25$ pour le production plan 1 et j’ai du passer à 40$ par mois pour le production plan 2.
J’ai maintenant 5GB/mois de bande passante à disposition. J’espère tenir cette année sans devoir encore augmenter l’abonnement.

Pour éviter de trop tirer sur la bande passante, j’ai aussi réduit le flux rss qui ne diffuse que les 260 premiers caractères du billet.

Pour pallier à ce coût, j’ai aussi décidé de tester google adsense comme l’a fait Yogi l’année dernière. Côté design ça me gêne un peu, je ne trouve pas ça terrible terrible. Je ne sais pas trop ou mettre le bandeau sans gâcher le design général du site .

En tout cas, je suis curieux de voir le résultat. Je vous tiendrai moi aussi au courant de l’évolution des revenues.

  23:25:17 |  10 


PermaLinkInfos utilisateur
Lorsque l’on développe une application web sous Domino et qu’arrive le temps du recettage, on est souvent sollicité pour des problèmes de personnalisation du type :

« Monsieur Jeannot n’a pas les liens vers ses applications métier au niveau de la page d’accueil. »
« Il manque l'onglet aministration à Madame Dubus»
«etc...»


La personnalisation d’une application est très souvent liée :
  • A des rôles
  • A l’appartenance à certains groupes
  • A un niveau d’accès
  • Les trois à la foi

En V6+, pour connaître l’accès d’un utilisateur à une base, on peut utiliser le bouton « accés effectif » dans l’onglet général de la LCA. Mais il y a plusieurs problèmes à l’utilisation de cette fonctionnalité :
  • On n’est pas toujours en V6.
  • On n’est pas toujours gestionnaire de la base
  • On n’est jamais certain que les droits de l'utilisateur n’aient pas changés depuis le signalement du bug.
  • On ne sait pas si l’utilisateur disposait du bon login lorsqu’il a constaté l’anomalie.

Bref, pour faciliter le travail du support pendant la période de recettage, j’insère un petit bout de code JS qui affiche toutes les informations nécessaire lorsque l’utilisateur fait un alt-u:



Lorsque l’on voit arriver une fiche d’anomalie avec cette boite de dialogue en copie d’écran, on sait que notre travail sera vraiment facilité.

Voici donc le code à insérer dans votre masque /page :

<script language="JavaScript" type="text/javascript">
nn=(document.layers)?true:false; ie=(document.all)?true:false; 
function keyDown(e) { 
	var evt=(e)?e:(window.event)?window.event:null;
	 if(evt){ var key=(evt.charCode)?evt.charCode: ((evt.keyCode)?evt.keyCode:((evt.which)?evt.which:0));
		if(key=="85" && toucheAlt(e)==true ) showUserInfo(); 
	}
}
// retourne vrai si la touche Alt a ete enfoncee avec la derniere touche
function toucheAlt(e) {
  if (window.event) {
    return (window.event.altKey);
  } else {
    return (e.altKey || (e.modifiers % 2));
  }
} 
document.onkeydown=keyDown; 
if(nn) document.captureEvents(Event.KEYDOWN);
function showUserInfo(){
var userName =  '<Valeur calculée 1>';
var userAccessLevel = '<Valeur calculée 2>'
var userRolesAndGroup = '<Valeur calculée 3>';
alert('User name : '+userName+'\n\nUser access level : '+userAccessLevel+'\n\nUser roles & groups : \n'+userRolesAndGroup );
}
</script>

Voici le code des 3 valeurs calculés :
Valeur calculée 1 : @Name([CN];@UserName)
Valeur calculée 2 : @Subset(@UserAccess( @DbName );1)
Valeur calculée 3 : @Implode(@UserNamesList;", ")

Bien sur le code est brut et vous pouvez le customiser en fonction de vos besoins et de l’application.

  19:29:03 |  


PermaLinkCours de Javascript
Pour ceux qu’Ajax rebute car ils ont du mal à digérer le javascript, ou ceux qui comme moi pense en savoir finalement assez peu sur ce fabuleux langage de programmation, voici une série de vidéos formations en Anglais données par Douglas Crockford (Yahoo) :

Jake en fait mention dans son dernier billet. J’avais commencé leurs visualisations la semaine dernière et je peux vous dire qu’elles sont vraiment faciles à suivre. J’ai découvert cette série de vidéo et bien d’autre via le YUI Theater. Belle initiative de yahoo que d’avoir créer ce portail dédié aux interfaces riches.

Si vous êtes septique sur l'utilité de regarder ces vidéos, voici un petit quiz :
  • Connaissez vous la différence entre les opérateurs a==b et a===b ?
  • Quel est le scope d'une variabe non déclarée ?
  • Que veux dire la ligne : value instanceof Array ?

Le javascript est plus que jamais un langage d’avenir. Autant donc bien le maîtriser.

  20:19:12 |  32 


PermaLinkBlogSphere V3
Ca fait toujours plaisir



  19:04:38 |  18 


PermaLinkLa LotuSphere 2007 a commancé ! Et j'y étais !
Ben oui j'y suis ! La preuve :



Bon je sais c'est moyen mais j'ai pas pu résister. Belle initiative en tout cas que cet espace dans Second Life. J'étais très septique sur l'utilité d'un tel soft mais après avoir fait quelques rencontres intéressantes dans les locaux d'IBM, je dois avouer m'être bien trompé.

J'ai en effet rencontré quelques bloggeurs et des architectes IBM. Ce que vous savez peut-être pas c'est qu'IBM a mis à notre disposition des architectes Lotus rien que pour nous et tous disponiblent pour répondre à nos questions :



Profitez-en ! Ils ont l'air trés callé sur leur sujet (en même temps vaut mieux...)

Voici deux bloggeurs Italiens que j'ai rencontré ce soir :

Daniele Vistalli de vistali.it :



Giuseppe Alle de dominopoint.it :



En tout cas la vraie LotuSphere 2007 a bel et bien commencée ! Vous pouvez en savoir plus sur le blog de Dominux qui nous a déjà fait quelques retours.

  20:40:10 |  


PermaLinkFive things you may not have known about me (French)
J’ai été taggé par Joe Litton pour participer au fameux "Five things you may not have known about me". Voici donc ma contribution :

  • 1. J’ai fais mon service militaire dans les fusillers commandos de l’air. Rassurez-vous c’est pas moi qu’est choisi…. Je voulais juste être tranquille pendant 10 mois et on m’avait dit que l’armée de l’air c’était la planque. Pas cool la planque en tout cas . Bon l’avantage c’est que j’ai touché et tiré avec plein d’armes et que je me suis fait pleins de potes.

  • 2. J'ai eu pas mal d'ordinateurs dans me petite vie. En voiçi la liste classée par ordre chronologique :
    Je garde une affection toute particulière pour l'Apple IIc. Mes premières nuits blanches, je les aient passées devant un jeu nommé Sorcellerie (Wizardery).
    Je me souviens encore du premier niveau comme de ma pôche.J'ai encore en tête mon sortilège préféré nommé TILTOWAIT dont j'ai retrouvé la trace dans une doc scannée :



    C'est sûrement ce jeu qui m'a donné le goût des RPG (Role playing game).

  • 3. Durant mon adolescence, et longtemps après, j’ai fait énormément de jeux de rôle. Cela allait du JDR traditionnel tel que Dark Sun jusqu’au plus trash comme In Nomine Satanis. J’étais personnellement maître de jeu sur L’appel de Chtulu. Ce jeu de rôle est issu des nouvelles de l'écrivain américain H. P. Lovecraft dont je vous conseille vivement la lecture si vous aimez la littérature fantastique.

  • 4. Côté musique, j’aime beaucoup le Rock progressif (Genesis, Yes, Jethro tull,etc…) et le Jazz. Je suis particulièrement fan de John Coltrane et Magma.

  • 5. J'en sais rien...


  21:27:03 |  11 


PermaLinkMails HTML dans outlook 2007
Pour ceux qui en ont marre du rendu des mails HTML dans Lotus Notes sachez qu'il en sera bientôt de même dans Outlook. En effet la version 2007 n'utilisera plus IE pour traduire l'html mais Word 2007. Le problème c'est que Word 2007 ne supporte pas les images d'arrière-plan, le positionnement CSS, les CSS flottants, les GIF animés, les animations Flash ou les autres plug-ins, autant de fonctions qui sont abondamment utilisées dans les newsletters. La raison de ce changement n'est pas très claire mais il semblerait que ce soit pour des problèmes de sécurité.

Tiens donc, Oulook ne serait pas trés sur ? Sans blague...

Merci à clubic pour l'info.

  19:19:11 |  10 


PermaLinkdb.FTSearch à oublier ?
Dans le cadre du développement de Domgle, je me suis rendu compte d'une belle anomalie liée à la méthode DB.FTSearch. Cette méthode gère très mal les droits d'accès aux documents. Voici ce que j'ai pu constater :

Dans un agent web s'exécutant en tant qu'utilisateur web (option de l'agent "run as web user"), la methode DB.FTSearch renvoie dans la collection résultant de la recherche des documents dont l'utilisateur n'a pas forcément les droits d'accès.
On s'en rend compte car lorsque l'on parcour la collection, on tombe sur des documents qui ont leurs champs et leurs propriétés vides. Un doc.GetitemValue("Form")(0) retourne "" de même pour doc.UniversalID.

Comment contourner le problème ?
Le premier réflexe que l'on peu avoir est de faire un test sur un des champ du document et si il est vide, on passe au document suivant. Je vous parle de cette solution car c'est celle que j'avais adoptée. Ben en fait c'est une très mauvaise solution.
Le problème vient du fait que la methode DB.FTSearch renvoie au maximum 5000 documents et si votre base en contient bien plus que cette limite, l'utilisateur peut se retrouver devant un résultat de recherche ne reflétant pas la réalité.

La bonne méthode est à mon sens de tout simplement oublier db.FTSearch mais d'utiliser plutôt NotesView.FTSearch. Lorsque l'on fait un db.getView("NomVue"), il filtre la vue avec les droits de l'utilisateur. Bien entendu cette vue doit afficher tous les documents de la base (SELECT @All).

Je n'ai pas remarqué de différence notable en terme de temps de réponse.

Conclusion :
Je ne sais pas si vous avez pu constater la même chose, je ne sais pas non plus si cela est spécifique aux agents web mais quoi qu'il en soit le bug est bien là. Pensez y donc a deux fois avant d'utiliser le bon vieux db.FTSearch.

AddOn :
Ces variables du notes.ini permettent de bypasser la limitation des 5000 documents FT_MAX_SEARCH_RESULTS
TEMP_INDEX_MAX_DOC

  09:22:19 |  13 


PermaLinkTable UNK
En ce moment je participe (entre autre…) à une migration V5 -> V7. Lorsque l’on migre un domaine il y a au préalable une série de vérifications à réaliser. Par mis elles, il y a la taille et la configuration de la table UNK de tout vos names. J’ai décidé de faire un petit billet dessus car je me suis rendu compte que cette table n’était pas forcément connue de tous.

La table UNK (UNique Key) est une table interne qui stocke tout les noms de champs contenus dans une base. Pour ceux qui connaissent le client designer, c’est la liste des champs qui apparaît lorsque l’on veut donner à une colonne la valeur d’un champ en particulier. Cette liste est constituée des noms de tous les champs insérés dans les masques de notre base ajoutée à ceux des documents.

Pourquoi s’intéresser à cette table ?
Bien tout simplement car elle a une taille limite et qu’une migration modifie certain template en y ajoutant des masques et que l’on risque de s’approcher voir dépasser cette fameuse limite. Peut-être êtes vous déjà tombé devant ce type d’erreur :
  • Database has too many unique field names
  • Cannot Store Document; Database has too many unique field names. Please ask your administrator to compact the database.

Quelle est donc sa limite ?
La limite de cette table est de 64ko ce qui correspond à environ 3000 champs ayant des noms de 10 caractères en moyenne. Cette limite est valable pour toutes les versions de base Domino.

Que faire pour éviter de passer cette limite ?
Le plus simple est d’activer l’option "Autoriser davantage de champs dans la base" ou en anglais « allow more fields in database » :


Cette option augmente la limite à 22,893 champs on a donc de la marge. Cette option n’est présente qu’à partir de la V5. Vous pouvez l’activer à partir de l’interface notes ou faire un « load compact –K ».
Pour l’activation, il ne faut pas que la base soit indexée. Si elle l’est, désactivez l’indexation, lancez le compact et relancez l’indexation.

Comment savoir si on est prés de la limite ?
A défaut de l’inclure dans Domino (ce qui au passage est vraiment dommage), IBM nous a développé un petit outil du nom de Itemdef.exe. Vous pouvez le télécharger ici.

Doit-on vraiment s’inquiéter de cette limite ?
Pas pour les bases applicatives. Il faut vraiment avoir une application hors du commun pour atteindre cette limite. Mais si vous doutez ou même par curiosité, n’hésitez pas à faire le test.

Par contre le vrai danger se situ au niveau de l’annuaire du domaine. Le names possède énormément de champs et en ajoute un bon paquet dans le template de la version 6.

Pour vous en persuader voici un petit test. J’ai créé une base sur mon serveur à partir du modèle pubnames V6. Voici ce que m’indique Itemdef juste après cette création sans qu’il n’y ai un seul document dans la base :


Comme vous pouvez le voir, la table UNK est déjà pleine à 81%.

J’ajoute simplement un document de policies et regardez le résultat :



On est déjà au maximum. Imaginez donc l’impact que cela peut avoir lors d’une migration.

Si sur la même base j’active « allow more fields in database » je retombe à 11% :



Conclusion
La taille de la table UNK de l’annuaire du domaine est loin d’être un facteur à négliger. Certain l’on fait et ils s’en sont mordus les doigts. C’est arrivé chez un très gros client Français qui a planté plus de 400 serveurs en moins d’une demie journée. So be careful of this F@ !$ ?@! limitation.

  23:14:24 |  20 


PermaLinkBonne et heureuse année 2007 !
C’est pour moi la deuxième fois que je vous souhaite une bonne année par l’intermédiaire de ce site. D’après les statistiques Technorati, un blog a une durée de vie moyenne de six mois. Je suis donc satisfait de ne pas avoir manqué de motivation et de matière première pour maintenir ce site bien au delà de cette fameuse statistique.

En lisant mon billet de l’an dernier je me rends mieux compte de ce qui a changé cette année.

Tout d’abord je poste de plus en plus pour le plaisir de poster. Ce n’est plus un devoir comme cela pouvait l’être au paravent. C’est un peu lié au fait que je mets un peu plus de moi dans mes billets mais surtout parce que vous y apportez vos commentaires. Donc merci à tout ceux qui en ont posté cette année :

YoGi (38)
Smicky (36)
Sylvain (28)
Benoit (22)
JNK (17)
Stéhane Maillard (17)
aquanotes (9)
Renaud (9)
Olivier@Dominux (8)
Michael (7)
Jérôme (6)
stefd70 (5)
Bob (4)
kerozen (4)
Lionel (4)
Cecile (3)
DiGGeR2 (3)
Jerome (3)
Markus Koller (3)
philippe (3)
Joe Litton (2)
Laurent (2)
Massilia (2)
Thierry (2)
William Beh (2)


Merci aussi à tous ceux qui visitent régulièrement ce site. Google Analytics me permet d’en savoir un peu plus sur vous grâce à la géo localisation. Vous pouvez en voir le détail ici et peut-être vous trouver dans la liste.

Sinon côté résultat, la société Domlike se porte bien, pas comme son dirigeant qui vient de se faire une tendinite du moyen fessier droit à trop courir (le premier qui rigole je blackliste son ip ). Donc mon premier conseil de coureur pour cette année 2007 sera :
Fait attention à tes fesses, Elles peuvent te jouer des tours. Apprends à les écouter.

Côté voyage professionnel, en 2006 je n’ai pas passé de séjour en Suisse, j’y ai juste fait quelques allers-retours.
En 2007 je n’irai pas non plus à la LotusSphere contairement à Yogi, Olivier et Smicky. J’ai déjà expliqué mes raisons dans un de mes commentaires ici.

En tout cas avec tout les reporters que l’on aura en direct live d’Orlando ce sera comme si on y était ! Peut être que Yogi nous fera même un podcast du World Beer Center d’Orlando qui sait .

  09:51:51 |  994 


PermaLinkPompe à essence 2.0
Ma pompe elle est super, c’est une pompe à essence 2.0 !

Elle fait le plein super vite et en plus elle parle :



Photo prise ce matin avec mon portable.

  21:40:13 |  


PermaLinkPour bien rigoler avec une blague à 2 francs
Dans la série « Pour bien rigoler avec une blague à 2 francs » :
Allez sur votre intranet d’entreprise, copié/collé le code ci-dessous dans votre navigateur (dans la barre d’URL) et demandez à votre webmaster si il n’y a pas un truc qui cloche sur l’intranet.

javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI=document.getElementsByTagName("img"); DIL=DI.length; function A(){for(i=0; i-DIL; i++){DIS=DI[ i ].style; DIS.position='absolute'; DIS.left=(Math.sin(R*x1+i*x2+x3)*x4+x5)+"px"; DIS.top=(Math.cos(R*y1+i*y2+y3)*y4+y5)+"px"}R++}setInterval('A()',50); void(0);

C'est le genre de truc débile qui me fait pleurer de rire .

Si ça ne fonctionne pas ça veut dire que votre intranet a des framesets ou alors y a pas d’image…

  20:02:57 |  


PermaLinkLiens Ajax
Trois petits liens sur Ajax :

  • Tout d’abord un nouveau bouquin (et oui encore…) sur la programmation Ajax :
    Bien développer pour le Web 2.0
    J’en ai lu quelques passages et ce livre semble excellent. Christophe Porteneuve ne se borne pas à l’aspect technique mais déborde allègrement sur tout ce qui touche à la problématique d’accessibilité liée au Web 2.0. Une très bonne idée cadeau (ça c'est juste au cas ou ma femme lit mon blog).

  • Une nouvelle librairie AJAX légère et accessible aux débutants. 13,6ko et pas besoin de librairie externe pour SimpleJS.js

  • J’arrive peut-être un peu la bataille mais j’ai découvert un site génial qui nous crée des gifs animés pour nous faire patienter quand Monsieur Ajax il travaille : AjaxLoad


  19:42:58 |  16 


PermaLinkLes parametres du Notes.ini
Le notes.ini d'un serveur référence tous les paramètres qui sont nécessaire à son bon fonctionnement.

Il existe à l'heure actuelle prés de 2151 paramètres référencés. Vous comprenez donc que le notes.ini d'un serveur peut parfois ressembler à un vrai capharnaüm.

Le problème c'est que lorsque l'on souhaite connaître la fonction d'un de ces paramètre on ne sait pas trop ou aller chercher l'info. L'aide du client d'admin est très limité sur le sujet et même si la knowledge base est un peu plus bavarde ce n'est toujours pas la panacée.

Tout ça pour dire que si vous n'avez pas d'info sur un paramètre du notes.ini allez plutôt voir sur le site du drcc. Ils ont créé une véritable bible de tous ces paramètres et ils nous l'ont mis à disposition sur leur site ( ici).

Ils ont aussi créé un outil pour réordonner le notes.ini par catégorie de paramètre. Cet outil est assez connu car il est disponible depuis pas mal d'années sur leur site. Si je vous en parle maintenant c'est qu'ils ont refait l'ergonomie générale et c'est beaucoup plus simple d'utilisation (plus besoin de s'inscrire et le serveur est beaucoup plus rapide).

Voici un petit « avant après » d'un notes.ini :

 

 
C'est plutôt pro et surtout on s'y retrouve…

C'est vraiment dommage d'être obligé d'aller se renseigner auprès d'une société extérieure à IBM pour avoir des infos techniques d'un de leur produit. En tout cas ils ont fait du super bon boulot chez drcc.

  18:55:04 |  


PermaLinkLes 10 Km d'Arcachon
Aujourd'hui j'ai participé à la 10ième édition des 10km d'Arcachon. Arrivé sur place à 9h40, inscription puis départ à 10h30. Côté météo c'était extra. Soleil magnifique, pas de vent, température de 8°C, bref aucune excuse pour faire un bon temps (enfin pas trop mauvais quoi...).

Début de course :
Je loupe le complètement le départ, je discutais avec mes filles... Je suis donc parti à 10 km/h avec tous les touristes.
Première ligne droite, j'accélère et décroche tout ce monde pour me retrouver dans mon rythme.
Dans le style économie d'énergie on fait mieux.

Milieu de course :
C'est cool c'est plat, y a un peu de sable qui rentre dans les chaussures mais ça roule.
Arrivé au ravitaillement... Je prends rien.

Fin de course :
Ca monte et ça descend sans arrêt, c'est super dur. J'ai mal aux jambes. Le 7ieme kilomètres est un enfer.
Dernier kilomètre sur le plat, j'accélère un peu et je fini ma course en 45 minutes et 16 secondes.

J'avais pour objectif 45 minutes. Je suis donc plutôt content. C'est encouragent après deux semaines d'entraînement. Pour ceux que ça interesse, j'ai mis le détail (km par km) de ma course sur ma sreadsheet. Il y a aussi le classement officiel de la course (je suis 353ieme)

Ce que je retiens de ma première course :
  • Courir c'est dur.
  • Ca fait mal aux jambes.
  • La transpiration dans les yeux ça pique.
  • Après 10km, les lignes blanches c'est beau.


  16:40:09 |