Journal La mode du tag pour les notes

Posté par  (site web personnel) .
Étiquettes : aucune
1
9
juin
2005
Après http://del.icio.us(...) pour les bookmarks, http://flickr.com(...) pour les photos, http://gmail.google.com(...) pour les mails, un article dans linuxmag de ce mois ci, les extracteurs des moteurs de recherche locaux, etc., je me suis dit qu'on pouvait mettre des tags partout :)
Et je suis persuadé qu'on arrivera à des systèmes avec une vue utilisateurs uniquement contextuelle, plus de répertoires machins, de "les photos de Tata Renée dans vacances ou dans famille ?" juste des tags et des tags valués (animal et animal:chien)

J'utilise depuis bientôt 2 ans le wiki http://moinmoin.wikiwikiweb.de(...) mais les règles sur la formation des MotsWiki ne me plaise pas trop et ne résout pas le problème des liens qui changent de titre et des notes qui peuvent avoir plusieurs thèmes.

J'ai donc adapté l'idée d'utiliser des tags pour gérer mes notes et j'ai commencé un petit projet web en python et que j'aimerai vos avis d'utilisation, de pertinence, etc.

Pour éviter les liens qui changent, j'utilise directement les id des notes, si vous laissez votre souris sur un titre vous aurez l'ID de la note et un [[numéro d'id]] vous créera automatiquement un lien vers la note, idem avec [[http://linuxfr.org(...)]] ou [[toto.com mail de Gérard]] pour éviter le HTML

Pour les notes avec plusieurs thèmes ben y a plusieurs tags :D

Si vous avez une manière complètement différente ou pas de gérer vos notes, aides mémoires, bookmarks, etc. n'hésitez pas à en faire part ! Même si c'est des logiciels non web, je trouverai toujours une idée à piquer ;)
Bien sur, si vous préférez les postit ...

Le site du projet est à http://gna.org/projects/pysubmind/(...)
La démo est à http://l-homme.net/pysubmind/pysubmind.py(...)

Si vous voulez tester sur une machine à vous pour éviter les lenteurs de la base postgres que je loue ou que le site s'est fait linuxfrisé, utiliser le CVS et ça marche actuellement avec PostgreSQL, MySQL et SQLite !

Merci les gens !
  • # Itou

    Posté par  (site web personnel) . Évalué à 3.

    Je fais pareil avec un module PHP (non publié, pour raison de code pourri du genre "quick & dirty") avec lequel je sauvegarde des notes/txt dans une base de données Postgresql.

    Le squelette :
    Titre
    Contenu de la note
    Mots-clefs

    Ce que j'aimerais faire : je rentre un mot-clef, et le logiciel m'affiche la liste des mots-clefs "relatifs" (du genre "photos" -> "photos chien", "photos chat", "photos tortue"), avec le nombre d'occurences et de sous occurences, le tout sous forme d'arborescence ou autre, de manière à naviguer....
    • [^] # Re: Itou

      Posté par  (site web personnel) . Évalué à 3.

      Dans PySubMind, si tu cliques sur un tag, tu obtiens les notes avec ce tag et aussi les tags de ces notes, je peux améliorer le bouzin mais c'est déjà chiant à cause de MySQL qui gère pas les sous requêtes dans ma version :)

      D'ailleurs si quelqu'un peut regarder cette requête, j'ai pas réussi à la transformer correctement, je suis obligé de traiter le résultat ... C'est dans get_tags_close_relation(), cf le CVS avec la version 1.61 de pysubmind.py pour la version d'avant.

      Je pense surtout rajouter le +tag1 +tag2 de del.icio.us qui permet d'avoir les titres pour les notes qui ont plusieurs tags en commun.
  • # détail

    Posté par  . Évalué à 8.

    Dans tous ces systèmes, il faut pouvoir gérer le renommage global.
    exemple: "copine" -> "ex", pour tout (textes, photos, ...)
    • [^] # Re: détail

      Posté par  (site web personnel) . Évalué à 3.

      ça marche déjà :)
      Et même mieux, tu peux diviser les tags donc si tu viens de changer de chérie de A pour B, tu kill tout les "chérie" et tu demandes à diviser "A" en "A" et "chérie"
      Hop !
      Toutes les infos sauvegarder et à jour :D
  • # Pareil

    Posté par  (site web personnel) . Évalué à 1.

    C'est marrant, je pense qu'il y a pas mal de gens qui ont eu l'idée en même temps...
    J'ai commencé un petit projet en python (http://tagnotes.sourceforge.net(...) ) pour faire la même chose (sans l'interface web, du moins pour le moment)
    J'utilise une base de données sqlite pour stocker les données. C'est assez sommaire pour le moment, mais j'ai déjà implanté quelques fonctions de 'related tags', etc.

    Il y aurait peut être moyen de collaborer? J'ai pas beaucoup de temps, et mon interface laisse vraiment à désirer, mais le concept m'intéresse vraiment. Qu'est-ce que ton projet nécéssite pour tourner? (j'aimerais éviter apache sur mon vieux portable...)
    • [^] # Re: Pareil

      Posté par  (site web personnel) . Évalué à 2.

      Bien entendu qu'on peut collaborer :)

      Pour l'instant faut python, apache et une base (ça marche déjà avec PostgreSQL, MySQL et SQLite) mais je pense me pencher sur moinmoin pour voir comment il font pour proposer python, twister, apache et mod_python ...

      Pour apache, je pense pas que ce soit vraiment problématique même sur un vieux portable car c'est du cgi et la couche serveur web est pas très gourmande ...
      • [^] # Re: Pareil

        Posté par  . Évalué à 2.

        Si l'idée est d'embarquer un serveur ouaib, ça peut valoir le coup de jeter un oeil sur cherrypy: http://www.cherrypy.org(...)
        Le framework est relativement complet et rapide à prendre en main (c'est pas Zope quoi), tout en imposant pas de choix particulier au niveau des templates ou de la couche de persistence.
        • [^] # Re: Pareil

          Posté par  (site web personnel) . Évalué à 2.

          J'avais déjà regarder cherrypy et je préfère un truc tout bête avec twister.
          • [^] # Re: Pareil

            Posté par  (site web personnel) . Évalué à 3.

            je suis un fan de cherrypy ... et je peux pas laisser dire ça ... ;-)
            il n'y a pas plus simple que cherrypy ...

            et si la problématique, c l'intégration dans apache, CP2 est wsgi, et il y a une recipe sur le site pour l'intégration dans mod_python ou fastcgi sur apache

            d'ailleurs, je serai aussi assez parti pour vous aider ... je suis l'auteur de jbrout "jbrout.free.fr", et j'y tag les photos dans les données IPTC, donc y a moyen de mélanger tout ça ...

            aussi, pour cherrypy, je suis en train de faire une lib toute simple, pour pouvoir TRES simplement faire de l'AJAX (avec sajax, que j'ai du adapter) ... et donc faire des sites qui se modifient simplement sans recharger tout le contenu ...

            j'ai également, sous le coude, un clone de smarty pour python (toujours pas releaser ;-( ) ... pour templater à la smarty sous python (suis fan de smarty aussi ;-)
            • [^] # Re: Pareil

              Posté par  (site web personnel) . Évalué à 2.

              Le problème de cherrypy (que j'avais eu il y a 1 an) c'est qu'il est "embarqué", à l'époque tu pouvais pas l'utiliser sans avoir accès au serveur, hors depuis le cramage de mon serveur, je suis hébergé et j'ai qu'un accès ftp ... par exemple.
      • [^] # Re: Pareil

        Posté par  (site web personnel) . Évalué à 1.

        Mon idée était plus de faire un petit soft tout simple, en GTK par exemple. Evidemment un serveur permet d'avoir accès à ses notes de partout, mais que faire quand on a pas de serveur ou pas accès à internet?

        De toutes façons la partie centrale peut être la même, et il suffit d'utiliser sqlite comme backend si on veut pas se trimbaler un gros serveur de bdd. En tous cas je suggère de bien séparer l'interface du fond, de manière à pouvoir eventuellement faire plusieurs sortes d'interfaces (web, gtk, ligne de commande,...)

        Je vais essayer de jetter un coup d'oeil à ton code dès que j'aurai le temps.
        • [^] # Re: Pareil

          Posté par  (site web personnel) . Évalué à 2.

          J'ai regardé ton code hier et effectivement je rajouterai peut être comme toi une partie vraiment séparé gestion note, tag et web. J'ai déjà bien séparé donnée / présentation mais la partie donnée gère tag/note et web.

          Pour la bdd, si tu utilises db api2, c'est vraiment pas un problème, regarde mon code, il y a 2/3 bidouilles mais avoir le choix postgresql, mysql ou sqlite est vraiment un point que je trouvai important.
  • # Moi aussi

    Posté par  . Évalué à 1.

    Je suis en train de développer un truc similaire en PHP (pour pouvoir l'héberger partout) mais plus généraliste :

    Il y a trois type d'éléments :

    - Les "objets"
    - Les Tags
    - Les Textes Long

    Chaque Tags ou Textes Long est associé à un objet et il est également possible de faire des liaisons entres les objets

    Il y a une interface de configuration qui permet de configurer les liaisons possibles pour chaque type d'objet afin de pouvoir générer automatiquement un formulaire d'édition d'un objet (par exemple).

    L'idée est d'obtenir un "framework" me permettant ensuite d'écrire :

    - Un système de QCM en ligne
    - Un site de vente en ligne
    - Une système de gestion de notes d'étudiants

    Mais je pense que cette approche orienté "Tags" est vraiment très souple et devrait être adaptable à quasiment n'importe quoi.

    Voila, comme je n'ai pas trouvé de "système de gestion de tags" déjà écrit en PHP je suis en train d'en écrire un, c'est quand même bizarre que ça n'existe pas déjà ce truc...
    • [^] # Re: Moi aussi

      Posté par  (site web personnel) . Évalué à 1.

      Pas mal :) mais c'est très généraliste, je me suis vraiment focalisé sur des notes pour mettre ses bookmarks, ses idées, etc. mais ça peut se généraliser aux photos, etc. et dans ce cas je préfère la pensée unix : une tache, un programme.

      C'est cool si il y a plein de logiciel. J'ai hate devoir tout ça tourner !

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.