Weetrax

Vous vous lancez dans la création d’une Entreprise ou d’une « StartUp » avec un concept innovant, et vous vous demandez quelle tech utiliser pour mon Entreprise ou Start-Up ? Alors voici nos quelques conseils, après avoir fait le tour de la plupart des langages et services informatique.

Un peu de définitions avant de commencer :

Il existe 5 grandes familles (selon moi) dans le monde de la programmation, avec chacune ses spécificités. Mais en 2020, de nombreux langages ont tendance à réunir ces familles, certains parlent de développement Cross-Platform. Nous reviendrons plus tard sur cette notion, qui contribue fortement à la réduction des coûts, et l’optimisation des ressources.

  • Il y a d’abord le « Front-End », qui est la partie observable : une interface ou une page web qui est visualisée par vos « clients » (celui qui se sert de votre service) . Que ce soit une Map, un Formulaire, ou encore une Page de présentation, il faut penser à l’UX (l’expérience utilisateur), et à l’UI (l’interface utilisateur).
  • On retrouve ensuite le « Back-End », qui permet de traiter les requêtes de vos utilisateurs à chaque fois qu’ils font une action. Par exemple, lorsque je lance une recherche sur mon Blog, je demande à mon serveur les informations dont j’ai besoin. La plupart du temps, on va interroger une base de donnée ou une API.
  • Il y a derrière tout ça le « Système », qui permet justement de mettre en place le back-end, le front-end et d’autres services : il faut déployer un serveur, un Framework, un Proxy ou encore la Base de donnée.
  • On a également la famille des « Logiciels », qui sont en général des Applications Bureautiques, permettant par exemple de faire de l’édition de texte, des montages photo/vidéo, de coder, ou d’écouter de la musique. Ces outils sont très souvent développés dans des langages connus par le système d’exploitation (C#, C++, Java, Javascript)
  • Enfin on a les « Applications Mobiles », qui (jusqu’à récemment) se construisaient différemment des Sites Web, avec là aussi des langages dits « Natifs », comme Swift pour iOS, et Java pour Android. Aujourd’hui Ionic par exemple permet de déployer sur ces deux plateformes.

Pourquoi vous devez bien choisir vos technos ?

Que vous soyez une petite ou une grande entreprise, il est important de miser sur ce qui se fait de mieux dès le départ. En effet, on voit souvent des projets qui démarrent en se basant sur les compétences d’un prestataire, d’un CTO (Directeur Technique), sans avoir la possibilité de reprendre le code. C’est une erreur qui arrive régulièrement, qu’il faut éviter, et ce, pour plusieurs raisons qui vous permettront :

  • De gagner du temps et donc de l’argent
    • pour ajouter plus facilement des fonctionnalités
    • pour déployer votre service et le « scaler »
  • D’avoir un Site Web / une Application plus rapide
  • D’éviter des attaques ou intrusions diverses
  • … et surtout de rester compétitif !

Quelles sont les meilleures technos en 2020 ?

Chaque projet nécessite une approche particulière, avec un choix technologique différent, il faut donc mesurer les « pour » et les « contre » de chaque outil ou langage. Vous pouvez justement nous consulter à ce sujet ou poser votre question sur un site tel que Quora.

Nous ne parlerons pas ici de la partie Système et Bureautique, car pas forcément utilise pour savoir quelle tech pour mon Entreprise ou StartUp. En tout cas c’est ce que nous vous recommandons si vous n’avez pas assez de connaissances en informatique. Vous éviterez beaucoup de soucis, notamment sur l’aspect sécurité qui n’est pas négligable.

  • Pour la partie Front-End misez sur :
    • Angular, Ionic, React, VueJS (qui utilise HTML, CSS et JavaScript), au détriment de jQuery et Ajax qui sont plus lourd à maintenir. Toutefois, si vous n’utilisez aucune des 4 technos citées précédemment, vous gagnerez plus de temps qu’avec JavaScript tout seul.
  • Pour le Back-End, il faut pousser la question plus loin en fonction du type de donnée que vous allez traiter. En choisissant d’abord le langage de programmation et le framework le plus adapté. Puis la Base de donnée qui stockera vos informations.
    • Côté « Dev », NodeJS (ExpressJS, Socket.io ou Meteor) s’est imposé comme la techno des années à venir, mais PHP (Laravel, Zend ou Symfony), Python (Django) voire Java reste dans la compétition.
    • Côté « BDD », on privilégiera MongoDB ou PostgreSQL pour NodeJS. Avec PHP c’est MySQL qui domine, mais PostgreSQL s’utilise très bien également, tout comme sur Python et Java. Si votre but est de traiter de la donnée en masse, il faudra se tourner vers Cassandra, Elastic, ou MongoDB cité plus tôt.
  • Le dernier point concerne les Applications Mobiles, vous avez deux possibilités : partir sur les langages natifs des systèmes d’exploitation, autrement dit, Swift sur iOS ou Java sur Android. Ou bien de partir sur du développement cross-platform, avec Ionic par exemple. Ionic représente une alternative très intéressante si vous l’utilisez également pour concevoir votre site web.

Conclusion :

Chaque projet sa techno, avec chacune sa particularité, c’est pourquoi la conclusion reste subjective. Mais d’expérience, Ionic + Angular forment un combo de qualité pour mettre en place votre site web ou application. Vous mutualisez vos développements, économisez donc du temps, et de l’argent dès le départ. Côté serveur, NodeJS est un vrai bonheur, car il s’inscrit dans la lignée de Javascript, ce qui vous permettra de jongler plus facilement entre votre Front et votre Back. Enfin, côté système et hébergement, nous reviendrons plus longuement dessus, mais l’offre Cloud Web d’OVH est une bonne solution pour démarrer rapidement.