Arthur Accroc a écrit 2084 commentaires

  • [^] # Re: cups-lpd

    Posté par  . En réponse au message Problème LPD sous Fedora Core 4. Évalué à 2.

    j'ai essayé et ça ne marche toujours pas.

    Regarde peut-être avec chkconfig --list cups-lpd et chkconfig --list xinetd (dans le cas où le premier ne rend qu'un seul état sans numéro de runlevel, typique d'un service lancé par xinetd) si les services qu'il faut sont activés.

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • # Pourquoi faire simple...

    Posté par  . En réponse au message script perl de récupération de fichiers. Évalué à 2.

    4 serveurs, 4 scripts (en comptant les commandes pour FTP), 3 langages !
    Il faudrait en ajouter encore, pour être sûr que ça cafouille...

    Sinon,

    - Au niveau des serveurs :
    Le serveur Windows et le serveur du SGBD sont des données de base.
    À partir de là, on peut préférer faire le boulot sur le serveur Windows, sur le serveur de SGBD ou sur une machine dédiée qui se connecte aux deux. Pas de raison d'en ajouter plus.

    - Au niveau des opérations :
    Il y a la récupération des fichiers, leur traitement pour obtenir le code SQL à injecter dans la base, et son injection dans la base.

    - Au niveau de l'accès aux fichiers :
    Si l'on travaille à partir du serveur Windows (après tout, Perl comme PHP et peut-être même expect existent sous Windows), l'accès est direct; mais il faut par contre disposer d'un module d'accès à la base.
    Si l'on travaille à partir d'une autre machine, il faut alors accéder aux fichiers à distance; le plus simple pour ça est d'exporter le répertoire depuis Windows (c'est déjà dedans, alors pourquoi ajouter un serveur FTP ou autre) et d'y accéder directement depuis le script de traitement avec smbmount (et smbumount en fin de script).

    - Au niveau des traitements :
    expect est une commande basée sur le langage Tcl (note : il existe l'équivalent en module pour Perl), permettant de faire des scripts interagissant avec des commandes qui attendent une entrée interactive. On n'est pas dans ce cas (l'injection de SQL dans une base peut se faire directement depuis Perl, PHP ou d'autres langages avec le module approprié, sans utiliser la commande interactive) et les expressions régulières de Perl suffisent amplement à analyser un format CSV. Donc pas de raison d'utiliser expect.
    Pas besoin non plus de fusionner les fichiers, autant les ouvrir directement depuis le script qui effectue le traitement (par exemple en bouclant sur un file globbing (en Perl while (</mnt/smb/*.log>) { open FILE, $_; ... close FILE}).

    - Au niveau de l'injection dans la base : comme je l'ai dit, elle peut se faire directement depuis le script avec le module approprié.

    Enfin bon, un seul script en Perl peut faire tout le boulot (sinon, ce serait triste pour Perl...). Donc deux ou trois serveurs, un script et un langage suffisent.

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • # Le problème...

    Posté par  . En réponse au message scp lit .bashrc...?. Évalué à 3.

    Le problème, à mon avis, c'est
    echo "DISPLAY=$ATIP:0"
    scp attend sur la sortie standard les infos de la commande scp distante, et il n'aime pas quand il y a un affichage imprévu...
    J'ai eu le problème moi-même sur une machine qui avait un mot du jour (/etc/motd)...

    Le if de Bastien Mourgues doit t'éviter cet affichage dans la foulée.
    Sinon, on peut aussi tester sur le prompt, qui n'est normalement pas défini dans le cas d'un shell non interactif (c'est-à-dire sauf si tu l'as fait toi-même sans faire le test avant dans ton .bashrc ou autre).
    [ -n "$PS1" ] && echo ...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Re: coucou

    Posté par  . En réponse au message J'ai perdu des icônes du menu K, Help please. Évalué à 4.

    donc fait la sauvegarde necessaire.

    À ce moment-là, autant faire directement :
    mkdir sauvegarde_kde
    mv .kde* sauvegarde_kde/


    Reste à trier entre ce qu'il faut garder des nouveaux fichiers de configuration et de la sauvegarde...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • # cups-lpd

    Posté par  . En réponse au message Problème LPD sous Fedora Core 4. Évalué à 3.

    Il semble que CUPS soit le seul serveur installé avec cette distrib.

    Possible...

    Les clients de mon réseau étant configurés en LPD, je voudrais reconfigurer le serveur (qui vient d'être réinstallé sous Fedora Core 4) en LPD.

    cups-lpd devrait résoudre ton problème; c'est un frontend lpd pour CUPS.
    Je pense (je n'ai pas tout-à-fait la même distrib) qu'il est inclus dans le paquet de CUPS et qu'il est lancé par xinetd (qui doit donc être installé et activé aussi).

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Re: Vive le libre!

    Posté par  . En réponse à la dépêche Skype intégré dans Mandriva 2006. Évalué à 2.

    Eh oui, en l'occurence konqueror et gnumeric (contrairement a Firefox et OOo) sont des logiciels Linux a la base.

    D'ailleurs, ils sont moins lourds (enfin dommage qu'il n'existe pas une version de Konqueror qui ne lance pas tous les serveurs bouffe mémoire de KDE quand on veut justement éviter ce dernier pour ça...).

    Ca fait reflechir sur le fameux argument "gardons nos super logiciels Linux pour nous".

    Il y en a qui ont été portés sous Windows. The GIMP, par exemple.
    Bon, les windowsiens préfèrent Photoshop piraté...
    Sinon, PostgreSQL et MySQL (enfin au moins l'un des deux), Apache... existent en version Windows, mais ce n'est pas ce qui attire le lambda user...
    J'ai du mal à trouver dans mon utilisation des exemples de logiciels attirants pour l'utilisateur moyen : à part Firefox et de temps en temps OOo, les logiciels que j'utilise sont plutôt du genre mutt et xterm (le vrai)...
    Ah, les langages multiplateforme quand même (je parle bien sûr de Perl, Python... pas du super langage multiplateforme officiel non libre dont quelqu'un disait récemment, en gros, "ne compte pas trop dessus sur Linux/PPC" ( http://linuxfr.org/comments/665150.html#665150 )), qui n'attirent peut-être pas non plus l'utilisateur de base, mais ont toutefois un certain succès auprès des utilisateurs avancés.

    Ca fait reflechir sur le fameux argument "gardons nos super logiciels Linux pour nous".

    Par ailleurs, je n'ai pas dit ça non plus. En fait, je n'ai pas d'avis définitif sur la question.
    J'ai juste dit que je ne voyais pas en quoi il serait Mal que des logiciels propriétaires existent sous Linux (tant qu'on n'est pas obligé de les utiliser et qu'ils ne tournent pas en mode noyau !) s'il est Bien que des logiciels libres existent sous Windows. Les mêmes personnes sont capables de dire les deux...

    Il y a pas mal de developpeurs de logiciels libres qui sont contents d'etre sous Windows et qui s'en contre-foutent, de Linux.

    En effet. Mais ça ne peut m'amener quà le remarque qu'ils sont bien gentils de soutenir le commerce de Microsoft pour pas un rond...
    Quand Windows sera bien bien truffé de DRM, de TCPA et autres, ils commenceront peut-être à avoir un peu mal au cul quand même...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Petite rectification

    Posté par  . En réponse au message Répartir les fichiers dans des dossiers. Évalué à 2.

    Cela dit, tant que le nombre d'éléments manipulés est assez très faible...

    Non, je viens de me torcher un petit calcul de factorielle pour me rappeler les ordres de grandeur, et ça croît vraiment très très vite !
    Donc tu peux oublier cette solution-là...
    Notons que plusieurs permutations seraient équivalentes (ordre différent sur un même DVD, échange complet entre deux DVD...) mais que le tester serait aussi long que de tester directement la pertinence de la permutation et qu'on ne peut pas non plus marquer les permutations équivalentes à la permutation courante, faute de mémoire pour contenir un tableau assez grand...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Re: C'est pas trivial

    Posté par  . En réponse au message Répartir les fichiers dans des dossiers. Évalué à 2.

    sur une approche 'je remplis bêtement' puis

    Tu peux peut-être prendre un meilleur point de départ en utilisant une heuristique comme par exemple classer tes éléments dans l'ordre décroissant pour placer les plus gros en premier.

    En tout cas, bon courage.
    Je serais curieux de savoir ce que tu vas trouver comme solution intéressante à ton problème...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Ce n'est pas toujours si simple...

    Posté par  . En réponse à la dépêche Skype intégré dans Mandriva 2006. Évalué à 3.

    -- Les version windows des logiciels libres participent à faire connaitre le libre.
    -- Les version linux des logiciels proprio participent à créer une dépendance forte envers du pas libre..

    Tu as de la chance de vivre dans un monde en noir et blanc.

    Suppose (au hasard...) une université.
    Les enseignants décident, à l'occasion de la modification des programmes due à la dernière réforme (l'instabilité permanente instaurée par la succession rapide des réformes étant une bonne manière d'assurer la dégradation des diplômes), d'ajouter un peu de pratique sur AutoCAD, et pas autre chose, parce qu'AutoCAD est considéré comme la référence dans l'industrie.
    Conséquence : il faut des licences d'AutoCAD (ce n'est pas encore très choquant, vu que c'est le logiciel qu'on veut utiliser), mais aussi des licences de Windows et administrer sur les machines un Windows en plus du Linux qui sert pour les cours d'info.
    Je trouve pour ma part pénible d'avoir à administrer des Windows vu que c'est contradictoire en soi, et lamentable qu'on paye la taxe Microsoft avec l'argent de nos impôts alors qu'on n'a pas spécialement l'utilité de Windows lui-même.
    J'accueillerais donc avec joie la sortie d'une version Linux d'AutoCAD : même si je trouve bien dommage d'utiliser un logiciel propriétaire, ce serait déjà un gros progrès que Windows ne soit pas imposé avec.
    Cela dit, tu peux toujours penser que c'est bien de payer la taxe Microsoft avec de l'argent public pour que Linux ne soit pas sali par AutoCAD...

    En effet, si un jour l'éditeur de tel solution proprio archi répandue sous linux décide de passer essentiellement à windows

    Il est déjà arrivé que des éditeurs commencent à éditer une version Linux, puis arrêtent ensuite, par exemple un correcteur grammatical français.
    Cependant, dans les cas en question, il y avait peu de clients (payants) sous Linux.
    S'il y avait beaucoup de clients payants sous Linux, l'éditeur ne prendrait logiquement pas le risque de se couper d'une partie de son marché (et qu'un autre puisse en récupérer une part) juste pour servir l'intérêt de Microsoft.
    L'exception étant Microsoft (s'ils faisaient tout d'un coup une version Linux d'Office pour en vendre plus, ils pourraient très bien décider ensuite d'arrêter pour vendre plus de Windows) et les logiciels métiers en regards desquels le coût du système et même du matériel sont négligeables (et qui sont généralement livrés clés en main).
    Au delà, si tu utilises un logiciel propriétaire, tu es de toute totalement à la merci de l'éditeur qui peut toujours décider de l'abandonner complètement ou de fournir un produit totalement différent sous le même nom (les deux se sont vus) parce qu'il n'y a pas assez de clients, parce que la boîte a été gérée n'importe comment et coule, ou juste par connerie. Accepter la dépendance vis à vis d'un logiciel propriétaire, c'est être pieds et poings lié, bien au delà de la question Linux/Windows.
    La question revient donc à savoir si c'est bien ou pas que les gens qui n'ont pas conscience de cela ou qui n'ont pas le choix puissent être sous Linux.

    Ainsi, l'effort vers des solutions alternatives libres, ou en tout cas des protocoles, dans le cas de skype, est très important...

    En effet.
    Cela dit, je ne suis pas sûr que l'existence ou pas de Skype sous Linux soit vraiment déterminante sur l'existence de solutions libres. Je citerai Erwan en disant qu'il existe même des logiciels libres qui ne tournent que sous Windows.
    Et pas tellement non plus dans le succès de Skype, la grosse partie de son "coeur de cible" utilisant Windows...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • # C'est pas trivial

    Posté par  . En réponse au message Répartir les fichiers dans des dossiers. Évalué à 5.

    C'est un problème d'algorithmique non trivial.

    On peut trouver des articles dessus en faisant une recherche avec la chaîne bin packing.
    Par exemple, la page http://www.ams.org/featurecolumn/archive/bins1.html présente le problème de manière abordable pour le commun des mortels.
    http://www.loria.fr/~jcohen/enseignement/binpacking.pdf le présente en français de manière très complète, mais plus théorique...

    À la base, le problème est dit NP-complet, c'est-à-dire que la recherche de la meilleure solution parmi toutes les solutions possibles est exponentielle.
    La plupart des articles sur le problème s'attachent à trouver un algorithme rapide qui trouve de bonnes solutions (mais pas forcément les meilleures).

    Cela dit, tant que le nombre d'éléments manipulés est assez faible, on peut aussi envisager de tester toutes les solutions avec un algorithme bien bourrin du style : calculer toutes les permutations des éléments à classer (leur nombre est la factorielle du nombre d'éléments !) et pour chacune évaluer la qualité de la solution obtenue en rangeant les éléments dans des DVD dans l'ordre où ils sont.
    La fonction d'évaluation des solutions pourrait par exemple être le nombre de DVD utilisés par 4.7*1024 - la place restante sur le dernier en Mo.

    Le plus rapide pour toi serait évidemment de trouver un programme déjà tout fait. Cela dit, je suppose que tes fichiers correspondent aux pistes et sont classés en répertoires correspondants aux CD et que tu ne tiens pas à les mélanger. Je crains un peu que les logiciels existants (en tout cas ceux que j'ai vus) traitent le problème fichier par fichier...

    Bonne chance.

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Re: Vive le libre!

    Posté par  . En réponse à la dépêche Skype intégré dans Mandriva 2006. Évalué à 3.

    Encore une fois, OOo et Firefox sont avant tout des logiciels Windows, beaucoup de developpeurs sont sous Windows, alors arretez de penser que ce sont des logiciels Linux qui ont ete portes sous Windows !

    En effet, mais si j'avais mis konqueror ou gnumeric, ça aurait été moins pertinent : ça n'est pas trop utilisé sous Windows...

    Un logiciel libre n'est pas forcement un logiciel Linux, il y en a qui ne tournent que sous Windows.

    Oui, mais quel rapport avec la discussion en cours ?
    Que les gens ont bien raison de rester sous Windows parce que c'est là qu'il y a le plus de développeurs, et de continuer à payer leur dîme à Microsoft pour utiliser des logiciels libres et bien souvent gratuits ?

    À mon avis, les développeurs qui font des logiciels libres uniquement pour Windows, ils sont bien gentils de soutenir le commerce de Microsoft pour pas un rond...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • # Idées

    Posté par  . En réponse au message Configuration Postfix. Évalué à 2.

    + une fois l'authentification faite, il faudrait que les utilisateurs puissent envoyer des mails vers les autres domains virtuels et c'est tout. Pas question pour eux d'envoyer un mail vers free, gmail, laposte..etc

    Idée 1 :
    Tous tes domaines virtuels sont locaux à ce serveur ?
    Dans ce cas, tu peux désactiver au niveau de master.cf les lignes de la commande smtp (voire lmtp pour faire bonne mesure), c'est-à-dire :
    #smtp unix - - n - - smtp
    #relay unix - - n - - smtp
    #lmtp unix - - n - - lmtp

    mais surtout ne pas désactiver :
    smtp inet n - n - - smtpd
    Bon, le problème, c'est que les messages sont quand même acceptés et restent dans la file. Cela dit, tu peux toujours réduire le temps qu'ils y restent avec le paramètre maximal_queue_lifetime dans main.cf.

    Idée 2 :
    Mettre dans main.cf :
    mynetworks_style = host
    et ne pas mettre par ailleurs le paramètre mynetworks.
    Ainsi, ton serveur devrait accepter les mails vers tes domaines, mais refuser tous les autres avec le message relay access denied, à moins que tes utilisateurs puissent obtenir un shell sur le serveur ou que tu aies un webmail qui tourne dessus.
    mynetworks =
    résoud ce problème... mais apparemment uniquement si le mail est envoyé en passant par le démon smtpd, pas s'il est envoyé en local avec mail (qui doit utiliser la commande sendmail).

    Idée 3 :
    Essayer dans main.cf :
    default_transport =
    ou
    default_transport = none
    (Postfix gueule moins).
    Mais apparemment, le mail stagne dans la queue, comme la solution 1.

    Idée 4 :
    Mettre dans main.cf :
    smtpd_recipient_restrictions = permit_auth_destination, reject
    Ça devrait même rejeter les mails envoyé depuis le serveur, mais sur ma config, ça n'a pas trop l'air de marcher...

    Idée 5 :
    Mettre dans main.cf :
    relayhost = 127.0.0.2
    Les mails vers l'extérieur sont alors rejetés avec le message :
    Diagnostic-Code: X-Postfix; mail for 127.0.0.2 loops back to myself

    Idée 6 :
    Poster ta question (en anglais) sur la mail list de Postfix. Elle est suivie par un tas de gens compétents, y compris l'auteur.

    Tiens-nous au courant.

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Re: Hors sujet

    Posté par  . En réponse à la dépêche Skype intégré dans Mandriva 2006. Évalué à 3.

    Mandriva vends une distribution avec des logiciels propriétaires, mais en donne la version qui ne contient que des logiciels libres.
    RedHat vends une distribution qui ne contient pratiquement que des logiciels libres et le service qui va avec. Du coup, ils ne la donnent pas comme ça, mais donnent toutefois gratuitement les sources qui permettent de la recompiler et tolèrent même que d'autres distribuent une version déjà recompilée.

    Le modèle n'est pas le même, mais dans les deux cas, on peut finalement se procurer une distribution libre pour pas un rond.

    Dans ces conditions, je ne vois pas vraiment pas de quoi on peut se plaindre.
    Il y a (eu ?) bien d'autres distributions qui n'étaient pas aussi ouvertes et dont le modèle économique était plus contestable...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Re: Vive le libre!

    Posté par  . En réponse à la dépêche Skype intégré dans Mandriva 2006. Évalué à 4.

    Firefox et OOo ont enormement participé à populariser le libre aupres du grand public, chose qui n'aurait pas été possible sans des versions windows. Et personnellement, je pense que ceci est benefique dans la mesure où ça fait decouvrir le libre à bien des personnes qui n'en auraient jamais entendu parler.

    En effet. Mais d'un autre côté, certaines personnes restent sous Windows parce qu'elles sont attachées à certains logiciels propriétaires qui n'existent que sous Windows. L'arrivée de ces logiciels sous Linux pourrait leur faire reconsidérer l'éventualité de passer sous Linux.

    En quoi est-ce formidable que des gens utilisent des logiciels libres sous un système propriétaire, mais serait-ce catastrophique qu'ils utilisent des logiciels propriétaires sous un système libre ?

    Qui plus est, si quelqu'un utilise un logiciel, c'est parce qu'il l'a choisi. S'il utilise Windows, c'est souvent parce que c'est le seul système sous lequel tourne son logiciel. Il n'a pas eu le choix. Le fait que la majorité des logiciels propriétaires ne supportent que Windows assoit le monopole de Microsoft et garantit ses rentes pour un produit dont peut-être pas grand monde n'a réellement plus envie que du carburant qu'il met dans sa voiture.

    Il faut aussi considérer tous les aspects du problème. Supposons que tous les logiciels propriétaires existent sous Linux. Son utilisation serait alors certainement bien plus répandue (ne serait-ce que pour le prix).
    D'un côté les logicels propriétaires seraient plus omniprésents, mais de l'autre, la "part de marché" de Linux donnerait un plus grand poids aux développeurs du noyau par rapport aux constructeurs de matériel et on serait peut-être débarassé des pilotes propriétaires dans le noyau...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Hors sujet

    Posté par  . En réponse à la dépêche Skype intégré dans Mandriva 2006. Évalué à 2.

    Au fait, c'est où que je télécharge [la distribution d'un grand fournisseur nord américain (ça m'ennuierait qu'ils risquent d'en vouloir encore à CentOS* à cause de mes conneries)] ?

    http://www.centos.org/
    * http://www.centos.org/modules/news/article.php?storyid=66

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Re: Vive le libre!

    Posté par  . En réponse à la dépêche Skype intégré dans Mandriva 2006. Évalué à 2.

    Vous n'avez pas compris l'importance des formats ouverts pour linux pour ne pas voir le danger que représente la propagation de skype?
    Je ne vous demande pas de les placer sur le bûcher mais simplement reconnaître que ce n'est pas une grande avancée pour libre serait déjà un début.....

    Le même genre de problème se pose dans la situation inverse, avec les versions pour Windows des logiciels libres.
    Dans quelle mesure les versions Windows de Firefox et OOo attirent-elles des gens vers les logiciels libres, et dans quelle mesure justifient-elles pour leurs utilisateurs de ne pas faire l'effort de passer à Linux ?

    Dans ce cas précis, dans quelle mesure cette annonce est-elle susceptible d'attirer de nouveaux utilisateurs vers Linux, et dans quelle mesure est-elle susceptible d'inciter des gens qui utilisent déjà Linux à utiliser Skype et à en devenir dépendants ?
    Ce genre de trucs est à double tranchant, et il me paraît bien difficile de savoir a priori si le bilan sera négatif ou positif...

    Cela dit, il faut relativiser un peu pour Skype : au moins n'inclut-il pas de code propriétaire qui tourne en mode noyau, pas comme les pilotes propriétaires de cartes graphiques...
    Bon, d'un autre côté, étant un logiciel réseau, il lui serait assez facile de contenir un spyware et de cacher des informations transmises à l'insu de l'utilisateur dans son flux normal.

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • # Avec Perl

    Posté par  . En réponse au message Comment modifier chaque ligne dans un fichier ?. Évalué à 2.

    Comme l'a dit xavier, il ne serait pas inutile que tu explicites ton exemple : comptes-tu les lignes qui ne contiennent pas "tous" (j'ai supposé que oui) ? que fais-tu des lignes qui contiennent "tous" à un autre endroit (j'ai supposé que tu ne les affiches pas) ? souhaites-tu bien remplacer le premier champ par le numéro (c'est ce que semble montrer ton exemple) ?

    Par rapport à l'exemple fourni,
    perl -nle '/^[^;]*(;tous;.*)$/ and print $. + 12, $1' toto.txt
    fait le boulot et fonctionne pour un cas plus complexe en suivant les suppositions que j'ai faites.

    -n assure le parcours des lignes du (ou des) fichier(s) donnés en arguments (comme awk).
    -l retire les fins de lignes avant le traitement et en remet après.
    $. est le numéro de la ligne courante du fichier.
    $1 est la chaîne correspondant à la première (et dans ce cas unique) parenthèse de l'expression rationnelle.

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • # Autre piste

    Posté par  . En réponse au message de ISO-8859-1 en UTF-8 en pelr. Évalué à 3.

    use Encode;

    while (<IN>) {
        print OUT encode('utf8', decode('latin1', $_));
    }


    Voir man Encode ou perldoc Encode pour plus de précisions.
    Encode::Guess pourrait aussi t'intéresser.
    Tout cela est distribué avec Perl en standard.

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # CD : bon débarras !

    Posté par  . En réponse à la dépêche Revue de Presse - Décembre 2005. Évalué à 10.

    L'abandon du CD fait parti des modifications nécessaires.

    Ça n'est pas moi qui le regretterai.
    Je ne pense pas que GLMF était un magazine qu'on achetait pour le CD...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Destructeurs

    Posté par  . En réponse à la dépêche Ruby on rails 1.0 est sorti. Évalué à 4.

    Désolé, pas d'idée la dessus.

    J'en avais eu une : créer une classe de base dont le constructeur crée un finaliseur appelant une méthode considérée comme le destructeur, méthode à redéfinir sur les classes dérivées.
    Seulement d'une part, le moment et l'ordre de la destruction des objets ne pourrait être garanti. Au passage, pour moi, ça démontre clairement que la gestion de la mémoire par un garbage collector est une erreur : un choix d'implémentation qui t'empêche d'implémenter un concept du paradigme, c'est un très mauvais choix.
    D'autre part, les finaliseurs sont appelés après la destruction des objets !!!
    Là, je ne vois pas ce qui obligeait à une telle aberration...
    D'un point de vue plus général, comment quelqu'un qui a fait un langage aussi génial par ailleurs a-t-il pu autant saloper la question des destructeurs ? Ruby, ça me fait penser à une Ferrari avec une roue carrée !

    As tu tant besoin des destructeurs que ça ?

    Que répondre ?
    Tu pourras me démontrer que je peux m'en passer, tout comme les avocats des langages qui ne supportent pas l'héritage multiple ont démontré qu'on pouvait s'en passer.
    Seulement il y a une démonstration scientifique comme quoi on peut tout programmer avec juste une machine de Turing et il est empiriquement évident qu'on peut tout faire en assembleur. Ça ne me donnera pas envie pour autant de faire mes programmes avec une machine de Turing ou en assembleur...
    Pour citer Matz :
    Above all, you can't enjoy programming with much stress.
    Là, je suis parfaitement d'accord avec lui,
    Ruby's true motto is "Enjoy programming".
    mais moi, je ne peux pas "enjoy programming" avec la complication de devoir contourner l'absence de destructeurs avec des méthodes plus lourdes ou plus moches.

    Le système de bloc répond à une partie des problématiques (exemple l'implémentation de File.open(...) { .... } qui automatise la cloture du fichier)

    Oui, mais cela ne se fait pas au même niveau : cela doit être fait au niveau de l'utilisation de la classe et pas seulement au niveau de sa définition comme les destructeurs.
    Si tu programmes ta classe, que tu commences à l'utiliser un peu partout, et qu'à ce moment-là, tu te rends compte qu'il faudrait que tu fasses un traitement après l'utilisation des objets, eh bien avec les blocs, tu es cuit, il faut que tu modifies toutes les utilisations de ta classe !

    Les finaliseurs de ruby ont certes une syntaxe dérangeantes mais permettent de faire le travail dans ces cas simples et clairement identifiables.

    D'un autre côté, si c'est pour avoir au bout du compte un programme moche, je n'ai pas d'intérêt à passer à Ruby, je reste à Perl. Au moins avec Perl, c'est la syntaxe du langage qui est moche, pas la conception de tes programmes (ou alors c'est entièrement ta faute, le langage ne t'impose pas une conception sale).
    Au niveau des concepts de programmation, Perl m'a permis de continuer à faire tout ce que je faisais avant avec d'autres langages. J'attends encore de trouver un langage qui me permette de faire tout ce que je fais maintenant avec Perl...
    Cela dit, je m'inquiète un peu pour Perl 6, qui devrait utiliser un garbage collector plutôt qu'un compteur de références. Si, comme je le crains, ça implique la destruction des destructeurs, je me rabattrai sur Python, même s'il est par ailleurs trop rigide à mon goût.

    Quels sont les besoins que tu as vis à vis des destructeurs et qui ne sont pas recoupés ?

    Je ne sais même plus. Quand j'avais découvert Ruby, je m'étais jeté dessus (un truc (qui m'apparaissait) aussi puissant que Perl, mais en joli !) en commençant à programmer avec le premier truc pas trop gros (mais pas trop petit non plus, quelques centaines de lignes, quoi) dont j'ai pu avoir l'utilité.
    Arrivé à un moment, je me dis "Tiens, il faut que je fasse un traitement à la destruction des objets de telle classe", mais, m'apprêtant à ajouter un destructeur, j'ai un curieux trou de mémoire sur la syntaxe des destructeurs... et là, je dois faire des recherches un peu poussées... pour finalement découvrir la merde de chat sous le tapis.
    Conclusion, j'ai fini mon programme en ajoutant une méthode et en l'appelant explicitement partout où c'était nécessaire, j'ai ensuite passé du temps à essayer de programmer des destructeurs en Ruby, et puis quand j'ai vu que ce n'était pas possible, j'ai abandonné la programmation en Ruby.

    Parmi les langages informatiques, Ruby est ma plus grande déception.

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Tant que tu y es...

    Posté par  . En réponse à la dépêche Ruby on rails 1.0 est sorti. Évalué à 2.

    Pour exemple le langage ne gère pas les classes abstraites. Il m'a fallu quelques heures et une centaines de lignes pour rajouter ça, alors que j'ai encore assez peu d'expérience dans ruby.

    Si jamais en quelques heures de plus tu ajoutais de (vrais) destructeurs, je me remettrais probablement à Ruby...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # To Perl or not to Perl

    Posté par  . En réponse au message Motif multi-lignes avec 'sed'. Évalué à 2.

    Si ce n'est que je lance un process Perl pour chaque traitement.

    Alors pourquoi pas plutôt faire un script unique, plus conséquent, qui fasse tous les traitements ?

    Je connais très bien Perl, mais je me force justement à éviter de l'utiliser quand il existe d'autres solutions beaucoup plus légère, éviter d'utiliser un bulldozer pour écraser une mouche.

    Pour ma part, à l'inverse, c'est mon temps que j'essaie d'économiser plus que celui de la machine.
    Aussi, je pars directement sur Perl. Comme ça, quand je m'aperçois qu'il est souhaitable de faire un traitement plus compliqué que prévu et que l'outil qui m'aurait semblé suffisant au départ ne l'est plus, eh bien je ne perds pas de temps à convertir ce que j'avais déjà fait en Perl, parce que ça y est depuis le départ.

    C'est un bon réflexe je pense.

    Je ne suis pas convaincu que ce choix ait dans l'informatique actuelle autant de portée qu'il en aurait eu auparavant.
    Pour égaler avec Perl la charge infligée sur un poste de travail par un navigateur web soit-disant léger comme Firefox ou par OpenOffice, ou sur un serveur par un truc "hyper-efficace" comme OpenLDAP, il faut vraiment que le traitement soit très lourd, ou alors qu'on l'ait programmé comme un pied. La lourdeur due au temps de lancement ou à l'encombrement mémoire de Perl par rapport à bash, sed ou awk est alors négligeable...

    Je dis ça par expérience personnelle.
    Sur le PIII 450 (avec 512 Mo quand même) que j'ai encore comme poste de travail pour quelques semaines, les trucs les plus lourds que j'utilise sont Firefox, xpdf et OpenOffice; la machine serait encore assez puissante pour tout le reste. Je n'ouvre généralement pas documents Word que je reçois en attachement de mail : la plupart du temps, l'intérêt du contenu ne vaut pas le temps que met OpenOffice à se lancer.
    J'utilise OpenLDAP sur un serveur et je faisais sur l'annuaire un traitement nécessitant un nombre conséquent de requêtes assez lourdes. J'en ai eu marre que ça me charge le serveur pendant plusieurs minutes. Maintenant, je charge directement tout l'annuaire avec un dump au niveau du backend (donc en court-circuitant OpenLDAP) et je fais tous les traitements en interne de mon script Perl. C'est carrément plus rapide. Et encore j'ai utilisé par facilité les structures fournies d'origine par Perl (tableau associatif notamment), plutôt que des structures plus optimales dans ce cas (par exemple un arbre pour stocker l'annuaire). Sans importance : mes traitements sont encore nettement moins longs que le chargement de l'annuaire, pourtant pas plus long qu'une seule grosse requête sur OpenLDAP.

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Re: Qui a tué le professeur moutarde ?

    Posté par  . En réponse à la dépêche Journée détaxe 2005 - Communiqué de Presse et actions. Évalué à 4.

    Pour le racket organisé d'entreprises comme Microsoft ou Norton, il ne faut pas oublié que la vente de logiciel génère des bénéfices pour les entreprises et donc des impôts. La vente d'un produit est sujet à la TVA. A qui profite le crime?

    Charger du mauvais côté la balance du commerce extérieur, et donc plomber notre économie (Microsoft n'y réinjecte pas trop l'argent qu'il perçoit) uniquement dans le but de récupérer des taxes au passage, cela ne pourrait être un bon calcul qu'à très court terme, même en ne considérant que la question du budget de l'état...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # Détail

    Posté par  . En réponse au message Motif multi-lignes avec 'sed'. Évalué à 2.

    Je n'ai pas tout-à-fait bien repris mon exemple : l'intérêt de l'option s de la substitution est de pouvoir faire correspondre une fin de ligne à \s. C'est plus utile quand on utilise effectivement \s. Soit :

    #!/usr/bin/perl -p0777

    s/toto\s+titi/tata/gs;
    s/...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

  • [^] # ATI...

    Posté par  . En réponse à la dépêche Pilotes binaires dans Linux: quel est le problème ?. Évalué à 2.

    En tout cas chez ati je peut t'affirmé qu'ils ne se lachent pas sur les drivers pour obtenir une meilleur performance!

    Ah ?
    Je ne suis pas allé assez loin avec les pilotes ATI pour en avoir une idée.
    Mon expérience avec ATI se limite à l'essai d'une Mandriva qui m'a installé le pilote ATI propriétaire sans me demander mon avis (alors que j'ai une Radeon 9200 justement parce que c'est l'une des dernières ATI supportées par le pilote libre).
    Résultat, dès le premier chargement de X, affichage pourri et gelé (j'admet, j'ai une carte pas ATI à base de chipset ATI, mais il n'est pas dit que le pilote ne supporte que les ATI pur sucre !).
    Ensuite, j'ai redémarré en runlevel 3 le temps nettoyer le système du pilote propriétaire et, magie, plus de problème...

    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone