lundi 22 octobre 2012

Réduire le temps de chargement d'un site web

Aujourd'hui avec internet nous avons l'habitude d'obtenir l'information recherchée immédiatement.

A une époque où l'on ne veut pas attentdre voici plusieurs pistes à explorer pour réduire le temps de chargement d'un site web, le but de cet article n'étant pas de rentrer dans les détails de chaque technique, mais de proposer des débuts de solution à méditer.
  1. Réduire le nombre de requêtes HTTP
  2. Réduire la taille des données téléchargées
  3. Optimiser son code

 Réduire le nombre de requêtes HTTP

Supprimer les scripts et CSS chargés en doublon

Pour vérifier que vos JS et CSS sont bien chargés une seule fois, vous pouvez regarder les ressources chargées dans l'onglet "Réseau" de Firebug.

Utiliser la technique des CSS sprites pour les images

Il s'agit de regrouper un certain nombres de petites images les unes à côté des autres sur un même fichier. Par exemple vous utilisez plein de petites icones sur votre site et les chargez une par une : ce sont autant de requêtes HTTP que d'icones. En les regroupant sur un même fichier vous reduisez le chargement à une seule requête. Le découpage de chaque picto se fera ensuite en CSS.

Associer les scripts

Cette technique est à prendre avec des pincettes. Celà peut être bénéfique de regrouper plusieurs fichiers javascripts pour n'avoir plus qu'une seule requête HTTP ; cependant attention à la taille finale du script qui peut mettre énormément de temps à se charger également.

Charger les JS en fin de page

Celà peut permettre d'afficher plus rapidement la page, mais cette technique ne fonctionne que si les scripts concernés n'ont pas besoin d'être chargés plus tôt.

Utiliser le cache navigateur

Utiliser les en-têtes HTTP à bon escient peut éviter de redemander des ressources inutilement.

Utiliser un système de cache (par exemple Varnish)

Varnish vient se placer entre le client est le serveur. Si le client demande une ressource qui est déjà dans le cache, Varnish la renvoie sans faire appel au serveur. De nombreuses requêtes sont ainsi évitées. Vous pouvez bien entendu recharger certaines parties de code à la demande, grâce au langage ESI.

Réduire la taille des données téléchargées

(peut être en contradiction avec les préconisations précédentes, tout celà est à adapter en fonction des cas spécifiques)

Gzipper les fichiers

JS, CSS, HTML ou encore les fichiers XML/Texte seront compressés par le serveur avant envoi.

Réduire le poids des images quand celà est possible 

  • Réduire le nombre de couleurs dans photoshop, tout en “dosant” 

  • Utiliser un logiciel d’optimisation d’image, par exemple Caesium pour Windows

Minifier les fichiers JS et CSS

En supprimant les caractères non nécessaires ainsi que les commentaires et les espaces, la taille des fichiers est ainsi réduite et le temps de réponse est amélioré.

Optimiser son code

Encore une fois, vous trouverez dans cette partie quelques exemples de choses à faire pour optimiser votre code. Ces bonnes pratiques sont à avoir au moment du développement de votre projet, et sont de bonnes habitudes à prendre pour la suite.
  • PHP : utiliser des simples quotes à la place des doubles quotes
  • PHP : $array[‘key’] est 7 fois plus rapide que $array[key]
  • PHP : éviter les fonction dans les boucles : for($i=0;$i=count($array);$i++) la perte de temps est multipliée par le nombre d’itération
  • PHP : utiliser des chemins absolus évite le calcule du chemin d’un fichier
  • PHP : certaines fonctions sont plus rapides que d’autres : préférer str_replace à preg_replace, explode à preg_split, etc...
  • SQL : réduire le nombre de requêtes
  • SQL : bien structurer sa base de données : mettre les types adéquats, la bonne longueur de champ...
  • SQL : mettre en place des index pour accélérer la recherche de l'information en privilégiant les accès au fichier d'index

    et ainsi de suite...

dimanche 14 octobre 2012

Les qualités d'un bon développeur


Un bon développeur n'est pas seulement un développeur qui maîtrise ses technologies, sa façon de réflechir et son approche du travail sont tout autant importantes.

Une des qualités recherchées chez un développeur est le fait d'apprendre vite. Quelqu'un qui appréhende bien les problématiques, quelqu'un qui s'adapte facilement partira déjà avec un avantage. Néanmoins, cela peut être comblé par un travail supplémentaire qui permettra de développer cet aspect de la personnalité.

On dit toujours qu'un bon développeur est un feignant. A mon sens, c'est vrai et faux à la fois. Vrai car notre feignantise nous pousse toujours à développer pour nous faciliter la vie en automatisant certaines tâches répétitive par exemple. Et faux car pour devenir un bon développeur, il faut apprendre constamment, et pratiquer. Vous contenter de faire vos  35 heures et rentrer chez vous ne vous empêchera pas dêtre un bon technicien, mais ceux qui poussent plus loin la connaissance, la curiosité, se rapprocheront d'avantage que vous de l'excellence.

N'attendez pas que votre patron vous offre des formations, prenez votre carrière en main et devenez meilleur. Soyez curieux, c'est à mon sens une des qualités les plus importantes dans ce métier. tenez vous au courant des dernières techno, et mettez les en oeuvre. Ce n'est qu'en pratiquant qu'on saisi parfaitement les différentes problématiques que l'on peut rencontrer.

Une autre des qualités les plus importantes et la rigueur, et l'organisation. Ne soyez pas brouillon. Faîtes en sorte que votre travail soit homogène, adoptez des normes logiques et constantes, commentez votre code, faîtes des tests. Si vous ne savez pas si vous êtes rigoureux, penchez vous sur le code de quelqu'un d'autre, si vous vous sentez contrarié, c'est que vous êtes rigoureux !

Etre excellent techniquement et maîtriser ses technos ne suffit pas. Il faut savoir prendre un certain recul par rapport à ce que l'on fait ou ce que l'on va faire. Est-ce que ça répond au besoin ? est-ce que c'est logique ? est-ce que c'est réutilisable ? Cet aspect vient généralement avec l'expérience.

Pour conclure je dirais qu'être ou devenir un bon développeur est avant tout une question de caractère. Ce caractère peut être développé avec l'expérience, bien sûr on ne peut pas être parfait immédiatement. Prenez le temps d'élargir vos connaissances et développer celle que vous avez déjà. Mettez vous en place des protocoles de travail et essayez de les mettre en oeuvre.

dimanche 7 octobre 2012

Les emplacements essentiels des mots-clés sur votre site web

Pour avoir du traffic sur votre site web, il faut que vos pages soient optimisées pour les mots-clés. Il est donc important de savoir où placer ces mots-clés.
Si un moteur de recherche tel que Google fourni des résultats si efficaces, c'est parce qu'il est capable de déterminer en fonction des termes recherchés quels résultats sont les plus appopriés. C'est là que vous web marketers et web développeurs entrez en jeu.

Terminés, les métas keywords

Les "keywords" dans les métas ne sont plus pris en compte par le moteur de recherche. L'époque où l'on pouvait bourrer sa balise meta keyword de mots-clés pour gagner un avantage est révolue. L'objectif étant de fournir des résultats pertinents, le moteur de recherche ne se laisse plus abuser. D'ailleurs cette pratique n'était pas toujours à votre avantage et pouvait jouer contre vous si elle était mal utilisée.

Voici donc sur quoi vous devriez vous concentrer.

La balise "title"

Cette balise doit contenir le titre du contenu de votre page, le choix du contenu est donc très important, d'autant plus qu'il s'agit du titre qui apparaitra dans les résultats du moteur de recherche.

Cette balise devra contenir environ une douzaine de mots, qui doivent bien illustrer le sujet de votre page. Les termes les plus importants devront se trouver si possible au début du titre et devront donner envie à l'internaute de cliquer dessus dans le moteur de recherche.

Ne mettez pas le même titre sur toutes les pages, et personnalisez le plus possible en fonction de vos différentes pages. Celà permettra d'avoir un maximum de mots-clés, mais également d'éviter les filtres de duplication de contenu.

De jolies URL

Des URL parlantes permettront à l'internaute (mais également au moteur de recherche) d'avoir une idée du contenu qu'il trouvera dans vos pages, et donc d'avoir envie d'y jeter un oeil.

Par exemple :
http://www.monsitedactus.com/les-emplacements-essentiels-des-mots-cles-sur-votre-site-web.html vaut mieux que :
http://www.monsitedactus.com/article.php?id=3

Cette URL peut être le slug du titre de votre page.

La balise "h1"

Sans en abuser, vous pouvez mettre plusieurs balises h1 dans vos pages. Avec l'arrivée du HTML5 et ses nouvelles balises, vous pouvez par exemple maintenant imaginer avoir une balise h1 en en-tête de vos balises section.

La balise h1 étant la plus importante des balises de titre (h1, h2, h3, etc...), elle indique au moteur de recherche que les mots-clés qu'elle contient sont plus importants que les autres termes employés dans le contenu de votre page.

Le contenu de votre page


Le contenu de votre page doit rester pertinent. N'essayez donc pas de placer plus de mots-clés que de raison, ou alors c'est la qualité de votre contenu qui en patira. Si les termes viennent naturellement lors de l'écriture de votre contenu, très bien, mais ne tentez pas le diable en introduisant des couches et des couches de mots-clé.

Les images et leur attribut alt

Il ne faut pas oublier que les images aussi peuvent jouer dans les résultats de recherche, celà vaut donc la peine de passer un peu de temps à optimiser les votres avec les bons mots-clés. Rappelez-vous les jolies URL, celà fonctionne de la même façon. Privilégiez par exemple cathedrale-de-paris.png à img42.png.

Renseignez l'attribut alt avec du texte que vous aimeriez voir s'afficher si votre image n'était pas accessible. Par exemple : alt="Photo de la cathédrale de Paris". "alt" est l'abbréviation de "alternative", c'est le texte qui s'affiche lorsque l'image est "cassée", ou pas encore chargée.

N'oubliez pas que beaucoup d'internautes recherchent des images seules, celà peut valoir le coup si celà peut permettre de vous rapporter quelques visites.

dimanche 30 septembre 2012

Passer de développeur à chef de projet

Je n'ai jamais compris pourquoi, pour beaucoup, l'aboutissement d'un développeur était de devenir chef de projet.

La semaine dernière encore, après mon entretien bi-annuel avec mon boss, j'étais au téléphone avec mes parents et leur disais qu'on m'avait proposé à terme un poste de chef de projet ou directeur technique, et que j'avais opté pour la direction technique.

Ils n'ont pas compris car pour eux  chef de projet ça sonne mieux. C'est peut-être le mot "chef" qui fait cet effet.

Moi, qu'on me propose un poste de chef de projet, je le prends à moitié mal. Celà voudrait-il dire que je suis un mauvais développeur ? A priori non, car on constate que ce sont souvent les meilleurs développeurs qui se voient proposer le poste de chef de projet. Je trouve ça dommage, pourquoi se priver de ses meilleurs éléments ?

Devenir chef de projet, je vois ça plutôt comme une ré-orientation de ma carrière. Si j'en avais marre un jour de développer, pourquoi pas mettre à ce profit mes facultés d'organisation. Mais cette évolution de carrière est d'autant moins logique que les qualités requises ne sont pas du tout les mêmes.

Malheureusement pour moi, je n'ai qu'un bac+3, et lorsque je rencontre une nouvelle personne et que je dis que je suis développeur, la question qui suit est généralement : "tu es ingénieur ?". Et bien non réponds-je honteusement, par contre je suis lead développeur, et, tiens, ça l'intéresse de nouveau parce qu'il y a "lead" dedans.

Pourtant, je peux dire d'expérience que ce n'est pas ce que j'ai appris pendant mes études qui a fait ce que je suis aujourd'hui, mais l'expérience sur le terrain. Un bac+2 avec 3 ans d'expérience vaut beaucoup mieux sur le terrain qu'un ingénieur qui sort de l'école.

Etre simple développeur, ça n'impressionne pas vraiment les gens, même si le développeur en question est une star, qui s'en soucie ? Dans notre société il faut être bien payé pour pouvoir se valoriser auprès des autres, alors maintenant si tu es développeur tu es une merde, alors qu'à l'époque les développeurs c'était l'élite.

Bref, c'est pas facile d'être développeur.

dimanche 23 septembre 2012

Choisir un bon hébergement pour son site web

Choisir un hébergement pour votre site web n'est pas une chose aisée mais est essentiel dans votre stratégie de business ou carrière. Pour choisir celui qui sera le mieux pour vous, vous devez regarder lequel correspond le mieux aux caractéristiques techniques de votre site, à vos exigences en terme de fiabilité, mais aussi à votre budget.

Il y a plusieurs sortes d'hébergement :

Le mutualisé :

C'est la solution la plus économique du fait que le serveur sur lequel vous êtes héberge également de nombreux autres sites. Vous bénéficiez d'un bon support technique et possédez votre nom de domaine. Un des gros inconvénients est que vous n'êtes pas l'administrateur du serveur et donc vous ne pouvez pas installer tous les modules, mais pas de panique, vous devriez vous en sortir avec ce qui est déjà installé dessus, à moins d'avoir des besoins assez spécifiques. Un autre point noir est parfois la lenteur due à la fréquentation des autre sites hébergés.

Le dédié :

Vous disposez de votre propre serveur, et en êtes l'administrateur, ce qui est le gros avantage de ce type d'hébergement, à la condition d'avoir les connaissances nécessaires, et ce n'est pas donné à n'importe qui. Le gros point noir de cette solution est le prix.

La colocation :

Il s'agit de votre serveur à vous, placé chez l'hébergeur. Vous disposez donc d'une connexion plus rapide et plus de sécurité. Ce système est moins couteux, vous pyez pour la maintenance et la bande passante.

Ceux-ci sont les types d'hébergement principaux. Il y a encore quelques alternatives :

Le serveur virtuel dédié :

Vous avez à votre disposition une machine virtuelle utilisant une partie des ressources d'un serveur et vous en êtes l'administrateur.

Le serveur dédié managé :

Vous disposez de votre propre serveur mais celui-ci est administré par les techniciens de votre hébergeur, celà ne vous demande donc aucune connaissance technique mais un assez gros budget.


Ce qui doit motiver votre choix :

Le support :

Il est primordial que votre hébergeur supporte toutes les fonctionnalités de votre site, ainsi que que celles que vous avez l'intention d'intégrer plus tard.

Le prix :

Est-il bien nécessaire par exemple de prendre un serveur dédié alors qu'un mutualisé conviendrait très bien ? Décidez vous pour une solution qui colle à vos besoins présents et futurs.

L'espace  :

L'espace disque et la bande passante sont un coût en plus, prenez donc un plan adapté à vos besoins. Mais sachez aussi qu'en vous projetant dans votre activité future, vous pouvez anticiper sur les limites d'espace disque et de bande passante et éviter le désagrément d'un changement de plan d'hébergement en plein milieu.

La fiabilité :

Renseignez-vous sur votre futur hébergeur, allez voir sur les forums les avis des clients actuels, et tenez en compte dans la mesure de votre activité : votre site de vente en ligne supporterait-il une interruption de service ?

La réactivité :

Renseignez vous sur le service client. Est-il réactif ? est-il efficace ? Il ne s'agirait pas que vous vous retrouviez bloqué pendant des semaines sur un problème. Ce point est d'autant plus important qu'est bas votre niveau de compétence en la matière.

La sécurité :

Cherchez un hébergeur qui effectue régulièrement des sauvegardes. Si vous êtes parano, veillez à ce qu'il ait un plan de secours en cas d'inondation ou incendie.

L'ancienneté :

N'optez pas pour un hébergeur qui pourrait disparaitre aussi vite qu'il est apparu. Renseignez vous sur la date de création de la société afin de vérifier depuis quand et si elle est bien installée sur le marché.


Vous avez donc maintenant plein de cartes en main pour aller vers la bonne solution. Je dirais posez vous les bonnes questions. Ne soyez pas trop gourmant et listez posément vos besoins et vos limites. Soyez raisonnable tout en sachant anticiper sur le futur.

lundi 17 septembre 2012

Les failles du développeur web

Vous êtes tout excité par votre nouveau site que vous avez fait tout seul comme un grand et souhaitez le lancer le plus rapidement possible. Attention à ne pas aller trop vite quand même et prendre garde à appliquer les bonnes pratiques SEO, sans quoi tout votre travail ne servira à rien !

Vous n'utilisez pas de polices web :

Votre site est bien beau, mais vous voulez surtout qu'il soit indexé dans les moteurs de recherche ! Utilisez un maximum les polices au profit des images. Les textes sur vos images ne sont pas détecté par les moteurs de recherche. Il y a d'autres moyens aujourd'hui d'avoir de jolis textes sur son site ! (les Google webfonts par exemple)

Vos pages sont lourdes (dans tous les sens du terme) :

Faites en sorte que les textes et la navigation soient chargés avant le reste, afin que vos visiteurs accèdent plus rapidement à l'information qu'ils cherchent. Si les pages sont trop longues à s'afficher, celà pourrait ne pas donner envie de revenir sur votre site.

Vous oubliez les balises h1 :

La balise h1 doit contenir le titre de votre page, bien sûr en adéquation avec son contenu. L'utilisation de cette balise peut permettre d'améliorer la pertinence de votre site. De même, les balises h2 ne sont pas un substitut de la balise h1 !

Vous oubliez les attributs "alt" sur vos images :

L'attribut "alt" correspond au texte alternatif de l'image. C'est à dire que c'est le texte qui s'affichera à la place de l'image si celle-ci est "cassée" ou pas encore chargée. Ce texte pourra être lu par des outils facilitant l'accessibilité (pour les malvoyants) ou par les moteurs de recherche.
Pour compléter, l'attribut "title", lui, n'a pas vocation à se trouver sur une image, mais plutôt sur un lien pour faciliter la navigation (par un complément d'information).

Vous utilisez trop d'images :

Plus vous mettez d'images dans vos pages, plus le nombre de requêtes HTTP augmente. Plusieurs optimisations sont possibles :
- utiliser la technique des CSS sprites (un seul fichier pour plusieurs images)
- réduire la taille des images en "dosant" le nombre de couleurs dans Photoshop

Vous chargez trop de ressources :

On a déjà parlé des images, parlons maintenant des CSS et JS. Vérifiez que vous ne chargez pas de doublons. Essayez d'associer vos scripts si possible pour moins de requêtes HTTP. Minifiez vos fichiers en supprimant les caractères inutiles (par exemple les espaces). Gzippez vos fichiers.

Vous utilisez Flash :

Flash n'est plus à la mode, sauf si vous êtes resté bloqué aux années 2000. A plus forte raison, il n'est pas indexable par les moteurs de recherche. Donc à moins que vouliez faire un site "sapin de Noël", vous pouvez passer à autre chose, et d'autant plus avec les possibilités techniques de maintenant.

Vos URL sont moches :

Quoi de plus moches qu'une URL de ce type :  www.monsite.com/actualite.php?id=4
Soyez pro, fournissez de belles URL comme : www.monsite.com/actualite/titre-de-ma-belle-actu.html. Une URL parlante peut donner envie d'aller voir !

Pour conclure je dirais que de la même manière qu'il faut souffrir pour être belle (à ce qu'on dit), il faut faire un effort pour rendre son site de qualité.

lundi 10 septembre 2012

Créer un formulaire web ergonomique et efficace

Le formulaire sur votre site web quel qu'il soit peut être un point d'entrée vers un premier contact avec un futur client, il ne doit donc pas faire fuir vos internautes avant même de l'avoir rempli.

Il y a avant tout quelques règles d'or à respecter dans la mesure du possible :

Pas de formulaire à rallonge

Votre internaute sera découragé à la simple vue de votre formulaire, avant même d'avoir commencé à le remplir. S'il s'agit d'un long processus de commande nécessitant beaucoup d'informations, n'hésitez pas à découper votre formulaire en plusieurs étapes.

Par exemple dans le cas d'une réservation :

Etape 1 : le choix des dates et de la réservation
Etape 2 : les coordonnées personnelles
Etape 3 : les coordonnées bancaires

Celà fonctionne si vous lui affichez en haut du formulaire sa progression dans le processus de commande. Car s'il va d'étape en étape sans savoir si ça va encore durer, il risque de se décourager avant d'en voir le bout.

Offrez lui la possibilité de revenir en arrière sans perdre ses informations.

Organisez dans la mesure du possible vos champs par thèmes.

Pas d'extravagance

L'internaute est plus à l'aise avec ce qu'il a l'habitude de voir. Il n'aime pas être perdu alors privilégiez la simplicité. Il prend déjà sur son temps pour remplir votre formulaire, ce n'est pas une partie de plaisir pour lui, alors facilitez lui le plus possible la tâche.

Les formulaires les plus simples sont les plus efficaces. N'hésitez pas à supprimer tous les champs qui ne vous sont pas indispensables.

Pas de diversions

C'est déjà un effort pour l'internaute de remplir votre formulaire, alors ne le distrayez pas avec des informations superflues. Si vous détournez son attention, il se peut qu'il abandonne en cours de route.

Ensuite du point de vue du formulaire en lui-même :

Indiquez les champs obligatoires

Ajoutez un astérisque aux libellés de vos champs obligatoires, par exemple "Nom *". Celà peut éviter un deuxième passage sur le formulaire.
Bien sûr, n'oubliez pas de précisez au bas de votre formulaire que tous les champs comportant un * sont obligatoires.

Indiquez des libellés clairs

Soignez les libellés de vos champs, et mettez-les dans une balise "label". L'utilisation de cette balise peut permettre pour une case à cocher par exemple, ou bouton radio, de pouvoir cliquer sur le texte en plus du bouton.

Présentez de façon claire les éléments de votre formulaire

Alignez tous les libellés sur la droite, et tous les champs sur la gauche afin qu'il y ait partout la même marge entre vos libellés et vos champs. Celà donnera plus de clarté à votre formulaire.

Vous pouvez également colorer une ligne sur deux de votre formulaire pour faciliter la compréhension et indiquer rapidement quel intitulé correspond à quel champ.

Vous pouvez aussi mettre en avant le champs à remplir en le colorant autrement par exemple.

Privilégiez les cases à cocher et les boutons radio

Plutôt qu'utiliser des selectobox pour un choix oui/non, privilégiez la case à cocher. De même utilisez les boutons radio dans la mesure du possible, celà permet d'avoir directement les différentes options sous les yeux.

Gérez bien vos erreurs

Pour ne pas se retrouver avec plein d'erreurs après avoir validé le formulaire et changé de page, essayez de valider les données au fur et à mesure du remplissage. Celà peut permettre d'éviter des erreurs inutiles, par exemple l'oubli du @ dans un champ email.

Soyez clair dans vos messages d'erreur. Par exemple différenciez le cas vide et le cas invalide.

Bloquez le nombre de caractères dans les champs quand celà est nécessaire, par exemple limitez à 5 pour un code postal, à 10 pour un numéro de téléphone.

Adaptez la longueur de vos champs

Si vos champs sont trop petits, il sera extrêmement désagréable pour votre internaute de revenir tout au début du champ pour vérifier qu'il n'a pas fait d'erreur.

jeudi 6 septembre 2012

Découvrir le jeu Quarto et les astuces pour gagner

Aujourd'hui je vais vous parler d'un sujet qui n'a rien à voir avec les thèmes du blog, mais qui incite à la réflexion, ce qui me plaît, et me permet du coup d'ouvrir une rubrique "extra". Il s'agit du jeu de société Quarto.

Tout d'abord, c'est un jeu de stratégie que l'on qualifie de combinatoire abstrait, car il se joue à un contre un joueur, jouant à tour de rôle, avec des éléments connus et ne laissant pas de place au hasard.

C'est un jeu de même type que les échecs ou les dames par exemple, avec la particularité un peu déroutante au début, que c'est votre adversaire qui choisi le pion que vous allez poser.

Principe du jeu

Celà se joue autour d'un plateau de 4x4 cases, soit un carré de 16 cases, et avec 16 pions qui se différencient de par les 4 critères qui peuvent les caractériser :

- blanc / noir
- grand / petit
- rond / carré
- creux / plein

Chacun des pions possède soit l'une soit l'autre possibilité des 4 caractéristiques, ce qui fait que chaque pion du jeu est unique :


 Le but du jeu est que vous réussissiez à aligner 4 pions possèdant au moins une caractéristique en commun, soit :

- tous les blancs
- tous les noirs
- tous les grands
- tous les petits
- tous les creux
- tous les pleins
- tous les ronds
- tous les carrés

Cet alignement peut être fait à l'horizontale, à la verticale, et en diagonale. Les joueurs confirmés jouent également en carré.

La difficulté et particularité du jeu, et que ce n'est pas vous qui choisissez le pion à poser, mais votre adversaire. Ainsi, un tour de jeu se déroule de cette façon si vous commencez :

- vous choisissez un pion que vous donnez à votre adversaire
- l'adversaire pose le pion sur le plateau
- l'adversaire choisi un pion qu'il vous donne
- vous posez le pion sur le plateau 

Maintenant mes trucs pour mettre les chances de mon côté :

Déjà bien connaître les pièces. Quand vous regardez une pièce vous devez bien avoir en tête ses quatre caractéristiques.

Lorsque vous donnez des pions à votre adversaire, arrangez vous pour qu'il commence une ligne, et attendez qu'il vous donne les pions pour la compléter. Mais attention à ne pas vous même lui donner par inattention la pièce qui lui permettra de finir.

Comptez les pions restant avec lesquels il ne peut pas finir une ligne et faîtes attention à ce qu'il ne vous reste pas une pièce avec laquelle il pourrait finir.

Essayez d'appliquer cette stratégie sur plusieurs lignes pour avoir plus de chances que votre adversaire vous donne de quoi finir.

Si vous voyez que le nombre de pièces restantes ne correspondra pas à votre tour et que vous serez obligé de lui donner une pièce qui termine une ligne, bloquez vous-même la ligne à risque lorsque vient votre tour.

Les pions pleins et creux sont souvent oubliés faute d'attention. Soyez vigilant sur ce caractéristique, et usez-en pour pièger votre adversaire.

Le premier joueur pourrait gagner à tous les coups !

Une étude prouve mathématiquement que le joueur qui commence pourrait gagner à tous les coups, quels que soient les coups de son adversaire.

Mais attention, celà ne signifie pas du tout que le premier joueur gagne à tous les coups, à moins peut-être d'être un ordinateur !

En effet, ceci est bien sûr à condition que le premier joueur connaisse le meilleur coup dans chaque configuration ! On ne parle plus alors de stratégie puisqu'il s'agirait d'apprendre quoi jouer dans quel cas.

Quarto en ligne

Quelqu'un s'est amusé à développer un Quarto en ligne avec différents niveaux de difficulté, donc si vous n'avez pas de partenaire ou si vous voulez vous entraîner, vous pouvez jouer contre l'ordinateur avant de commencer à goûter aux joies d'affronter un véritable adversaire.
http://quarto.freehostia.com/fr/

lundi 3 septembre 2012

Les bonnes pratiques de SEO

Le monde du marketing en ligne a évolué à un rythme accéléré, et de nombreuses techniques ont vu le jour pour aider les entreprises à se faire connaître sur le web. Ces techniques sont devenues plus efficaces avec le temps, en termes de performances et de coûts.

L'une des nombreuses techniques utilisées dans le marketing en ligne est le SEM : Search Engine Marketing. L'objectif du SEM est d'augmenter la visibilité des sites web parmi les pages de résultats des moteurs de recherche. SEM est un terme générique qui englobe différents processus pour une visibilité optimimale des sites web tels que la SEO (search engine optimization) et l'affichage publicitaire payant sur les moteurs de recherche.

Les techniques de SEM peuvent être classées en plusieurs catégories :

1. Les mots-clés (ou "keywords")


Il y a plusieurs points sur les lesquels les experts des moteurs de recherche doivent se pencher pour être en mesure d'accroître la visibilité dans les moteurs de recherche :

a. Indexabilité

Chaque fois qu'un utilisateur effectue une recherche, les moteurs de recherche parcourir leurs index. Certains sites Web ne sont pas inclus dans les index pour différentes raisons, comme que la violation des règles établies par Google, Yahoo!, Bing et autres moteurs de recherche. Il y a beaucoup de raisons qui font qu'un site peut être banni d'un moteur de recherche. Notamment :

Le contenu dupliqué (ou "duplicate content")

Un des critères de classement des sites internet pour un moteur de recherche est l'originalité de son contenu. Si votre site contient des textes copiés mot pour mot d'un autre site, il risque de se faire bannir un jour ou l'autre. Par conséquent, vérifier également qu'aucun autre site ne copie le contenu du votre, sans quoi vous risqueriez d'être tous deux bannis.

La dissimulation de mots-clés dans la page (ou "cloaking")

Une autre pratique beaucoup utilisée auparavant : la dissimulation de mots-clés et de liens derrière des calques CSS, ou encore de la même couleur que le fond du site : par exemple des liens blancs sur fond blanc. Cette technique ne fonctionne plus, et pire encore, les sites usant de ce stratagème ne ressortent plus dans les moteurs de recherche.

b. Trouver les mots justes

Selon leur localisation géographique, leur âge, et autres critères démographiques, vos visiteurs pourraient taper des mots-clés différents, alors qu'ils recherchent la même chose.

2. Le nombre de pages


Plus votre site contiendra de contenus, et de pages indexées dans les moteurs de recherche, et plus il sera présent dans les résultats de recherche.

3. Les "backlinks"


Un backlink est un lien pointant sur votre site, ou une page de votre site. Il s'obtient généralement en faisant un échange de liens avec un autre site. Plus un site a de backlink et plus grande est sa réputation. Cette information est exploitée par les moteurs de recherche pour déterminer l'importance d'un site, ce qui signifie qu'un site ayant beaucoup de backlinks pertinents sera mieux placé dans les resultats de recherche.

lundi 27 août 2012

Comment évaluer les développeurs potentiels pour votre entreprise

Il arrive un moment dans la vie de chaque auto-entrepreneur ou freelancer à succès où il envisage de passer à la vitesse supérieure et de monter sa boîte. Il faut alors embaucher des personnes pour travailler à votre place !

Ce n'est certainement pas pour tout le monde. Vous allez devenir le «patron» et passer la plupart de vos journées à la gestion de projets et assister à des réunions plutôt que d'écrire du code. Mais si vous faîtes bien les choses...

Puisque vous êtes déjà un grand développeur, il ya un moyen facile de garantir le succès. Embaucher des développeurs meilleurs que vous. Mais comment les dénicher ?

Trouver des candidats dans le climat économique actuel est facile. Malheureusement pour vous, de bons développeurs sont rarement sans travail et peut-être moins enclins à prendre un pari sur votre entreprise naissante.

Heureusement avec le web, il est facile de communiquer avec vos futurs employés potentiels via des sites spécialisés de recherche d'emploi et ainsi que des réseaux sociaux comme LinkedIn et Twitter. Toutefois, méfiez-vous des agences de recrutement. Il y en a des bonnes, mais celles-ci sont étonnamment rares dans l'informatique. D'après mon expérience, les agences envoyent les gens dans des sociétés jusqu'à ce qu'ils correspondent, puis les retirent lorsqu'un meilleur bénéfice peut en être tiré ailleurs !

Maintenant que vous vous retrouvez avec votre tas de curriculum vitae, demandez à chacun de présenter des projets sur lesquels il a travaillé, avec URL à l'appui. Même ceux fraîchement sorti de l'école devraient vous présenter des échantillons de leurs travaux.

Beaucoup d'entreprises aujourd'hui seraient tentées de convoquer ces candidats pour un entretien. Ne le faîtes pas immédiatement ! Beaucoup de gens embellissent la vérité sur leur curriculum vitae. Pour chaque candidat qui peut faire le travail, il y en aura beaucoup plus qui ne le pourront pas. Pire encore sont ceux qui sont eux-mêmes convaincus qu'ils sont grands développeurs.

La première étape est un entretien téléphonique de 15 minutes. Profitez-en pour leur demander pour quelles raisons le poste les intéresse ; plus important encore pour tester leurs connaissances techniques. 

Voici quelques questions que vous pourriez leur poser :
Quels outils de développement utilisez-vous actuellement ?

Quelle balise HTML est utilisée pour le titre principal sur une page ?
Nommez la propriété CSS qui définit le texte en gras.
Qu'entend-on par une méthode magique en PHP ?

Expliquez ce qu'est une classe abstraite ?
Quelle commande SQL peut être utilisée pour supprimer tous les enregistrements d'une table ?


Vous pouvez éventuellement donner à votre développeur potentiel un petit développement à faire. Idéalement, il devrait être raisonnablement difficile, ne pas prendre plus de quelques heures pour se terminer en utilisant les compétences dont vous avez besoin.


Certaines entreprises préfèrent évaluer les développeurs en interne afin de s'assurer qu'ils ne peuvent pas tricher en faisant des recherches google, en accaparant un autre développeur expérimenté ou en prenant trop de temps. Cette méthode peut entraîner le rejet de candidats idéaux parce qu'ils étaient trop nerveux ou stressés.

 
Enfin, en face-à-face, discutez avec le candidat au sujet de son code, sa façon d'aborder les problèmes et sur les améliorations qu'il ferait (un bon développeur sait que des améliorations sont toujours possibles). Voyez si vous pouvez travailler avec lui. Si vous êtes tombé sur le bon candidat, faîtes lui une offre, commencez la période d'essai et faîtes de votre mieux pour le garder !