Pour développer les moteurs qui propulsent sites et applications web, Providenz a sciemment choisi d'éviter les solutions technologiques adoptées par la majorité pour utiliser des outils puissants, robustes et axés vers la perennité.
Python permet aux développeurs de se concentrer sur la prodcution de code sans aveoir à lutter contre
les incohérences d'un language.
C'est également un langage concis et élégant qui permet générzlement d'être plus productif.
Python est notamment apprécié pour la lisibilité qu'il encourage.
Le code d'un logiciel étant lu bien plus souvent qu'écrit, le gain en maintenabilité est
appréciable.
En dehors du web, python est utilisé dans beaucoup de domaines, notamment l'analyse de données,
l'administration de serveurs et de clusters, le machine learning, la génétique.
Conçu pour créer le site d'un journal américain il ya une dizaine d'années, django s'est imposé parmi les meilleurs frameworks web. Basé sur python, il hérite de ses qualités de concision et de lisibilité. Django s'interface avec la plupart des bases de données. Django encourage les bonnes pratiques de développement, et apporte des garanties de sécurité exigibles d'une application web moderne. Grâce des centaines de packages, django est adapté à la réalisation de sites éditoriaux, de e-commerce, d'applications d'entreprise, de webservices. Bien évidemment, Django génère entre autres du htlm et n'influence en rien l'aspect visuel des pages produites. Django est notamment employé par Libération, Mozilla, Pinterest, Instagram, la Nasa, Météo-France et bien d'autres. Providenz utilise django depuis 2009.
Postgre est une base de données libre développée depuis une vingtaine d'années. Caractérisée depuis
toujours pas son extrême robustesse, elle assure la couche persistence de sites
qui manipulent des quantités colossales de données. Elle dispose également de fonctionalités
uniques qui permettent des développements autrement très hasardeux.
Postgre, grâce à son extension Postgis, est un outil de choix pour stocker et travailler sur des
données géographiques. Postgre permet également de manipuler des données non structurées, stockees
en json ou sous la fome de paires
clefs-valeurs.
Django offre un support de premier ordre pour Postgre.
Les navigateurs ont tellement progressé depuis quelques années qu'ils sont devenus de vraies plateformes applicatives.
La couche de présentation, c'est à dire ce qui apparait dans un navigateur web, est défini par une structure HTML et un habillage en CSS. La spécification HTML5 représente la plus puissante à ce jour. HTML5/CSS3 permettent la creation de sites responsives, dont l'apparance s'adapte à la taille de l'écran sur lequel ils sont consultés. Ainsi, un même site peut être à la fois visuellement optimisé pour les ordinateurs de bureau, les tablettes et les smartphones. Mais ce n'est pas tout, HTML5 permet d'accéder aux nombreuses fonctionalités des terminaux mobiles et utiliser le gps, les accéléromètres ou l'appareil photo. Grâce à HTML5, des effets visuels jusqu'alors inédits sur le web ont pu voir le jour, notamment la 3D grâce à webgl.
Javascript est le language de programmation qui s'éxécute dans le navigateur et apporte l'interactivité de toute application web moderne. Utilisé depuis quelques années côté serveur grâce à node.js, son gain de popularité et l'immense quantité de bibliothèques disponibles lui confèrent aujourd'hui une crédibilité méritée.
Parce qu'il faut parfois regarder au delà de ses outils habituels pour produire efficacement.
La recherche d'information compte parmi les fonctionalités incontournables de tout système d'information. Si la recherche full-text de postgre et bien souvent suffisante, y compris pour des volumes importants de documents, l'appel à une solution spécialisée est souvent incontournable. Elasticsearch est un moteur récent basé sur le vénérable Lucene, développé en Java qui offre des performances bluffantes et s'interface parfaitement avec les datastores traditionnels, notamment Posgresql. Elasticsearch est fourni avec un Kibana, un tableau de bord flexible pour monitorer son utilisation.
L'utilisation d'un système de gestion de version (VCS) est aujourd'hui absolument incontournable. Ce type de logiciel permet non seulement de conserver tout l'historique de développement de l'application, mais surtout de collaborer efficacement sur différentes fonctionalités. Git, conçu initialement pour le développement du noyau linux, est devenu le standard de facto.
Logos python, django, git html5 et JS et icones sous copyright - le reste CC-by providenz