guppy a écrit 345 commentaires

  • [^] # Re: Frimousse.org

    Posté par  . En réponse au journal Fermeture définitive du site grenouille.com (news pas fraîche du tout). Évalué à 5.

    C'est triste de voir que les disruptifs d'hier deviennent de banals gros, et qu'il faut toujours refaire des nouveaux disruptifs pour avancer.

    C'est pas triste, ça s'appelle la vie ;)

  • [^] # Re: Raaaah! Trop tard, je replonge!

    Posté par  . En réponse à la dépêche Sortie de « La bataille pour Wesnoth » 1.14. Évalué à 3.

    Pour ce qui est des campagnes, c'est sûr, il suffit de ne pas risque le chef, il reste lvl 0 ou 1 toute la campagne et on gagne sans trop de soucis.

    Ça c'est vrai en mode facile ou moyen, mais plus après. En mode difficile il y a des scénarios très délicats (ceux du bas de la liste en majorité) où l'apport du leader dans le combat est indispensable. De plus, certains ont le trait 'commandement', il serait bête de s'en priver.

    Quelques un restent très compliqués. Ça fait une dizaine d'années que j'y joue (après des années de civilization), je pense avoir un niveau honorable mais au niveau de difficulté maximum il m'en reste encore 2 (le fils de l’œil Noir notamment, mais j'y travaille, de temps à autres ;) ).

    La bonne gestion du cycle jour/nuit est un prérequis pour bien s'en sortir dans les niveaux de difficultés élevés.

    Les statistiques individuels ont également beaucoup d'importance. Le trait 'Intelligent' est bien connu, utiliser une unité 'Forte' ou 'Habile' dans le cas où ça peut faire éviter un hit un peu moins. Le trait 'Robuste' est quant à lui peu utilisé. Pourtant lors d'une période du cycle qui vous est défavorable, vous allez réunir vos troupes. Les coins d'une armée peuvent être soumis à 3 attaques par tour (du fait des cases hexagonales), y positionner des unités avec le trait robuste peut faire la différence et vous permettre de tenir jusqu'au moment où le cycle va basculer.

    Je pourrais en parler un moment, mais je vais m'arrêter là. :D

  • [^] # Re: comparaison JPEG/AV1

    Posté par  . En réponse au journal AV1 : le codec du futur ?. Évalué à 3.

    Finalement on ne peut pas juger si la comparaison est pertinente.

    On peut quand même supposer qu'ils ne sont pas idiots et que les 3 images d'origine font la même taille. Ce qui permet d'apprécier les gains des 2 formats récents par rapport à JPG.

  • [^] # Re: Tu devrais contacter Calimaq

    Posté par  . En réponse au journal Le droit d'auteur en France et le domaine public. Évalué à 2.

    Salut,

    Intéressant. Si tu ne peux pas déterminer la date exacte avec certitude, peut-être peux-tu déterminer une date plus lointaine où il est sûr que l’œuvre est tombé dans le domaine public ?

  • [^] # Re: static / constexpr

    Posté par  . En réponse à la dépêche C++17 adapte le static_assert() aux usages. Évalué à 2.

    class et struct ne sont pas identiques. Il y avait au moins ces 2 différences en C++03 (j'imagine que ces comportement ont été conservés dans les versions plus récentes, sans certitude) :

    Member of a class defined with the keyword class are private by default. Members of a class defined with the keywords struct or union are public by default.

    In absence of an access-specifier for a base class, public is assumed when the derived class is declared struct and private is assumed when the class is declared class.

  • [^] # Re: Une proposition pour rendre le script plus "robuste"

    Posté par  . En réponse au journal Histoire de budget. Évalué à 1.

    Le formateur CSV de boobank (et des applications weboob en général) ne te garanti en rien que le nombre de colonnes restera stable, et que la valeur que tu cherches restera à la même colonne.

    Intéressant.

    J'avais utilisé cette technique car je m'étais rendu compte que certains comptes (mon crédit immobilier notamment) apparaissaient avec un type '4'. Après vérification, il semblerait que les comptes courant soient des types '1' et les comptes d'épargne des comptes '2'. C'était la raison d'être de ligne suivante :

    [ "${line[6]}" = "2" ] || [ "${line[6]}" = "1" ] && echo "${line[0]}"

    Mais ta remarque m'a fait me pencher sur la documentation de boobank et effectivement on peut faire bien mieux. La fonction accountsList() devient donc :

    function accountsList()
    {
            boobank $backends list --formatter simple --no-header --no-keys --select id --condition 'type=1 OR type=2'
    }

    Merci pour ta remarque.

  • [^] # Re: Lapin compris

    Posté par  . En réponse au journal Histoire de budget. Évalué à 1.

    Tu donnes la bonne réponse avant de t'enliser dans des solutions inutiles AMHA.

    Je pense que tu n'as pas compris mon besoin. Je ne veux pas saisir d'une part, je ne veux qu'importer. Et je veux aussi pouvoir ne pas importer pendant 6 mois ou plus parce que pendant ce temps je fais autre chose, mais sans perdre de données.

    Pourquoi? Pourquoi bouffer ne serait-ce qu'un iota de bande passante ou de puissance électrique pour télécharger quotidiennement des données trimestrielles? Soyons pingres mes amis!

    Il arrive parfois que les backends weboob soient cassés. Si ça arrive précisément lors de mon téléchargement trimestriel, je commence à perdre des données. De plus, télécharger tous les jours implique que j'ai toujours toutes les données disponibles sur mon poste (modulo 24h). Le jour où j'aurai envie d'analyser, j'aurais donc toutes les données depuis le jour de la mise à place et jusqu'à cette fameuse journée.

    Perso je vais parler de Grisbi que j'utilise: si tu rentres mensuellement tes relevés bancaires (oui une opération manuelle reste nécessaire si tu veux réellement faire une bonne analyse de tes données en les "taggant" correctement en terme de catégories ou imputations)

    Je le répète, je ne veux pas faire de saisie manuelle en 2018. Les tagger évidemment, mais ça aussi ça peut s'automatiser au moins partiellement.

  • [^] # Re: De temps à autres, je (ou on) me pose des questions genre :

    Posté par  . En réponse au journal Histoire de budget. Évalué à 2.

    De toute façon, comme moi, tu dépenses trop par rapport à la moyenne de l'humanité ;-)

    Trop, tu voulais dire 'plus'. Mais par définition, s'il y a une moyenne, il y a des gens qui dépensent plus, et d'autres mois. Tu veux en venir où ?

    Pas assez, pour quelqu'un qui ne s'occupe de ton enfant que pour gagner sa vie!

    Exact. C'est pas tout à fait comme ses enfants, mais presque. Et pour mes filles c'est comme une seconde maman, et son conjoint est comme un second papa. C'est déjà pas évident à financer. Mais c'est pas la question. Ceux qui sont concernés ont l'air satisfait comme ça et je ne vois pas de meilleur compromis. Mais si c'est ton cas n'hésite pas à m'éclairer.

    0€00, vive le recyclage.

    A vrai dire, c'était plus une phase d’accroche qu'autre chose. L'entreprise dans laquelle je travaille possède une boutique informatique, et tout le matériel que j'utilise à titre personnel provient de ce que les gens abandonnent là-bas. Jamais de disques de 8 To par exemple, mais entre 320 Go et 1 To, j'en ai à volonté. Pour une sauvegarde sérieuse, c'est un peu faible, du coup investir dans un NAS genre Syno + 2 disques neufs en raid 1 me pose question depuis un an ou deux. x2 bien sûr (une instance supplémentaire dans la cabane de jardin).Mais effectivement c'est un problème de riche. J'imagine que tu as des choses intéressantes à dire sur la question, n'hésite pas.

  • [^] # Re: et pour ca il y a...

    Posté par  . En réponse au journal Histoire de budget. Évalué à 5.

    J'ai déjà du mal à confier mes identifiants bancaires à mon propre PC. Cozy a l'air d'être une excellente application, mais pour moi le stockage des identifiants c'est rédhibitoire.

  • [^] # Re: Utiliser les notifications

    Posté par  . En réponse au journal Histoire de budget. Évalué à 1.

    Pas idiot ça, j'y avait pas pensé, faut que je creuse le sujet. Un peu moins automatique du coup mais plus sécurisé.

  • # Pas très élégant mais fonctionnel

    Posté par  . En réponse au message Créer deux fichiers avec un seul grep. Évalué à 4.

    $ cat test.txt 
    a1
    a2
    b3
    b4
    $ <test.txt tee >(grep a > a.txt) | grep -v a > others.txt
    $ cat a.txt 
    a1
    a2
    $ cat others.txt 
    b3
    b4
  • [^] # Re: Disons que ça se développe mais ce n’est pas nouveau…

    Posté par  . En réponse au journal Minage en douce. Évalué à 10.

    J'ai discuté avec un des salariés de la direction informatique en lui disant que CCleaner c'était de la cochonnerie

    En tout cas, après l'avoir désinstallé, les Windows 7 ramaient encore mais beaucoup moins.

    Ouais en fait t'as aucune preuve factuelle, juste des préjugés et une impression.

    il m'a fait comprendre que je n'y connaissais rien et que je ferais mieux de m'occuper de mes oignons.

    Sauf preuve du contraire, j'ai bien l'impression qu'il avait pas tort.

  • [^] # Re: Point fixe

    Posté par  . En réponse au journal Les échecs en échec. Évalué à 3. Dernière modification le 08 décembre 2017 à 16:44.

    C'était juste une blague le prend pas mal.

    Je pense que pour une bonne partie des lecteurs (dont moi) c'est assez abscons. En tout cas même si je ne comprends pas tout, ça m'intrigue et je trouve plaisant que le sujet soit développé. Mais j'ai pas pu m'empêcher désolé ;)

  • [^] # Re: Point fixe

    Posté par  . En réponse au journal Les échecs en échec. Évalué à 3.

    Bon je stoppe ce suspens insoutenable : c'était bien une référence au business loto et c'était bien pour faire un trait d'humour. Plus sérieusement, je trouve le sujet passionnant et je suis bien content que Shuba tente de le vulgariser. Mais l'occasion était trop belle quand même ;)

  • [^] # Re: Point fixe

    Posté par  . En réponse au journal Les échecs en échec. Évalué à 10.

    fonction de probabilité des coups par itération au point fixe sur la recherche arborescente de monte-carlo

    FOUTAISE !

  • [^] # Re: Le bon outils

    Posté par  . En réponse au message probleme sur les gros tableur. Évalué à 1.

    Sachant que les données sont de base en mysql, je pourrais passer en php.

    Pourquoi pas tout simplement quelque chose comme ça :

    SELECT col1, col2, col = 1 AND col2 = 0 FROM table
  • [^] # Re: Adopté

    Posté par  . En réponse au journal Eolie: 6 mois plus tard.. Évalué à 3.

    Effectivement, c'est difficile à dire sans donner l'impression de dénigrer le travail de l'auteur du journal, mais la grosse difficulté technique d'un navigateur web (insurmontable d'ailleurs sans une grosse équipe de pointure et du temps devant soit) c'est le moteur de rendu, le reste est quand même trivial à côté. Y qu'à voir la dépêche en cours de rédaction sur Quantum Render.

    Ceci dit c'est un bon exemple de l'utilité des langages moins "bourrin" que C : le pilotage de briques écrit dans un langage de plus bas niveau. Ca permet à un homme seul de mener à bien ce genre de projet dans un temps qui reste raisonnable (enfin ça il en parle pas, mais j'imagine que c'est le cas).

  • [^] # Re: Intégré à Gnome

    Posté par  . En réponse au journal Eolie: 6 mois plus tard.. Évalué à 7.

    L'affichage des pages web à proprement parler est réalisé par le moteur de rendu. Visiblement il utilise Webkit et ce dernier est bien portable.

    Que l'interface du navigateur soit spécifique au Desktop Manager ne me choque pas. Pour pouvoir profiter des fonctionnalités spécifiques au DM il faut forcément écrire du code mono plateforme.

    Il aurait été préférable à mon sens d'inclure ça à un navigateur mainstream (ce travail aurait du coup été probablement plus pérenne), mais l'auteur a déjà expliqué pourquoi il ne l'avait pas fait et y a rien à y redire. Félicitations à lui en passant.

  • [^] # Re: la spec, c'est le code

    Posté par  . En réponse à la dépêche Développement très rapide d’applications libres : Extended Man/XML Frames. Évalué à 3.

    Je suis d'accord avec toi sur certains points : certains documents sont très utiles (celui qui décrit les entrées sorties par exemple, ceux qui documentent l'architecture également, et bien d'autres). Mais certains sont inutiles voir nuisibles : tous ceux qui concernent le code de manière trop précise sont voués à être désynchronisés. Je pense que pas mal de développeur ont vécu le cas où on leur file une doc et un code qui ont évolué séparément. A ce moment là les ennuis commencent ; ça doit expliquer certaines réactions épidermique sur cette dépêche.

    Une solution est d'utiliser des softs genre doxygen qui évitera cette désynchronisation.

  • # .

    Posté par  . En réponse à la dépêche Développement très rapide d’applications libres : Extended Man/XML Frames. Évalué à 6.

    Pour ma part je suis très dubitatif sur ce genre de framework. Je trouve que ça a tendance à donner des logiciels qui ne sont que des suites de formulaires et de grilles.

    Ca me fait d'ailleurs beaucoup penser aux produits PC Soft. Bien sûr, ces dernières ne sont pas libres, ni multiplateforme (enfin de manière embryonnaire à ma connaissance). Mais ils promettent grosso modo les mêmes choses :
    * développement très rapide
    * se concentrer sur le métier
    * accessible à tous

    Certes, ces points sont positifs. Faire disparaitre la partie technique c'est louable pour le client (même si 90% de la population d'ici deviendraient chômeurs ;) ). Mais un bon logiciel n'est pas qu'un logiciel qui respecte parfaitement la logique métier et qui n'a pas de bug. C'est aussi un logiciel qui est raisonnablement performant par exemple (pas de sensations de latence, les actions dans la mesure du possible devant durer moins d'une seconde par exemple). Et ça c'est purement technique. Ce type de framework est souvent très mal placé à ce niveau. Enfin c'est le cas de toutes les applications Windev que j'ai vu.

    Et c'est normal parce que développer c'est choisir. Choisir par exemple un haut niveau d'abstraction (et donc en accepter les conséquences). Néanmoins avec ce genre de framework on ne choisit pas, on est coincé et c'est pour ça que je ne les aimes pas.

    Ceci dit ça doit être très intéressant à développer, donc bon courage à toi.

  • [^] # Re: Aucune raison de s'emballer

    Posté par  . En réponse au journal Conséquences sociales des cryptomonnaies. Évalué à 6.

    Ca ne correspond pas au bitcoin.

    Cas 1 : la banque accepte de te prêter. Elle a 100 maintenant, 90 dans un an.
    Cas 2 : elle refuse. Elle a 100 maintenant, 100 dans un an.

    Que va-t-elle faire selon toi ?

  • [^] # Re: Ma solution

    Posté par  . En réponse au journal Capteurs météo et graphiques Munin. Évalué à 4.

    Le capteur est branché sur les ports GPIO du pi (exemple : http://gilles.thebault.free.fr/spip.php?article48 ). Le câble réseau permet de déporter franchement le capteur, je dois avoir une dizaine de mètres entre les 2. Mais il est possible de faire beaucoup plus, probablement supérieur à 100 mètres.

    Pour influxdb et grafana, ils tournent bien sur ce même pi. C'est un 0W qui est très peu puissant, mais influxdb n'est attaqué qu'une fois toutes les 5 minutes, et grafana utilise beaucoup de javascript (la majeure partie du boulot est faite par le client web à ce que j'ai lu). Ceci dit il est possible (probable) que je réorganise ça : si j'ajoute des capteurs à la station méteo, si je me mets à monitorer d'autres choses etc je pense que ce sera un pi 3 qui centralisera tout ça.

  • [^] # Re: nan, c'est pas un problème d'arrondi qui te guette

    Posté par  . En réponse au journal SQL Decimal vs Double. Évalué à 2.

    Exactement, et très bien expliqué.

    Pour ma part quand j'ai été confronté à ce problème (des additions de quelques milliers de terme), j'ai préféré ne pas prendre de risques : tout est stocké en centime aussi bien en sql que dans la couche métier.

    Intuitivement ça me semblait préférable. Je ne me sentais pas capable d'en faire la démonstration, mais quand on travaille avec de l'argent des clients, pas le droit à l'erreur : stockage entier en centimes.

  • # Ma solution

    Posté par  . En réponse au journal Capteurs météo et graphiques Munin. Évalué à 7.

    Il y a quelques temps j'ai ressenti plus ou moins le même besoin et j'ai mis ça en place :

    Matériel :
    * un raspberry pi 0 w (https://www.kubii.fr/fr/pi-zero-w/1855-starter-kit-pi-zero-w-3272496007031.html : 30 € environ)
    * un BME280 (ou un clone je ne sais pas) (http://www.ebay.fr/itm/GY-BME280-3-3V-Breakout-Temperature-Humidity-Barometric-Pressure-Digital-Sensor-/263033357120 : 4 €)
    * un câble réseau entre les 2 (récup)
    * une station à soucoupe bricolée avec des soucoupes de pot fleurs (il ressemble à ça : https://www.station-meteo.com/plan-abri-meteo-avec-sous-pot-a-fleurs/), le matériel m'a couté 19 €, peinture comprise.

    Logiciel :
    * influxdb pour le stockage
    * grafana pour la restitution
    * un micro script en bash pour l'insertion (toutes les 5 minutes, crontab)

    #!/bin/bash
    bme280=$(python /usr/local/bin/bme280.py)
    temperature=$(grep 'Temperature' <<< "$bme280" | cut -d' ' -f2)
    pressure=$(grep 'Pressure' <<< "$bme280" | cut -d' ' -f2)
    pressure=$(echo "$pressure+233/8.36" | bc)
    humidity=$(grep 'Humidity' <<< "$bme280" | cut -d' ' -f2)
    
    echo "$temperature $pressure $humidity"
    influx -database meteo -execute "insert temperature value=$temperature" 2> /dev/null
    influx -database meteo -execute "insert pressure value=$pressure" 2> /dev/null
    influx -database meteo -execute "insert humidity value=$humidity" 2> /dev/null

    Au final ça donne ça :

    http://pix.toile-libre.org/?img=1505149861.png
    grafana

    Tout ça me donne normalement des résultats très fiables et précis. Il y a une station Météo France pas très loin de chez moi qui publie ses relevés sur le net ces derniers sont cohérents avec les miens.

    Les stations météo m'intéressaient depuis longtemps. Mais les boites noires du commerce ne sont pas ma tasse de thé. Ce qui me plaît le plus dans ma solution c'est que c'est parfaitement hackable. Chaque brique est basique et parfaitement interchangeable. J'ai l'impression du coup que c'est très fiable, j'ai mis ça en place le 15 août (férié :D) depuis ça tourne silencieusement.

  • [^] # Re: Pire des cas

    Posté par  . En réponse au message Recherche algorithme de somme de denombrement. Évalué à 1.

    Salut,

    Je ne suis pas certain d'avoir bien compris l'énoncé, mais je me lance.

    On calcule le max : 100 + 50 + 80 + 60 + 8 + 5 = 303

    On vérifie que ce cas est possible, si oui, on a le max. Sinon on calcule le max immédiatement plus petit : 100 + 50 + 80 + 60 + 8 + 2 et on itère.