TOTO ARCHIVE

Catégorie : Business

21 Sep 2017
ModeleMVC

Comment est organisé le code d’une plateforme

Introduction

Dans ce court article de vulgarisation, nous allons voir quelques thématiques qui vous permettront de mieux comprendre ce que font vos développeurs web et comment ils segmentent leur travail. Pour prendre une comparaison, dans l’industrie automobile, nul ne pourrait imaginer qu’un chef de projet compétent s’adresse à un ingénieur moteur pour lui demander d’expliquer un défaut de production de la carosserie. Dans le dèv, c’est un peu pareil, quand vous créez une plateforme web il y a des types de travaux très différents et mieux vaut bien les identifier, surtout si vous managez une équipe de dév ou êtes product owner.

Le front-end

C’est ce que vous voyez quand vous surfez sur internet sur votre navigateur web. En clair, c’est le rendu graphique. Lorsque le dév front travaille sur le site d’un journal de news, il va être amené à créer un template d’affichage d’articles, dont il réalise la mise en page graphique. Plus techniquement, un template graphique est appelé une Vue (V).
A noter que dans certains cas, un designer a maquetté sur un logiciel comme photoshop ou Indesign le rendu que doit avoir une page web. Dans cas, le travail du front-end est appelé travail d’intégration : le développeur front va intégrer au format web (HTML / CSS / JAVASCRIPT) la page maquettée par le designer au format .psd (photoshop) , ou .indd (InDesign).
Le développeur front doit alors maitriser les trois languages de programmations suivants :

  • L’HTML : pour afficher et organiser par blocs, le contenu brut d’une page
  • Le CSS: pour appliquer des propriétés graphiques comme une couleur, une police, une taille, sur le contenu brut du site
  • Le Javascript : notamment pour créer des animations (une barre de progression, une popup qui apparaît en fondu…)

 

Le back end

Le dév back-end réalise le travaille complémentaire du développeur front. Il réalise toute la logique du site qu’il y a en arrière plan. Reprenons l’exemple de tout à l’heure. Pour pouvoir voir les 5 derniers articles sur la page d’accueil, le dèv back va:

  • Organiser la base de donnée : les articles doivent pouvoir être stockés en mémoire dans une table « articles », selon une structure que le dév a choisi : par exemple il décide qu’un article est organisé avec les propriétés suivante : un article = un titre + une introduction + une image + le contenu texte de l’article. Enfin, il doit rendre cette base de donnée interrogeables de différente manières (et donc créer des fonctions pour être en mesure de lui demander de rechercher un article en particuliers, de lister les articles les + commentés… ). Cette partie du code est ce qu’on appelle le modèle (M)

 

  • Gérer la logique de navigation du site : Quand un utilisateur arrive sur la page d’accueil, le dév back définit que :
    • La base de donnée est interrogée pour récupérer les 5 derniers articles
    • Le bon template graphique de la page d’accueil (la vue home.html par exemple) est affiché avec en paramètre ces 5 derniers articles. Cette partie du code est ce qu’on appelle le controller (C)

Conclusion

L’ensemble de cette logique d’organisation du travail est appelé la logique MVC (Modèle – Vue – Controller). Ce n’est pas la seule logique qui existe mais c’est de loin la plus populaire.
Sur un autre plan, à noter que contrairement aux dév front qui connaissent tous avec les mêmes languages (HTML + CSS + JAVASCRIPT), il existe une multitude de langage possibles et de normes pour coder le back end (php, python, nodejs, ruby…). En plus de la multitude de langages de programmation possibles pour coder le back, il peut exister plusieurs frameworks propres à chacun de ces langages: un framework, c’est un squelette pré-créé qui permet à un développeur back-end de partir sur une logique, une organisation et un ensemble de fonctions déjà existant et qui lui simplifient le travail.

Si vous lancez votre entreprise, sachez que le choix du langage et du framework est souvent un choix stratégique fort qui doit correspondre à la vision de votre entreprise. Par exemple, choisir une technologie propriétaire plutôt qu’un framework populaire par exemple n’est pas neutre du tout et aura rapidement un impact très fort du point de vue business et RH.

20 Nov 2016
470-264-B copy

Utiliser Facebook pour développer un Business B2C

Pour réussir à développer un modèle économique sur internet il faut être capable d’acquérir un trafic ciblé le moins cher possible pour ensuite monétiser sur un P&L profitable. Facebook est le réseau social dominant (1.49 milliards d’utilisateurs actifs mensuels), il est donc nécessaire pour des business en BtC (mais inutile en BtB) d’investir du temps et de l’argent sur Facebook afin de bénéficier d’un canal d’acquisition de trafic qui peut s’avérer bon marché. Explications.


Développer une communauté via une page Facebook

L’objectif initial va être de créer et développer une page Facebook aux couleurs de votre marque. Il est crucial avant tout de définir à moyen terme la cible de clients qui contribueront à monétiser votre business. Vous pouvez ensuite faire grossir la taille de votre communauté Facebook (= votre base clients) en vous appuyant sur 2 leviers :

Une croissance organique : vous rédigez régulièrement, minimum un post par jour, des publications ciblant vos clients potentiels. Si vous arrivez à procurer de l’émotion sur vos posts, principalement avec du contenu visuel (photos et vidéos), alors vous développerez de l’engagement (partages, likes, commentaires, clics) qui va vous permettre de faire progresser votre base de followers par un bouche à oreille naturel (viral), gratuit.

Une croissance payante : vous achetez de la publicité pour développer votre base de followers. Ciblez très précisément votre communauté (sexe, tranche d’âge, présence démographique, mots clés,..) afin de développer une base de futurs clients. Facebook permet très finement de viser vos clients potentiels, prenez le temps de trouver le bon discours dans vos publicités (et dans le ciblage) pour développer une base clients pérenne. Vous pouvez également sur quelques posts importants (les plus engageants) acheter de la publicité pour attirer de nouveaux followers.

à Quelques chiffres : les 2 approches organique et payante sont complémentaires. Par expérience, il est possible d’atteindre avec un budget de 5€ par jour une croissance moyenne de 1000 followers Facebook par mois (~30/jour), qui proviendront à 30-40% d’une croissance organique et à 60-70% d’une croissance payante. Il est donc possible d’envisager avoir une page à 10 000 – 12 000 followers après un an de lancement pour un budget d’environ 1500 euros.


Convertir des fans Facebook en trafic utile sur un site extérieur à Facebook

Il est important de comprendre à quoi va vous servir votre page Facebook. Diffuser des publications pour convertir sur votre site internet où vous pourrez générer des revenus. Il faut savoir qu’à chaque publication vous n’atteindrez pas la totalité des followers (clients) abonnés à votre page. Chaque nouvelle publication sera initialement présentée à 10-15% de votre base fan, et si seulement votre publication est engageante (partages, partages, commentaires, clics) alors elle sera diffusée à un plus grand nombre de vos followers. C’est la magie de l’algorithme Facebook qui sélectionne les publications de qualité (engageante) pour les mettre en avant sur le mur des utilisateurs de Facebook. Une fois la publication diffusée, les utilisateurs choisiront de cliquer (ou pas) vers votre site internet externe à Facebook.

à Quelques chiffres : une publication sur une page à 10 000 followers sera en moyenne vue par 5000 – 10 000 utilisateurs avec un taux de clics vers votre site internet qui sera de 2 à 15%. Un post sur une page à 10 000 followers ramènera donc un trafic moyen de 500-1000 (ex. 7000 vues * 8% de taux de clics = 560 connexions) connexions sur votre site internet. Il sera alors possible en complément de payer pour diffuser un post Facebook important (par exemple avec un fort potentiel pour générer des revenus) au sein de votre base fan (clients). Ce taux de clics s’achète généralement à 0.10-0.20€ par clic, soit pour 1000 connexions supplémentaires une dépense publicitaire de 100-200€ !!

 

Conclusion : un trafic à arbitrer 

Votre présence sur Facebook vous permet d’être au contact de votre base clients. Il est important d’avoir un œil critique sur ce que vous rapporte vraiment ce trafic social via des publications Facebook. C’est un trafic peut se révéler très bon marché si vous arrivez à être très engageant auprès de votre communauté. Il sera toutefois nécessaire de comparer et d’arbitrer le coût de cette source de trafic Facebook face à des sources de trafic naturelle (Search à optimiser via le SEO), payante (Adwords, liens sponsorisés), ou via une gestion du mailing optimisée. L’objectif restant le même : trouver le trafic le moins cher et le plus ciblé qui va faire décoller votre business !!

11 Nov 2016
node-drupal-queue-comparison

NodeJS versus PHP : des implications business différentes

Choisir NodeJS ou PHP : des implications business différentes pour une start-up

Nous aimons tous NodeJS et sa popularité auprès des développeurs est bien connue, si bien que “Long live asynchronous I/O !” semble être le cri prononcé à l’unisson ces dernières années.
Un cri qui n’est d’ailleurs pas sans fondement car les mérites de l’asynchronisme ainsi que des frameworks Javascript côtés serveur en terme de performance n’ont plus à être démontrés.
Pourtant, NodeJS n’est pas forcément le meilleur choix business pour une start-up web early stage, et cela pour plusieurs raisons.

L’optimisation des performances versus la rapidité et la flexibilité de développement : NodeJS versus PHP.        

« The Lean Startup » d’Eric Ries a popularisé et mis un nom depuis maintenant plusieurs années sur l’intérêt qu’ont les start-up à pouvoir vérifier rapidement la validité de leur modèle, et à pouvoir itérer rapidement. Si on suit une telle logique, malgré l’impressionnante évolution du nombre de libraires Node, l’utilisation d’un framework PHP populaire avec une communauté active et un grand nombre de libraires (comme par exemple Symfony 2, Laravel ou Zend) permet un prototypage beaucoup plus rapide d’une plateforme web qu’avec NodeJS. C’est pourquoi, quand des questions de temps de réponse du serveur ou de performances très pointues ne sont pas là, et ne seront pas une priorité à l’horizon moyen-terme pour la start-up que nous prenons comme exemple, et quand la  dite start-up cherche encore son modèle, et doit par conséquent être en mesure de prototyper rapidement une nouvelle fonctionnalité à faire tester par exemple auprès d’une communauté, l’utilisation d’un framework PHP semble être un choix qui garantisse plus de flexibilité.
Former et faire grandir une équipe en interne, une question RH : NodeJS versus PHP 
Lorsque la start-up n’est plus tout à fait early stage et que l’équipe technologique s’élargit au delà de l’associé technique, la question du recrutement et de la structuration de la production technologique est immédiatement posée sur la table. Une fois encore l’antériorité de PHP offre à la structure plus d’options et de facilité dans le recrutement. Tout simplement, il y a beaucoup de codeurs PHP. Si vous regardez le nombre de freelance sur le site : codeur.com, seulement 800 freelance pour NodeJS versus plus de 17 000 en PHP !

En conclusion : NodeJS versus PHP pour une start-up web early stage : il n’y a pas de choix évident. Cela dépend surtout de la typologie de la start-up. Dans le cas où il y a des contraintes fortes en terme de performance, NodeJS semble être le meilleur choix. Dans le cas inverse, et si la start-up a besoin de flexibilité, de vitesse de prototypage de fonctionnalités, et a des contraintes de temps et d’argent pour structurer rapidement une équipe élargie , PHP s’avère être un choix bien plus judicieux, en tout cas au regard des critères évoqués plus hauts.