Une réflexion sur le rôle du SEO dans le développement de sites web

Dernièrement, je m’intéresse beaucoup aux aspects qui font le développement web ce qu’il est. Le développement de sites web est un monde vaste et, parfois, peu balisé. À la vitesse où évoluent les choses, il est de moins en moins nécessaire de savoir que le web moderne est établi sur le protocole HTTP.

Graduellement les abstractions se mettent en place et le processus de démocratisation des pratiques se poursuit. C’est le cycle de la vie des technologies.

L’un des principaux points de discorde lorsqu’il est temps de mettre en place un site web est l’optimisation des résultats de recherche. Les anglophones ont nommé ça le SEO. À titre de leçon d’histoire, cette discipline est née un peu après l’apparition du premier moteur de recherche. La question que les experts de ce domaine tentent de répondre est la suivante: de quelle façon les pages de mon site web vont performer dans les résultats de recherche de Google*?

En réalité, j’ai très peu de choses à dire sur le SEO en tant que tel à part ceci: méfiez-vous des « experts ». Ces dernières années, j’ai vu et eu à implémenter mon lot de recommandations SEO sur des sites clients et je peux vous affirmer qu’une bonne partie de celles-ci sont que du vent.

Je dis ceci, mais ce n’est pas entièrement vrai. En revanche, il faut être en mesure de reconnaître les trois catégories d’améliorations SEO à apporter à un site web.

  1. mesurer ou quantifier une interaction avec l’utilisateur: par exemple, si vous utilisez Google Tag Manager ou Google Analytics, l’expert SEO, va vous demander d’ajouter de l’information supplémentaire à la puce de suivi ou de suivre par un appel d’événement à l’API un clic sur des liens en particulier.
  2. ajustements fonctionnels au site suite à de l’analyse de données: l’expert a eu quelques temps pour prendre mesure sur les points qu’il désirait tester. Selon mon expérience, les changements peuvent aller de la façon à générer la balise <title> à placer des éléments stratégiques dans une page afin de faciliter le transit d’un utilisateur à la page du panier d’achats.
  3. les recommendations où vous vous dites « mais, coudonc, est-ce qu’il consomme des drogues dures? »: vous vous souvenez lorsque vous êtes en train d’implémenter des redirections 301 sur des pages ayant des extensions datant des dinosaures (ex.: .php3 ou shtml) ou de la page qui fait une liste des 5000 villes du Québec que vous avez dans votre base de données?

C’est cette dernière catégorie qui est irritante pour le développeur web. Dans mon cas, j’ai toujours une réserve à les implémenter aveuglément, car je sais que, bien souvent, ce n’est pas nécessairement dans le meilleur intérêt du client.

Pour ma part, avec le référencement dans les moteurs de recherche, il y a trois critères de base sur lesquels vous pouvez bâtir:

  • mettre de l’avant une expérience utilisateur qui incite les gens à y retourner
  • avoir un contenu qui vaut la peine d’être lu et partagé
  • mettre à jour ce contenu régulièrement.

Ensuite, la magie s’opère par elle même.

À titre de conclusion, avant de se lancer dans une opération SEO, la première question qui devrait être posée est sur les objectifs de référencement pour le site web. Est-ce qu’un compétiteur performe mieux? S’agirait-il plus d’une question que le contenu du site n’est pas pertinent?

Je crois qu’il y a une tonne de questions à poser avant d’accepter de faire des améliorations SEO sur un site. Il s’agit aussi d’un bon critère pour choisir son « expert ». N’acceptez pas les recommandations d’un inconnu. Ça prend du temps pour établir une relation de confiance!

Par le fait même, c’est là que les développeurs web doivent intervenir. S’intéresser un peu au SEO est aussi une façon de départager les bonnes améliorations à celle de la catégorie #3. Impliquez-vous!

* Oui, je sais que Bing et autres existent. Les projecteurs sont sur Google en ce moment. C’est comme ça!

Si vous voulez plus de French Coding, n’hésitez pas à liker la page Facebook ou de me suivre sur Twitter.

Publicité

Les liens de la semaine – Édition #107

Développement

.NET

Web

Technologie

Science et autres

L’importance, pour un développeur web, de connaître le JavaScript

À quelques reprises, dans le passé, je me suis prononcé sur l’importance pour un développeur web de bien maîtriser tous les aspects qui sont reliés à la mise en place d’un site web. Il s’agit bien de faire preuve de polyvalence.

javascript_logo[1]En plus de cela, il faut bien bien être conscient de la direction que prend son environnement de développement. À l’époque, je mentionnais qu’il fallait remarquer que Microsoft prenait un solide penchant pour l’Open Source pour le développement web. Je ne me suis pas trompé vraiment. Surtout depuis l’annonce de l’ouverture du code de .NET la semaine dernière!

Ceci étant dit, loin de moi est la prétention d’être Nostradamus. Toutefois, s’il y a une tendance qui se confirme de plus en plus dans le développement web, c’est celle de l’importance de JavaScript dans ce domaine. JavaScript est passé, en quelques années, d’un langage permettant d’ajouter un extra à une page web à la mécanique permettant de faire fonctionner le web moderne.

Certains, comme Hanselman, pensent même que JavaScript est peu comme l’Assembleur du web. Je suis d’accord avec lui. Ces temps-ci, tout finit par être compilé ou adapté en JavaScript. Pensez notamment à l’impossible que edge.js permet de faire: exécuter du code .NET dans NodeJS et vice versa!

Ce que je veux dire ici c’est que JavaScript est un incontournable et il importe à tous les développeurs web d’en connaître les bases. Si vous ne connaissez pas JavaScript en 2014, vous manquez un bateau et vous prenez du retard.

Si ce n’est pas le cas, je connais des développeurs, comme vous, qui ont eu, eux aussi, de bonnes raisons de ne pas avoir eu à faire de JavaScript dans leur carrière. Alors, ne considérez pas ma dernière affirmation comme une tentative de jouer sur un sentiment de culpabilité.

Ce qu’il doit être appris

En écrivant ce billet, je me suis demandé la chose suivante: si j’avais à conseiller un camarade développeur sur ce qu’il devait regarder pour s’initier à JavaScript, qu’est-ce que je lui dirais de regarder en premier?

Faites l’exercice mental. Je vous le dis que ce n’est pas aussi facile que ça en a l’air. JavaScript est tellement omniprésent que ça rend le processus de sélection difficile sans vouloir traumatiser quelqu’un.

Toutefois, si j’avais à le faire, je me suis dit qu’un point de départ serait celui-ci:

Si vous voulez plus de French Coding, n’hésitez pas à liker la page Facebook ou de me suivre sur Twitter.

Les liens de la semaine – Édition #106

Développement

.NET

Technologie

Web

Science et autres

Extraire les données HTML de son compte Koodo avec NodeJS et CasperJS

Mon billet de la semaine dernière n’était pas un hasard. À temps perdu, j’ai travaillé sur un projet qui me trottait en tête depuis que je suis client du service prépayé de Koodo. Ce projet consiste à utiliser CasperJS afin d’aller y extraire les données d’utilisation de mon forfait prépayé.

La principale motivation de ceci est de me permettre d’avoir accès à mes statistiques d’utilisation autrement que par le site web de Koodo. Ce point est plus une question de préférence qu’un irritant. Il faut savoir que Koodo offre une application iOS pour ses clients afin de consulter les informations de leur compte. Cependant, elle n’est pas accessible pour les clients du prépayé.

De plus, en archivant les données de mon côté, l’objectif sera de développer mes propres statistiques d’utilisations. C’est vraiment plus cette raison qui me motive dans ce projet.

Bienvenue à FrenchCoding.KoodoJS!

Avant tout, je dois dire que j’ai manqué d’inspiration pour ce nom de projet. C’est tout ce qui m’est venu en tête!

KoodoJS est fabriqué avec quatre composants bien distincts:

  • Utilisation de CasperJS et PhantomJS pour aller récupérer les données d’utilisation de mon compte (koodo.js)
  • NodeJS, afin de récupérer les fichiers JSON générés par le script CasperJS et les déposer dans la base de données. (koodoWatch.js)
  • MongoDB, pour stocker les données.
  • Powershell et les tâches automatisées Windows pour exécuter le script CasperJS à intervalles réguliers. (casper-koodo.ps1)

Le fonctionnement de tout cela est bien simple. La tâche automatisée exécute CasperJS à intervalles réguliers afin de produire un fichier JSON avec les données provenant du site de Koodo. Ensuite, une application NodeJS attend le fichier nouvellement créé et l’insère dans une base de données MongoDB.

C’est tout! Pour l’instant… :)

Plans pour l’avenir

Vous en conviendrez probablement avec moi. Après la lecture de mon code source, KoodoJS fait un peu brouillon. Il s’agit de la première étape de quelque chose qui a un peu de potentiel.

Dans les changements que je veux apporter à KoodoJS, il y a ceux-ci:

  • Raffiner un peu le code en place
  • Rendre un API accessible par le web. Actuellement, c’est bien, mais les données sont enregistrées sur mon ordinateur personnel. Pas pratique!
  • Produire des statistiques sur l’historique de consommation. Par exemple:
    • Analyse du rythme de consommation des données et des minutes.
    • Graphiques des statistiques d’utilisation
    • Prévision de coûts pour le forfait prépayé selon l’historique de consommation

Ressources supplémentaires