vBulletin stats
November, 2007 - Christophe Lauer, My Microsoft Life - Site Home - MSDN Blogs

Christophe Lauer, My Microsoft Life

Think Different. Think for Yourself.

November, 2007

Posts
  • Christophe Lauer, My Microsoft Life

    La fin du "Click to activate this control" dans IE

    • 4 Comments

    Voilà une excellente nouvelle tant pour nous développeurs Web que pour les utilisateurs et internautes : le blog de l'équipe IE nous apprend que les jours du clic pour activer les contrôles ActiveX et autres objets embarqués dans IE sont comptés.

    En effet, Microsoft aurait acquis une licence d'utilisation de cette technologie auprès de la société Eolas (sic!). Bref, peu importe quoi et comment, il n'y a que le résultat qui compte, n'est-ce pas ?

    En tous cas, maintenant on peut en parler et en rire : j'avoue que la façon dont la chose a été traitée pour Silverlight m'a bien plu et amusé. Petit rappel...

    Au terme d'un jugement, les éditeurs de navigateurs Web sont forcés d'implémenter une action volontaire de l'utilisateur pour activer tout contrôle ou composant permettant d'embarquer des contrôles contenus dans la page HTML. Ceci concerne les tags OBJECT, EMBED et APPLET.

    Comme l'indique la page de Wikipedia présentant la société EOLAS, il existe une solution de contournement qui permet de ne pas tomber sous le coup des termes du jugement : il faut pour celà non pas intégrer les tags HTML en question directement dans le code de la page HTML, mais les injecter après le chargement par du code Javascript, en utilisant le DOM de la page, une technique popularisée par les technologies Ajax.

    J'ai trouvé ça très amusant de trouver une solution technique pour contourner un avis d'un tribunal.

    Plus sérieusement, dans le cas de Silverlight, le code de chargement du plug-in en Javascript remplit d'autres fonctions puisqu'en fonction du User-Agent il va utiliser soit un tag OBJECT soit un tag EMBED, d'une part, et que d'autre part, ce code Javascript permet de gérer correctement le fallback, c'est ça dire ce qui doit ce passer dans le cas où le poste client en question ne comporterait pas le plug-in Silverlight.

    Bref...

    Ce qu'il faut retenir, c'est que vers le mois d'Avril, au gré d'une mise à jour cumulative pour Internet Explorer, tout ceci ne sera plus qu'un mauvais souvenir.

    Voilà en tous cas une Happy End...

  • Christophe Lauer, My Microsoft Life

    Visual Studio 2008 serait proposé en téléchargement la semaine prochaine... pour les abonnés MSDN

    • 2 Comments

    Visual Studio 2008 serait proposé en téléchargement la semaine prochaine aux les abonnés MSDN. C'est du moins ce qu'on peut lire ici sur le blog de l'équipe MSDN Subscriptions.

    aa718325_28578_565x210_vs2008_Count2

    Donc, faites chauffer vos routeurs, modems ADSL et autres disques durs externes USB afin de recevoir le paquet dans les meilleures conditions :)

    Visual Studio 2008 disponible en téléchargement la semaine prochaine pour les abonnés MSDN ? Voilà qui vous laisse tout juste le temps d'apprendre ou de réviser les raccourcis clavier de Visual Studio 2008 pour C# et pour VB.

    En bonus, voici les posters en PDF que vous pourrez envoyer à votre imprimante couleur préférée :

    Visual C# 2008 Keybinding Reference Poster

    Visual Basic 2008 Keybinding Reference Poster

    NB : L'information prend parfois des chemins détournés. J'ai trouvé cette info via la tribune de Ryan Stewart sur ZDNet. Ryan Stewart est un évangéliste sur les technos RIA chez Adobe. Merci Ryan :)

  • Christophe Lauer, My Microsoft Life

    Insupportable...

    • 11 Comments

    Mode Off Topic ON.

    Mais pourquoi donc est-ce que certaines personnes s'entêtent à parler en numéros de semaines ? Genre "Merci pour votre proposition de rendez-vous, j'ai des disponibilités en semaine 48".

    Semaine 48 ? Super, mes clients sont des mutants ! Et sinon c'est quel jour la semaine 48 ? D'accord, il y a certainement plein d'outils qui donnent l'indication de la date début de la semaine 48, et Outlook fait certainement ça.

    Mais pourquoi ne pas simplement dire "J'aurais des dispos sur la semaine du 26 Novembre". Vous ne trouvez pas ça autrement plus clair ? Ou bien c'est juste moi ?

    Mode Off Topic Off maintenant. Et bon week-end à toutes et tous :)

    [Nota] : Oui Outlook sait afficher le numéro de semaine. Il faut aller dans Outils / Options / Option du Calendrier puis cocher la case "Afficher le numéro de semaine bla bla blablah".

  • Christophe Lauer, My Microsoft Life

    Silverlight et Créativité

    • 1 Comments

    Vectorform est une petite société nord Américaine qui fait du consulting, du développement et du design. On pourrait dire plus simplement qu'ils sont une sorte d'agence intéractive.

    Vectorform dernièrement enrichi son site Web corporate avec une gallerie d'applications de démonstration réalisées en Silverlight. La plupart des démonstrations sont visibles directement en ligne et fournies avec leur code source.

    J'aime bien leur jeu de Casse Briques, l'application de visu de photos façon Coverflow, le client Flickr et le client Twitter - même si j'aurais aimé pouvoir tester ces deux dernières avec mes comptes perso - ainsi que le Slide viewer et l'Image viewer avec la composition d'animations de zoom et de translation et le fondu qui rendent exactement le même effet que les galleries de photos dans Windows Media Center.

    Bref, une bonne source d'inspiration, et je suis certain que vous serez d'accord avec moi pour dire que ça vaut le détour. C'est par ici.

  • Christophe Lauer, My Microsoft Life

    Où en sommes nous sur Silverlight, en six points...

    • 12 Comments

    Voici un billet que je vous écris à chaud, de retour d'une semaine passée à Barcelone à assister au TechEd Développeurs.

    Après avoir suivi quelques sessions ayant un rapport plus ou moins proche avec Silverlight, et après avoir animé déjà quatre dates des sept que comporte notre Tour de France Silverlight, je voulais partager les réflexions et constats suivants avec vous. Les voici.

    Ce qui est confirmé par les différentes réactions que j'ai observées tant pendant nos quatre premières dates du Tour de France Silverlight de pendant les sessions du TechEd :

    1 - L'intérêt pour Silverlight est grand auprès des développeurs et des populations techniques en général (c'est vous, chers lecteurs et lectrices ;)

    Et sans trop de surprise, puisqu'il s'agit d'une toute nouvelle plate-forme de développement d'applications Web avec des capacités d'intéractions et de graphiques encore inédites dans le catalogue Microsoft, l'intérêt pour Silverlight en particulier chez les développeurs .NET et ASP.NET plus particulièrement.

    2 - Les développeurs .NET attendent (bien légitimement) de Silverlight une productivité au moins équivalente à celle de ASP.NET ou de Windows Forms

    Pour un développeur ASP.NET qui a pris l'habitude de développer des applications Web en utilisant les WebForms et qui a depuis longtemps abandonné la manière dure et ingrate (ie: générer son HTML depuis son code, comme on le faisait par exemple en ASP "Classic" ou en PHP) : utiliser une liste déroulante dans une page Web, ça se fait en écrivant Listbox.Items.Add() et non pas à grands coups de branchement des EventHandlers, de définition de transformations de translation dans des StoryBoards et de l'utilisation du Clipping pour ne voir qu'une "fenêtre" de notre liste d'items ;)

    Bref, la façon dont on construit aujourd'hui des listes déroulantes en Silverlight 1.0 s'apparente clairement plus à un retour en arrière vers l'époque des Windows API que à l'utilisation d'un framework moderne du 21° siècle tel que ASP.NET.

    Silverlight (1.0 et 1.1) sont donc pour le moment vécus comme un retour en arrière par les développeurs ASP.NET. Je souligne "pour le moment"...

    3 - Les développeurs .NET considèrent Silverlight 1.0 comme une pré-version inutile et inutilisable

    A plusieurs reprises, pendant le Tour Silverlight, j'ai eu le feedback suivant :

    "Mais pourquoi diantre avez vous sorti Silverlight 1.0. Pour moi c'est inutilisable et c'est juste une Bêta, non ?"

    C'est vrai et faux... On peut faire des choses en Silverlight 1.0 si on le veut. Regardez par exemple le site Quiksilver Pro France. C'est une application entièrement réalisée en Silverlight 1.0. Ne dites pas qu'on ne peut rien faire en Silverlight 1.0...

    Et puis l'autre aspect des choses, c'est que les machines sur lesquelles Silverlight 1.0 est installé seront automatiquement mises à jour en Silverlight 1.1 à terme. Vous - en tant que développeurs - serez alors ravis de voir que tant de machines qui ont reçu Silverlight 1.0 à un moment donné se retrouvent prêtes à exécuter vos belles applications riches en Silverlight 1.1.

    OK, il reste l'aspect du langage Javascript. Forcément, en tant que développeur ASP.NET, vous ne pouvez pas aimer écrire du Javascript. Nous le savons.

    Mais ne perdez pas de vue la chose suivante : C'est que les cibles et les scénarios d'utilisation de Silverlight 1.0 et de Silverlight 1.1 pour nous (comprendre "nous" = Microsoft dans ce contexte) sont très différentes.

    Avec Silverlight 1.0, on vise à enrichir des sites ou des applications existantes avec des contenus plus riches, ou vectoriels ou de la vidéo. Un autre scénario est la réalisation de "mini sites" de type évènementiels liés à une actualité comme par exemple un évènement sportif (Quiksilver), une conférence ou un lancement produit (cf le mini site Halo3 chez MSN).

    Les gens qui réalisent ce type de mini site sont généralement des développeurs Web / Ajax qui travaillent dans des agences intéractives. On ne cible pas les développeurs qui écrivent des applications transactionnelles pour des Front-Office de salles de marchés dans des grandes banques :)

    Pour les développeurs en agences, les capacités de Silverlight 1.0 et l'utilisation de Javascript sont OK. Pas besoin de plus. Au contraire, l'utilisation de langages managés comme C# serait sans doute un gap trop important.

    A contrario, pour les développeurs ASP.NET, la cible avec Silverlight en tant que scénario c'est la réalisation d'applications Web riches (RIA) complètes et ex-nihilo. Dans ce contexte, il vous faut non seulement utiliser des langages managés type C# mais aussi disposer de deux ou trois autres trucs, parmi lesquels :

    • un système de layout (prévu pour Silverlight 1.1, pour le moment absent de l'Alpha actuelle)
    • une bibliothèque de contrôles visuels riche et extensible (prévue pour Silverlight 1.1, pour le moment absent de l'Alpha actuelle)
    • des mécanismes d'accès aux données (qui viendront sous différentes formes, le projet Astoria en Bêta étant l'une de ces formes)
    • des mécanismes de Binding sur les propriétés des objets (prévu pour Silverlight 1.1, pour le moment absent de l'Alpha actuelle)

    Ces dernières pièces du puzzle étant actuellement manquantes, résultat : Vous êtes frustré(e)s !

    4 - Silverlight 1.1 semble frustrer très fort

    Et oui, et sans surprise, c'est la conséquence directe et évidente du point précédent. Et pour couronner le tout, nous ne disposons pas encore aucune roadmap claire et précise du groupe produit Silverlight, ni d'une liste exhaustive des contrôles qui pourraient à terme faire parti de Silverlight 1.1 en version finale. C'est vrai.

    "Alors pourquoi avoir sorti cette pré-version Alpha si tôt, puisqu'elle ne contient presque rien" me demanderez-vous ?

    Au contraire, elle contient déjà beaucoup de choses ! Cette pré-version Alpha de Silverlight 1.1 contient une première implémentation d'un runtime .NET allégé qui fonctionne dans le navigateur et qui permet l'exécution de codes managés dans le client Web. Cette Alpha de la 1.1 contient également une première implémentation du DLR (ie Dynamic Language Runtime) qui permet l'exécution de langages dynamiques, soit IronPython et JScript dans cette version.

    Tout ceci renforce le discours que nous tenons depuis 2001 - à l'époque de la sortie du .NET Framework 1.0 - où nous expliquions que nous allions fédérer progressivement toutes nos plate-formes autour de .NET, du CLR et des langages managés.

    Ainsi, cette pré-version Alpha de Silverlight 1.1 dessine le portrait robot des futures applications Web, celles qu'on nomme actuellement RIA pour "Rich Internet Applications", qui bénéficient du meilleur des deux mondes avec à la fois des applications riches et très intéractives, et d'autre part, un "footprint" léger et aucun déploiement nécessaire.

    5 - Silverlight 1.1 Alpha Refresh est très stable

    En effet. Silverlight 1.1, bien qu'étant en version Alpha est *très* stable.

    Voire trop.

    C'est à un tel point qu'on finirait presque par en oublier que Silverlight 1.1 est actuellement en phase de Alpha test. C'est une version Alpha. Et comme cette version 1.1 Alpha est si stable, la tentation est grande d'aller plus loin, de développer des choses complexes. Tentation d'aller plus loin.

    Trop loin ?

    A force d'utiliser et de cotoyer à longueur de journée des sites "2.0" qui portent la mention de "version Bêta", on en oublierait presque ce que signifie "Alpha".

    Je vous redonne à lire un extrait de la licence qui accompagne le téléchargement de Silverlight 1.1. Vous n'avez sans doute pas prête trop d'attention à cette licence. Voici pourtant un extrait intéressant :

    PRE-RELEASE SOFTWARE. This software is a pre-release version. It may not work correctly or the way a final version of the software will. We may change it for the final, commercial version. We also may not release a commercial version.

    Traduction en version courte et explicite : C'est une pré-version, et donc on ne garantit RIEN, ça va casser à la prochaine version, ça va casser à chaque version d'ici à la version finale, si il y a une version finale un jour, ce qui n'est pas non plus garanti. Et encore une fois, on ne garantit RIEN.

    Plus explicite, on ne peut pas faire.

    Toutefois, toutefois...

    6 - Silverlight et les applications RIA, c'est pour demain !

    Toutefois, Silverlight 1.1 sortira un jour en version finale, c'est certain ! C'est certain même si ce n'est pas garanti contractuellement à ce jour.

    J'en veux pour preuve que les inscriptions de la conférence Mix08 viennent d'ouvrir, et que le mini site de l'évènement montre déjà l'importance des sessions consacrées à Silverlight dans cet évènement. Le mini-site indique aussi que c'est Steve Ballmer (en personne) qui animera le keynote d'ouverture de Mix08 à Las Vegas. Ceci montre l'importance de Silverlight pour Microsoft en tant que compagnie.

    Toutes les pièces du puzzle sont en train de se mettre en place... Il en manque encore quelques unes, mais ça se dessine rapidement. Microsoft Sync Framework, Astoria, etc...

    Tout se met en place pour que la plate-forme Silverlight 1.1 de vos rêves devienne rapidement réalité.

    Quand ? Comment ?

    Difficile à dire de façon ferme et formelle pour le moment. Mais je vas vous partager mon point de vue personnel sur la question.

    <Disclaimer>

    Ce qui suit est uniquement mon opinion personnelle sur la question, ceci ne constitue en aucun cas une annonce ou une quelconque communication officielle de la part de mon employeur, et tout ceci est à prendre en compte avec tout le conditionnel qui s'impose.

    </Disclaimer>

    Considérant que l'annonce de la disponibilité des pré-versions de Silverlight 1.0 et 1.1 ainsi que du nom même de Silverlight que l'on connaissait au préalable sous le nom de code de WPF/e ont été faites pendant la conférence Mix07 à Las Vegas en Mai dernier, il y a fort à parier que Mix08 marquera à nouveau cette année un Milestone important pour Silverlight.

    Reste à savoir si ce Milestone sera la disponibilité de la version finale de Silverlight 1.1 ou bien plus modestement la disponibilité d'une version assez avancée, type Bêta 2 ou Release Candidate accompagnée d'une licence GoLive!

    En tout état de cause, je persiste à croire que l'horizon sera nette plus plus dégagé et que la roadmap de Silverlight 1.1 sera autrement plus lisible à l'époque de Mix08. Le signal ultime sera l'annonce de la disponibilité de la licence GoLive! pour Silverlight 1.1, car à partir du moment ou nous annoncerons cette licence GoLive!, nous savons que l'implémentation de la version finale RTM ne diffèrera pas de façon importante de celle qui sera en vigueur à ce moment, et que par conséquent, la version en vigueur à ce moment sera complète en termes de features, de classes et de contrôles.

    Ca ne signifie pas qu'il soit trop tôt pour commencer avec Silverlight. Pas du tout, et ceci pour les raisons suivantes :

    - Le modèle de développement de Silverlight 1.1 à base de C# et de compilation ne va pas remplacer le modèle de Javascript interprêté de Silverlight 1.0, il va juste dl'enrichir. Silverlight 1.1 apportera la compatibilité ascendante depuis Silverlight 1.0. Vos applications qui ciblent Silverlight 1.0 fonctionneront à l'identique dans le plug-in Silverlight 1.1. C'est d'ailleurs déjà le cas avec le plug-in de la version 1.1 Alpha.

    - Les grands principes de fonctionnement de Silverlight 1.1 ne seront pas modifiés d'ici à la version finale. Seules certaines parties de son implémentation seront modifiées, et aussi largement étendues par l'ajout par exemple du layout, des contrôles visuels, et du binding. En revanche, le système d'animations, le moteur vectoriel, etc... resteront proches de ce que l'on en connait actuellement, et ceci simplement parce que ces parties sont communes entre Silverlight 1.0 et Silverlight 1.1. Tout ce que vous apprendrez actuellement sur Silverlight 1.1 pourra donc être réutilisé et valorisé à terme.

    Est-ce trop tôt pour démarrer un développement en Silverlight ?

    Oui et Non.

    Clairement non si on parle de Silverlight 1.0 qui est en version finale, et donc utilisable, déployable et complètement supporté par Microsoft.

    Et Oui si on parle du cas de développeurs qui cibleraient Silverlight 1.1 en ayant perdu de vue le fait que la technologie est pour le moment au stade de Alpha test, et qui ne seraient pas complètement conscients que des changements peuvent avoir - et auront certainement - lieu d'ici à la disponibilité de la version finale.

    Donc Oui, vous pouvez d'ores et déjà développer en visant Silverlight 1.1 pour cible, simplement, vous devez être pleinement conscients de ce que ceci peut impliquer.

    C'est d'ailleurs la voie qu'ont choisi les gens de ComponentOne qui construisent actuellement un framework - plutôt impressionnant d'ailleurs - de contrôles visuels pour Silverlight 1.1.

    Le framework Sapphire - c'est son nom - peut être téléchargé en version Alpha et les démonstrations en ligne sont déjà très prometteuses.

    Truc : Pour pouvoir visualiser ces démos de Sapphire, vous devez passer les paramètres de Locale de notre système à "US - English". En effet, en paramètres FR-fr, l'Alpha actuelle de Sapphire ne semble pas fonctionner correctement. C'est une version Alpha, nous pouvons être indulgents...

    Pour en revenir à ComponentOne et à leur contrôles du toolset Sapphire, ils font le pari que d'être à terme les premiers sur le marché des contrôles Silverlight 1.1 leur donnera un avantage conccurentiel certain, ce qui est généralement le cas. Du coup, ils acceptent de pouvoir avoir à faire face à des coûts de développement supérieurs, du fait de changements d'implémentations ou de design dans les versions successives entre la version Alpha actuelle et la version finale. C'est une question de stratégie, et aussi de possibilité d'investissement. A chacun de faire son choix, tant que c'est en pleine connaissance de cause.

    Allez, on reparle de tout ceci après le Mix08 à Las Vegas ?

    [Edit] : Jesse Liberty est un Senior Program Manager de l'équipe Silverlight à Microsoft Corp. Toute ressemblance entre un des billets récents sur son blog et le présent billet ne serait pas tout à fait fortuite.

  • Christophe Lauer, My Microsoft Life

    Votre Video-chose-Tube ou Soapbox like en kit... et en Silverlight

    • 2 Comments

    image_4[1]Tim Sneath a annoncé sur son blog la publication du kit Video.Show sous forme de code source sur CodePlex. Video.Show est une application en kit qui vous permettra rapidement de créer un site communautaire de partage de vidéos type Web 2.0 à la façon d'un chose-Tube ou Soapbox-like.

    Video.Show a été adapté par Vertigo Software sur une base d'une autre application dont vous avez sans doute déjà entendu parler pendant le Mix07 à Paris, et qui s'appelle bluePortal.

    Il s'agit d'une première version Bêta de Video.Show. L'autre application de partage de vidéos - a savoir bluePortal - devrait aussi prochainement être publiée sous la forme de code source sur CodePlex.

    Pour télécharger le code source de Video.Show, c'est par ici.

Page 2 of 2 (16 items) 12