Blog

Voir descendre le nombre de lignes de codes

La taille d'un logiciel n'est plus crucial pour un utilisateur : la taille des disques durs a litéralement explosé pour atteindre des dizaines de Go en moyenne de nos jours. Très bien pour la vidéo en particulier. Pourquoi donc y faire attention quand on écrit un logiciel ? Il y a bien sûr le temps de téléchargement : c'est pour ça que Mozilla Firefox a réduit drastiquement la taille du fichier à télécharger qui passe sous la barre des 5 Mo.

Une deuxième raison réside dans la confiance dans le code à fonctionnalité égale. Je m'explique pendant ma recherche de produits Open Source, j'ai effectué un paquet de téléchargements.

téléchargement de groupware Open Source en PHP

Un tel écart entre le plus léger (dotproject - 758 Ko) et le plus lourd (phpGroupWare - 22,6 Mo) est considérable. La question devient : où est le meilleur rapport lignes de code / nombre de bogues ? Et son corrolaire : dans quel produit avoir confiance ?

Au niveau d'openTIME nous avons fait et continuons à faire des efforts pour limiter le nombre de bogues. Résultat en 3 mois de développement, le nombre de lignes a effectivement baissé : nous en sommes désormais à 34 444, pendant que le nombre des fonctionnalités augmentait (pointeuse, gestion des congés, facturation, tableau croisé dynamique). Et pour le fichier ZIP me direz-vous ? 751 Ko.

openTIME est prêt pour PHP5

Avec la nouvelle version de PHP qui arrive très bientôt -- selon les dires des développeurs de Zend -- j'ai pris le temps de me pencher sur le cas d'openTIME. Dans la documentation officielle il est indiqué que la plupart des scripts PHP 4 devraient être prêts à fonctionner sans nécessiter la moindre modification. Sauf que bien sûr la loi de Murphy est passé par là. Bilan des courses : presque une après-midi entière pour trouver une astuce qui contourne ce bug sur bcmath. Et openTIME est prêt pour PHP5 !

Nouveau numéro de formation

Voilà c'est fait après plusieurs semaines et deux dossiers renvoyés, No Parking a obtenu son numéro d'enregistrement en tant qu'organisme de formation. Rien en soi de particulièrement extraordinaire. Si ce n'est que : toute publicité qui ferait mention de cette déclaration [...] est strictement interdite sous peine d'application de sanctions. En indiquant cette info sur le blog de No Parking, est-ce que je fais de la publicité déguisée ? J'ose encore espérer que non...

No Parking

Architecture de logiciels en PHP

Après au moins un article vraiment pas intéressant sur l'architecture de logiciels en PHP -- sans lien direct -- voici deux points de vue autrement plus intéressants : celuis de Harry Fueck et celui de Zend.

Dans un cas comme dans l'autre ils parlent d'exemples concrets : Wordpress pour le premier et osCommerce, phpMyAdmin, Smarty et FPDF.

Les logiciels quelque peu "complets" (WordPress, phpMyAdmin et osCommerce fonctionnent bien, et depuis longtemps) sont tous développés sans "framework" -- parfum Vanille ? -- avec un mix entre code procédural et code "orienté objet" : ça tombe bien c'est le choix que j'ai effectué pour openTIME.

Les extensions à la gestion de temps

Souvent on me demande si tel ou tel fonctionnalité est opérationelle dans openTIME, comme la réponse n'est pas toujours oui -- contrairement à ce qu'on pourrait croire No Parking n'est pas encore Microsoft ;-) -- voici une liste de celles présentes au 01/06/2004 :

  • demandes de congés
  • notes de frais
  • requêtes
  • contacts
  • planning
  • compta analytique
  • pointeuse
  • création des factures

Et pour celles qui n'y sont pas encore, notre politique est simple : un devis est effectué avec vos spécifications, ensuite nous divisons le prix par deux et au final vous bénéficiez de votre propre fonctionnalité dans openTIME. Intéressé ??

Interface de saisie des temps

Presque deux ans de développement sur la gestion de temps et l'interface principale - celle qui permet de saisir le temps passé - reste la plus cruciale : il en existe déjà 4 différentes dans openTIME. Saisie à la journée (avec une case à cocher par jour) ou à l'heure (avec un champ classique), choix des dossiers / projets en liste statique ou par un menu déroulant. Et ce n'est pas terminé, nous avons d'autres idées à implémenter... A chaque itération, je me rends compte à quel point ce n'est pas évident d'aller vers plus de simplicité quand bien même ça reste notre dada.

Réorganisation des congés

Ah les congés à la française : les voilà enfin inclus dans openTIME avec ajout automatique des jours fériés (merci PHP et ses fonctions idoines), compteurs "RTT" et "congés payés". Comme d'habitude, tous ces ajouts sont entièrement paramétrables (et masqués par défaut lors d'une mise-à-jour automatique)

Les béta-tests sur cette section "congés" viennent de commencer : si vous souhaiter le faire aussi, merci de me contacter directement : developpementATnoparkingDOTnet. Pour tous les bétas-testeurs -- et en particulier ceux qui ont des RTT -- j'offre une version complète du logiciel ou un an en mode hébergé.

Pages