Chapter Table of Contents

web2py a été lancé en 2007 et aujourd'hui, après quatre ans de développement continu, nous en sommes  à l'indispensable quatrième édition de ce livre. Pendant ce temps, web2py a  séduit des milliers d'utilisateurs et plus d'une centaine de développeurs. Notre effort collectif a donné naissance à l'un des canevas ou cadriciels python, i.e. frameworks pour python à code source libre, les plus plus riches en fonctionnalités sur le web aujourd'hui.

Ce canevas python à code source libre a initiallement été concu comme un outil pédagogique. Son fondateur croit que la capacité de construire des applications web de qualité supérieur est d'une importance cruciale afin d'assurer la croissance d'une société libre, ouverte et compétitive; et aussi de ralentir la tendance des plus grands acteurs de monopoliser le flux d'informations. Cette motivation demeure valide et c'est encore plus important aujourd'hui.

En général, le but de tout cadriciel web est de rendre le développement web plus facile, plus rapide et aussi d'assister efficacement les développeurs dans la prévention des erreurs, notamment ceux liés à la sécurité. Dans web2py nous abordons ces questions selon trois objectifs principaux:

''La facilité d'utilisation'' est l'objectif principal pour web2py. Pour nous, cela signifie réduire le temps d'apprentissage et de déploiement. C'est pourquoi web2py est un cadriciel complet sans dépendances. Il ne nécessite aucune installation et ne contient aucun fichier de configuration. Dès installé, tout fonctionne - "batteries incluses", celà comprend : un serveur web, base de données et un environnement de développement basé sur le Web donnant accès à toutes les fonctions principales. L'API n'inclut que 12 objets de base, qui sont facile à manipuler et à mémoriser. web2py peut fonctionner avec la plupart des serveurs web, bases de données et toutes les bibliothèques Python.

''Le développement Rapide '' est l'objectif secondaire. Chaque fonction du web2py a un comportement par défaut (qui peut être substituée ou altérée). Par exemple, dès que vous avez spécifié vos modèles de données, vous aurez accès à un panneau d'administration web de la base de données. web2py génère aussi automatiquement des formulaires pour vos données et vous permet d'exposer facilement les données en format HTML, XML, JSON, RSS, etc

La sécurité est au cœur des préaucupations de web2py, et notre but ici est de tout verrouiller afin de garder vos applications et les données sécures. Par conséquent, notre couche base de données SQL élimine Les injections. Le langage de gabarit utilisé évite les vulnérabilités dues aux "XSS ou le Cross Site Scripting". Les formulaires générés par web2py fournissent la validation par champ et bloque toute fausse requête automatique venant de site ou script externe. Les mots de passe sont toujours stockés haché. Par défaut, les sessions sont stockées côté serveur afin d'éviter la falsification des témoins de connexion ( i.e. les cookies ); les cookies d'une session sont en iduu (i.e identifiant universellement unique) pour éviter le piratage de cookie.

web2py a toujours été construit selon le point de vue de l'utilisateur. Il est constamment optimisé de l'interieur pour devenir plus rapide, léger et moins gourmand, tout en conservant la "rétro-compatibilité" .

web2py est gratuit et à code source libre. Si vous en tirez profit, nous espérons que vous serez plus enclin à contribuer à la société d'une manière quelconque.

En 2011, le magazine InfoWorld a passé en revue six des plus populaires cadriciels Python pour le Web et web2py fût classé premier. Toujours en 2011, web2py a remporté le prix du meilleur logiciel de développement à code source libre Bossie (Bossie Award for best Open Source Development Software.).