laurentm a écrit 32 commentaires

  • [^] # Re: en libre ?

    Posté par  . En réponse au message Appli mobile de partage de géolocalisation. Évalué à 1.

    Très bonne remarque. Oui, je suis à la recherche d'une application libre.

    Merci pour ta proposition, mais malheureusement ça ne correspond pas trop à ce que je cherche. L'envoi de la position se fait manuellement (c'est du one-shot), pour envoyer une nouvelle position il faut revenir dans l'appli et partager à nouveau.

  • [^] # Re: xmpp vs ...

    Posté par  . En réponse à la dépêche Lettre d’information XMPP, 8 novembre 2019, sprints, IoT et le début de Twitter. Évalué à 4.

    Merci à vous tous pour vos réponses.
    C'est une sacrée bonne nouvelle si Conversations aura les appels audio/vidéo début 2020. :)

  • # xmpp vs ...

    Posté par  . En réponse à la dépêche Lettre d’information XMPP, 8 novembre 2019, sprints, IoT et le début de Twitter. Évalué à 5.

    Dépêche très intéressante. Ça fait plaisir de voir que l’écosystème xmpp continue de bouger.
    Et niveau timing c'est parfait, je commence tout juste mes recherches pour trouver un remplaçant à Google Hangout.
    Voici mes critères de recherche :
    - si serveur nécessaire, serveur sous licence libre et doit fonctionner sur un raspberrypi
    - orienté discussion 1-1 (je n'ai pas besoin des salons)
    - End-to-end encryption
    - appels video/audio
    - clients android et desktop (linux) sous licence libre

    Je m'intéresse forcement à xmpp et l'article de Ben Kwiecien sur la comparaison ejabberd/Prosody va me faire gagner beaucoup de temps sur la partie serveur (je vais m'installer un ejabberd dans les prochains jours). Côté clients, conversations semble être le projet le plus abouti sur android, Dino est à tester sur desktop (surtout l'intégration à Gnome 3). Par contre, aucun de ces clients ne gèrent les appels audio/video. Et si je ne me trompe pas, on peut même dire qu'aucun client android ne propose cette fonctionnalité.
    Je commence tout juste mes recherches et je ne suis plus trop au courant de l'actualité xmpp … je suis peut-être passé à côté de la killer app sur android.

    Je me renseigne également sur matrix, avec synapse comme serveur et riot pour le client mobile et desktop. Sur le papier, ça répond à tous mes besoins. Sauf que :
    - le serveur synapse a tendance à consommer beaucoup de RAM, et ça risque de faire très juste sur un raspberry (sachant qu'il ne sera pas la seule appli à se partager les ressources)
    - pour le client android riot, il faut utiliser celui présent sur Play Store Google, ce qui me plait moyen car il utilise un service Google pour fonctionner (les explications ici https://f-droid.org/packages/im.vector.alpha/, cherchez "battery")

    Et dernier point, au fil de mes recherches, je suis tomber sur https://tox.chat/. C'est de l'Instant Messaging, mais sans serveur, en peer-to-peer. À tester également. Si quelqu'un connait je suis preneur des retours d'expérience.

  • [^] # Re: Quoi apprendre/choisir

    Posté par  . En réponse au journal La durée de vie de Python 2.7 encore repoussée. Évalué à 7.

    On peut utiliser from __future__ import ... pour avoir du code compatible entre les version 2.7 et 3.x de Python. Par exemple, le code suivant fonctionnera aussi bien en Python 2.7 qu'en Python 3.x :

    from __future__ import print_function
    print("Hello Word!")

    C'est assez pratique pour utiliser les nouvelles fonctionnalités de Python 3.x tout en gardant la possibilité d'utiliser des libs restées en 2.x. Et en bonus, notre code est utilisable par beaucoup de monde.

  • # My 2cts...

    Posté par  . En réponse au journal De la question existentielle autour des solutions de partage de docs de type Alfresco/Sharepoint/.... Évalué à 6.

    Pour trouver une solution unique avec LibreOffice et MSOffice, bon courage :)
    Le problème vient d'un manque d'intégration entre tous les outils présents. Les produits Microsoft fonctionnent bien quand tu es en 100% Microsoft, dès que tu veux ajouter autre chose (LibreOffice, Alfresco), ça commence à merder. LibreOffice, quant à lui, propose beaucoup de choses pour dialoguer avec l'extérieur (webdav, ftp, ssh, cmis, windows share) mais n'est pas facile à utiliser : il faut utiliser sa boite de dialogue, exit donc l'explorateur de Windows.

    MSOffice peut utiliser l'émulation SharePoint d'Alfresco. Dans ce cas d'utilisation, Alfresco se fait passer pour un serveur SharePoint et tu retrouves dans MSOffice toutes les options de collaborations liées à SharePoint (me demande pas lesquelles, je n'y ai jamais trop touché). La principale limitation de ce mode vient du fait que tu dois utiliser les sites Share (la "nouvelle" interface d'Alfresco qui remplace la première nommée Explorer).

    D'un autre côté, tu as LibreOffice qui propose du CMIS, mais comme tu l'as dit, ça ne fonctionne pas directement depuis l'explorateur de Windows, il faut passer par la fenêtre d'ouverture de fichier de LibreOffice. Pas génial pour une utilisation quotidienne.

    Alfresco propose également un partage webdav, tu peux le parcourir directement avec l'explorateur de Windows. Tu as le choix entre les favoris réseaux, ou le monter comme un lecteur classique (net use blabla). Le premier est très limité en fonctionnalité, et j'ai peur que le second fonctionne à l'identique du partage CIFS. Mais peut-être que le comportement de MSOffice ou LibreOffice sera différent voyant que le doc est ouvert depuis un partage webdav (c'est une pure spéculation, à tester donc).
    Sans parler du fait que webdav et windows, c'est un grande histoire d'amour :) Le comportement du webdav change en fonction de la version de windows, du service pack, de la présence ou non de MSOffice, du coefficient de la marée et de l'age du capitaine (http://www.greenbytes.de/tech/webdav/webdav-redirector-list.html). Bref, ça peut vite devenir une merde sans nom dans un environnement hétérogène.

    Il existe également un l'outil Desktop Sync for Alfresco (http://addons.alfresco.com/addons/desktop-sync-alfresco), je ne l'ai jamais utilisé et n'ai qu'une vague idée sur son utilisation, mais peut-être qu'il rentre dans un de tes cas d'utilisation.
    Dans le même genre, tu as cmissync : http://cmissync.com/alfresco/

    À noter également qu'Alfresco/Share permet l'édition en ligne des documents. Cela revient à ouvrir en lecture/écriture avec MS/LibreOffice directement depuis l'interface d'Alfresco. Techniquement, ça passe par du webdav ou l'émulation Sharepoint. Tu as aussi la possibilité d'ouvrir un doc directement Google Doc.
    Bref, c'est une solution si tu veux te passer de l'explorateur de Windows, mais encore une fois, il y a plein de limitations qui ne sautent pas aux yeux tout de suite.

    Là, on a parlé uniquement des moyens d'accéder aux documents stockés dans Alfresco depuis MS/LibreOffice. C'était un peu (beaucoup) axé sur Alfresco, mais tu risques de retomber sur les mêmes problématiques avec d'autres solutions de GED. Pour les workflows et les forums, c'est du 100% Alfresco. Tes problèmes devraient pouvoir être réglés avec de la configuration ou un peu de code.

  • [^] # Re: Pas facile

    Posté par  . En réponse au message traffic shaping. Évalué à 0.

    Ça risque d'être difficile, aux dernière nouvelle, Skype cherche plutôt à se cacher pour éviter d'être bloquer en entreprise, du coup, on ne le détecte pas facilement. Et comme c'est du P2P, ce n'est pas facile de cibler les IP.

    Oui, c'est bien ce qu'il me semblait. Merci de confirmer…

    Il y a les blacklist de squidguard que tu peux utiliser http://www.squidguard.org/blacklists.html

    Merci pour le lien :)

  • [^] # Re: Analyse de l'URL / Extension du fichier

    Posté par  . En réponse au message traffic shaping. Évalué à 0.

    Olivier, merci pour ta réponse. Utiliser les extensions serait une idée intéressante, mais j'ai peur que le généralement apporte trop de faux positifs. Je vais voir sur les principaux site de streaming et de téléchargement ce que ça peut donner. À creuser donc :)

  • [^] # Re: La fonctionnalité qui tue

    Posté par  . En réponse au journal GitPrep, un clone libre de GitHub. Évalué à 4.

    Effectivement, il existe bien une page à l'adresse /public/. Cette page liste les dépôts publiques et donne une url pour faire un git clone sans nécessiter une authentification, mais c'est tout (rien concernant le README ni le nombre de commit ou la taille du dépôt. Je suis en version 5.4, ça a peut-être évolué depuis la 4.1.

    Par contre, ce que je trouve dommage, c'est que si tu ne connais pas l'adresse /public/ il n'y a aucun moyen d'y accéder : quand on va à la racine de gitlab, on est directement redirigé vers la page d'authentification et il n'y a aucun lien vers /public/ (ou alors j'ai loupé un truc).

    La philosophie concernant les dépôts publiques est quand même différente entre github et gitlab, sur ce point il serait malhonnête de dire que gitlab est un clone de github.

  • [^] # Re: La fonctionnalité qui tue

    Posté par  . En réponse au journal GitPrep, un clone libre de GitHub. Évalué à 2.

    De ce que j'ai vu, un dépôt public dans Gitlab est différent d'un dépôt public de Github :

    • GitLab : toutes les personnes connectées peuvent avoir accès au dépôt
    • Githb : tout le monde à accès au dépôt
  • [^] # Re: Pourquoi les hipsters ?

    Posté par  . En réponse à la dépêche ElementaryOS Luna. Évalué à 4.

    Perso j'aimerais bien un truc comme ça dans vim (mais ça existe peut-être déjà).

    Oui, ça existe : https://github.com/kien/ctrlp.vim

    Et ce n'est pas le seul plugin pour vim du même genre, tu peux en trouver d'autres avec les mots clés "fuzzy search".

  • [^] # Re: au choix

    Posté par  . En réponse au message Portable + écran externe. Évalué à 0. Dernière modification le 11/06/13 à 18:09.

    Ça résume bien les choix possibles.

    Je pense que je vais commencer avec le choix 1 en achetant uniquement un grand écran, et je verrai ensuite si un c'est pratique à l'usage. Si ça ne l'est pas, je chercherai un nouveau clavier pour remplacer celui du portable (et donc on arrivera sur les choix 2 ou 3).

  • [^] # Re: ... + clavier usb

    Posté par  . En réponse au message Portable + écran externe. Évalué à 2.

    Excellent ! Je ne savais pas qu'il était possible d'émuler la roulette avec le trackpoint. Ça fonctionne nickel sur mon T420, je vais tester ça pendant plusieurs jours pour voir si j'arrive à m'y faire.

  • [^] # Re: ... + clavier usb

    Posté par  . En réponse au message Portable + écran externe. Évalué à 1.

    Il est dit ici que les utilisateurs consultés n'avaient aucun intérêt à conserver le touchpad.

    Comme quoi tous les gouts sont dans la nature. Le gros manque du trackpoint, de mon point de vue, c'est qu'il est impossible de simuler la roulette d'une souris, alors qu'avec le touchpad j'ai juste à faire glisser un doigt sur le bord à droite.

    Tu peux le trouver, mais il est cher.

    Effectivement il est un peu cher, et surtout il n'est pas azerty…

    Merci en tout cas pour ces infos.

  • # ... + clavier usb

    Posté par  . En réponse au message Portable + écran externe. Évalué à 1.

  • [^] # Re: Django : profitons de l'occasion ...

    Posté par  . En réponse à la dépêche Retour sur Django 1.5. Évalué à 1.

    HTML5 : tu peux utiliser des syntax du style Markdown ou reStructuredText

    J'avais envisagé la même chose mais pour la génération de rapport automatique, tu generes du Rst puis un petit coup de rSt2html

    En y réfléchissant un peu plus, utiliser c'est le markdown ou rst c'est pas forcement la meilleur solution pour générer du HTML. On est bien trop limité. Tu trouveras peut-être ton bonheur avec des trucs comme Haml ou Slim.

    Je ne sais pas où tu te trouves, mais ici meteofrance a prévu plusieurs jours de pluie :) Si c'est pareils pour toi, voici encore un peu de lecture.

    CrEv a écrit une série de journaux sur toutes les nouvelles techno pour faire du web. C'est très intéressant et tu découvriras plein d'autres outils.

    http://linuxfr.org/users/crev/journaux/ecrire-une-page-web-de-nos-jours
    http://log.winsos.net/2012/12/05/ecrire-une-page-web-de-nos-jours-suite-des-aventures.html
    http://linuxfr.org/users/crev/journaux/ecrire-une-page-web-de-nos-jours-troisieme-partie
    http://linuxfr.org/users/crev/journaux/web-log-today-est-juillet-ecrire-un-blog-de-nos-jours

  • [^] # Re: Django : profitons de l'occasion ...

    Posté par  . En réponse à la dépêche Retour sur Django 1.5. Évalué à 1.

    Salut Christophe,

    Beaucoup de questions … je vais essayer d'y répondre :)

    Pour faire du web maintenant, c'est HTML5+CSS+JS. Tu peux oublier tout le reste (flash, xul, activex, etc.). Par contre, tu n'est pas obligé de faire du HTML5/CSS/JS à la main si tu n'aimes pas ça. Il existe des alternatives qui permettent d'améliorer les choses (syntax plus simple, plus haut niveau, …).

    • HTML5 : tu peux utiliser des syntax du style Markdown ou reStructuredText (une petite liste)
    • CSS : il existe des préprocesseurs CSS comme less, je te laisse chercher les autres
    • JS : tu as principalement CoffeeScript (j'en connais pas d'autre)

    Pour le look sympa, tu peux jeter un oeil du côté des framework CSS. Perso, je suis fan de Bootstrap. Ça permet d'avoir un style pas trop mal dès le début du projet, et si tu n'aimes pas le style par défaut tu peux lui ajouter un thême.

    Pour les intéractions côté client, c'est du JS uniquement (via CoffeeScript tu si préfères). C'est un peu la loose de tout gérer à partir de rien. Et là aussi, il existe des framework qui nous viennent en aide : jquery, EmberJS, Angular, Backbone, …

    Et si à ce stage vous n'avez pas encore rempli votre grille de Bullshit Bingo, je vais vous arranger ça… :)

    Dernièrement, j'ai réalisé une petite appli web en mode "Single-page application" pour gérer une liste de contacts. Elle a été réalisé avec les outils suivants : Ember.js, Django, Bootstrap, Tastypie et ember-data-tastypie-adapter.
    Le code est sur github si tu veux y jeter un oeil : https://github.com/lmeunier/django-ember-contactmvc

    J'espère que ça répond à tes questions…

  • [^] # Re: Le buzz autour de Django et les "nouveautés" toutes relatives

    Posté par  . En réponse à la dépêche Retour sur Django 1.5. Évalué à 4. Dernière modification le 07/05/13 à 10:16.

    • il ne gère pas des transactions "tout en un" comme le fait SQLAlchemy par exemple

    Si je comprends bien de quoi tu parles, c'est tout à fait possible avec Django, mais ce n'est pas le comportement par défaut (ce que je trouve dommage…).

    Par défaut, Django fait de l'auto-commit pour chaque query, c'est pas terrible dans certain cas (comme celui de ton exemple). Mais il est toutefois est possible de coupler une transaction SQL à une requête HTTP. Dans ce cas, la transaction commence avant le traitement de la View et est commitée si tout se passe bien, si une exception est levée pendant le traitement, la transaction est annulée (rollback).

    Django permet également de gérer finement les transactions en indiquant explicitement quand elle commence, et si on fait un commit ou un rollback.

    Tous les détails sont ici : https://docs.djangoproject.com/en/1.5/topics/db/transactions/

    Pour les cas tordus comme une transaction qui dure plusieurs requêtes HTTP (dans le cas d'un wizard qui est sur plusieurs "écrans" par exemple), je ne sais pas si c'est possible avec Django, je n'en ai jamais eu besoin.

    Pour les autres points, je suis d'accord avec toi.

  • [^] # Re: Le buzz autour de Django et les "nouveautés" toutes relatives

    Posté par  . En réponse à la dépêche Retour sur Django 1.5. Évalué à 3.

    Un autre sujet qui me gène toujours avec Django, c'est la "non-réutilisabilité" de l'ORM hors web. Comme je n'ai pas beaucoup développé en python ces dernières années, je me demande comment font les dév. utilisant Django pour toutes les tâches de backoffice. Est-ce que vous codez du SQL en dur si vous en avez besoin ? Est-ce que vous utilisez d'autres technos "ORM" ? Est-ce que tout tourne sur un serveur web - quel genre d'infra vous utilisez ?

    Peux-tu expliquer ce que tu entends par la non-réutilisabilité de l'ORM hors web ? Je ne vois pas trop ce qui pourrait empêcher l'utilisation de l'ORM Django en dehors d'un environnement web … même si Django lui-même est très très orienté web.

    Personnellement, pour les tâches CRON, j'utilise un script Python qui ressemble à ceci :

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    import os
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myapp.settings")
    
    from myapp.models import Mymodel
    
    for obj in Mymodel.objects.all():
        print obj
    
    

    Ce script fonctionne très bien hors web, j'ai bien accès à l'ORM de Django. Le seul truc un peu sioux c'est l'ajout de la ligne os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myapp.settings") avant l'import du modèle.

    Mais ce n'est peut-être pas ce genre de chose que tu appelles des tâches de backoffice…

  • [^] # Re: Le buzz autour de Django et les "nouveautés" toutes relatives

    Posté par  . En réponse à la dépêche Retour sur Django 1.5. Évalué à 1.

    C'est exactement le principe que j'utilise pour mes nouveaux projets réalisés avec Django. J'ai au final un fichier .tar.gz installable facilement avec pip. Ça simplifie pas mal les déploiements.

    Tout est décrit en détail ici : http://www.deltalima.net/blog/django-packager-un-projet/

  • # Commenter l'intention

    Posté par  . En réponse au journal To comment or not to comment. That is the question.. Évalué à 6.

    Je suis 100% d'accord avec toi sur le fait de commenter l'intention. J'ai du reprendre en TMA du code qui était passé entre de nombreuses mains, et il était impossible de déterminer si certaines parties du code était buggées ou non : à la lecture, on sait rapidement ce que le code fait, mais on ne sait pas si c'était réellement ce qui était souhaité. Et bien sûr, personne n'avait la réponse…

    On n'a pas tous la même façon de penser, quelque chose qui peut sembler trivial à quelqu'un ne le sera pas forcement pour une autre personne. S'il vous plait, pensez aux personnes qui vont passer derrière vous (hum hum), laissez leur quelques indices … j'en ai marre de d'essayer de deviner le but d'une fonction (et en plus ma boule de cristal ne fonctionne plus).

  • [^] # Re: Commentaires

    Posté par  . En réponse au journal Web Log Today est juillet - écrire un blog de nos jours. Évalué à 2.

    J'avoue que les générateurs statiques m'intéresse et m'attire particulièrement. Mais une seule chose freine encore mon envie de sauter le pas : les commentaires…
    Je n'ai pas envie de me priver de commentaires et les sites statiques en sont clairement dépourvus.

    Pour les commentaires, David Larlet utilise une solution à base de mailing list. C'est expérimental et je ne sais pas trop si ça fonctionne bien (comprendre : est-ce qu'il y aurait plus de commentaires avec un système classique ?). En tout cas, ça sort de l'ordinaire et c'est une idée originale.

  • [^] # Re: Et en Python...

    Posté par  . En réponse au journal Web Log Today est juillet - écrire un blog de nos jours. Évalué à 3.

    Il existe énormément de générateurs de site web static, que ce soit en Python, ruby ou [votre langage préféré]. Ils font tous plus ou moins la même chose, certains sont orientés blog, d'autres sont fait pour la doc, mais au final aucun ne convient à 100% (en tout cas pour moi). J'en avais essayé une bonne dizaine avant de me rendre compte que trouver LA solution qui me convienne c'était mission impossible…

    Perso, j'utilise Flask avec deux extensions (Frozen-Flask et Flask-FlatPages), c'est très très fortement inspiré d'un article de Nicolas Perriault. Du coup, aucune contrainte, je choisis mon langage de markup, la structure du site, et tout et tout. C'est-y pas merveilleux :)

  • # Flask

    Posté par  . En réponse à la dépêche De tout, de rien, des bookmarks, du bla‐bla #44. Évalué à 4.

    Pour avoir utiliser Flask sur quelques petits projets, je trouve que c'est un framework formidable. Le côté micro-framework est très plaisant. En allant piocher dans les nombreuses extensions, on peut facilement se construire son framework à la carte tout en gardant une cohérence. La doc est très bien faite, la mailing-liste et le projet sont actifs. Bref, je le conseille vivement :)
    À noter que l'auteur de Flask est Armin Ronacher, c'est également à lui que l'on doit Jinja2 et Werkzeug.

    Si vous avez un peu de temps libre pendant ce long week-end et que vous êtes intéressé par le développement web, je vous recommande de dérouler le tutoriel, c'est une très bonne introduction à ce micro-framework.

  • # Et voilà, c'est terminé...

    Posté par  . En réponse au journal Jouer avec la sécurité web. Évalué à 1.

    Merci Bruno d'en avoir parlé ici, ça aurait été dommage de passer à côté de ça.

    J'ai réussi à aller jusqu'au dernier niveau, mais impossible de le passer … je n'ai absolument aucune piste pour le résoudre, même pas la moindre petite idée ! Vivement que les solutions soient en ligne.

    En tout cas, c'était sympa, ça permet de se rendre compte de ce qu'il est possible de faire avec une injection SQL ou du XSS. Même s'ils se sont donnés du mal pour donner un contexte plus ou moins réaliste à chaque niveau, ça aurait été sympa de plancher sur du vrai code contenant des failles exploitables (et exploitées).

    Et en bonus j'ai fait mon premier padding SHA1, je ne savais même pas que c'était possible :)

  • # Merci à tous

    Posté par  . En réponse au message GUI pour changer la timezone d'un utilisateur. Évalué à 1.

    Merci à tous pour vos réponses.
    Je suis parti sur une solution à base de zenity, fortement inspiré du code de Tanguy. Et ça does le job :)