Jean-Philippe Garcia Ballester a écrit 1111 commentaires

  • [^] # Re: Python vs Ruby

    Posté par  . En réponse au journal Choisir un framework web.... Évalué à 4.

    C'est un détail jusqu'au jour où tu cherches pendant longtemps pourquoi ça marche pas… Et ça ne m'est pas arrivé qu'à moi…
  • [^] # Re: Python vs Ruby

    Posté par  . En réponse au journal Choisir un framework web.... Évalué à 2.

    Au temps pour moi sur ce point, j'ai toujours pas réussi à intégrer ce truc.
  • [^] # Re: Python vs Ruby

    Posté par  . En réponse au journal Choisir un framework web.... Évalué à 2.

    Je n'ai pas dit que ce n'était pas possible, j'ai dit que c'était galère (ce que tu viens de me confirmer), et que c'était incohérent dans le sens ou si tout est objet, rajouter une méthode de classe ou rajouter une méthode à un objet, c'est finalement la même chose, mais ça s'écrit pas du tout pareil.
  • [^] # Re: Python vs Ruby

    Posté par  . En réponse au journal Choisir un framework web.... Évalué à 7.

    Un autre exemple pour s'amuser : une méthode dont le nom commence par __ est privé, sauf si le nom se termine aussi par __. C'est tellement cohérent et intuitif qu'on dirait une règle de grammaire du français.

    stripatublu% python
    Python 2.5.4 (r254:67916, Nov 19 2009, 22:14:20)
    [GCC 4.3.4] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> class Plop:
    ... def __plop(self):
    ... pass
    ... def __plop__(self):
    ... pass
    ...
    >>> plop = Plop()
    >>> plop.__plop()
    Traceback (most recent call last):
    File "", line 1, in
    AttributeError: Plop instance has no attribute '__plop'
    >>> plop.__plop__()
    >>>


    Les plus trolleurs auront remarqué le message d'erreur très explicite.
  • [^] # Re: Python vs Ruby

    Posté par  . En réponse au journal Choisir un framework web.... Évalué à 2.

    Si tout est objet, cela veut dire que chaque instruction s'execute dans le contexte d'un objet, et donc self doit être défini. Quand tu ouvres un interpréteur ruby, self et définit dès le départ (et est une instance de type ObjectSpace).

    Quand je crées une nouvelle classe, je ne fais qu'instancier un objet de type Class. Lorsque je la définis, je suis dans le constructeur de cet objet, et donc self est bien défini, et représente l'instance que je suis en train de définir.

    Je ne trouve pas ceci cohérent avec le principe « tout est objet » :

    stripatublu% python
    Python 2.5.4 (r254:67916, Nov 19 2009, 22:14:20)
    [GCC 4.3.4] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> class Plop:
    ... pass
    ...
    >>> Plop().__class__
    <class __main__.Plop at 0x7f82a55b36b0>
    >>> Plop.__class__
    Traceback (most recent call last):
    File "", line 1, in
    AttributeError: class Plop has no attribute '__class__'


    En ruby, une classe est objet, tu peux créer une classe en appelant le constructeur de Class, et dont le scope n'est pas global. Ça, c'est cohérent avec le principe « tout est objet ».
  • [^] # Re: Python vs Ruby

    Posté par  . En réponse au journal Choisir un framework web.... Évalué à 2.

    À appeler des méthodes qui s'executent sur une classe (pour créer des méthodes par exemple).

    Ensuite, à partir du moment où tu commences à définir ta classe, elle existe, tout comme le fait qu'un objet existe avant que le constructeur soit terminé. Parce que étant donné qu'on peut rajouter des méthodes à la volée, même si c'est plus galère et/ou moche en Python qu'en Ruby, ta classe n'est jamais complètement définie (au sens ou les méthodes des objets de la classe ne sont jamais figés).

    Par exemple, en Ruby, si tu fais
    def monobjet.manouvellemethode

    end

    tu crées une méthode qui n'existera que sur l'objet monobjet, et pas sur tous les objets de la même classe. Pour créer une méthode de classe, tu utilises exactement le même concept : tu crées une méthode sur la classe que tu es en train de définir.

    De même, créer une classe anonyme se fait simplement en instanciant un objet de type class. Quoi de plus logique ?
  • [^] # Re: Python vs Ruby

    Posté par  . En réponse au journal Choisir un framework web.... Évalué à 3.

    Un exemple pour étayer ton argument ?

    Ce que j'aime bien dans Ruby que je n'ai pas retrouvé en Python, c'est la cohérence. Il y a très peu de principes à savoir en Ruby, et lorsqu'on les a saisis, on devine facilement comment va se comporter le langage dans un cas inconnu.

    Un exemple pour étayer mon propos : self n'est pas défini lors de la définition de la classe en Python. On a aucun moyen d'accéder à l'objet qu'on est en train de définir.
  • [^] # Re: D'un autre cote..

    Posté par  . En réponse au journal Rediriger une sortie audio vers un serveur de streaming.. Évalué à 5.

    La différence c'est qu'on a pas 15 000 surcouche pour écouter du son avec MPlayer.

    C'est assez amusant de voir que lorsqu'on a un outil qui remplit une tâche (alsa pour les drivers, PA pour le mixeur / réseau / choix d'une carte son, jackd pour le routage entres applications) les gens disent qu'on a trop de couches, et quand on a un outil qui fait tout les gens disent que c'est contraire au principe KISS.
  • [^] # Re: Oula

    Posté par  . En réponse au journal Déboires avec OpenOffice. Évalué à 6.

    Tu négliges le contexte : dans son cas, il ne peut pas changer l'administration en un temps raisonnable (la solution "intelligente"), donc la seule solution "professionnelle" (c'est-à-dire qui permet de résoudre le problème dans les délais) est d'utiliser le seul logiciel qui peut lire le document (à supposer que son problème ne soit pas un problème de polices comme évoqué ailleurs).

    Evidemment que LaTeX et OOo sont des solutions professionnelles, si tant est que ce mot ait un sens, quand tu maitrises la chaîne de bout en bout.
  • [^] # Re: super!

    Posté par  . En réponse au journal Des nouvelles du freeze de Debian Squeeze. Évalué à 1.

    Pour ce genre de problème tu as http://snapshot.debian.net/
  • [^] # Re: Siteduzero

    Posté par  . En réponse à la dépêche Microsoft dans le groupe de travail du W3C sur SVG. Évalué à 6.

    Vous seriez les premiers à vous régaler un un service interne de microsoft utilisait sans autorisation un produit d'un autre service sans payer la licence (qui je crois bien n'exempte aucunement MS elle même), et à réclamer justice pour les faire chier

    Le code appartient à l'entreprise, pas à un service, donc à priori ce que tu dis ne tient pas. D'autre part, ce n'est pas parce que Microsoft passe un contrat avec un utilisateur qu'elle doit passer le même contrat avec un autre utilisateur (comprendre : il peut y avoir plusieurs licences pour le même code).
  • [^] # Re: Et après ?

    Posté par  . En réponse à la dépêche Fabrice Bellard bat le record des décimales de Pi. Évalué à 2.

    Non, les deux limites sont bien égales, c'est juste que l'opération de soustraction n'est pas définie. Voir {http://fr.wikipedia.org/wiki/Droite_réelle_achevée}
  • [^] # Re: arretes moi si je me trompes

    Posté par  . En réponse au journal Redimensionner un disque qcow2 avec les partitions internes en quelques commandes. Évalué à 3.

    Si tu ouvres un fichier et que tu seek au-dela de sa taille, sa taille est agrandie.
  • [^] # Re: P2V

    Posté par  . En réponse au journal Redimensionner un disque qcow2 avec les partitions internes en quelques commandes. Évalué à 6.

    Pas sûr que ça marche mais

    qemu-img convert -f raw /dev/sda -O qcow2 vm-img.qcow2

    permettrait peut-être de n'utiliser comme place que celle effective des données, alors qu'un dd va créer un fichier de la taille du disque dur, quelle que soit l'utilisation du disque.
  • [^] # Re: Ecran plus petit

    Posté par  . En réponse au journal Resolution independance. Évalué à 3.

    Je crois que la formule est S=d^2/(r+1/r), et on trouve effectivement les résultats que tu donnes.
  • [^] # Re: finalement je m'en sors a peu près mais ....

    Posté par  . En réponse au journal Le son sous Linux : du pure n'importe quoi. Évalué à 2.

    Mais rien n'est incompatible avec rien, c'est justement pour ça que les diagrammes du système son sous Linux est hyper complexe et cyclique...
  • [^] # Re: finalement je m'en sors a peu près mais ....

    Posté par  . En réponse au journal Le son sous Linux : du pure n'importe quoi. Évalué à 3.

    ertes Jack et PulseAudio n'ont pas les mêmes objectifs, mais sont-ils réellement incompatibles ?

    Non, PulseAudio a une sortie Jack. Je l'utilise chez moi, ça marche bien.
  • [^] # Re: Et les MP3 légaux ?

    Posté par  . En réponse au journal Comment protéger ses serveurs. Évalué à 2.

    Et un abus de langage, tu sais ce que ça veut dire ou pas ?
  • [^] # Re: Parefeu

    Posté par  . En réponse à la dépêche FreetuxTV 0.4.0 disponible. Évalué à 2.

    Si tu as une freebox, tu n'as pas de bol, les ports sont dynamiques !

    Tu peux utiliser http://github.com/maru-sama/rtsp-linux-v2.6
  • [^] # Re: Qui se sert encore des clients lourds ?

    Posté par  . En réponse à la dépêche Thunderbird 3.0 est sorti. Évalué à 3.

    Le même que l'intérêt d'un webmail par rapport à client mail normal : il suffit que le serveur smtp soit joignable par le serveur hébergeant le roundcube pour pouvoir envoyer des mails de n'importe où sans rien configurer.
  • [^] # Re: Qui se sert encore des clients lourds ?

    Posté par  . En réponse à la dépêche Thunderbird 3.0 est sorti. Évalué à 3.

    Par exemple, le smtp de free n'est accessible que depuis une connexion free si je ne me trompe pas.

    Autre exemple, dans certaines entreprises seul le smtp du réseau interne est accessible.
  • [^] # Re: Paquet

    Posté par  . En réponse au journal Chrome disponible sous linux. Évalué à 4.

    Oui, t'es gentil, le thread et le message auquel tu reponds il parle de packaging et comme c'est de Zenitram, de son experience avec son propre projet, donc ta reponse est toujours a cote de la plaque quand tu lui reponds logiciel proprio.

    À mon humble avis qui vaut ce qu'il vaut, il suffit de deux choses pour que le développeur n'est rien à faire pour la distribution d'un programme sous Linux : que le logiciel soit libre, et qu'il soit populaire.

    Comme Google Chrome est déjà populaire, les problèmes rencontrés pour la distribution sont uniquement liés à sa non-liberté, d'où mon commentaire.

    Oh oh oh, t'es un petit rigolo toi, on me l'avait pas encore fait celle la, pourtant ca fait un moment que je tapes sans les accents. Si un seul mot te fait partir dans des delires pareils, faudrait penser a arreter la coke quand meme.

    Roh, pourquoi tu m'agresses, alors que j'essaie (maladroitement) de faire un peu d'humour ? Viens donc me faire un gros câlin !
  • [^] # Re: Paquet

    Posté par  . En réponse au journal Chrome disponible sous linux. Évalué à 2.

    Quelques déductions des réponses que tu donnes (ton avis sur ces déductions m'intéresse):

    1/ Tous les utilisateurs Windows sont contents du packaging, un certain nombre des utilisateurs Linux ne le sont pas
    2/ Vu que tu utilises deux méthodes de distributions différentes pour Linux et Windows (dynamique et statique), on ne peut pas vraiment savoir si l'insatisfaction des utilisateurs est inhérente à Linux : est-ce que les utilisateurs qui veulent des paquets pour leur distrib seraient satisfaits d'un binaire statique ? Si oui, il n'y a pas de surcharge de travail sur Linux par rapport à Windows. Si non, cela veut dire que l'utilisateur exige une meilleure qualité que l'utilisateur Windows (gestion automatique des mises-à-jour, partage de code, intégration dans ses outils de gestion des programmes...).
    3/ Il n'est pas toujours facile de trouver des packageurs quand on a pas une base d'utilisateurs conséquente, même si parmi les utilisateurs un certain nombre sait compiler sans problèmes, et a donc la connaissance technique pour faire un paquet.
    4/ La facilité apparente de Windows implique une surcharge de travail (que tu n'as pas quantifiée) : tu dois suivre toi-même les mises à jour des bibliothèques que tu utilises, et recompiler/sortir une nouvelle version lorsque une maj de sécu de la bibliothèque sort.
  • [^] # Re: Paquet

    Posté par  . En réponse au journal Chrome disponible sous linux. Évalué à 5.

    Suite à ton poste, j'ai un certain nombre d'autres questions, mon but étant d'essayer d'évaluer dans ton cas particulier les charges de travail spécifique à la distribution d'un logiciel, sous windows et linux.

    1/ As-tu des plaintes des utilisateurs Windows ? Sur quoi portent-elles ?
    2/ As-tu déja répondu à un utilisateur de contacter les développeur de sa distrib, et si oui, quelle à été la réaction de l'utilisateur et de la distrib ?
    3/ Quelle est ta méthode de distribution des bibliothèques que tu utilises ? Si c'est un binaire statique, est-ce que surveiller les nouvelles versions des libs, gérer les problèmes de sécurité n'est pas une lourde charge ? Si tu utilises du linkage dynamique, n'est-ce pas compliqué de gérer les installations des libs, les différentes versions, etc ?
    4/ Si tu distribues un binaire statique pour Windows, distribues-tu aussi un binaire statique pour Linux ? Si oui, quel est l'avis des utilisateurs sur ce binaire ?
    5/ Quel est à peu près le profil de tes utilisateurs ? Power-user, débutant, les deux ?
  • [^] # Re: Paquet

    Posté par  . En réponse au journal Chrome disponible sous linux. Évalué à 2.

    Vraies questions, parce que je suis curieux :
    1/ Qu'est-ce que tu appelles critique ? Je veux dire, quel était le ton de l'utilisateur ?
    2/ MediaInfo n'est pas dans l'ubuntu officiel ?
    3/ Tu as demandé sur les ml/forums si un développeur ubuntu ne pouvait pas maintenir un paquet pour MediaInfo ?