Logiciel Pastèque//Histoire de Pastèque

Un livre de Wikilivres.

Histoire de pastèque[modifier | modifier le wikicode]

Avant Pastèque[modifier | modifier le wikicode]

Tina POS/Libre POS[modifier | modifier le wikicode]

Pastèque est à l'origine un projet d'Adrian Romero, qui travaille sur son temps libre sur un logiciel de caisse. La première version est publiée en Janvier 2005.

Suite à une affaire de droit des marques le logiciel est renommé en Libre POS en Août 2007.

Le logiciel dépasse les 100 000 téléchargement en Novembre 2007 et la société Openbravo s'y intéresse. Openbravo propose principalement un ERP et recherchait un logiciel de point de vente à y accoler.

Openbravo POS[modifier | modifier le wikicode]

À cette époque Openbravo récupère Libre POS dans des conditions non connues et embauche Adrian Romero qui continuera de développer son application sous le nom d'Openbravo POS avec une intégration à l'ERP de la société.

La version 2.00 d'Openbravo POS (la première version) est publiée en Février 2008. Quelques personnes viennent en renfort mais Adrian reste le développeur principal de l'application.

D'autres versions suivent, la version 2.10 en Juin 2008, la 2.20 en Août 2009 et enfin une ultime version en décembre 2009 : la version 2.30. Cette version sera maintenue jusqu'en Novembre 2010 avec la publication de deux correctifs, puis le développement s'arrête.

Openbravo se tourne vers le développement d'un point de vente web intégré à son ERP et abandonne Openbravo POS.

POS-Tech[modifier | modifier le wikicode]

Openbravo POS a donné naissance à plusieurs forks. Parmi eux POS-Tech, réalisé par Scil. Les premières améliorations liées à l'interface tactile pour gérer différents écrans ont lieu durant l'hiver 2012 pour voir la première version « Abricot » publiée le 16 avril 2012.

Le développement se poursuit avec une seconde version « Banane » le 27 Août 2012 pour améliorer le paiement et l'ouverture de caisse. À la fin de l'été le prototype de la version Android voit également le jour.

Pastèque[modifier | modifier le wikicode]

Enfin après un an de maturation POS-Tech voit son identité graphique revue avec un travail réalisé par Résonance, agence coopérative de communication roubaisienne. Scil continue de travailler sur le logiciel avec l'arrivée de premières contributions et s'oriente vers l'homogénéisation des logiciels de bureau et mobiles avec une interface web de gestion.

Les grands moments de Pastèque[modifier | modifier le wikicode]

Pastèque est bien plus qu'un logiciel, c'est une grande aventure, faite de hauts et de bas.

2012 : la genèse[modifier | modifier le wikicode]

Février 2012, Scil assure l'assistance sur Openbravo POS dans quelques bars de Lille et environs. À ce moment là c'est l'âge sombre. Openbravo POS est laissé à l'abandon depuis quelques années. Il existe bien un bon paquet de forks plus ou moins aboutis, mais on n'est pas à un fork de plus.

Loin d'être parfait, Openbravo POS tournait quand même. Ça n'empêche pas de corriger quelques bugs un peu partout.

  • Le nom des produits dans l'écran des boutons des ventes n'est que sur une seule ligne, ça débordait tout le temps.
  • On ne pouvait pas faire plusieurs paiement sur un ticket en carte bleue
  • Il y avait deux belles barres complètement inutiles en haut et en bas de la fenêtre
  • Les produits devaient obligatoirement avoir un prix d'achat
  • Et on ne vous parle pas de la tronche du code…

À force de corriger des choses, Scil a fini par aller plus loin que faire des simples petits patch. POS-Tech est né en avril, avec un super logo de Pastèque mais personne ne comprenait pourquoi une Pastèque.

5 4 3 1 Paf Postèque

De là, POS-Tech a récupéré pas mal de petits fixs, des features depuis différents forks et contributions jamais intégrées dans Openbravo POS (dont la traduction française)

À l'époque on avait déjà de belles fonctionnalités cachées :

  • Le bouton annuler de l'écran de configuration remettait Openbravo POS en configuration usine. Autrement dit ce bouton servait à tout casser.
  • La gestion des produits se faisait avec plein de boutons dont plusieurs dont on n'a jamais compris à quoi ils servaient.

2013 : la v2[modifier | modifier le wikicode]

2013, c'est l'explosion des food-trucks. Il y en a partout ! Et forcément quelques uns assez fous pour tenter l'aventure POS-Tech. C'est aussi le moment où on se dit que la gestion de la caisse est invivable (bon ça c'était dès le début).

L'apparition de la version Android nécessite la création de POS-Tech serveur. Enfin ! La caisse n'est plus connectée directement dans la base de données avec des requêtes SQL douteuses !

À la place, on a du SQL douteux côté serveur, plein, partout. Et POS-Tech pour bureau continuait sa propre vie sans le serveur.

Les crash de la version Android sont monnaie courante. D'ailleurs les premiers utilisateurs ont crashé aussi…

Le commit de l'année après un an de développement assidu :

7 Décembre 2013: Revert all master crap

Eh oui, même pas la v1 sortie que la v2 était en préparation… En 2013, c'est le bordel avec une appli de bureau super lourde qui s'est enrichie de plein de merge à droite à gauche, une appli Android qui marche quand elle veut et un serveur qui ne fait pas grand chose.

À la fin de l'année, on décide de casser Desktop pour se brancher sur le serveur.

On avait quand même une belle fonctionnalité avec le module BarKitchen qui permettait depuis la caisse d'envoyer des tickets en cuisine. Puis de courir en cuisine pour voir si le ticket était bien parti.

2014 : le renouveau[modifier | modifier le wikicode]

Tout début 2014, il y a enfin des tests côté serveur. Jusqu'à présent, ça marchait parce que suffisamment de monde sont tombés sur des bugs pour que ça soit corrigés.

Ça n'est pas pour autant que Desktop et Android sont testés… Et la belle idée : coupler le serveur avec WordPress pour gérer les comptes utilisateurs (parce que Scil faisait aussi du WordPress). Comment couler un serveur en 50 lignes de code.

Tout passe maintenant par le serveur. C'est à dire qu'il y a plein de chose à remettre en place, vite. Donc plein de bugs avec.

Les stocks prennent de l'ampleur et l'édition par fichiers tableurs aussi. Sauf qu'au final c'est beau sur le papier, en réalité pas grand monde ne l'utilise puisque ça ne marche que dans les cas où ça marche.

Aller, la liste est belle pour les releases du serveur :

  • 20 janvier : 1.1 alpha 1
  • 4 février : 1.1 alpha 2
  • 18 mars : 1.1 alpha 3
  • 21 mars : 1.1 alpha 4
  • 27 mars : 1.1 alpha 5
  • 2 avril : 1.1 alpha 6
  • 9 avril : 1.1 alpha 7
  • 28 avril : 1.1 alpha 8
  • 3 juin : 1.1 alpha 9
  • 31 juillet : 4.0.0
  • 6 août : 5.0.0

Côté android c'est beau aussi :

  • 28 août : 5.0.0
  • 16 mars 2015 : 4.0.0

Oui, la 4.0.0 est sorti plus de 6 mois après la 5.0.0. Ça vous pose un problème ?

Côté Desktop, on tente de remettre en place tous les trucs qui ont sauté avec le passage côté serveur.

Et on en profite : nouvelle image. Le nom de Pastèque, avec un gros Q, est adopté pour la version 4, durant l'été donc.

2015-2016 : le virage[modifier | modifier le wikicode]

Ça y est, Pastèque a passé un cap et s'est rendu suffisamment prometteur pour attirer l'attention de gros utilisateurs. Mi-2015, c'est le moment aussi ou la moitié de l'équipe est partie.

Il ne se passe presque plus rien côté Desktop. Ça finit par marcher à peu près, on voit apparaître un superbe mode hors ligne pour faire planter la moitié des tickets sans rien dire plutôt qu'avoir des grosses erreurs et ne plus rien faire.

Tout est mis sur Android et le serveur, avec des fonctionnalités avancées comme la gestion de stocks poussée, la compatibilité avec du matos de ouf, la connexion avec un TPE. Pastèque devient super stylé.

Pendant 2 ans, ça bouge beaucoup surtout côté Android, avec de nouveaux outils, des thèmes et des builds différents. Côté serveur c'est déjà trop le boxon pour pouvoir avancer correctement, c'est déjà un boulot énorme de faire fonctionner ce qui est présent.

2017 : année LF2016[modifier | modifier le wikicode]

2017, Scil est mort, Pastèque est à la dérive depuis la fin de l'année précédente. Le logiciel est par contre toujours vivant et en Février, l'association Pastèque.org voit le jour pour chapeauter le projet, même s'il n'y a plus beaucoup de forces vives.

La LF2016 entre en application le 1er janvier 2018. On sait depuis la fin de l'été 2016 qu'il va falloir le faire, et quelques mois après ce qu'il faudra faire.

On en profite pour flinguer le serveur et en faire un nouveau, avec un vrai schéma de base de données, et des nouveaux outils.

Rien de bien nouveau, on refait tout marcher. Les contributions commencent à arriver aussi.

On découvre que la barre espace permet de passer à l'encaissement d'un ticket sur Desktop. 4 ans après.

2018 : le renouveau[modifier | modifier le wikicode]

En 2018, la version 8 sort. Le début d'année est tumultueux en raison des changements énormes qui ont été apportés techniquement côté serveur (qui s'appelle l'API). On fiabilise tout, on corrige, on remet en place. À partir d'avril, ça commence à rouler correctement, la nouvelle interface d'administration arrive tout doucement pour au moins gérer les opérations courantes.

2019 : la stabilisation[modifier | modifier le wikicode]

Le développement du logiciel ralentit, pour plusieurs raisons. D'une part les développeurs sont moins disponibles, et le logiciel tourne de mieux en mieux.

Les mises à jour se focalisent sur les nouvelles fonctionnalités, le rapprochement des version Android et Desktop, plutôt que sur des correctifs de moins en moins nécessaires.

2020 : /o\[modifier | modifier le wikicode]

2020 est une année très particulière. Une grande partie des commerce et lieux de vie sont fermés en raison de l'épidémie de Covid-19, pendant environ la moitié de l'année.

Les développements continuent comme en 2019 : lentement, avec des ajouts et correctifs par-ci par-là. Le projet retrouve à peu près l'état qu'il avait avant la version 8, mais en mieux. La documentation reprend aussi un peu de vie, à la fois technique, tout comme ici. La doc de l'API est enfin réalisée et les changelogs sont intégrés dans les projets.