Slides pour ParisWeb

Voici mes slides pour ma présentation à Paris Web. J’espère que vous avez apprécié.

J’aimerais remercier l’organisation de Paris Web pour m’avoir invité à cette conférence vraiment extraordinaire. C’est impressionnant de voir la qualité des présentations et l’effort qui est mis pour les rendre accessible à tous.

L’expérience m’a inspiré et cela m’a donné l’idée de deux trois autres présentation connexes. Je vous en reparle si le tout adonne.

Ha oui, le dessin en première page, c’est ma fille qui l’a fait (elle est bonne hein ? Je voulais amener un peu de ma famille avec moi).

J’ai enlevé quelques images de la présentation le temps que je mette les sources.

Encore une fois, je remercie l’organisation de Paris Web. Ce fût une super expérience où j’ai rencontré plein de gens super intéressants !

Cours HTML5 Confoo.ca

Voici le matériel que j’ai utilisé pour le cours HTML5 avancé pour confoo.ca. En espérant que cela pourra vous être utile. C’est encore un Work in Progress. Certains exemples ne fonctionnent pas sur tous les navigateurs. N’hésitez-pas à commenter!

La licence des slides, codes et autres est Creative Comme BY SA 2.5. Vous pouvez les utiliser gratuitement, commercialement, et les modifier, mais vous devez dire que c’est moi qu’il les a créées initialement. Si vous les redistribuez, vous devez le faire avec la même licence (ou une licence compatible).

Slides de la présentation HTML5 pour Action TI Estrie

Hmmm… ça fait un bout de temps que je n’ai pas écrit ici… Manque de temps faut dire. Ceci dit, je prend toutefois le temps de mettre un petit lien vers les slides de la présentation sur HTML5 que j’ai donnée pour Action TI Estrie à Sherbrooke le 24 janvier.

Faire le Web, pas la guerre

La journée de conférence Make Web Not War fût très intéressante sur presque toute la ligne. En fait, le plus intéressant dans ce type de journée est la possibilité de rencontrer d’autres développeurs qui ont des projets super intéressants. Les organisateurs de Make Web Not War sont très dynamiques et ce fût fantastique de les côtoyer pendant l’événement. J’en profite d’ailleurs pour les remercier pour la conférence et de m’avoir fait confiance pour donner la présentation sur HTML5. Je sais que Microsoft essaie de se rapprocher des développeurs open source et Web et ils font une très belle job.

Voici mon petit compte-rendu de la conférence :

Commençons par le keynote de Joël Perras. C’était un bel aperçu global sur l’interopérabilité. La phrase « L’interopérabilité n’est pas juste une fonctionnalité, c’est un requis. » peut très bien résumer la présentation.

Pour le reste de la conférence, je suis allé dans la track technique, c’est là qu’il y avait les sessions qui me semblaient les plus intéressantes. J’aurais bien aimé par contre voir la session sur Windows 7 Mobile, mais malheureusement, c’était en même temps que la mienne ☹

Dans la track technique, la première présentation était celle de Morten Rand-Hendrikson avec The Unholy Quatern (Building Killer WordPress sites)

Il nous a présenté une technique de l’enfer pour rapidement créer des sites Web avec WordPress et Expression Web de Microsoft. Il nous donne la preuve que de se trouver une métho. rapide qui nous ressemble est l’une des choses les plus importante pour être le plus productif possible. C’est ce que je retiens de sa présentation en tout cas. En plus, c’est un gars très sympathique avec qui j’ai pu discuter après et avant la conférence.

La deuxième était celle de avec Rick Claus avec How to manage a wintel infrastructure from a comfortable CLI

Il nous a expliqué comment monter des configurations de sites Web en utilisant Powershell et IIS 7.0 avec la ligne de commande. Je me rappelle en avoir fait avec IIS 4 et VBScript dans le temps. C’est 100 fois plus simple maintenant : très bonne présentation encore une fois. Ce que je retiens est que si un jour j’ai à implanter / administrer plusieurs sites sur IIS 7, je le ferai avec Powershell. Vendu !

J’ai ensuite discuté avec deux des finalistes du concours For The Web, Timothy Dalby (Find a Home) et Francois Mazzerole du projet Projet Tholus J’ai particulièrement été impressionné par leur persévérance et leur attitude. Pour montrer que la migration à HTML5 était facile à faire, François à changé son Doctype de XHTML 1 Strict à celui de HTML5. Après avoir enlevé le xmlsn et changé xml :lang pour lang, son site validait déjà en HTML5 !

Malheureusement, j’ai fini par manquer deux autres sessions, dont celle de Guillaume Bouchard avec Search Engine Optimization for Dynamic Websites. Il paraît que c’était excellent, un des highlight de la journée. C’est vraiment poche que je l’aie manquée. Je pense que si c’est possible, je vais lui demander de venir la refaire en français à une réunion du W3Québec.

Suite à cela … It’s a WIN, WIN: ‘WordPress On Windows’ avec Brendan Sera-Shriar aka DigiBomb! Un autre présentateur dynamique qui nous a parlé de comment installer WordPress plus rapidement avec leWeb Installer de Microsoft. Le tout nous donnait quelques petites infos utiles et rapides (comme ne pas essayer la technique d’installation sur Windows XP).

C’était ensuite mon tour !

Je me suis rendu compte que ma présentation était l’une des plus attendue de la journée. La barre était haute ! J’ai voulu faire différent, et faire un tour de roue d’un maximum de fonctionnalité de HTML5, et donner un petit exemple de code avec chacune, question de donner un aperçu. Avec le peu de temps que j’avais, ce ne fût pas évident ! C’est aussi la première fois que je fais qqch de suffisamment gros pour recevoir des critiques en direct sur Twitter et la blogosphère. Je vous avouerai que le petit gars réservé que je suis a trouvé ça pas mal dur sur le coup, mais quelque part c’est très formateur. Il y a malheureusement pas assez de gens qui parlent de HTML5 et qui font des présentations techniques sur le sujet au Québec. Étant l’un des seuls, je me suis retrouvé avec un ostie de gros spotlight sur moi 😉 Finalement, j’aurais dû commencer par une démo, puis finir avec les bouts plus académiques… C’est sûr que j’ai l’air de me concentrer sur les côtés négatifs de ma présentation, mais je veux m’améliorer après tout !

J’ai malheureusement peu écouté la présentation suivante sur CSS3 et JQuery. Après ma présentation, j’avais de la misère à me concentrer (je vous dit, ça bouffe beaucoup d’énergie !).

Dernier truc, je crois que Make Web Not War, pour devenir un vrai événement bilingue, devrait avoir une série de sessions en français seulement et bien l’indiquer dans leur documentation. À mon avis, ils devraient le faire si possible même dans les autres villes canadiennes (cela aiderait à attirer des voyageurs Québécois dans les autres villes, et j’avoue que j’aimerais beaucoup voyager dans un train de nerds comme les gens de Toronto ont pu le faire). Il faut aussi que la version française s’appelle « Faire le web pas la guerre » et non « Make Web Not War ».

En tout cas, c’est la première fois que je suscite autant de réaction sur Twitter. J’ai eu plus de retweet en une journée que dans toute ma vie ! Ouffe !

Les diapos en version française s’en viennent bientôt, ainsi qu’une réorganisation et une correction de celles en anglais. Je ne vais pas vous donner de dates parce que j’ai plein d’autres choses à préparer aussi (et si ça se concrétise, vous allez le savoir c’est sûr !).

Chose certaine, Make Web Not War était une conférence super bien organisée, dynamique, intéressante et surtout différente du lot. Quand il y a qqch d’aussi bon et de gratuit en plus, il n’y a aucune raison de ne pas être de la partie. J’espère sincèrement y être l’année prochaine, quitte à y aller par un train de nerd si ce n’est pas à Montréal!

Conférence Make Web Not War

Il reste une semaine avant la conférence Make Web Nor War, organisée par Microsoft à Montréal. J’y donne une présentation sur HTML5. Il y a plein d’autres sujets intéressants comme le Cloud Computing et le Web mobile. Vous avez encore jusqu’à demain pour vous y inscrire (c’est gratuit en plus). Il me reste encore pas mal de travail pour monter la présentation et la fin de semaine de trois jours va certainement être utile. Je ne sais pas encore si je vais donner la présentation en anglais ou en français, mais ce sera fort probablement en anglais (une première pour moi !). Par contre, plusieurs présentations (de la track principale) seront traduites en direct en français J’espère vous y voir en grand nombre. Ça s’annonce pour être très intéressant. Je m’efforce en tout cas pour arriver avec des exemples d’HTML5 en plus de faire le tour de fonctions DOM et éléments sémantiques. Je suis loin d’être un expert en accessibilité, mais on fera aussi un tour rapide de ce que aria amène au HTML. 45 minutes, ce n’est pas beaucoup et va falloir que je parle vite. Vous pouvez aussi lire toutes les autres activités de l’événement sur le site de Make Web Not War. Les slides de ma présentation (en HTML5 évidemment) devraient être disponibles quelque part la semaine prochaine sur mon site personnel (dans la section laboratoire).

Lancement de docteurhtml5.com

Je n’ai jamais été fort en publicité et en lancement de nouveaux sites sur lesquels je travaille en dehors de la « job » (surtout que vous comprendrez que ça prends du temps que je n’ai pas pour faire la promotion de ces sites 😉 ) . Mais je crois que je peux dire que http://docteurhtml5.com est prêt à une consommation générale. Vous l’aurez deviné, ce site est une traduction de l’excellent site de tutoriels anglophone http://html5doctor.com. J’avais l’intention l’automne dernier de publier moi-même des tutoriels sur les nouvelles fonctionnalités d’HTML5. Toutefois, je manquais de temps et je ne voulais pas non plus réinventer la roue. J’ai donc proposé aux administrateurs de http://html5doctor.com de traduire leur site, au moins en partie. Après quelques mois de travail (très temps partiel, vous le comprendrez), et avec de l’aide de Chantal Ide (http://www.divetheweb.com), les quatre premiers articles sont maintenant en ligne sur http://docteurhtml5.com. Chantal et moi allons continuer d’ajouter des articles dans les semaines qui vont suivre. Idéalement, j’aimerais bien y ajouter du contenu exclusif francophone ! On verra. J’espère que vous trouverez le site à votre goût et que vous y trouverez des informations utiles. Surtout, et cela je le répète, si vous avez des commentaires et si vous trouvez des coquilles ou autres fautes d’orthographe, n’hésitez-pas à me contacter. Après tout, je suis un développeur dans l’âme en premier et traducteur seulement en second ordre. Si vous voulez nous donner un coup de main pour la traduction, n’hésitez pas non plus. Je traduis pas mal moins vite que les docteurs écrivent !

Naviguer en plein écran sur MacOSX

Une fois je me suis rendu compte (c’était pendant ma conférence improvisée type *camp à confoo.ca intitulée What’s Wrong With HTML5) que je ne savais pas comment mettre Firefox en mode plein écran sur MacOSX. En effet, j’ai tendance à utiliser un navigateur avec un outil HTML pour faire des présentations, et non Powerpoint comme tout le monde. Sur PC, je crois que c’est F11, mais évidemment sur Mac c’est autre chose. Et plus spécifiquement, ça ne fait pas longtemps que c’est possible. Étant donné que je vais faire bientôt une présentation sur HTML5 à MakeWebNotWar, j’ai fait un peu de recherche que je vais vous présenter ici. Aussi, comme je risque d’oublier les nombreuses touches clavier nécessaires, ce billet va me servir de rappel. Ça fait un bout de temps que je n’ai pas fait d’entrée dans la série de billet Parce que je ne m’en rappelle jamais, que vous connaissez certainement si vous êtes un de mes lecteurs assidus (ha non, ok, bon, c’est pas grave).

  • Pour Firefox : depuis Firefox 3.6, nous pouvons naviguer en plein écran avec la séquence de touche Command, Shift et F (pour Fullscreen. Attention, si vous avez plus qu’un écran et que vous naviguer en plein écran sur un écran secondaire, cela fait disparaître le dock. Il faut revenir à l’instance du navigateur en plein écran et sortir du mode pour faire revenir le dock.
  • Pour Opera : Option + Command + F12.
  • Pour Safari et Chrome : Vous pouvez installer une application nommée megazoomer (nécessite une autre application nommée SIMBL). Vous pouvez configurer cette application, mais par défaut la séquence de touches est Command + Return. Cette solution devrait aussi fonctionner sur toute autre application basée sur Cocoa. Je ne l’ai pas beaucoup expérimenté, mais ça me semble bien.

L’agilité à la rescousse de la pénurie de ressources en TI

Suffit de lire un peu partout dans les revues et les sites de regroupement de TI pour se renseigner sur la pénurie très prochaine de programmeurs, analystes et autres technologues. Le domaine technologies de l’information n’est plus tellement sexy et depuis l’éclatement de la bulle 2000-2003, ce n’est plus un domaine où l’emploi est assuré. Comme consultant en informatique, vous pourriez me dire, et bien tant mieux, ça va faire plus de cash pour moi (*) et je vous répondrais que ouais, si un client vous arrive et dit, ben j’ai goût de faire x et y et j’ai besoin d’un produit p pour augmenter ma productivité, vous lui dites, ça va coûter z$, il va se retourner et dire, finalement je ne le ferai pas, ça coûte trop cher. Et puis après, il y a de moins en moins de projets informatiques faits et la demande baisse avec l’offre, et vous êtes bien avancés, votre salaire baisse. Ce n’est pas comme mon ami pharmacien, (lui aussi en pénurie). Si un hôpital arrive et dit j’ai besoin d’un pharmacien, et que celui-ci lui répond ben ça vas te coûter cher, l’hôpital peut pas dire, ben je vais me passer de pharmacien finalement. (dès fois il le fait et cela donne des burn out pour ceux qui décident de rester, faut dire qu’il y a des bonnes chances qu’ils s’en aillent dans le privé avant que cela arrive). L’hôpital va finir par crasher le cash et cela donne un petite partie de la crise que nous avons maintenant.

En informatique, tout passe par le retour sur investissement. Si ça coûte trop cher, ça ne se fera pas ! (ou ça ne devrait pas se faire) Et comme je n’ai pas l’intention de coûter moins cher, va falloir que je sois plus efficace et plus efficient pour arriver à un point où je peut faire plus avec moins, le tout en ne faisant pas de burn out et en pouvant gérer ma conciliation travail famille proprement.

J’expérimente présentement avec Scrum comme méthodologie de projet, et je dois dire que je suis très emballé jusqu’à maintenant. Je pense que les méthos agiles peuvent nous aider à être plus productif sans faire de développement cowboy. Il reste à trouver une synergie entre les diverses techniques et en dégager des bonnes pratiques. Le dernier projet que j’ai fait (comme chargé de projet / architecte) est arrivé kif kif avec le budget grâce à la méthodologie et le client fût très content.

On peut difficilement se permettre en tant que société de ne pas se prévaloir de l’augmentation de productivité et des opportunités d’innovation (nouveau produits, modèles d’affaires, etc) que l’informatique peut nous amener. Si on veut être compétitif internationalement, et ce dans plusieurs domaines, il faut que nos TI soient en santé (et que l’ensemble des projets ait un bon retour sur investissement). Comme dans les autres domaines, il faut se préparer à la diminution du nombre de personnes qui travaillent (et les autres qui vont décider de faire des jeux vidéos à la place, pas que je les blâme non plus).

Ce billet est juste un début de réflexion sur la chose, mais je crois que nous devrions toujours réfléchir à comment s’améliorer, et l’agilité est un début de réponse. Parfois je regarde peut-être un peu trop gros, mais en même temps, si on fait tous notre part, ça ne peut pas faire de tort à l’industrie.

(*) Je sais, vous êtes plus intelligent que cela, mais c’était juste pour prouver mon point

Oracle Application Express (APEX) : Un outil intéressant pour certains types d’applications Web ?

J’ai dernièrement expérimenté avec un outil fourni avec la version gratuite de la base de données Oracle. J’ai même fait une petite application pour le groupe DBA chez mon employeur. APEX est un outil de développement rapide d’application Web basée sur la base de données Oracle, et ce avec un minimum de code. J’étais pourtant extrêmement sceptique par rapport à cet outil de au départ, et ce, pour plusieurs bonnes raisons. Premièrement, il va à mon avis à l’encontre des courants actuels de développement Web, (par exemple dans Rails, Grails et autres MVC) où la base de données est dérivée du modèle d’affaire et non l’inverse. Ce n’est pas non plus le genre d’outil que nous pouvons voir sur le « cloud » non plus. On pourrait même dire que la façon de développer va à l’encontre des courants de développement passés (au moins depuis 2000 / 2001) puisque le tout génère du PL-SQL, le langage de procédures stockés de Oracle. Non, il n’y a pas de middleware. On retourne loin dans le passé avec cela. Je me rappelle bien avoir développé des applications Web directement en PL-SQL au début de ma carrière, et je sais bien que ce n’est pas parce qu’on utilise un langage dans la base de données qu’on ne peut pas utiliser certains des principes du modèle vue contrôleur. Par contre, quand on parle de développement Web en PL-SQL, ça fait rire un peu, parce que ça fait longtemps qu’on ne fait plus cela.

Malgré mon énorme (euphémisme) scepticisme, j’ai regardé une présentation organisée par OraGec (lien) le groupe d’intérêt Oracle à Montréal. J’ai pu y remarqué deux choses : APEX n’est pas vraiment dans le radar des gros sous chez Oracle. Il y a aussi une communauté tissée serrée qui fait des applications à haute disponibilité avec. On pourrait dire qu’APEX est capable de créer des applications internes rapidement, très fonctionnelles, sans avoir dix couches de redirections de middleware. Lorsque l’objectif est de mettre une base de données existante sur l’intranet (ou le Web aussi), seulement quelques requête SQL sont nécessaires pour générer le tout. Cela peut aller assez loin aussi, ça supporte les Web Services, des contrôles peuvent être créés, on peut évidemment faire du transactionnel avec, etc… Ce type d’application prendrait beaucoup plus de temps à créer avec des serveurs d’applications et des framework Java (ou autre), même avec Grails. Dans ma tête, le clique s’est fait et je me suis dit que dans certaines situations (et peut-être dans d’autres) APEX pourrait bien être une recette secrète qui diminue le coup de développement. J’ai posé les questions habituelles du trippeux de standards Web : est-ce que tout cela génère du code conforme et accessible ? Évidemment non, les contrôles ne respectent pas encore la section 508 (loi aux États Unis), en tout cas pas dans la version actuelle (4), mais peut-être dans la prochaine version. APEX est donc DOA pour des sites Web traditionnels (le SEO n’est pas évident à faire non plus). Toutefois, on peut peut-être y faire qqch. Il est possible de modifier les templates HTML que l’outil génère. Ce serait certainement possible d’améliorer les choses de ce côté. Je me suis dit que ce serait intéressant d’organiser une présentation en collaboration avec le W3Québec pour parler du templating de ce type d’application. (ergonomie, etc). J’ai donc proposé la chose au groupe OraGec et au W3Québec et le résultat de cela sera présenté lundi prochain, le 29 mars 2010.

Ceci dit, j’ai développé un petit qqch avec l’outil, et malgré le fait que le SQL n’est pas ma majeure, et que l’outil génère ce que je fais à la main habituellement, le temps de développement fût très court, probablement aussi court que si je l’avais fait avec du Grails. Quand on travaille avec une BD déjà montée, ça va très bien. Si vous travaillez dans une équipe de DBA et de développeurs de base de données, ça utilise très bien leurs connaissances et cela donne qqch de somme toutes très bien.

Je me dis qu’il faut être ouvert dans le type d’applications Web que l’ont construit. Autant que j’aimerais que ce soit le cas, mon expérience me dit qu’il n’y a pas de « one size fits all » dans les frameworks d’application (particulièrement les rapides). Vous avez beaucoup d’investissement dans les BD Oracle, ça vous tente de faire du développement d’applications Web rapides qui n’ont pas nécessairement besoin d’être accessible ? Prenez la peine d’évaluer Oracle Apex, à mon avis, ça vaut le coup ! Qui sait, les contrôles seront peut-être accessible pour la prochaine version. (Anyway, les contrôles ne sont pas nécessairement accessibles avec les frameworks 6 fois plus lourds alors…)

Vous êtes dans le monde des bases de données Oracle et vous aimeriez en savoir plus sur les interfaces Web (accessibles et conformes), venez faire un tour au W3Québec. Vous êtes spécialistes de front end, mais voudriez travailler dans des projets plus près de la BD, faites au tour à la prochaine réunion du W3Québec, (et devenez membres tant qu’à y être) ! Une des choses que je considère importante dans les groupes d’intérêt comme le W3Québec, c’est qu’il ne faut pas rester dans des silos et rester ouvert. Travailler avec des applications du type de APEX nous amène à avoir des points de vues différents et faire des rencontres que nous ne ferions pas nécessairement. Augmentons la discussion et les échanges !

Quelques liens :

Tiens, je viens de découvrir qu’il y avait un groupe d’intérêt spécifique à APEX au Québec : ApexQuébec. Faudrait bien que je les contacte!

De l’idée vers la réalisation versus la neutralité du NET

Supposons maintenant qu’une startup nommé toto (je vais l’appeler comme cela) arrive avec un idée super géniale, que tout le monde veut utiliser, mais qui bouffe vraiment beaucoup de bande passante. Son fournisseur coupe sa bande passante et lui empêche de bien réaliser son idée. (Et si on est parano, peut même lui voler son idée, on parlera pas de brevet ici)

Est-ce un vrai danger ou est-ce que je suis dans le domaine de la science fiction? Après, faut que quelqu’un paie pour la bande passante. Avoir beaucoup de bande passante c’est d’avoir la capacité de réaliser n’est-ce pas ? Une idée c’est bien beau, mais sans la capacité de réaliser ce n’est pas grand chose.

Donner une chance égale à tous au niveau des infrastructures pour avoir une meilleure capacité de réalisation et d’innovation, c’est je pense une chose importante.

Par contre est-ce qu’il faut aussi être capable d’empêcher ceux qui bouffent toute la bande passante sans innovation (je ne ferais pas de dessin ici) et qui par leur activité, diminuent la capacité d’innovation des autres?

En gros, en neutralité du NET, il y en aura pas de facile et les enjeux sont pas mal plus gros que le petit exemple généraliste et mal documenté que je viens d’énoncer.