LupusMic a écrit 1481 commentaires

  • [^] # Re: Fausse alerte ?

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche MariaDB dénonce un jeu de licence par Oracle. Évalué à 7.

    Ben tiens, ma première dépêche en 10 ans et elle est pourrie ><

  • [^] # Re: Et non

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche MariaDB dénonce un jeu de licence par Oracle. Évalué à 1.

    Ah, donc en fait ils utilisent MariaDB pour les tests, et ils intègrent MySQL dans la distribution ? Ça ne me parait pas très clair tout ça, finalement.

  • [^] # Re: OpenSuse aussi

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche MariaDB dénonce un jeu de licence par Oracle. Évalué à 2.

    J'avais un vague souvenir que d'autres distributions avaient fait une telle annonce, mais dans le doute, j'ai restreint à Red Hat, qui est tout de même une des plus importantes distributions.

  • # Range for et iterator

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche LLVM 3.3 et Clang 3.3. Évalué à 10.

    « soit via la nouvelle forme du for qui itère directement sur les éléments sans passer par un itérateur. »

    Ce n'est pas tout à fait exact. Le compilateur tentera d'utiliser les fonctions génériques std::begin et std::end sur la collection pour pouvoir itérer sur la collection. Donc si la collection fournit les fonctions membre begin et end, c'est celle-ci qui seront utilisée : il y aura bien acquisition d'un itérateur. Ce sera juste implicite.

  • [^] # Re: C

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Blagues d'informaticiens. Évalué à 0.

    s/Collection/Garage
    s/insert/void accept(B1t3 & guest)

  • [^] # Re: root

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Blagues d'informaticiens. Évalué à 4.

    On ne fait jamais de grosses conneries en root : on fait du nettoyage.

  • [^] # Re: C

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Blagues d'informaticiens. Évalué à 10.

    En fait, sizeof ne retourne jamais une valeur, puisque c'est une expression évaluée à la compilation.

    Oui, quand on est pointilleux, on détruit toutes vannes.

  • # Navets intergalactics

    Posté par  (site web personnel, Mastodon) . En réponse au sondage Votre univers SF / Space opéra préféré. Évalué à 1.

  • [^] # Re: Bravo l'illetrisme !

    Posté par  (site web personnel, Mastodon) . En réponse au sondage Votre univers SF / Space opéra préféré. Évalué à 2.

    Le Shrieke, en effet, dépoterait, en faisant grincer les dents des spectateurs avec ces membres postérieurs. Mais ça n'aurait rien à voir avec Gollum, ce serait un totem inexpressif qui induirait la peur, sans aucune possibilité de compassion pour l'être.

  • [^] # Re: et le seul et unique alors ?

    Posté par  (site web personnel, Mastodon) . En réponse au sondage Votre univers SF / Space opéra préféré. Évalué à 2.

    La VO est très supérieure à la VF, si tu lis l'anglais, essaye. C'est le jour et la nuit entre les deux versions.

  • [^] # Re: Revenu trop faible

    Posté par  (site web personnel, Mastodon) . En réponse au sondage Comment pensez-vous déclarer vos revenus cette année ?. Évalué à 1.

    Dans quel pays vis-tu ?

  • [^] # Re: .

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Première mise en demeure pour l'association LinuxFr. Évalué à -4.

    Un développeur Web qui ne maîtrise pas la ligne de commande est un incompétent. Ne pas maîtriser la CLI, ça veut dire que le gars ne sait ni administrer un serveur web, ni une base données, ni déployer son code. À partir de là, quand on ne comprend pas ça, c'est un peu comme ne pas savoir qu'il existe une stack et des registres pour un dev C++.

    Et puis Grep, Git et Vim, ça dépote du pangolin.

  • [^] # Re: ViViVi : l'éditeur de la Bête !

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Atelier Bash et l'(incontournable) éditeur de texte en console ViM. Évalué à 4.

    Il semblerait que DLFP soit sclérosé par les ignares et les peine-à-jouir.

    C'est très drôle « VI VI VI, l'éditeur de la Bête ». En bon sataniste, c'est d'ailleurs mon éditeur au quotidien.

  • [^] # Re: je suis perplexe

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Distribuer sans distributions ?. Évalué à 0.

    Je ne comprends pas pourquoi tous les développeurs sont fondus de ces systèmes dangereux. Les systèmes de packaging tels que Pip ou Pear ne signent pas les paquets, les paquets sont téléchargés on ne sais où, pas de contrôle du fonctionnement, etc. Sans compter qu'il n'y a pas de mise à jour au niveau système, et qu'il arrive que ces charmants robots polluent /usr.

    Bref, en C/C++, on peut se construire des environnements spécialisés, avec des versions particulières, mais il faut effectivement un peu se sortir les doigts du fondement et comprendre ce qu'on fait.

  • # Un esclave

    Posté par  (site web personnel, Mastodon) . En réponse au sondage Quel débugger utilisez vous ? . Évalué à 8.

    C'est moins économique, mais c'est plus humain !

  • [^] # Re: Et la qualité ?

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Caranille 3.5 - Éditeur de MMORPG en PHP. Évalué à 2.

    C'est une question de style. Il y en a, pour éviter ça, vont faire une variable et complexifier le code inutilement.

    Je préfère chercher dix return dans une fonction plutôt que 10 accolades fermantes.

    C'est surtout que ça donne une approche séquentielle : dès qu'on peut, on sort. Par contre, il faut être cohérent : soit on applique la méthode du point de sortie unique, soit on applique la politique de sortie au plus tôt possible. Et surtout, on évite de mettre des return dans la quatrième imbrication de code, ça fait mauvais genre. Les return doivent toujours être à un niveau accessible, sinon c'est illisible.

    Ceci dit, la plupart de mes fonctions n'ont qu'un point de sortie, puisque lorsqu'il y a une erreur, je lève une exception plutôt que de retourner un résultat que personne ne vérifiera :) Mais ça reste des points de sortie multiple.

  • [^] # Re: Et la qualité ?

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Caranille 3.5 - Éditeur de MMORPG en PHP. Évalué à 2.

    http://php.net/manual/en/ref.pdo-mysql.php
    « PDO_MYSQL will take advantage of native prepared statement support present in MySQL 4.1 and higher. If you're using an older version of the mysql client libraries, PDO will emulate them for you. »

    Mais bon, je ne suis pas fan de PDO comme tu l'auras compris.

  • [^] # Re: Et la qualité ?

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Caranille 3.5 - Éditeur de MMORPG en PHP. Évalué à 1.

    C'est un peu le but de ma dernière question, s'il utilise Git (non, il n'en existe pas d'autre :-D ).

    Mon aide est très constructive. D'accord, c'est mal formaté, je n'ai pas réussi à retrouver comment faire fonctionner cette connerie, mais les exemples que j'ai donné sont caractéristiques de ce qu'il doit commencer par corriger. Et j'ai donné quelques mots-clés important qu'il devra aller chercher. Il peut aussi poser la question, et je lui répondrais avec toute l'amabilité dont je peux faire preuve.

    Réinventer la roue est une nécessité pour tous les développeurs, pour découvrir et comprendre un cheminement intellectuel. Et une fois qu'on a saisit les enjeux, on jette et on utilise une solution éprouvée. Ceux qui ne sont pas arrivé à cette conclusion ne sont pas des développeurs, mais des intégrateurs. Le monde a besoin de ces gens qui peuvent assembler des systèmes, mais ce ne sont pas des développeurs.

  • [^] # Re: Et la qualité ?

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Caranille 3.5 - Éditeur de MMORPG en PHP. Évalué à 2.

    Ce sera plus lent, car il faudra attendre un aller-retour avec la BDD pour compiler et rendre disponible la prepared statement.

  • [^] # Re: Groupage css = bad

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Optimisation web : Javascript, navigateur et cache (HTTP). Évalué à 1.

    Je me ferais pardonner en sponsorisant des projets libre, le jour où je ne serais plus salarié ;

  • [^] # Re: Et la qualité ?

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Caranille 3.5 - Éditeur de MMORPG en PHP. Évalué à 3.

    MVC n'est pas une obligation. D'ailleurs, c'est impossible d'appliquer le pattern MVC dans le web de manière intégrale. Mais je suis d'accord pour dire que garder à l'esprit de séparer les responsabilités reste une bonne idée.

    La manière de fabriquer les requêtes SQL est une horreur. Venir expliquer que c'est une surcouche de surcouche est une mauvaise justification. mysqli_real_escape_string est un ami. Mais ce n'est pas le seul problème : htmlentities n'est jamais employé pour échapper les données intégrées au HTML ; aucune protection contre les CSRF n'est mise en place ; c'est codé en français ; un zip est fournit plutôt qu'un tarball (mais le développeur se prévaut d'être un Linux power user, va comprendre :D) ; où est le repo ? ; usage idiot de addslashes pour fournir une pseudo-sécurité (c'est encore pire que de ne rien faire) ; stockage des mots de passe en clair ; avec possibilité de les récupérer via une SQL injection ; le style employé est confus entraînant une complexité inutile [1] ; les commentaires qui paraphrase le code sont inutiles [2] ; utiliser des loops, c'est bien [3] ; pourquoi htmlspecialchars est parfois utilisé avant insertion en BDD ? ; beaucoup de code dupliqué ; pourquoi tous les scripts s'appellent index.php ?

    Bref, tu as du pain sur la planche :) Personnellement je ne t'encourage pas à utiliser de Framework PHP, ils sont tous pourris ou lourds. Rationaliser le code (créer une routine de routage/dispatch, ségréguer le code relatif à la logique métier dans une unité logique de code, etc) est une première étape.

    Utilises-tu Git pour gérer ton développement ?

    [1]
    php
    if($success)
    if($otherSuccess)
    doSomething;
    else
    echo 'message à l'utilisateur';
    else
    echo 'message à l'utilisateur';

    Je préfère, pour des raison de clarté, écrire mon code ainsi :
    ```php
    if(!$success)
    {
    echo 'message à l'utilisateur';
    return;
    }

    if(!$otherSuccess)
    {
    echo 'message à l'utilisateur';
    return;
    }

    doSomething;
    ```

    [2]
    php
    //Si l'utilisateur décide de quitter la ville
    if (isset($_POST['quitter_ville']))

    [3]
    php
    {
    $_SESSION['id'] = $donnees_compte['id_compte'];
    $_SESSION['id_guilde'] = $donnees_compte['id_guilde_compte'];
    $_SESSION['pseudo'] = $donnees_compte['pseudo_compte'];
    $_SESSION['mdp'] = $donnees_compte['mdp_compte'];
    $_SESSION['mail'] = $donnees_compte['mail_compte'];
    $_SESSION['force'] = $donnees_compte['force_compte'];
    $_SESSION['magie'] = $donnees_compte['magie_compte'];
    $_SESSION['defense'] = $donnees_compte['defense_compte'];
    $_SESSION['pv'] = $donnees_compte['pv_restant_compte'];
    $_SESSION['pv_max'] = $donnees_compte['pv_max_compte'];
    $_SESSION['pm'] = $donnees_compte['pm_restant_compte'];
    $_SESSION['pm_max'] = $donnees_compte['pm_max_compte'];
    $_SESSION['pc'] = $donnees_compte['pc_compte'];
    $_SESSION['po'] = $donnees_compte['po_compte'];
    $_SESSION['notoriete'] = $donnees_compte['notoriete_compte'];
    $_SESSION['chapitre'] = $donnees_compte['chapitre_compte'];
    $_SESSION['mission'] = $donnees_compte['mission_compte'];
    $_SESSION['status'] = $donnees_compte['status_compte'];

    deviens :
    php
    foreach(array('id', 'id_guilde'
    , 'pseudo', 'mdp', 'mail', 'force', 'magie', 'defense'
    , 'pv', 'pv_max', 'pm', 'pm_max', 'pc', 'po'
    , 'notoriete', 'chapitre', 'mission', 'status'
    ) as $param_name)
    $_SESSION[$param_name] = $donnees_compte[$param_name];

    On pourrait aussi utiliser array_merge, mais j'ai comme dans l'idée que c'est une mauvaise idée que de polluer le scope de la session.

    DISCLAIMER: je hais Markdown quand ça ne semble pas marcher, aussi, veuillez me pardonner pour ce message très mal formaté :D

  • [^] # Re: Groupage css = bad

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Optimisation web : Javascript, navigateur et cache (HTTP). Évalué à 3.

    Je suis bien pire que ça, je travail dans l'édition de jeux pour une plate-forme sociale dont on ne dit pas le nom.

  • [^] # Re: Groupage css = bad

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Optimisation web : Javascript, navigateur et cache (HTTP). Évalué à 3.

    Ça dépend du projet. Si tu développe un jeu qui fait de l'AJAX intensif, il n'est pas forcément stupide d'embarquer tout le contenu dans un gros fichier HTML (image, CSS et scripts compris). Ce sera plus rapide que de télécharger 10.000 fichiers.

    Bien sûr, il ne faut pas que le contenu de cette « archive » de jeu doive changer toutes les cinq minutes.

  • [^] # Re: Divide by 0

    Posté par  (site web personnel, Mastodon) . En réponse au sondage mon ordinateur s'éteint en moins de.... Évalué à 1.

    Même si tu ne l'éteins jamais, tu l'allumes au moins une fois, puis autant de fois qu'un imbécile (blanc *) l'aura débranché, ou que l'électricité aura faillit.

    [*] http://pinterest.com/pin/35465915787623112/

  • # Ports et SpamHaus

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Jeudi du libre d'avril à Lyon : héberger son serveur de messagerie. Évalué à 1.

    Sera-t-il question du filtrage du port SMTP par le FAI, ainsi que l'inscription de son adresse fixe au fichier SpamHaus ?