Le site

Archive pour la catégorie ‘Le projet’

Compatibilité avec Internet Explorer

samedi 24 octobre 2009

C’est le cauchemar de tous les webdesigners et je dois bien avouer que je l’avais soigneusement laissé de côté jusqu’à présent pour me concentrer sur les développement des fonctionnalités du site. Mais le site touchant un public plus large, il a bien fallu que je finisse par m’y cogner (et m’y faire mal!): la compatibilité avec Internet Explorer, vieux serpent de mer du wb
ebdesign et rarement une partie de plaisir tant ce navigateur même dans sa version 7 à des comportements inattendus et peu respectueux des standards comparé à Firefox, Safari, Opera ou Google Chrome. J’ai donc choisi d’ignorer Internet Explorer 6, navigateur obsolète et dont l’utilisation est en chute libre depuis la sortie d’Internet Explorer 7 et 8. Bien sûr, il existe encore quelques bastions (entreprises, administration, …) qui résistent encore et toujours à l’envahisseur mais j’ose espérer que ça ne va pas durer et qu’ils ne constituent pas la cible visée par l’Ecolomètre. J’ai par contre travaillé pour assurer une compatibilité parfaite avec les versions 7 et 8, ça n’a pas été très simple, pas tant à cause du design lui-même, quelques modifications dans les feuilles de style suffisant la plupart du temps à corriger les problèmes d’affichage, mais à cause du Javascript parfois mal interprété par Internet Explorer et d’un bug vicieux sur la mise en cache des fichiers XML.

Enfin, c’est désormais chose faite, si vous constatez des bugs qui m’auraiet échappé, n’hésitez pas à me les signaler.

PS: au passage, un très bon site pour tester son design dans pléthores de navigateurs d’un seul coup: Browsershorts

Suite des nouveautés

samedi 12 septembre 2009

Suite des nouveautés de l’été avec une nouvelle série d’indicateurs apparues sur la page principale de votre espace personnel et qui donne une estimation de vos performances dans 4 domaines clés en vous permettant de vous situer par rapport à la moyenne des français et par rapport à un objectif à atteindre. Pour profiter de ces indicateurs vous devrez mettre à jour un certain nombre d’informations vous concernant: type de chauffage, surface de votre logement, nombre de personnes de votre foyer, … Les indicateurs disponibles sont:

  • la quantité annuelle de déchets par personne
  • la consommation d’eau journalière par personne
  • la consommation annuelle d’énergie primaire par personne
  • la performance de votre logement en consommation d’énergie primaire par personne et par an

performances

C’est sur ce dernier indicateur que j’ai le plus de doutes quant à la formule que j’ai mise au point, il faudra certainement que je l’affine dans les mois à venir, n’hésitez pas à me faire des retours, ça m’aidera dans cette tâche. Pour le moment, je prends la consommation mensuelle maximale d’énergie primaire sur les mois d’hiver (novembre à mars) et je soustrais la consommation mensuelle maximale sur les mois d’été (juin à septembre), ça me donne en gros la consommation nécessaire pour chauffer votre logement sur le mois le plus froid de l’année. Je multiplie cette valeur par 4 (estimation plus ou moins arbitraire du nombre de mois de chauffage dans l’année) et j’obtiens ainsi une approximation de la consommation annuelle de chauffage. J’ai aussi ajouté un « indice de confiance » à chaque indicateur qui dépend en gros du nombre de relevés mensuels disponibles pour calculer la valeur de l’indicateur.

Quand l’Ecolomètre aura suffisamment d’inscrits, j’essaierai d’ajouter sur ces indicateurs la moyenne des utilisateurs du site. Ils pourraient aussi servir de base pour créer des groupes de motivation

Lifting d’été

dimanche 30 août 2009

Gros relifting d’été pour l’Ecolomètre à la faveur de mes vacances, tellement de nouveautés qu’un seul billet ne suffira pas à toutes les décrire. J’irai donc pas à pas.

La première nouveauté n’est pas forcément très visible à vos yeux mais elle devrait néanmoins apporter une amélioration significative au traitement automatique des emails de relevés. Car certains d’entre vous l’auront peut-être remarqué à leurs dépens, cette fonction, qui fait l’originalité et l’efficacité du site, avait parfois quelques râtées. La faute aux différents formats d’emails pas toujours reconnus, qui m’obligeaient à traiter les emails à la main avec évidemment un certain retard (pour votre information, en temps normal, l’import automatique est effectif moins d’une minute après que vous ayez envoyé votre mail). Le processus a donc été révisé de fond en comble, le taux de déchets devrait être moins important et surtout vous et moi serons prévenus par mail dès qu’un problème d’import survient. Ultime raffinement, une fonction spécifique de debug me permettra de mieux comprendre pourquoi l’import automatique a échoué et de corriger plus facilement le défaut. Baptême du feu au prochain relevé mensuel à la fin du mois!

Codeurs wanted!

mardi 11 août 2009

Et hop, comme devoirs de vacances, j’ai décidé, sur une excellente sugestion de mon compère Julien, de commencer à développer une API pour l’Ecolomètre. API?? Kezako??? Qu’est-ce qui se cache sous ce sigle barbare? API pour Application Programming Interface, en gros une interface qui permet à des applications tierces d’interagir avec l’Ecolomètre. Intéressant non? L’idée, c’est de permettre à un développeur X (pourquoi pas vous) de créer par exemple une application mobile Iphone, Java ou Android qui permettrait de faire ses relevés depuis son téléphone, sympa non?

Alors si quelqu’un se sent d’attaque, je livre ici les détails de l’API en question.

Le serveur: http://www.ecolometre.com/api (port 80)

Les méthodes:

  • list_monitorings

Cette méthode donne la liste des suivis disponibles pour une utilisateur donné (Conso d’électricité, de gaz, déplacements en voiture, …). Elle prend en entrée le nom d’utilisateur et le mot de passe et renvoie un tableau de tableaux donnant pour chaque suivi sa désignation, l’unité de mesure et le hash qui permet d’identifier le suivi.

    Exemple (basé sur la librairie XML-RPC de Code Igniter):

    $this->xmlrpc->server(“http://www.ecolometre.com/api“, 80);
    $this->xmlrpc->method(‘list_monitorings’);

    $request = array (
                       array(‘MrDemo’, ‘string’),
                       array(‘mrdemo’, ‘string’)
                     );
    $this->xmlrpc->request($request);

        • save_record

        Cette méthode permet d’enregistrer un relevé pour un suivi donné. Elle prend en entrée le nom d’utilisateur, le mot de passe, la légende du relevé (‘Mois de …”), la valeur relevée et le hash qui identifie le suivi pour lequel est effectué le relevé. Elle renvoie un message “success” ou “error”.
        Exemple (basé sur la librairie XML-RPC de Code Igniter):

        $this->xmlrpc->server(“http://www.ecolometre.com/api“, 80);
        $this->xmlrpc->method(‘save_record’);

        $request = array (
                           array(‘MrDemo’, ‘string’),
                           array(‘mrdemo’, ‘string’),
                           array(‘Test API’, ‘string’),
                           array(‘28000’, ‘float’),
                           array(‘gtdeuiskcudy’, ‘string’)
                         );
        $this->xmlrpc->request($request);

        Bien entendu je suis prêt à ajouter des méthodes ou à modifier les méthodes existantes si nécessaire. Ami codeur à toi de jouer!

        Retour d’expérience

        vendredi 24 juillet 2009

        Avant de revenir à un fil d’actualité plus classique, je voulais tirer quelques enseignements de mon expérience de développement de l’Ecolomètre afin d’en faire profiter les quelques lecteurs qui auraient des velléités de développer leur site web.

        • « matûrer” son projet: avant de se lancer dans le code, il faut déjà avoir une idée assez précise des fonctions et de l’allure générale du site pour éviter de tâtonner et aller droit au but. En ce qui me concerne, ça faisait bien 6 mois que j’affinais ce projet dans un coin de mon cerveau. Au moment de me lancer, j’avais donc déjà en tête le plan du site, l’organisation de la base de données, quelques crayonnés de pages. En gros, je savais où j’allais, le travail ne consistait qu’à traduire l’image mentale en lignes de code.
        • développer seul mais à 2: sur un petit projet comme celui-là, c’est un avantage d’être seul à bord, ça permet d’éviter de perdre du temps dans de longs débats stériles et d’avancer vite sur son idée. Cependant, il est très utile d’avoir un oeil critique à qui présenter son travail régulièrement, un interlocuteur qui pourra aussi jouer le rôle d’aiguillon si vous vous endormez sur vos lauriers et qui, au besoin, pourra vous aider dépatouiller un problème technique. Sur l’Ecolomètre, c’est Julien, mon compère de maTiTine qui a joué ce rôle, tandis que je lui rendais la pareille sur le projet qu’il développait de son côté.
        • se fixer une deadline ambitieuse: pour se motiver, rien de mieux que d’avoir une date en vue, le risque sinon, c’est de passer des mois à développer et peaufiner sans jamais rien sortir. Peu importe si la date est dépassée au final, elle restera néanmoins une référence dans votre esprit pour vous botter les fesses. J’ai démarré le 1er décembre avec l’objectif de rendre le site public le 1er janvier, finalement, le site a été lancé le 15 février. Il n’est pas encore complet, mais il est fonctionnel. Deux mois et demi (sur mon temps libre uniquement, je le rappelle), ça reste raisonnable. L’autre avantage de se fixer une deadline ambitieuse outre la motivation, c’est que ça va vous forcer à limiter votre développement aux fonctions essentielles, à simplifier votre projet, à éliminer le superflu, à optimiser vos solutions, le résultat n’en sera que meilleur, plus lisible, plus dense, plus pertinent. Une dernière chose sur ce point: tenez à jour un petit journal où vous noterez d’une phrase ce que vous avez fait chaque jour ainsi que le temps passé, rétrospectivement, c’est toujours intéressant à lire.
        • utiliser de bons outils: c’est incroyable comme certains outils peuvent vous faciliter la tâche et doper votre productivité tout en apportant la rigueur nécessaire à un projet solide. Personnellement, je n’envisagerais plus de développer sans le framework PHP Code Igniter, le framework javascript jQuery, l’éditeur de texte Netbeans, le gestionnaire de versions Subversion et j’en oublie sûrement.

        En espérant que ces menus conseils pourront servir à d’autres.

        (ce billet est une reprise du billet publié il y a quelques semaines sur mon blog personnel “L’imparfait du subjectif”.)

        Attention peinture fraîche

        samedi 18 juillet 2009

        Depuis le temps que je n’avais plus touché au code de l’Ecolomètre, j’ai enfin mis à profit quelques jours de vacances et 2 trajets en train pour m’y remettre sérieusement (merci au passage à mon petit netbook, absolument idéal pour développer en déplacement!) et faire quelques évolutions qui trainaient dans ma tête. Petite revue des nouveautés.

        La première chose, vous l’avez peut-être vue sur la page d’accueil du site, ce sont de nouvelles sections qui mettent en valeur les articles et les commentaires du blog.

        blog

        Le deuxième truc, c’est un nouveau graphique présentant l’évolution mensuelle des émissions de gaz à effet de serre sur la page d’accueil de votre espace perso, il m’a semble que ça pouvait être une information pertinente.

        Lire le reste de cet article »

        Re-surprise

        mardi 14 juillet 2009

        Nouvelle suprise ce matin, mon collègue de bureau Maxime a qui j’avais déjà parlé de l’Ecolomètre, m’a fait suivre un message posté sur un hub Viadeo qui cite mon projet et en dit plutôt du bien (et je promets que je n’ai versé aucune malette de billets!). C’est là que ça se passe!

        Rencontre

        lundi 16 mars 2009

        J’ai décidé de présenter le site à quelques pros des économies des énergies pour avoir un retour de quelques avis éclairés. J’ai commencé par l’association Solagro qui conseille les particuliers en midi-pyrénées pour améliorer leurs logements. J’ai réçu une réponse rapide qui a débouché sur une rencontre avec Nicolas Duvallet et Sandrine Lambert. Une heure de discussions très bénéfique qui m’a permis de valider ma démarche, de découvrir qu’un projet européen cherche à mesurer les consommations d’énergie dans différents pays et de recueillir moultes brochures et le nom d’un contact à l’ADEME.

        Première bêta

        dimanche 15 février 2009

        Allez avec un mois et demi de retard, l’Ecolomètre est prêt à entrer en béta test. J’ai posté des messages sur quelques forums à tendance écolo pour recruter mes premiers utilisateurs.
        L’accueil réservé au site est plutôt bon et me permet de débusquer quelques bugs. Le plus gros souci viens de l’import des mails de relevés. La variété des formats d’emails rend les choses plus difficiles que prévues.

        Let’s go disco

        lundi 1 décembre 2008

        Bon c’est parti pour l’Ecolomètre, ça fait maintenant quelques mois que je muris tranquillement l’idée dans ma tête, je pense avoir les idées suffisamment claires sur le plan du site pour pouvoir démarrer sa réalisation. Symboliquement, j’ai décidé de me donner un mois pour publier le site. C’est serré mais il faut se donner des objectifs ambitieux si on veut avancer. Je compte bien profiter de l’expérience et des ressources utilisées sur les développements précédents pour avancer vite.