dimanche, juillet 15 2007
Par Laurentj le dimanche, juillet 15 2007, 11:08 - Projets
En ce moment, le développement de Jelix est un peu ralenti parce que je bosse plutôt sur le site :
- Je suis en train de refaire le design, avec une nouvelle mise en page car avec les diverses évolutions que le site a connu depuis sa création, il devient de moins en moins possible d'organiser les menus correctement avec le design actuel. Mise en ligne d'ici une semaine je pense.
- Création d'une forge pour l'hébergement des projets de modules, de plugins et tout autre projet relatif à Jelix. La structure "système" est dorénavant en place. Elle repose sur Trac et subversion. Ça n'a pas été de tout repos, trac n'étant pas vraiment adapté pour la réalisation d'une forge. Mais j'ai pu hacker un plugin d'authentification (ouai ! j'ai écris mes premières lignes de code de Python !) permettant d'avoir une authentification et une gestion des permissions commune à tous les environnements trac utilisant une même base de données mysql, un script shell pour créer tout un environnement pour un projet (trac + subversion). Il ne me reste plus qu'à faire une interface web pour s'inscrire, inscrire un projet, et afficher une liste de projets un peu plus complète que celle par défaut fournie par trac. Ça sera fait à base de modules Jelix.
L'un des premiers projets hébergé par la forge, est le plugin pour eclipse que j'avais déjà évoqué. Développé par Pokito, il permet de créer facilement les différentes composantes d'une application Jelix via Eclipse. Des vidéos, la documentation et le plugin sont déjà disponibles sur le site. Ce projet est je crois un gros "plus" pour Jelix :-)
PS: j'ai oublié de dire aussi que Jelix soutient l'initiative GoPHP5 et que donc, au plus tard le 8 février 2008, Jelix ne fonctionnera que sur PHP 5.2 et supérieur.
samedi, juillet 7 2007
Par Laurentj le samedi, juillet 7 2007, 10:09 - Technologies Web
Via Perrick, je viens de découvrir l'initiative gophp5 qui vise à faire migrer les projets PHP et les hébergeurs vers PHP5. En effet, des centaines de projets demandent toujours l'installation de PHP4 et énormément d'hébergeurs proposent encore PHP4. Alors que PHP6 est en préparation..
Je pense aussi qu'il faut mettre PHP4 aux oubliettes. Il a fait son temps et PHP5 est quand même bien mieux et stable depuis le temps. Surtout qu'il n'y a pas forcément beaucoup de travail pour migrer. Sauf si on a codé comme un cochon (et encore). De toute façon, il va bien falloir s'y mettre, les développeurs de PHP sont en train de discuter la date d'arrêt du support de PHP4 (date à laquelle donc il n'y aura plus de corrections de bugs et de corrections de trous de sécurité). Ça se ferait apparemment courant 2008.
Migrez donc ! Virez PHP4 et mettez PHP5 ! Profitez-en pour recoder vos applis avec un framework ! <message_subliminal>Avec jelix par exemple</message_subliminal>.. :-)
mercredi, juin 27 2007
Par Laurentj le mercredi, juin 27 2007, 16:08 - Projets
Et hop, un projet de plus qui utilise Jelix : Dragon-CMS. En plus c'est un CMS assez original puisque l'interface d'administration n'est pas une application web, mais une application en XUL motorisée par XulRunner. Et il dispose aussi d'une partie en PHP pour le serveur (utilisant jelix donc), qui affiche bien entendu le site que l'on crée, mais qui contient aussi tous les services web pour le client XUL. En fait c'est en quelque sorte un clone de NextCMS, mais libre :-)
Cette nouvelle est encourageante dans la mesure où les contributeurs à Dragon-CMS deviendront peut-être des contributeurs de Jelix, et en tout cas des utilisateurs ;-) (À propos de contributeurs et utilisateurs, le forum de jelix est de plus en plus actif, c'est bon signe :-) ).
samedi, juin 2 2007
Par Laurentj le samedi, juin 2 2007, 09:50 - Projets
Le future système de formulaire de Jelix est en bonne voie. Dans une branche expérimentale du dépôt subversion, ça commence à bien fonctionner et j'en suis assez content. Maintenant jforms sait générer un formulaire HTML et le code javascript de validation qui va avec, même si tout n'est pas encore complet.
Lire la suite...
mardi, avril 17 2007
Par Laurentj le mardi, avril 17 2007, 09:20 - Projets
La deuxième beta de Jelix est disponible, toujours plus stable et robuste, grâce aux nombreux bugs corrigés détéctés par des contributeurs et aux tests unitaires que j'ai ajouté (notamment sur le système de droit). Il y a aussi quelques évolutions et améliorations, mais tout ce qui était prévu n'a pas été réalisé, faute de temps. Aussi, pour respecter les dates de sorties et faire profiter aux utilisateurs les avancées du framework, nous avons sortie quand même cette beta2, et les évolutions prévues non réalisées pour cette beta2 ont été repoussé vers la beta suivante. J'ai passé aussi un peu de temps sur la doc, notamment sur l'authentification et le système de droits (la doc en anglais par contre n'est pas à jour, si il y a des volontaires... ;-) ).
En parallèle a ça, on continue de préparer une forge pour héberger des projets de modules ;-)
mardi, avril 3 2007
Par Laurentj le mardi, avril 3 2007, 11:40 - Projets
- Over-blog vient de mettre en ligne son nouveau portail, basé sur mon framework PHP Jelix, comme je l'avais annoncé.
- La beta2 prend du retard, et on est loin d'avoir fini ce qui était prévu. Je pense donc que je vais sortir une beta2 en l'état, ce qui n'est pas un mal vu le nombre de corrections apportées et les quelques nouveautés. Et je vais planifier une beta3 pour finir ce qui était prévu dans la beta2.
- Depuis quelques temps, il existe une nouvelle édition de Jelix (qu'il faut se générer à la main pour le moment), qui repose sur une extension spécifique pour PHP (en langage C donc). Cette extension expérimentale (et optionnelle bien sûr) fourni quelques fonctions qui accélèrent certains traitements de Jelix. Par exemple, sur l'analyse d'un sélecteur, les performances sont de 4 à 10 fois supérieurs (cela ne veut pas dire qu'une appli sera 4 à 10 fois plus rapide en globalité hein ;-) ). Entre parenthèse, j'avais oublié à quels points les pointeurs pouvaient être utilisés dans tous les sens en langage C. Les sources de PHP en font un usage plutôt intensifs :-).
- Tests unitaires, tests unitaires, tests unitaires. C'est long et pas le plus rigolo à faire, mais on y gagne au niveau qualité et rapidité de dev sur le moyen et long terme. J'en ai rajouté plein, et en particulier dernièrement, toute une série sur le système de droits, jAcl.
- On vient de dépasser le 400ième commit :-)
- Un contributeur vient de m'envoyer la documentation de Jelix sous forme de document OpenOffice et Pdf. Je la mettrais en ligne bien entendu, et on essaiera de la maintenir en même temps que sa version wiki.
- J'ai pris note des défauts du site jelix.org, que m'a listé un internaute. Si vous aussi vous avez des critiques à faire, n'hésitez pas.
lundi, mars 19 2007
Par Laurentj le lundi, mars 19 2007, 14:00 - Geek-log
Je commence à en avoir vraiment marre de manipuler mon éditeur pour passer de utf-8 à latin1 ou latin1 à utf-8 quand je passe d'un projet à un autre, d'un fichier à un autre. Dorénavant, je ferais tout en utf-8. J'ai d'ailleurs commencé :
- passage des sources de Jelix en utf-8, et l'encodage par défaut est maintenant utf-8.
- mise à jour de mon installation dotclear vers la version 1.2.5, avec au passage migration de mes données mais pas seulement : connexion à la base de donnée (ce qui a nécessité un petit hack dans dotclear), schéma des tables de données, templates. Tout en utf-8 de bout en bout.
Le reste de mon site perso, mes autres projets et autres sites subiront le même sort petit à petit, à l'occasion d'évolutions.
Chez moi, latin1 (iso-8859-1) fait parti désormais du passé.
vendredi, mars 16 2007
Par Laurentj le vendredi, mars 16 2007, 10:49 - Projets
Daniel m'a proposé de "sponsoriser" mon framework Jelix. Ce que j'ai accepté avec plaisir :-) En d'autres termes, Disruptive Innovations me laisse désormais du temps pour travailler sur le projet ! (Mais ce n'est pas du plein temps puisqu'on a d'autres projets sur le feu, entre autre mon éditeur xml wysiwyg Etna ;-)).
Et ce n'est pas tout. Disruptive Innovations propose aussi maintenant du support professionnel sur Jelix : consulting, formation, développements (tout ceci allant se mettre en place doucement). Si vous avez besoin, contactez moi : laurent.jouanneau at disruptive-innovations.com.
lundi, mars 5 2007
Par Laurentj le lundi, mars 5 2007, 13:03 - Projets
Depuis quelques jours, le serveur mysql de l'Apinc connait de fort ralentissement. C'est bien simple, il croule sous les requêtes, à cause du nombre de site grandissant, du trafic augmentant, mais aussi à cause de requêtes trop gourmandes. Et pour certaines trop trop gourmandes. À tel point que mysql a fini par faire grêve ce week-end. Plus rien. Nada.
Mat (le même que celui d'openweb), admin système à ses heures à l'Apinc, observe depuis quelques semaines ces problèmes. Il est depuis passé à l'action : il essaye de contacter les propriétaires des sites fautifs pour qu'ils essayent d'optimiser un peu leur code, qu'ils arrêtent de faire des requêtes pourries. Peine perdue pour certains d'entre eux : ils ne sont pas développeurs et utilisent des trucs comme spip, phpbb et autres softs prêts à l'emploi souvent codés avec les pieds au niveau SQL. Et puis il y a d'autres webmestres qui ont fait leur site à la main, qui eux peuvent donc améliorer leurs scripts pourries. Et j'en fait parti.
J'ai en effet mon site sur tahiti chez l'apinc, un truc développé en 2001 pour la plus grosse partie, et peu retouché depuis. Autant vous dire que le code date ! Aprés donc m'être fait taper sur les doigts avoir été averti par Mat, je me suis replongé dans mes antiquités PHP, et j'avoue que c'est assez effrayant de se relire 5-6 ans après. Je vous passerai les détails tellement j'ai honte :-). Bon aller, si, assumons : du genre des index manquants, des GROUP BY et autres jointures dans tous les sens alors qu'avec un peu d'astuce, cela peut être évité (un peu de duplications d'infos peut être plus intéressants finalement que de faire des requêtes hyper complexes), récupérations de listes partielles d'enregistrements sans utiliser le mot clé LIMIT etc...
Et donc j'ai passé mon temps libre ce week-end à reprendre tout ça, à faire du nettoyage. En espérant que cela puisse contribuer à diminuer la charge du serveur mysql de l'apinc :-)
PS : au passage, je recherche un webdesigner bénévole qui serait volontaire pour rafraîchir un peu le design de mon site tahiti-fenua.
jeudi, mars 1 2007
Par Laurentj le jeudi, mars 1 2007, 15:02 - Projets
Over-blog est l'une des plus grosse plateforme de blog en France (juste derrière Skyblog je crois). Jugez plutôt :
- plus de 534 000 blogs;
- 5 millions de pages vues par jour;
- 12 000 nouveaux articles chaque jour;
- plus de 15 000 connectés en simultané;
- Une base de donnée remplie de giga octets d'articles.
Une version 2 de ce site est dorénavant en ligne, en partie[1].
Et je suis fier de vous annoncer qu'elle tourne avec mon framework PHP5 Jelix :-) !
Ce fut une grande surprise quand Yannick (alias Torgan), l'un des responsables du développement débarqua sur le channel irc de Jelix, début mai 2006, pour poser des questions sur mon projet, alors que le framework en était encore qu'en version 1.0 alpha 2, c'est à dire encore en friche et totalement inconnu (jusqu'à maintenant, j'ai parlé de jelix principalement sur mon blog). Malgré les avertissements des possibles changements d'api, de l'immaturité du coeur même si il était stable au niveau exécution, du fait que je développais ça quasiment seul sur mon temps libre donc avec une disponibilité réduite et une évolution "lente", Yannick et ses collègues ont décidé que la nouvelle version 2 d'over-blog reposerait sur Jelix.
Je tire mon chapeau à cette équipe de développeurs, qui n'ont franchement pas eu peur de cette prise de risque pour un si gros site et un si gros développement. Ils ont toutefois été rassuré je pense, à ce qu'ils m'ont dit, par la qualité du code qu'ils ont jugé très correcte, la relative légèreté du framework en regard des services rendu (par rapport à d'autres frameworks), et des performances après les benchs d'évaluation, confirmés semble-t-il par les tests en pré-production. Ils m'ont aidé pour le débuggage du framework, et proposé quelques évolutions et patchs. Je les remercie pour la confiance qu'ils ont eu en Jelix.[2]
Au passage, Smile a publié un livre blanc sur les framework php. Jelix fait parti des frameworks testés. Ils vont maintenant pouvoir effacer la phrase [jelix] reste trop jeune pour l'utiliser dans des projets importants
;-).
vendredi, février 23 2007
Par Laurentj le vendredi, février 23 2007, 11:15 - Geek-log
- ça fait 4 ans et 1 mois que j'ai ouvert ce blog. Et à relire de vieux billets, j'ai l'impression que j'écris des choses de moins en moins intéressantes.
- Mozilla rencontre des problèmes de performances avec la future nouvelle version de addons.mozilla.org. Ne serait-ce pas dû finalement à l'utilisation du
bloatware framework CakePHP ?[1]
- Départ pour Bruxelles, pour le Fosdem, cet aprés midi.
- Gros problèmes sur le serveur xulfr.org depuis hier soir. Impossible de s'y connecter. On va essayer de régler ça au plutôt.
- Hier soir, on a fait la première assemblée générale de l'association Xulfr. Le bureau est constitué officiellement et on a discuté de ce que l'on allait faire. En particulier, dans un premier temps, ouvrir un compte en banque, se prendre un serveur dédié, trouver des admins, des développeurs, et développer le projet "depot" :-) (La conquête du monde est prévue dans un deuxième ou troisième temps).
mercredi, février 14 2007
Par Laurentj le mercredi, février 14 2007, 11:58 - Geek-log
Lu sur IRC :
Hadrien : putain c'est tout pourri smarty
Torgan : effectivement jTpl est vachement plus sympa
;-)
samedi, janvier 13 2007
Par Laurentj le samedi, janvier 13 2007, 21:30 - Projets
Ça y est j'ai sorti la première beta de mon framework PHP. Une version "developpeur" et une version "prod" optimisée sont disponibles. Malgré que ce soit une beta, le coeur est déclaré stable. Il y a juste pas encore tout ce que je veux au niveau des classes utilitaires, pour en faire une 1.0 complète. Une deuxième beta est prévue au printemps, un peu plus complète évidement. Et en parallèle, je développe, en très basse priorité pour le moment, une autre version de Jelix (mais compatible), incluant quelques innovations en matière de framework php. Cette beta n'est que la partie visible de l'iceberg ;-)
Conçernant l'optimisation et les performances : j'ai toujours pas fini mes bench. Ça prend beaucoup de temps mine de rien, et du temps j'en ai pas tant que ça. Le problème aussi est qu'avec Gerald, on ne tombe pas sur les mêmes conclusions sur le comparatif copix vs jelix. Peut être est-ce dù au fait qu'on n'utilise pas le même outil de bench. Donc faut que je vois de mon coté ce qui peut clocher, (et Gerald aussi de son coté), ce qui demande encore et encore plus de temps. Pour ceux qui m'ont envoyé un exemplaire d'appli symfony et cakePHP, je ne les oublis pas, je compte bien les tester :-)
dimanche, janvier 7 2007
Par Laurentj le dimanche, janvier 7 2007, 14:15 - Projets
Suite aux commentaires à mon précédent billet, on s'est mis d'accord, Gerald et moi, pour réaliser des benchs sur nos frameworks respectifs, à savoir Copix 3 et Jelix 1.0 dans leur version pre-beta (version trunk quoi...). On s'est donc mis d'accord sur une page type (voir la page en question sur le site http://bench.copix.org/).
Lire la suite...
mercredi, janvier 3 2007
Par Laurentj le mercredi, janvier 3 2007, 23:27 - Geek-log
Un internaute, Mickael, vient de me signaler que le nouveau site gouvernemental http://www.prix-carburants.gouv.fr est réalisé avec le framework Copix. La preuve :

Diantre ! Un site gouvernemental réalisé avec un truc dont j'ai été un gros contributeur. Ça fait tout drôle :-)
Diantre (bis) ! Mais pourquoi n'ont ils pas utilisé Jelix[1] ? <troll>Ils auraient eu moins de problème de charge[2]</troll>.
un rétrolien
lundi, novembre 20 2006
Par Laurentj le lundi, novembre 20 2006, 18:12 - Geek-log
...Les plus mal chaussés. C'est connu.
On vient de me faire remarquer que le site du framework ruby Ruby On Rails, n'est pas fait en ruby, ni encore moins avec rubyonrails, mais... en PHP ! Rigolo non ? Par exemple aller sur http://www.rubyonrails.org/screencasts ou http://www.rubyonrails.org/screencasts.php, c'est pareil. Vive la magie du Multiviews d'apache ! ;-)
Bon, vous allez me dire, jelix.org n'utilise pas (encore) le framework PHP jelix (mais au moins j'utilise des applis php :-p ). Mais comme je vous disais, ce sont les cordonniers...
PS : Je laggue, je sais... durcommefaire en parle aussi ici
mercredi, novembre 8 2006
Par Laurentj le mercredi, novembre 8 2006, 18:05 - Projets
Kayuko, comparateur de prix éthique, vient de sortir en version 2 : nouvelle charte graphique, fonctionnalités supplémentaires. L'originalité du truc, est que le code a été refondu et le framework PHP Jelix a été utilisé pour cette occasion.
C'est donc le premier site professionnel utilisant Jelix en production. Et pour ceux qui n'ont pas suivi mon blog, le développeur de Kayuko est Loic Mathaud, aka bballizlife, gros contributeur à Jelix :-) Et comme c'est un warrior, il utilise une version "trunk" de Jelix, entre la 1.0alpha5 et la future beta1 (mais pas de souci en fait, jelix est super stable, il manque juste quelques APIs ;-) ). Et prochainement, je suis sûr qu'il va utiliser la "Optimized Edition", version optimisée spéciale serveur de prod qui est en préparation ;-)
Bon, y a plus qu'à attendre les autres warriors de l'autre site à 4 millions de pages vues par jour, en refonte aussi, basé sur Jelix, pour faire encore plus de pub pour le framework ;-)
Note: je rappel que je ne bosse pas pour kayuko ou les autres warriors, je m'amuse juste sur jelix pendant mon temps libre..
Mise à jour 1er Mars 2007 : Divulgation de l'identité des autres warriors dans cet autre billet
un rétrolien
mercredi, octobre 25 2006
Par Laurentj le mercredi, octobre 25 2006, 00:19 - Projets
Depuis une vingtaine de jour, Jelix.org a été déménagé sur un nouveau serveur, où nous avons toute la liberté de faire ce qu'on veut (Merci Nicolas ;-) ). On a ainsi :
- Un dépot subversion pour les sources du site
- Une configuration apache/php aux petits oignons
- Mysql 5
- Une génération automatique chaque nuit de la documentation de référence (avec phpdoc), et de "nightly builds" de Jelix
- Une installation d'un mirroir du dépot subversion du projet installé sur berlios.de, et mise à jour régulière de ce mirroir.
Et je viens de finir d'installer trac sur un nouveau domaine : http://developer.jelix.org. Modifier les templates de Trac n'est pas trés aisé mais j'ai quand même reussi à intégrer le design du site.
On dispose maintenant d'une meilleure gestion de bug, de patches et de roadmap, d'un meilleur navigateur de source que sur Berlios.de, ainsi que d'un wiki pour y mettre les brouillons de specs et autres reflexions, ce qui évite de polluer le wiki du manuel utilisateur. Bref, tout ce que peut proposer Trac que je trouve simple et bien fait :-)
Je garde toutefois la page projet de Berlios.de : j'y laisse les téléchargements, la mailing list, et le dépot subversion principal.
Avec tout ça, je ne me suis pas couché de bonne heure ces derniers temps. J'ai besoin de faire une petite cure de sommeil :-)
mercredi, octobre 11 2006
Par Laurentj le mercredi, octobre 11 2006, 00:36 - Projets
Wikirenderer, ma classe de transformation de texte wiki en ce que vous voulez (XHTML entre autre), est disponible en version 3.0rc1 : Moteur réécrit, moins de bugs et peu de perte de perfs. Il y a aussi une nouvelle manière d'écrire les rêgles de transformation en php, avec plus de possibilités.
Par exemple, générer du contenu supplémentaire (comme des notes de bas de page par exemple) aprés l'analyse du texte est possible. On peut aussi avoir des blocs de texte délimité uniquement par un tag de début et de fin et non pas défini uniquement par un caractère particulier en début de chaque ligne. Je vais pouvoir ainsi améliorer l'affichage des sources dans les messages du forum de http://xulfr.org ou de http://jelix.org.
Si il y en a qui proposent des rêgles de transformation pour du texte en syntaxe dokuwiki, mediawiki ou autre, ou pour transformer en autre chose que XHtml, je les intégrerais volontiers dans le paquet officiel.
Mise à jour 03/02/2007 : version 3.0 finale disponible
jeudi, septembre 28 2006
Par Laurentj le jeudi, septembre 28 2006, 09:43 - Projets
Rapidos :
- une version 1.0alpha5 du framework php Jelix est sortie (changelog, téléchargement). C'est la dernière alpha avant une beta qui sortira d'ici la fin octobre, à peu prés au même moment que la sortie de la V2 d'un site à 10 millions de visiteurs par mois, utilisant Jelix (depuis la alpha2, des vrais aventuriers !)
- sortie de jTpl 1.0alpha3, le moteur de template de Jelix en version standalone (téléchargement). Il lui manque encore un cache de contenu avant de passer en beta [1].
- sortie de jBuildTools 1.0 (téléchargement), mon préprocesseur PHP et créateur d'arborescence de sources
- Wikirenderer 3.0RC1 ne devrait pas tarder. J'ai complétement réécrit le moteur pour corriger quelques bugs "compliqués", et pour plus de souplesse dans l'écriture de son propre langage wiki. Il me manque encore quelques tests, et la mise à jour du site.
- Le site jelix.org va bientôt changer d'hebergeur. njeudy nous prête gentiment "un peu" de son espace disque/bande passante sur son serveur. On va pouvoir aussi installer un trac, des batchs pour générer automatiquement la doc de référence, des nightly builds etc... Ça va vraiment booster ! Cela va changer de l'apinc, qui commence à être un peu trop surchargé à mon goût, avec des problèmes réguliers, victime de son succés (même si je reconnais que les admins de l'apinc font tout leur possible, merci à eux).