Archives de catégorie : Software

Développement (très) rapide : Symfony versus Ruby On Rails

Un billet un peu plus technique que d’habitude

Comme prévu, j’étais jeudi à un p’tit dej, organisé par Clever Age, sur les « Frameworks Web RAD ».

FrameworkWebRad, kézako ?

(Framework : environnement, RAD : Rapid Application Developpement)

Concrètement, ce sont des environnements qui permettent de prototyper très rapidement des applications web.

Imaginez, vous avez une nouvelle idée, vous voulez la tester rapidement. Ces environnements doivent permettre de mettre en ligne très rapidement le sevice. On parle bien de prototype et pas de maquettage. La différence ? La maquette, c’est juste pour montrer les images de ce que ça donnera. Un prototype, ça tourne réellement.

De tels environnements, il y en a énormément. Comment choisir ? Bon, comme on était chez Clever Age, et que cette société est très axée open source, on a surtout parlé d’environnements open source.

Clever Age nous a surtout présenté Symfony et Ruby on rails.

Il s’agit de deux environnements de très bonne qualité, assez riche fonctionnellement. Ils permettent, entre autre, la gestion « propre » des bases de données, la programmation suivant le modèle MVC, l’utilisation d’Ajax…

Symfony

Symphony est un environnement entièrement PHP.

Tout se fait donc dans ce langage.

Avantage important : le langage est très utilisé, donc on trouve facilement des développeurs pour faire une application Symfony.

De plus, Symfony est basé sur la version 5 de PHP, et exploite à fond l’aspect objet.

Enfin, la communauté est très active, et on trouve beaucoup de composants et de documentation.

Ruby On Rails

Rails est l’environnement de développement rapide, réalisé sur le langage Ruby.

C’est bien le principal problème : il faut trouver un développeur Ruby, ou le former.

Sinon, Ruby On Rails bénéficie d’une très large communauté, très active. Il y a donc beaucoup de documentation et d’exemples en ligne.

En action

Voici deux petits films, qui illustrent la réalisation d’une application.

Avec Ruby On Rails : application pour gérer un blog.

Avec Symfony : application qui met en avant la génération de l’application d’administration.

Salesforce.com : une solution SAAS qui fait son chemin

Comme je l’ai déjà dit ici, je crois beaucoup au modèle SAAS, déclinaison moderne du modèle ASP, ou pour dire plus simplement, au modèle où le logiciel et le service sont hébergés chez un professionnel dédié, avec le web comme interface d’accès au service.

Le modèle, en soit, offre beaucoup d’avantages pour l’utilisateur :

  • Pas d’investissement (matériel, licences logicielles) ;
  • Pas de coûts de maintenance ;
  • Pas de problème de gestion des versions, et donc de mise à jour complexe et chère ;
  • Pas de problème de gestion de la montée en charge et des problèmes liés : faire évoluer l’architecture, le matériel, …

Un des plus gros frein pour les clients, c’est d’avoir ses données gérées et stockées par un tiers.

L’analogie avec la banque, que j’avais déjà évoquée est, il me semble, une bonne réponse : on délègue bien la gestion de son capital à un tiers, pour peu qu’on ait confiance.

En fait, c’est intéressant de noter que la réalité est à l’opposé de l’intuition !

Intuitivement, on a tous tendance à se dire que ses données sont plus en sécurité « à la maison » que chez un autre. Pour autant, la sécurité n’est en général pas le métier des boites, qui ont très rarement les moyens de mettre en place des bonnes solutions pour gérer la sécurité des données.

Pour un acteur comme Salesforce.com (plus de 8 ans d’existence, environ 70 Millions de transactions par mois !), c’est carrément au coeur de leur métier. S’ils sont mauvais sur ce point, ils perdront très vite leur crédibilité. Ils ont donc en place des solutions vraiment très propres, très avancées, bien loin devant ce que font les entreprises !

Et ça, ce sont les clients de Salesforce qui le disent, comme Infovista (qui est en bourse et qui est donc particulièrement attentif à la sécurité de ses données).

Au delà de ces généralités, on peut faire quoi avec Salesforce ?

Salesforce est à la base une solution de type CRM, qui permet de gérer les bases de données des clients.

Ces données permettent :

  • D’aider les équipes marketing : campagnes marketing (email, télémarketing, …) ;
  • D’aider les équipes commerciales : gestion des prospects ;
  • D’aider les dirigeants avec des solutions de reporting.

Le produit a été étendu, et intègre maintenant des fonctions plus larges pour :

  • Gérer la maintenance ;
  • Gérer le support : application en ligne pour les clients et gestion des incidents.

Comme Salesforce est basé sur des standards ouverts, les clients peuvent accéder à toutes leurs données via des web-services, et connecter les autres systèmes informatiques (ERP, …).

Prix

Il y a deux postes :

  • La location du service. On paye à l’utilisateur et par mois. Le prix « public » oscille entre 70 et 130€ par mois, suivant les fonctions achetées. Il faut ajouter, également par mois, le prix des services tiers complémentaires si on en utilise (AppExchange En anglais, j’en reparlerai) ;
  • La mise en oeuvre du service (à l’installation donc) qui comprend l’intégration et la customisation : quand je parle d’intégration, comme il n’y a pas d’installation proprement dite, il s’agit du branchement entre les services Salesforce et les applications existantes de l’entreprise (ERP, …). La customisation, c’est l’adaptation des applications de Salesforce à l’entreprise : ajouter ou supprimer des champs, adapter des formulaires, …

Dans la pratique, la phases durent entre 3 et 6 mois. La customisation de l’application Salesforce est très rapide, complètement graphique (drag & drop) et en ligne.

Le plus long, c’est clairement l’intégration avec des applications tiers. Un autre poste qui peut grever le budget initial : il faut prévoir des moulinettes pour récupérer et intégrer les données existantes de l’entreprise (bases clients et prospects, historiques, …).

Quel usage pour le e-commerce ?

Aujourd’hui, Salesforce.com est principalement utilisé par des clients qui vendent en B2B. Mais on peut tout à fait brancher une application e-commerce sur Salesforce, et gérer le marketing, le suivi de l’activité et le support. Alors, qui sera le premier site à tenter le coup ? En plus, on peut essayer pour vraiment pas cher, puisque le prix est à l’utilisateur et pas au nombre de transaction. On peut donc tenter le coup pour 70€ !

Il y a beaucoup trop à dire sur Salesforce pour un seul billet… Je vous reparlerai donc très bientôt de cas clients et d’AppExchange.

Une approche « génie logiciel » pour le e-commerce avec Intershop Enfinity 6

Le génie logiciel, c’est quoi ?

C’est l’art de faire du logiciel avec tout plein de qualités pour l’utilisateur : du logiciel souple, robuste, réutilisable, évolutif, … Et en plus, quand c’est bien fait, ça doit répondre aux besoins de l’utilisateur !

Je suis convaincu qu’il est important de prendre en compte la dimension génie logiciel pour faire du e-commerce dans la durée.

Attention, il faut, comme souvent, être très prudent : il ne s’agit pas « d’utiliser un marteau piqueur pour écraser une mouche ». Chaque projet e-commerce, en fonction de son contexte, n’a pas besoin des mêmes outils, des mêmes méthodes !

Philippe Audibert, qui bosse chez Intershop France,Logo Intershop m’a fait faire un tour de la solution e-commerce d’Intershop (Enfinity Suite 6), et j’ai trouvé l’approche orienté génie-logiciel intéressante.

Concrètement, la solution d’Intershop, basée sur Java, intègre un outil appelé « Pipelines » qui permet de »programmer visuellement » les processus du site marchand :

Image de l'éditeur de processus dans Intershop Enfinity 6

L’intérêt de ces outils, c’est de permettre une analyse des processus partagée avec les différents intervenants, dont les décideurs (vous les voyez regarder du code ?).

C’est également une solution qui aide à avoir un logiciel bien construit, et donc plus facile à faire évoluer.

Cette solution est-elle souple ?

Oui, car le logiciel Enfinity est lui même codé en grande partie avec des pipelines. On peut donc les adapter au contexte du site.

Peut on faire des sites marchands avec des interfaces innovantes ? Oui, j’y reviendrai dans un prochain billet…

Bon, c’est pas la solution pour les petits projets… on est sur des budgets de 150 K€ minimum (comprenant les licences et le service).

Tout savoir sur microsoft : une mine d’informations à un clic

Comme tout le monde, je n’ai pas le temps de tout faire, d’aller à tous les endroits intéressants où j’aimerais aller…

Je trouve donc ça vraiment génial, d’avoir des vidéos assez complètes et assez bien faites sur des évènements type conférences, salons

On peut ainsi voir ou revoir les présentations des TechDays de Microsoft (personnellement, je n’avais pas eu le temps d’y aller).Le show TechDays

C’est une véritable mine d’information accessible ici.

Quelques vidéos intéressantes :

D’après Julien, il y a plus de 600 Webcasts disponibles : surement de quoi nourrir notre soif de savoir !

(info trouvée sur le blog de Julien, ici)

Vers un monde ASP

Bon, vous en avez sans doute entendu parler : Google vient de sortir une offre, pour les entreprises, qui regroupe une suite logicielle de type ‘office’ avec, tout un tas d’applications pour chaque utilisateur (GMail, Calandar, Docs & Spreadsheets…) tout cela assorti de 10 Go de stockage par usager plus des API pour lancer un écosystème de partenaires, qui vont pouvoir enrichir l’offre de base et l’adapter à des besoins métiers particuliers.

La vrai nouveauté, c’est bien entendu le fait que ces applications sont en ligne, et donc ne nécessitent aucune installation sur le disque. C’est le mode ASP (Application Service Provider).

Quels sont les avantages de ce modèle ?

  • Pas d’installation sur l’ordinateur. Conséquence : pas de problème de compatibilité, de configuation, …
  • Mobilité : l’utilisateur peut changer d’ordinateur. Il retrouve son environnement quelque soit l’ordinateur sur lequel il travaille ;
  • Evolutivité : les applications en ligne évoluent sans que l’utilisateur n’ait à faire la moindre manipulation ;
  • Partage : comme les données sont gérées par le serveur, elles peuvent facilement être partagées entre plusieurs utilisateurs. Cela facilite donc le travail en groupe ;
  • Pas de frais d’administration : comme les applications ne sont pas installées localement, les entreprises n’ont donc pas de frais pour administrer ces applications.

Quels sont les inconvénients ?

  • Temps de réponse : Il faut disposer d’un réseau suffisamment rapide pour avoir un bon confort d’utilisation, avec des temps de réponse acceptables ;
  • Pas de mode off-line : on n’accède aux applications que quand on est connecté. Impossible donc d’accéder aux services distants quand on n’a pas de réseau ;

Mais surtout, il faut avoir confiance dans la société qui fournit les services :

  • Pour déléguer la gestion des données de l’entreprise ou données personnelles sensibles ;
  • Confiance également car on ne peut plus travailler si le service ne fonctionne pas ;
  • On doit également avoir la garantie qu’on ne sera pas prisonier d’un acteur particulier : on doit donc pouvoir récupérer ses données, dans un format « intelligible », et travailler avec un autre fournisseur de services.

Si on reprend les inconvénients, le problème du dimensionnement du réseau va de plus en plus s’estomper, avec des réseaux de plus en plus gros.

Pour le mode off-line, on voit déjà apparaitre les solutions, avec des applications en ligne, quand même accessible quand il n’y a pas de réseau (voir les technologies type Apollo ou WPF).

Le point clé, c’est donc la confiance. Est-ce un point bloquant ? Je ne crois pas. L’analogie avec la banque me semble bon : personne aujourd’hui ne gèrerait son argent sans une banque. Pourtant, c’est précieux, l’argent. Mais on délègue la gestion de ce bien, parce qu’on a confiance dans la banque.

Vous l’avez compris, je pense qu’à terme, les applications seront de plus en plus souvent gérées dans un mode « ASP évolué », intégrant un mode off-line. C’est le sens de l »histoire.

Bien sûr, le mode ASP est déjà utilisé par plusieurs sociétés, avec notamment Salesforce.com qui se développe plutôt bien depuis les années 2000 :

Croissance de Salesforce.com

La généralisation du modèle ASP va prendre un peu de temps (plusieurs années), le temps que les réseaux soient encore un peu plus « gros », que les technologies mixte on-line et off-line soient plus au point, et que les mentalités évoluent, tant côté fournisseur de services que côté utilisateur.

La vision du e-commerce 2.0 d’IBM

Philippe Bournhonesque du Software Group d’IBM, nous a présenté, lors du Forum e-marketing, la vision d’IBM pour le commerce 2.0.

Moteur de recherche en langage naturel

On le sait bien, la fonction de recherche est vraiment l’une des fonctions clé d’un site marchand.

IBM a racheté une technologie, intégrée dans la suite logicielle Websphere : Omnifind Content Discovery.

Exemple de mise en oeuvre dans la boutique NeimanMarcus, quand on tape « white prada handbag », même si on fait des fautes de frappe, on obtient le résultat suivant :

Exemple de résultat de recherche, sur le site Neiman Marcus

Le moteur de recherche analyse la requête, essaye de corriger les éventuelles fautes, classifie les mots (« white » pour la couleur, « handbag » pour la catégorie, « prada » pour la marque).

Un autre site pour jouer avec ce moteur : campmor.

Nouvelles interfaces

IBM nous a également montré des nouvelles interfaces de sites marchands.

En ligne avec les tendances actuelles, IBM a présenté des sites marchands en Flash ou Ajax.

Un élément intéressant : Philippe nous a montré un site marchand, où l’ensemble du processus achat se fait sans quitter la page produit : on ne va donc pas sur le classique enchaînement Identification, Panier, Paiement.

Ici, tout ce fait sur une colonne, à droite de la fenêtre. Donc, sans sortir de la fiche produit, le client peut s’identifier, choisir son mode de paiement, et terminer sa commande.

Vendre la peau de l’ours avant…

Henri de MaublancHenri De Maublanc, Fondateur dirigeant d’Aquarelle et de l’ACSEL, aime bien répéter que, contrairement à ce qu’on nous enseigne en France, il vaut mieux vendre la peau de l’ours avant de l’avoir tué.

Il en a parlé ici, lors d’une conférence au salon des entrepreneurs.

Lors d’une interview réalisée par ZDNet, Il l’a répété dans ce podcast.

Que veut il dire par là ?

Ce que dit Henri de Maublanc, et qui est à mon avis très important, c’est qu’il ne faut pas commencer par monter des projets techniquement trop ambitieux, trop complexes, avant d’avoir commencé à vendre.

Ce point n’est absolument pas contradictoire avec un autre point clé : l’excellence logicielle : il est tout à fait possible de commencer par faire des choses simples et peu coûteuses, et de les faire bien.

On a tous en mémoire les échecs retentissants de sociétés comme Boo : à quoi cela sert-il de mettre en place une infrastructure très lourde, alors que la société ne vend rien ?

Commencer par faire simple et pragmatique n’empêche absolument pas d’avoir une vision à 3 / 5 ans. C’est là que doit intervenir le processus de road-map produit (produit au sens produit logiciel).

Sans ce travail, l’entreprise risque fort de devoir régulièrement tout refaire à zero. Pourquoi ? Parce que si on ne sais pas où l’on va, il y a peu de chance que l’on fasse les bon choix technologiques. Le système informatique risque de ne pas être évolutif et de ne pas être adapté au contexte de demain.

La road map produit, c’est la solution qui permet de voir loin, d’aller loin, en faisant des « petits pas » réalistes.


Pixsta : recherche et navigation visuelle pour sites marchands

Info trouvée sur ReadWriteWeb.

Pixsta propose un moteur qui permet de naviguer dans l’arborescence des produits par un nuage d’imagettes.

Exemple avec le site Elle.uk.com :

Visual Search avec Pixsta su le site Elle.uk.com

Quand on clique sur une catégorie (en haut à gauche), le nuage d’imagettes est mis à jour.

On peut directement voir une grande image du produit en passant la souris sur l’imagette correspondante.

Autre fonction : on peut recentrer la recherche en cliquant sur un produit.

Exemple avec les sacs à main :

Visual Search avec Pixsta su le site Elle.uk.com

En cliquant sur une imagette, on ouvre un popup qui permet de voir le produit en grand, de mettre le produit dans le panier, ou de recentrer la recherche sur des produits similaires :

Visual Search avec Pixsta su le site Elle.uk.com

Cela fait un site très sympa, avec une navigation simple et intuitive, et surtout très rapide.

Google OS : vous y croyez, vous ?

J’ai lu quelques news récentes sur l’idée que Google pourrait sortir un OS, en particulier ici.

Google OS

Vous y croyez vous ?

Bon, je n’ai pas d’infos secrètes, ce ne sont donc que des réflexions personnelles.

En fait, oui, j’y crois, ça me semble parfaitement logique, vu les situations respectives de Google et de Microsoft.

L’enjeu, pour les deux géants, c’est d’avoir le plus de pixels sur les écrans des utilisateurs. Oui, c’est bien l’enjeu des widgets, des navigateurs, des applications et de l’OS : avoir le plus de visibilité sur les écrans, parce que nos écrans valent de l’or.

Les raisons sont très simples :

  • Avoir la main sur l’écran, c’est avoir la main sur les applications que l’utilisateur va lancer, celle qu’on peut lancer en un clic (et pas en fouillant dans des menus compliqués).
  • C’est également être en position de force pour pousser de la publicité (d’accord, on dit maintenant liens sponsorisés).

La publicité, c’est le vrai métier de Google (et d’autres gands acteurs comme Yahoo…).

De plus, Google a vraiment les moyens de sortir un OS avec une suite applicative de type Office vraiment simple (ce que ne sont pas encore les suites Linux).

Alors, un Googlos pour 2007 ou 2008 ?

Le logiciel : Industriel ou artisanal ?

Certains vous disent que l’informatique (ou le logiciel) est entrée dans l’âge industriel.

Ils veulent vous rassurer, vous assurer qu’aujourd’hui on fait du logiciel comme on construit des voitures ou des immeubles : le risque est maîtrisé, la qualité sera au rendez-vous.

Méfiez vous de ceux qui portent ces messages !

La vérité est toute autre. Le logiciel c’est de l’artisanat.

Concrètement, ça veut dire quoi ?

  • Le résultat final dépend principalement de la qualité de l’équipe technique. Cette équipe doit maîtriser son métier, comme, par exemple, un bon ébéniste doit maîtriser son domaine.
  • La qualité d’une entreprise informatique (société de services ou éditeur de logiciels), ce sera donc pour beaucoup son savoir faire dans le recrutement des meilleurs, et sa capacité à animer cette équipe.
  • Bien entendu, des méthodes et des outils permettent de faire des logiciels de meilleure qualité (un bon artisan a de bons outils)

La qualité, pour un site marchand, c’est fondamental :

  • Moins de bugs et donc moins de clients perdus et donc plus de revenus
  • Un site qui pourra évoluer plus facilement et plus rapidement
  • Un site plus robuste qui résistera mieux au « stress »de l’environnement (erreurs d’autres logiciels connexes, …)

La qualité se paie bien sûr : les meilleurs informaticiens sont payés plus chers.

La qualité, c’est donc un investissement initial, qui est vite rentabilisé.

Petit point complémentaire par rapport au WEB 2.0 :

Les techniques du Web 2.0, l’Ajax et le Javascript en particulier, sont délicates à mettre en oeuvre.

Dans ce contexte, la qualité est encore plus importante !