Livre blanc sur les framework PHP

Quand on doit développer son site marchand, on choisi le langage et l’environnement.

Mais on fait rarement un développement « from scratch » : on utilise soit un framework, soit une solution open-source.

J’en reparlerais, mais je voulais juste signaler le livre blanc, produit par Clever Age, sur les Framework PHP :

Téléchargez le livre blanc, publié par Clevar Age, sur les framework PHP

Ces Framework permettent de gagner pas mal de temps, quand on doit développer un site. Mais il ne sont pas tous équivalents. Ce document compare CakePHP, Symfony, Zend Framework et Code Igniter.

Quel environnement technique pour un site e-commerce ?

Quand on se lance dans un projet e-commerce, on peut se retrouver dans la situation ou l’on doit choisir un langage de programmation, et plus largement, un environnement technique (OS, serveur, langage, base).

La question est importante, parce qu’elle a beaucoup de conséquences, sur les équipes, l’architecture, et les composants, qu’on pourra plus ou moins facilement ajouter.

Quels sont les grands éléments de cet environnement ?

  • Langage de programmation
  • Serveur
  • Base de données
  • Environnement de programmation
  • Système d’exploitation

On peut commencer par parler des langages de programmation.

D’abord, il faut dire que tous les langages ont une couverture fonctionnelle identique : il n’y a pas de langage qui permet de faire quelque chose, qu’on ne peut pas faire avec un autre langage.

Comment choisir alors ?

Voici quelques critères :

  • Compétences des équipes : Si les équipes maîtrisent un langage (Java par exemple), cela prendra du temps de les former à un nouveau langage. Ce n’est pas forcément rédhibitoire, surtout si on a du temps, mais, existe-t-il des projets ou on a du temps 😉 ?
  • Budget : Certains langages sont gratuits (Java, PHP, Ruby On Rails), et certains sont payants (.NET).
  • Délais. Certains langages, associés à des librairies, permettent de gagner du temps, de développer les services plus vite.
  • Environnement existant : Vous avez déjà tout un environnement, basé sur une technologie. C’est sans doute une bonne idée de faire un développement cohérent par rapport à cet existant.
  • Contour fonctionnel : avec le langage on choisi « de facto » les librairies sur lesquelles on pourra s’appuyer. Si par exemple on doit intégrer un module de CRM, PHP permet de faire ça assez facilement, avec des modules comme SugarCRM.
  • Robustesse de l’application : il est beaucoup plus facile de faire du code robuste en Java ou .NET qu’en PHP. PHP, pour rester sur cet exemple, est tolérant par rapport aux erreurs. La concéquence est qu’il est beaucoup plus difficile d’écrire une application 100% bug free en PHP qu’en Java. Bon, ce point doit être modéré, parce que la qualité finale dépend de tout un tas de facteurs : librairies utilisées, compétences des équipes, …

Je ne mets pas la performance comme critère, parce qu’on peut faire des services performants avec tous les langages (on peut également faire des systèmes qui rament avec tous les langages, c’est même assez facile 😉 ). A chaque fois, il convient « simplement » d’ajuster l’architecture.

Bon, vous me direz peut être que tout ça ne vous guide pas vraiment !

Prenons les trois langages les plus utilisés aujourd’hui : PHP, Java et C#.

PHP

Avantages

  • Gratuit ;
  • Très bien intégré dans la couche LAMP (Linux / Apache / MySQL / PHP) ;
  • Grosse communauté d’utilisateurs, et donc beaucoup de librairies disponibles ;
  • On trouve (relativement) facilement des ressources, soit pour recruter, soit en prestation ;

Inconvénients

  • Trop tolérant aux erreurs (pas de typage, …), et donc cela augmente « mécaniquement » le risque d’avoir un service buggé ;
  • Environnement de développement assez pauvre (pas de débugger encore bien stable).

Java

Avantages

  • Gratuit, mais attention, il faut ajouter un serveur d’application qui n’est pas forcément gratuit. Le serveur d’application est une couche, qui s’intercale entre Apache (le serveur Web) et le langage Java.
  • Très bon environnement de développement, gratuit (Eclipse) ;
  • Grosse communauté, on trouve beaucoup de composants libres ou pas sur le marché ;
  • Langage de très bonne qualité, qui permet, plus facilement qu’en PHP, de faire des programmes robustes et fiables.

Inconvénients

  • On trouve un peu moins de ressources qu’en PHP.
  • Les développements sont souvent un peu plus long qu’avec PHP. C’est la concéquence, le prix à payer ;
  • Comme il y a moins de développeurs Java que PHP, les prix sont un peu plus élevés. La facture est donc un peu plus lourde qu’avec du PHP.

C#

Avantages

  • Au niveau qualité du langage, on est au même niveau qu’avec le Java, mais l’intégration entre le langage et l’environnement de développement (Visual Studio) est plus forte. Au final, le développeur a entre les mains un outils de développement de très grande qualité ;
  • On bénéficie du support d’un grand éditeur ;
  • On peut gagner plus de temps, par rapport au Java, grâce aux nombreuses librairies fournies par Microsoft.

Inconvénients

  • Solution la plus chère, à tous les niveaux : licences, ressources.
  • Ce choix est très structurant, et le choix Microsoft a tendance à « se répandre » : on prend .NET, puis SqlServer, puis IIS, puis Windows Server, puis… On fini rapidement par avoir l’ensemble des logiciels Microsoft, et on revient sur le premier point : attention à la facture !

Au final

Pas simple, pas de réponse universelle.

Autre point important : un projet a une durée de vie limitée, une période d’amortissement. Un site qui vit 3 à 5 ans, c’est bien. Aller au delà n’est pas forcément très raisonnable.

encore un autre point : le choix n’est pas forcément unique : on peut faire le front en PHP, le back en Java, … Avec les Web Services, les différents langages savent dialoguer. Mais : c’est des développements complémentaires et il faut dans ce cas avoir les deux compétences.

N’hésitez pas à commenter ce billet : j’ai essayé d’être synthétique, mais j’ai sans doute oublié des points !

Comment se lancer dans le e-commerce (1) ?

Ce billet ne s’adresse pas aux sociétés, mais plutôt à ceux qui veulent « tout plaquer », changer de métier, et se disent que vendre sur Internet est bien tentant.

Le premier point est clairement le produit : vous voulez vendre quoi ?

Idéalement, vous avez un produit qui va intéresser plus d’une personne, qui n’est pas facile à trouver aujourd’hui, et qui peut être livré.

La question du produit est évidement complètement fondamentale. Sur Internet, si vous êtes sur un modèle de vente classique (un site, qui met en vente des produits), le principal apporteur d’affaire est Google. Et comment les Internautes vont ils trouver vos produits ? Ils vont les trouver parce que vous allez travailler votre référencement naturel : quand les Internautes taperont certains mots, liés à vos produits, il faut que votre site apparaisse en haut de la liste. Quand on choisi son produit, ou plutôt la gamme de produit, on doit penser à « l’espace sémantique » que l’on veut prendre sur Internet. Inutile de rêver prendre des mots trop génériques, ils sont déjà pris par des poids lourds. Il vous faudra choisir une « niche sémantique ».

La question suivante est bien évidement la question du prix. A quel prix allez vous avoir les produits, et à combien allez vous les vendre ?

Bon, vous avez un produit, vous avez une idée du prix. Votre espace sémantique est a peu près clair. Maintenant, comment mettre en vente tout ça ?

Ce sera l’objet d’un prochain billet ;).

« voir » mon réseau social sur Facebook

L’application Nexus s’installe sur FaceBook (ici) et permet de générer une vision graphique de « mon » réseau.

Cela donne ça :

Vision graphique de mon réseau FaceBook

Où ça :

Vision graphique (autre !) de mon réseau FaceBook

Essayez, c’est assez joli : les points sont actifs, en cliquant dessus, on voit les relations associées à ce point.

Sympa.

Euh, ça sert à quoi ?

A rien, bien sûr !

Pub pour copain – CALICO + DOE, le 20, au Zèbre de Belleville à Paris

Calico, c’est de la super musique, et puis, c’est le groupe de Jim. Trop fort ce Jim.

Allez, je lui laisse la parole :

Après un passage « Sous les étoiles … » sur France Inter dans la nuit du 15 au 16 mai, Calico sera en concert le mardi 20 mai au Zèbre de Belleville à Paris pour présenter le nouvel album tout juste sorti qui s’intitule « faire le jeu« .

Pour vous donner envie de passer cette soirée avec eux, nous vous faisons partager la chronique de Stéphane Guihéneuf sur M la music et celle ci-dessous de H.M. parue dans le Rock & Folk du mois de mai :

En cinq ans, Calico a acquis une certaine réputation grâce à de nombreux concerts et quelques albums. Le troisième essai du quintette breton (qui compte trois frères en son sein) impose une chanson pop francophone. La démarche empreinte de musicalité sait jouer des nuances entre retenue pudique et déferlement lyrique pour privilégier les climats, à l’image d’une réussite flagrante, « Poser là », toute en délicatesse et en impact mélodiques. »

Toutes les infos et les dates (dont les Vieilles Charrues le 20 juillet) sont disponibles sur le site www.calico.fr

Doé sera également de la partie. « Un instant de distraction et voilà Doé sur un toit. Il marche à reculons pour ne pas avoir le soleil dans les yeux. Évidemment il tombe ! Il tombe tout de travers sur les travers de l’existence, les petits riens et les grands quelque chose. Tout se mélange dans sa tête, et ça devient des histoires qui lui sortent de partout. Alors bien vite il remonte sur un toit pour les chanter. » http://www.myspace.com/doelechanteur

Vous pouvez consulter les détails de la soirée sur le site du Zèbre de Belleville et réserver dès maintenant dans le réseau Fnac, Géant, Carrefour.

Perso, j’y serais. Et vous ?

(Voilà, jim, ça, c’est fait 😉 )

Internet, espace commercial ?

J’étais en voiture ce matin, ça m’a permit d’écouter l’émission Service Public sur France Inter, dont le sujet était : « Les 10 plaies d’Internet », avec deux invités, Christophe Parcot, DG France de Yahoo et Dominique Maniez, qui vient d’écrire un livre sur les risques liées à Internet.

Beaucoup de choses intéressantes dans ce débat, même si le niveau était assez bas.

Par exemple, sur les Cookies, il a été dit pas mal de bêtises. Les cookies, c’est une technique, qui permet de garder la trace de votre venue sur un site, et de sauvegarder certaines options.

Comme toute technique, elle peut être utilisée pour vous apporter un réel service (éviter de ressaisir des options sur un service, sur lequel on revient), ou pour des d’autres objectifs moins « généreux » (améliorer la connaissance sur les usages des clients, pour améliorer l’offre…).

Autre sujet de discussion : GMail.

Dominique Maniez est très agressif contre Google, parce que celui ci, entre autre, analyse le contenu des emails, pour nous envoyer de la publicité « ciblée ».

Et de décrire l’analogie suivante : « seriez vous prêt à laisser votre facteur ouvrir votre courrier, pour vous glisser de la publicité ciblée, en contrepartie d’un service gratuit ? ».

J’ai trouvé l’analogie décalée : le facteur, c’est un homme, qui me connaît. Le service de Google effectivement analyse le contenu de mes mails, mais c’est un programme. Et dans le contrat, si j’ai bien lu, Google s’interdit tout autre usage de cette connaissance (Google s’engage à respecter mon droit d’auteur, et à ne pas communiquer à des tiers ces données).

Chacun fait comme il veut mais en ce qui me concerne, cela ne me dérange pas.

J’ai trouvé une question, posée par un auditeur, intéressante : la question sur le mélange, sur Internet, entre les usages non commerciaux et commerciaux.

Le gars se demandait si cet état de fait était inéluctable, ou si on pouvait imaginer une séparation, entre un monde fait d’échanges de services, sans publicité, sans services commerciaux, et monde rempli « capitaliste ».

Je pense qu’effectivement, le business « change tout » et qu’Internet est un espace investi par les entreprises. Le gars de Yahoo a beau dire qu’il y a séparation entre les réponses commerciales et les « autres réponses », je ne trouve pas que dans les fait, cette séparation soit très nette. D’ailleurs, c’est bien le propos de l’ensemble des boites qui travaillent le référencement naturel que de « biaiser » les réponses des moteurs de recherche, dans l’intérêt de leurs clients : des entreprises commerciales.

Mais je ne pense pas qu’une séparation soit possible, ni même souhaitable en fait. Internet n’est qu’une extension virtuelle de ce qui se passe dans le réel. On retrouve à ce niveau les mêmes mécanismes, les mêmes règles fondamentales.

Internet est donc un espace ou se côtoie le capitalisme et un monde d’utopie, de partage… Tout cela est étroitement mêlé.

Je préfère ce modèle parce qu’il me semble que tous les autres modèles reviendraient en fait à un système avec moins de liberté, moins de créativité.

La 3D pour vendre avec VB2S et La Redoute

La 3D est très probablement adaptée, pour mieux présenter certains produits.

C’est probablement le cas pour les vêtements.

C’est en tout cas ce que c’est dit La Redoute, avec l’utilisation de la technologie de www.vb2s.com.

Page d'acceuil de l'espace d'essayage de la redoute

On part avec à droite un mannequin virtuel, presque nue :

Mannequin presque nue

On a la possibilité de complètement adapter la morphologie du mannequin, soit pour qu’il vous ressemble, soit pour qu’il corresponde à l’image que vous avez de vous :

Options de personnalisation du mannequin

(les garçons, on se calme sur le bonnet)

On peut ensuite passer au salon d’essayage :

choix des vêtements

Bon, évidement, le but, c’est de vendre. On peut donc acheter les produits. Dans ce cas, on est simplement redirigé vers le site marchand « classique ». Domage que l’intégration ne soit pas meilleure : on ne garde pas les infos sur la taille, et on ne peut pas remplir son panier depuis l’espace virtuel.

Mais bon, tout ça marche très bien, bravo Sébastien !

La qualité pour un service Pro

J’en parlais ce midi avec mon interlocuteur (consultant sur les gros systèmes e-commerce, j’en reparlerais), la qualité, que ce soit chez les petits acteurs ou chez les gros, est rarement au rendez vous, sur tous les fronts : interface, homogénéité du service, mais surtout « sous le capot » : les programmes.

Et bien ce soir, je devais utiliser un des très très gros service e-commerce français. Impossible. Le service est complètement « en rad ». C’était déjà le cas hier…

Ok, ils sortent une nouvelle version. Et alors ?

Pour un acteur de cette taille là, ils n’ont pas de plate-forme de recette ?

Ce que me disais mon interlocuteur de ce midi, c’est que ce n’est pas une mauvaise nouvelle. C’est une bonne nouvelle parce que ça ne peut que s’améliorer.

C’est également une bonne nouvelle pour Araok! : il y a du pain sur la planche !

Acheter sa voiture sur Internet avec CDiscount

Je suis tombé sur ce site de vente de voitures :

Acheter sa voiture sur Internet, avec CDiscount

Les offres ont l’air intéressante. J’ai par exemple fait une simulation, pour un Renault Espace.

Entre le site de Renault et le site de CDiscount, on arrive à une différence de prix de 27% pour une voiture neuve.

En fait, derrière CDiscount, il y a Auto-IES, un spécialiste de la vente de voitures neuves à prix discount.

Il s’agit donc d’un service, intégré en marque blanche : le service d’Auto-IES est mis en ligne sur le site de CDiscount, et mis aux couleurs de CDiscount (les formulaires sont exactement les mêmes sur les deux sites.

Une semaine avec un disque de stockage réseau

Je me suis acheté un disque dur réseau : le Synology CubeStation CS 407e.

Synology CubeStation 407e

Concrètement, c’est un espace de stockage, partagé, sur le réseau familial. Pour moi, l’objectif est mixte : familiales et professionnel pour mon entreprise, ARAOK!.

Au niveau familial, on a plusieurs ordinateurs à la maison (2 ados à la maison… Hum, ça nous fait 4 ordinateurs !), et ça permet d’avoir un espace partagé, pour :

  • Faire des sauvegardes ;
  • Echanger facilement des données, d’un ordinateur à l’autre ;
  • Distribuer les contenus multimédia (films, musique) un peu partout dans la maison.

D’un point de vue matériel, c’est une boite, qui contient surtout 4 disques durs, montés en RAID 5.

4 disques durs en RAID 5

Sans entrer dans la technique, disons simplement que cela permet d’avoir un espace de stockage équivalent à 3 des 4 disques, avec de très bonnes performances et surtout de la sécurité : même si un disque tombe en panne, on ne perd pas les données (on remplace le disque qui ne fonctionne pas et hop, normalement, le système récupère les données à partir des disques en place).

Après une semaine d’utilisation, sur Mac et PC, voici ce que j’en retire :

  • Tout ça marche plutôt bien. L’installation est assez simple ;
  • On peut gérer les données soit en montant un disque réseau (ça marche sur PC et mac), soit depuis une interface Web ;
  • Pour la sauvegarde, c’est un peu l’équivalent de Time Capsule, parce que via le modem routeur Wifi, chaque ordinateur à accès à l’espace de stockage en Wifi ;
  • Pour déposer les gros contenus sur le disque, c’est pas le plus simple. Comme le disque n’est accessible qu’à partir du réseau, pour les films, ça rame un peu. Ma méthode : passer par un disque « tampon » USB. Vous copiez le contenu sur un disque externe USB, puis vous branchez ce disque sur le disque réseau.

Pour les contenus multimédia, plusieurs remarques :

Pour la musique, le serveur intégré iTunes est vraiment sympa. On dépose la musique sur le disque, on active la fonction iTunes, et hop, depuis iTunes, il apparait une bibliothèque partagée. Toute la famille a donc accès à la musique.

Pour les photos, c’est tout aussi simple et efficace.

Pour les films, soit on veut regarder le film sur l’ordinateur, et tout va bien, soit c’est un brin plus compliqué.

En effet, comment brancher le disque sur la télé ?

Aujourd’hui, la solution n’est pas hyper simple : on se sert d’un ordinateur portable comme lecteur vidéo, et on branche la télé ou le vidéo projecteur sur la sortie vidéo du portable.

Idéalement, il faudrait ajouter un ordinateur dédié (un Mac Mini serait parfait), faisant le pont entre le disque dur et la télé, le projecteur, et la chaîne hifi. Sympa, mais un peu cher comme solution (Noël 2008 ?). Car si j’ai bien compris, l’Apple TV ne ferait pas l’affaire.