Comme d'autres je suis passé au bépo sans changer de clavier ; c'était vers 2010. Chez mois j'ai juste mis le layout bépo, et au boulot et bien je mets le layout bépo aussi :)
Ça m'a pris deux semaines pour être à l'aise avec l'alphabet. Pour les symboles c'était un peu plus long mais ça rentre quand même, au fur et à mesure du besoin. Aujourd'hui je ne sais toujours pas taper facilement le symbole « ° » pour les degrés (genre là j'ai tapé « º″′≠¸˘MÇWZ°`°° » pour le retrouver).
Certains modifient les raccourcis claviers pour qu'ils correspondent aux touches physiques du clavier (c'est à dire qu'ils font Ctrl + la touche C pour copier, qui est équivalente à Ctrl + le symbole X en bépo). Perso j'ai gardé les mêmes raccourcis (je fais Ctrl + la touche H pour copier), parce qu'au final je me moque de ce qui est écrit sur les touches.
J'ai appris avant la normalisation AFNOR. Malheureusement cette normalisation change quelques détails, comme inverser la position de l'apostrophe courbe et de l'apostrophe droite. Du coup la transition m'est pénible et je reste à la version 1.0 du layout.
Quand je me retrouve sur l'ordi d'un collègue en azerty je deviens tout lent, beaucoup plus qu'avant de passer au bépo, mais c'est tellement rare que ça ne me dérange pas.
Quand c'est un collègue qui se retrouve sur mon ordi, il n'arrive à rien et me rend la main ; ce qui me convient bien :)
La fonction int main() sans return, c'est standard ! C'est la seule fonction qui retourne implicitement 0 si on ne met rien (cf [basic.start.main]). Néanmoins ça fait quand même bizarre, je vais mettre des return pour éviter les surprises.
Merci pour ces intéressants retours, j'intégrerai les corrections à tête reposée.
Concernant l'anglais, je te rejoins tout à fait sur l'utilité de créer des ressources accessibles pour les plus jeunes. En plus ça aurait l'avantage de les modeler à ma sauce former d'une manière plus en phase avec ma propre façon de faire :) C'est aussi utile pour ceux qui ont plus ou moins de mal à lire l'anglais. Même si cela vaut le coup, effectivement, d'investir sur l'anglais quand on fait de l'informatique ; tout le monde n'a pas la même affinité avec la langue.
Comme indiqué dans le journal, à la base le public était franco-étranger. Dans cette situation c'est l'anglais qui fait l'union, il n'y a pas trop le choix. Après je vois ça aussi comme un moyen de pratiquer moi-même et de m'améliorer.
Je vais même aller plus loin, j'aurais bien contribué si ça avait été en français, parce que je me dis qu'un tel document aurait sans doute été très utile à mes étudiants.
Mais ne t'arrête pas malheureux ! Lance une traduction en français, ça serait top :) Si tu veux je te prépare même un dossier fr dans le dépôt.
Il y a tellement de sujets pas clairs dans cette courte discussion. Le message de devnewton est-il ou n'est-il pas une blague ? Est-ce drôle ? Est-ce malvenu ? « Logiciel libre » signifie-t-il que l'instance du logiciel est libérée de son créateur ou bien que l'utilisateur peut l'exploiter à sa convenance ? Peut-on plaisanter au sujet de la tenue de quelqu'un ? D'une personnalité publique ? Est-elle une personnalité publique ?
Quoi qu'il en soit, je doute que cela vaille le coup de s'échauffer à ce point et je me concentrerai sur les messages de Gil Cot et Jean-Baptiste Faure qui répondent parfaitement à la question de devnewton.
Oui, je t'encourage à passer à Emacs ou Vim (peut-être même que je mets Emacs juste parce que je n'ai jamais eu le courage de passer à Vim…)
Je l'utilise pour tout ce qui ressemble à du texte. Que ce soit du code, un livre, des fichiers de config, quelques notes prises à la volée.
J'ai utilisé des IDE (notamment Eclipse, des trucs de JetBrains, VS Code), j'ai utilisé d'autres éditeurs (notamment Gedit, nano, Notepad++), et j'ai utilisé du wisiwyg (notamment Word, LibreOffice). J'en reviens toujours à Emacs. J'apprécie en particulier d'avoir tout sous les doigts, dès lors que j'ai trouvé le raccourci ou la commande. Les fonctions de recherche et de remplacement sont géniales, la complétion dans n'importe quel document est bien confortable.
Le top du top pour moi est sûrement le côté épuré. Pas de barre d'outil encombrée, pas d'arborescence de fichiers, pas de barre d'onglets qui déborde, pas de minimap, pas de notif, pas de « attends je build des trucs en arrière-plan, reviens dans dix minutes », pas de barre de progression, pas de popup recouvertes de cases à cocher. Pas de caractères '}' ou '"' qui poppent sans que je les demande. Tous ces trucs pour Augmenter La Productivité™, très peu pour moi, merci. Quand j'ouvre Emacs je commence à faire ce que je suis venu faire dès la première seconde, et je ne touche plus à la souris jusqu'à en sortir. C'est parfaitement efficace. Et ça marche sur mon ordi, en graphique, dans un terminal, ou même à distance via ssh.
Côté inconvénients, le plus pénible est sûrement que les raccourcis ne correspondent à rien d'autre. Tu coupes du texte dans Emacs avec Ctrl+W, si tu fais la même chose dans Firefox ça ferme l'onglet. Au revoir le long message que tu rédigeais. Je remarque aussi que l'édition à distance est parfois délicate parce que les combinaisons de touches sont récupérées par le terminal au lieu d'être envoyées. Et il y a aussi les perfs qui sont parfois décevantes. L'ouverture est un poil longue, et certains fichier font bien ramer l'éditeur.
Effectivement je suis passé à côté de l'indexation du résumé, c'est un problème. Je mets de côté le masquage de contenu, laissons-le comme il est (i.e. négatif -> masqué).
Je prends les 225 derniers journaux (environ 4 mois) et je vois 8 comptes qui ont posté 11 contenus négatifs. C'est pas énorme. Ces comptes sont plus ou moins vieux (inscrits de 2002 à 2020), il n'y a pas plus d'un compte de spammeur dans le tas. On peut dire que les autres font « partie du site », et ils ont parfois proposé d'autres contenus. Je me demande comment ils perçoivent les notes. En stats anonymes je sors ça (note est la note du journal négatif dans les 225) :
user note inscription nb_journaux nb_dépêches pire_journal
A -3 2020 5 2 -38
B -12 2012 13 4 -12
C -17 2004 >30 0 -21
D -23 2005 >30 >60 -103
D -103
D -8
E -40 2021 1 0 -40
F -2 2019 >15 3 -2
G -81 2003 >60 >45 -89
G -89
H -10 2002 >75 12 -24
En dehors d'un seul compte, tous ont contribué via plusieurs journaux ou dépêches. 5 de ces 8 comptes ont eut leur pire note dans la période considérée. Ce n'est pas visible dans le tableau mais tous sauf 1 compte ont proposé des contenus notés positivement.
Nous avons donc des contributeurs qui participent de manière positive, qui parfois dérapent et se font moinser à ce moment. Dans la mesure où une mauvaise expérience a un impact plus fort qu'une bonne expérience, je pense que nous perdons de bonnes contributions ici. D'ailleurs au moins un des comptes ci-dessus (D) a mal digéré une note négative et est revenu à la charge avec d'autres contenus négatifs.
Je pense qu'on peut réduire cet effet décourageant et garder l'intérêt technique en bornant les notes négatives. Si tous les journaux négatifs étaient présentés avec une note de -1, ils resteraient masqués pour l'indexation et les spammeurs, et l'effet sur les posteurs serait moins démoralisant. Alternativement, les journaux pourraient être postés avec une note de 1 par défaut, bornés à zéro et masqués à zéro.
Je vais reformuler ma demande sous forme de question : quel message faisons-nous passer à un contributeur en notant son contenu à -50 plutôt que 0 (ou même -1) ? En quoi est-ce plus bénéfique que de borner l'affichage à zéro ?
Autant je vois bien l'intérêt de la gradation pour les notes positives, i.e. le contenu est mollement/assez bien/bien/très bien accueilli, essaye encore ou continue comme ça, autant je doute des bienfaits d'une gradation dans la médiocrité. Un contenu malvenu est malvenu, il n'y a pas tellement de nuances.
Question subsidiaire, quel message faisons nous passer à ceux qui participent généralement positivement et dérapent occasionnellement ?
En l'état je trouve que pouvoir moinser un journal déjà bien négatif c'est un peu comme taper quelqu'un à terre. Nous pouvons être bienveillants et nous assurer que les contributeurs ne se font pas humilier, tout en gardant l'utilité des notes pour le SEO, les meilleurs contributions, etc.
Je ne suis pas sûr que ce soit judicieux de mettre les folds dans la comparaison. Autant je m'attends à pouvoir convertir en fonction constexpr n'importe quel calcul fait via des templates, autant je doute que n'importe lequel de ces calculs puisse être converti en fold expression. Du coup les approches ne sont pas vraiment comparables :)
Tu sais si le "beaucoup d'argent" c'est vraiment beaucoup au vu des charges ?
Non, enfin je crois que ce n'est jamais beaucoup quand on prend les charges en compte, forcément ça atténue. Ce que je voulais dire c'est que lorsqu'on voit passer 27 millions de dollars de revenus, je comprends qu'on puisse se laisser emporter à croire que tout va bien pour eux, sans regarder dans le détail.
Est-ce que quelqu'un a émis une réserve en disant qu'on était pas dans la tête des dirigeants ? A-t-on demandé s'il y avait eu des reclassements, ne serait-ce qu'informels?
Pas que je sache.
Dans un cas, on a la conclusion, elle nous suffit. Dans l'autre, il faut chercher à comprendre. C'est là que je dis qu'il y a un double standard.
Je suis d'accord qu'il y a un double standard. C'est vrai que si Jeff Bezos fermait Amazon parce qu'il fait un burnout personne n'irait dire qu'il fait le bon choix :)
Le contenu à propos des licenciements chez Mozilla, ça ne serait pas celui là ?
Perso ce double standard ne m'étonne pas, parce que ce n'est simplement pas le même problème. Entre le patron qui ferme des bureaux/usines pour augmenter ses profits et celui qui ferme sa boîte pour ne pas devenir fou, il n'y a rien de comparable.
Entre les deux il y a la boîte en galère, par exemple Mozilla, qui vire du monde parce que ça va mal mais qui brasse malgré tout beaucoup d'argent (beaucoup du point de vue du quidam moyen), et ça suscite encore un autre type de réactions.
Le seul point commun dans tout ça c'est que des gens doivent repartir chercher du travail, peu importe la cause, mais c'est la vie. Et je n'irai pas suggérer à quelqu'un mal en point mentalement de se sacrifier au profit d'un tiers, autrement à la fin tout le monde perdrait. Ce n'est pas quand t'es tombé dans le fossé qu'il faut commencer à freiner.
S'il a jugé qu'il fallait couper court pour tenir sur pied, peut-être qu'il a pris la bonne décision. Je ne suis pas dans sa tête et je lui souhaite d'avoir retrouvé la santé, autant que je souhaite aux employés d'avoir pu se relever.
En faire un logiciel libre est un début de réponse à la question « Que se passe-t-il si je disparais de la nature ? » Ce n'est pas une garantie que le logiciel continuera à vivre où à être maintenu, loin de là, mais au moins il ne disparaîtra pas.
Au temps pour moi. Je me suis dis qu'il fallait dépiler les sondages alors j'ai publié un ancien, sans vérifier la date. Un autre sondage devrait le remplacer sous peu.
Je chiffre le disque au cas où je me ferais cambrioler. À moins que le voleur ne l'embarque en le maintenant allumé, trouve le mot de passe de la session ou un autre moyen de se loguer, il ne devrait pas pouvoir récupérer mes trucs.
En terme de source d'emmerde ça n'est pas énorme non plus. À côté de ça, en dix ans j'ai eu un ordi volé (de boulot, pas chiffré), et un ordi jeté, pas chiffré non plus. Pour ces deux là je ne saurais dire si ce qu'ils stockaient a disparu ou si ça a été copié et conservé, et ça me perturbe un peu. Il n'y avait plus grand chose de personnel dessus mais je préfère être prudent pour les prochains.
Cette popup m'agace aussi pour quasiment les mêmes raisons : quand je veux éteindre, c'est pour éteindre, souvent parce que je pars faire autre chose. Et j'ai aussi un disque chiffré qui m'oblige donc à attendre la demande de mot de passe au redémarrage, donc c'est hyper frustrant.
Si le but est de faire l'installation à froid, pourquoi ne pas la programmer pour le prochain démarrage plutôt que d'imposer un redémarrage sur le moment ?
Je te rejoins complètement, et ce n'est pas le seul truc qui me chiffonne dans cet article.
D’expérience, je pense qu’il faut remplacer la revue de code par la revue de conception.
C’est-à-dire demander d’abord aux développeurs de définir comment ils vont résoudre un problème en écrivant le plan de leur solution technique. Et ensuite de relire et de commenter cette conception.
Ça c'est n'importe quoi aussi. J'ai vu un paquet de fois des belles planifs sur tableau blanc tomber à l'eau dès la première ligne de code. Croire qu'on peut résoudre toutes les questions d'implémentation sans coder, et que si ça ne marche pas c'est qu'il fallait réfléchir mieux, c'est se fourvoyer. C'est même la raison pour laquelle on ne fait plus de cycle en V.
Pour moi la question de la conception doit se faire « en gros », et le moment du chiffrage est un bon moment pour échanger là dessus : on communique sur les approches et on élimine les plus gros problèmes.
Les daily/le stand-up sert à remonter les soucis qu'on rencontre sur le terrain : on communique sur les problèmes, on les élimine ou on les contourne.
La revue sert à partager l'information et affiner des détails : on communique sur comment les choses sont faites en pratique. C'est autant au bénéfice du relecteur que du codeur.
Dans toutes les boîtes où je suis passé ces trois étapes étaient la raison pour laquelle les projets étaient fluides. Trois points de synchro pour communiquer et le reste du temps on est bien tranquille. Les seuls soucis que j'ai eu étaient des galères d'humains de mauvaise volonté qui se pointaient au stand-up en râlant à propos du commercial (c'est pas le sujet) ou du patron (toujours pas le sujet), ou encore des gens qui ne voulaient pas retoucher à leur code crado en revue parce que « boaf, ça marche comme ça », voire des héros fiers bloqués en refusant d'échanger à propos de leurs galères. Au final ça me semble simple : si tu joues en équipe, ça marche bien, sinon c'est la merde.
C'est cool les rouleaux, combinés avec la tendance « on a des écrans horizontaux/larges, ça n'a pas de sens de restreindre la longueur des lignes », il y a moyen de se retrouver avec des rouleaux rédigés « en paysage ».
Cinq mètres de texte avant de revenir à la ligne, parce qu'on est au 21è siècle bon sang :D
On dirait que tu subis une belle série de journaux négatifs depuis quelque temps. J'en suis navré. Les sujets abordés ne semblent pas trouver pas écho parmi les lecteurs du site.
Je trouve personnellement bien dommage que tu restes dans cette voie. Tes contributions au libre étaient plutôt intéressantes et j'appréciais de lire tes articles sur les jeux vidéo et autres sujets annexes. L'effort de regrouper des jeux sous Linux sur un même support me semblait intéressante, ou du moins constructive, même si le support était discutable.
Le site Linuxfr et très influent dans le milieu du libre et aussi très fréquenté. Ainsi, quand on a un site web cité avec un lien dans un article, cela se voit dans les statistiques qui présentent un pic de fréquentation. Il devient rapidement clair pour les influenceurs qu'il faut cibler ce site. Les administrateurs de Linuxfr, devraient pouvoir le constater : il devrait y avoir dans les 150 pseudos concernés et plusieurs pour la même adresse IP.
As-tu des chiffres pour appuyer ces propos ? De mon humble expérience, la visibilité apportée par une publication ici n'est pas si remarquable que ça. À la grande époque de Plee the Bear et de LinuxFr.org la première annonce n'avait amené que quelques milliers de hits.
Bref, revenons à tes journaux. Insister sur ces sujets ou pointer des hypothétiques défauts du système de notes, de karma, ou autres trucs de ce site, ne t'amèneront rien de positif. Si tu vois des soucis je t'invite à ouvrir une entrée de suivi et à y suggérer une alternative ou un correctif. Si tu veux parler de complots, de manipulations, dans n'importe quel domaine, je t'invite à y réfléchir à deux fois. Si tu veux parler de technique et de sujet libres, alors bienvenue parmi nous :)
Cet argumentaire de « ne pas réinventer la roue » est pour moi un automatisme malvenu que les gens de conseil sortent à tout va pour se donner du crédit. Je pense au contraire que si tu es débutant tu as tout intérêt à réimplémenter des choses existantes ; c'est ce qui te fera passer du stade « connaître » au stade « comprendre ».
À titre d'exemple, j'ai appris à l'école ce qu'étaient des arbres binaires équilibrés mais ce n'est qu'en implémentant un AVL que j'ai compris comment ça fonctionnait. Pourtant mon implémentation n'était qu'une roue mal fichue, mais je l'ai utilisée, j'ai rencontré des problèmes qui m'ont amené à encore plus de réflexion, je l'ai confrontée à des outils plus mûrs pour en apprendre d'avantage.
J'ai aussi codé le chargement d'images bmp, tga, pcx, gif et autres. Cela n'a aucun intérêt dans un projet puisque de nombreuses bibliothèques le font déjà bien et que certains formats sont complètement obsolètes, et en plus je connaissais déjà tous ces formats. Et pourtant ça m'a fait me confronter au RLE, à LZW, à la question de la représentation des couleurs, aux formats palette, rgb16 et autres. À l'époque je confrontais mon code aux temps de chargement d'ACDSee, ce qui m'a amené à la question de l'optimisation. C'était aussi un bon exercice de suivi de specs puisque tous ces formats sont bien définis et que les documents techniques sont disponibles. Il y a en particulier plein de variantes de gif et j'avais dû rassembler de nombreux exemples pour valider l'implémentation.
Réinventer la roue c'est aussi apprendre à gérer un projet. Si tu te dis, par exemple, « je vais implémenter une messagerie instantanée » tu vas devoir poser un cadre. Est-ce que le client tourne dans un terminal, une app desktop, un navigateur ? Comment le serveur fonctionne-t-il ? Gères tu les sockets toi-même, utilises-tu des bibliothèques pour cela ? Est-ce que tout passe par le serveur ? Est-ce du pair à pair ? Comment gères-tu la sérialisation ? T'appuies-tu sur un protocole existant ?
Savoir poser des limites, sélectionner des fonctionnalités et cadrer le projet pour l'amener à terme, c'est aussi quelque chose qui se comprend en pratiquant.
Enfin même de manière professionnelle il m'est arrivé de réimplémenter des choses pour des raisons de coût : nous commencions avec l'outil d'un tiers puis nous le remplacions par quelque chose rendant le même service pour un coût moindre et des performances meilleures.
Moi je crois que les bons sportifs ne sont pas dans les gradins à manger des chips. Je crois que les bons musiciens jouent tous les jours, reprennent des morceaux existants qu'ils jouent du mieux qu'ils peuvent, avec des accords ratés et en passant à côté de subtilités. Ce n'est sans doute pas aussi bien que le morceau original mais ça peut quand même être une belle reprise, et surtout ça les rend meilleurs à ce qu'il font.
Alors si tu es débutant, et d'ailleurs ça marche aussi si tu es expérimenté, et que tu réponds à une offre de la boîte où je travaille, mon conseil est d'avoir :
un CV court qui va à l'essentiel : « j'ai fait ceci et cela, ici et là bas » ;
du code public et une explication du pourquoi, ce que ça tu as appris et comment tu t'y prendrais si tu devais le refaire ;
éventuellement des liens vers des articles plus ou moins techniques que tu as écris (un journal sur LinuxFr.org par exemple :)), que je puisse voir que tu peux faire preuve de réflexion, d'analyse, de critique, ou que tu peux expliquer quelque chose à un tiers. Pas forcément lié à l'informatique : une recette de cuisine, comment tu as perdu 10 kg, comment tu as construit un abri de jardin, ou ton ressenti sur la gestion d'une vieille colonie de vacances ; peu importe du moment que ça ressemble à de l'analyse, de la critique constructive, de la réflexion.
[^] # Re: Double vie
Posté par Julien Jorge (site web personnel) . En réponse au journal Alexandre Astier est un bépoiste convaincu. Évalué à 7.
Comme d'autres je suis passé au bépo sans changer de clavier ; c'était vers 2010. Chez mois j'ai juste mis le layout bépo, et au boulot et bien je mets le layout bépo aussi :)
Ça m'a pris deux semaines pour être à l'aise avec l'alphabet. Pour les symboles c'était un peu plus long mais ça rentre quand même, au fur et à mesure du besoin. Aujourd'hui je ne sais toujours pas taper facilement le symbole « ° » pour les degrés (genre là j'ai tapé « º″′≠¸˘MÇWZ
°
`°° » pour le retrouver).Certains modifient les raccourcis claviers pour qu'ils correspondent aux touches physiques du clavier (c'est à dire qu'ils font Ctrl + la touche C pour copier, qui est équivalente à Ctrl + le symbole X en bépo). Perso j'ai gardé les mêmes raccourcis (je fais Ctrl + la touche H pour copier), parce qu'au final je me moque de ce qui est écrit sur les touches.
J'ai appris avant la normalisation AFNOR. Malheureusement cette normalisation change quelques détails, comme inverser la position de l'apostrophe courbe et de l'apostrophe droite. Du coup la transition m'est pénible et je reste à la version 1.0 du layout.
Quand je me retrouve sur l'ordi d'un collègue en azerty je deviens tout lent, beaucoup plus qu'avant de passer au bépo, mais c'est tellement rare que ça ne me dérange pas.
Quand c'est un collègue qui se retrouve sur mon ordi, il n'arrive à rien et me rend la main ; ce qui me convient bien :)
Vas-y, lance-toi !
# Par rapport à la concurrence ?
Posté par Julien Jorge (site web personnel) . En réponse à la dépêche Sortie de YOGA Image Optimizer 1.0. Évalué à 6.
Faire mieux que libjpeg et libpng c'est déjà pas mal, mais que donne la comparaison avec jpegoptim, pngcrush, et autres optimiseurs ?
[^] # Re: Hibou (chouette)
Posté par Julien Jorge (site web personnel) . En réponse au journal Compter en C++, de 98 jusqu'à 11. Évalué à 7.
Merci pour le retour :) Les fichiers d'exemples extraits sont en effet compilés, via la fonction
add_example()
du CMakeLists.txt.La fonction
int main()
sansreturn
, c'est standard ! C'est la seule fonction qui retourne implicitement 0 si on ne met rien (cf [basic.start.main]). Néanmoins ça fait quand même bizarre, je vais mettre desreturn
pour éviter les surprises.[^] # Re: :)
Posté par Julien Jorge (site web personnel) . En réponse au journal Compter en C++, de 98 jusqu'à 11. Évalué à 5.
Merci pour ces intéressants retours, j'intégrerai les corrections à tête reposée.
Concernant l'anglais, je te rejoins tout à fait sur l'utilité de créer des ressources accessibles pour les plus jeunes. En plus ça aurait l'avantage de les
modeler à ma sauceformer d'une manière plus en phase avec ma propre façon de faire :) C'est aussi utile pour ceux qui ont plus ou moins de mal à lire l'anglais. Même si cela vaut le coup, effectivement, d'investir sur l'anglais quand on fait de l'informatique ; tout le monde n'a pas la même affinité avec la langue.Comme indiqué dans le journal, à la base le public était franco-étranger. Dans cette situation c'est l'anglais qui fait l'union, il n'y a pas trop le choix. Après je vois ça aussi comme un moyen de pratiquer moi-même et de m'améliorer.
Mais ne t'arrête pas malheureux ! Lance une traduction en français, ça serait top :) Si tu veux je te prépare même un dossier fr dans le dépôt.
[^] # Re: Range-based loops?
Posté par Julien Jorge (site web personnel) . En réponse au journal Compter en C++, de 98 jusqu'à 11. Évalué à 3.
Bien vu ! Merci :)
[^] # Re: Zut alors
Posté par Julien Jorge (site web personnel) . En réponse au journal Compter en C++, de 98 jusqu'à 11. Évalué à 7.
Décidément, LinuxFr se meurt ! Heureusement qu'il reste la discussion sur l'anglais :)
[^] # Re: CC BY-CA
Posté par Julien Jorge (site web personnel) . En réponse au journal Compter en C++, de 98 jusqu'à 11. Évalué à 3.
Comme tu vois, l'écriture et la relecture ce n'est pas trop mon truc :D
Merci pour les retours.
[^] # Re: La vraie question
Posté par Julien Jorge (site web personnel) . En réponse au lien De quoi changer les regards sur les gens qui font de l'informatique :-). Évalué à 9.
Je ne capte pas trop pourquoi le ton monte là.
Il y a tellement de sujets pas clairs dans cette courte discussion. Le message de devnewton est-il ou n'est-il pas une blague ? Est-ce drôle ? Est-ce malvenu ? « Logiciel libre » signifie-t-il que l'instance du logiciel est libérée de son créateur ou bien que l'utilisateur peut l'exploiter à sa convenance ? Peut-on plaisanter au sujet de la tenue de quelqu'un ? D'une personnalité publique ? Est-elle une personnalité publique ?
Quoi qu'il en soit, je doute que cela vaille le coup de s'échauffer à ce point et je me concentrerai sur les messages de Gil Cot et Jean-Baptiste Faure qui répondent parfaitement à la question de devnewton.
[^] # Re: Emacs distant par ssh, il y a mieux
Posté par Julien Jorge (site web personnel) . En réponse au journal Les doutes d'un gars qui écrit: sérieusement se mettre à Emacs, ou pas ?. Évalué à 2.
Idem pour moi, j'ai tenté ça avec un Emacs sous Windows et ça freeze à chaque fois. Si quelqu'un a une idée pour corriger cela, ça m'intéresse.
# Oui
Posté par Julien Jorge (site web personnel) . En réponse au journal Les doutes d'un gars qui écrit: sérieusement se mettre à Emacs, ou pas ?. Évalué à 9.
Oui, je t'encourage à passer à Emacs ou Vim (peut-être même que je mets Emacs juste parce que je n'ai jamais eu le courage de passer à Vim…)
Je l'utilise pour tout ce qui ressemble à du texte. Que ce soit du code, un livre, des fichiers de config, quelques notes prises à la volée.
J'ai utilisé des IDE (notamment Eclipse, des trucs de JetBrains, VS Code), j'ai utilisé d'autres éditeurs (notamment Gedit, nano, Notepad++), et j'ai utilisé du wisiwyg (notamment Word, LibreOffice). J'en reviens toujours à Emacs. J'apprécie en particulier d'avoir tout sous les doigts, dès lors que j'ai trouvé le raccourci ou la commande. Les fonctions de recherche et de remplacement sont géniales, la complétion dans n'importe quel document est bien confortable.
Le top du top pour moi est sûrement le côté épuré. Pas de barre d'outil encombrée, pas d'arborescence de fichiers, pas de barre d'onglets qui déborde, pas de minimap, pas de notif, pas de « attends je build des trucs en arrière-plan, reviens dans dix minutes », pas de barre de progression, pas de popup recouvertes de cases à cocher. Pas de caractères '}' ou '"' qui poppent sans que je les demande. Tous ces trucs pour Augmenter La Productivité™, très peu pour moi, merci. Quand j'ouvre Emacs je commence à faire ce que je suis venu faire dès la première seconde, et je ne touche plus à la souris jusqu'à en sortir. C'est parfaitement efficace. Et ça marche sur mon ordi, en graphique, dans un terminal, ou même à distance via ssh.
Côté inconvénients, le plus pénible est sûrement que les raccourcis ne correspondent à rien d'autre. Tu coupes du texte dans Emacs avec Ctrl+W, si tu fais la même chose dans Firefox ça ferme l'onglet. Au revoir le long message que tu rédigeais. Je remarque aussi que l'édition à distance est parfois délicate parce que les combinaisons de touches sont récupérées par le terminal au lieu d'être envoyées. Et il y a aussi les perfs qui sont parfois décevantes. L'ouverture est un poil longue, et certains fichier font bien ramer l'éditeur.
[^] # Re: Infos complémentaires
Posté par Julien Jorge (site web personnel) . En réponse à l’entrée du suivi Afficher « zéro » à la place du score négatif des journaux. Évalué à 2 (+0/-0).
Effectivement je suis passé à côté de l'indexation du résumé, c'est un problème. Je mets de côté le masquage de contenu, laissons-le comme il est (i.e. négatif -> masqué).
Je prends les 225 derniers journaux (environ 4 mois) et je vois 8 comptes qui ont posté 11 contenus négatifs. C'est pas énorme. Ces comptes sont plus ou moins vieux (inscrits de 2002 à 2020), il n'y a pas plus d'un compte de spammeur dans le tas. On peut dire que les autres font « partie du site », et ils ont parfois proposé d'autres contenus. Je me demande comment ils perçoivent les notes. En stats anonymes je sors ça (
note
est la note du journal négatif dans les 225) :En dehors d'un seul compte, tous ont contribué via plusieurs journaux ou dépêches. 5 de ces 8 comptes ont eut leur pire note dans la période considérée. Ce n'est pas visible dans le tableau mais tous sauf 1 compte ont proposé des contenus notés positivement.
Nous avons donc des contributeurs qui participent de manière positive, qui parfois dérapent et se font moinser à ce moment. Dans la mesure où une mauvaise expérience a un impact plus fort qu'une bonne expérience, je pense que nous perdons de bonnes contributions ici. D'ailleurs au moins un des comptes ci-dessus (D) a mal digéré une note négative et est revenu à la charge avec d'autres contenus négatifs.
Je pense qu'on peut réduire cet effet décourageant et garder l'intérêt technique en bornant les notes négatives. Si tous les journaux négatifs étaient présentés avec une note de -1, ils resteraient masqués pour l'indexation et les spammeurs, et l'effet sur les posteurs serait moins démoralisant. Alternativement, les journaux pourraient être postés avec une note de 1 par défaut, bornés à zéro et masqués à zéro.
[^] # Re: Infos complémentaires
Posté par Julien Jorge (site web personnel) . En réponse à l’entrée du suivi Afficher « zéro » à la place du score négatif des journaux. Évalué à 0 (+0/-0).
Merci pour les stats.
Je vais reformuler ma demande sous forme de question : quel message faisons-nous passer à un contributeur en notant son contenu à -50 plutôt que 0 (ou même -1) ? En quoi est-ce plus bénéfique que de borner l'affichage à zéro ?
Autant je vois bien l'intérêt de la gradation pour les notes positives, i.e. le contenu est mollement/assez bien/bien/très bien accueilli, essaye encore ou continue comme ça, autant je doute des bienfaits d'une gradation dans la médiocrité. Un contenu malvenu est malvenu, il n'y a pas tellement de nuances.
Question subsidiaire, quel message faisons nous passer à ceux qui participent généralement positivement et dérapent occasionnellement ?
En l'état je trouve que pouvoir moinser un journal déjà bien négatif c'est un peu comme taper quelqu'un à terre. Nous pouvons être bienveillants et nous assurer que les contributeurs ne se font pas humilier, tout en gardant l'utilité des notes pour le SEO, les meilleurs contributions, etc.
[^] # Re: et avec les fold-expressions ?
Posté par Julien Jorge (site web personnel) . En réponse au journal Constexpr versus template. Évalué à 4.
Je ne suis pas sûr que ce soit judicieux de mettre les folds dans la comparaison. Autant je m'attends à pouvoir convertir en fonction constexpr n'importe quel calcul fait via des templates, autant je doute que n'importe lequel de ces calculs puisse être converti en fold expression. Du coup les approches ne sont pas vraiment comparables :)
[^] # Re: Pas si simple.
Posté par Julien Jorge (site web personnel) . En réponse au journal Constexpr versus template. Évalué à 2.
De souvenir, la limite d'instantiations récursives de template est à 900 par défaut dans g++. Il y a une option de compilation pour la changer.
Un commentaire sur Reddit sur ces sujets de métaprogrammation fait référence à https://github.com/tcbrindle/raytracer.hpp où il est question de memoïsation des évaluations des constexpr dans gcc. Je ne sais pas si ça a été implémenté finalement ; ça irait à l'encontre de tes résultats, il y a peut-être autre chose en jeu.
J'y apprends aussi que clang a une limite sur le nombre d'évaluations de constexpr.
[^] # Re: Pas si simple.
Posté par Julien Jorge (site web personnel) . En réponse au journal Constexpr versus template. Évalué à 2.
Bien vu ! Le fait que le coût n'impacte que la première instanciation des templates fait sens, j'aurais dû y penser :)
[^] # Re: une expérience de plus
Posté par Julien Jorge (site web personnel) . En réponse au journal De la difficulté à grandir.... Évalué à 5.
J'ai leurs rapports publics et leur formulaire 990 de 2018.
Non, enfin je crois que ce n'est jamais beaucoup quand on prend les charges en compte, forcément ça atténue. Ce que je voulais dire c'est que lorsqu'on voit passer 27 millions de dollars de revenus, je comprends qu'on puisse se laisser emporter à croire que tout va bien pour eux, sans regarder dans le détail.
Pas que je sache.
Je suis d'accord qu'il y a un double standard. C'est vrai que si Jeff Bezos fermait Amazon parce qu'il fait un burnout personne n'irait dire qu'il fait le bon choix :)
Le contenu à propos des licenciements chez Mozilla, ça ne serait pas celui là ?
[^] # Re: une expérience de plus
Posté par Julien Jorge (site web personnel) . En réponse au journal De la difficulté à grandir.... Évalué à 7.
Perso ce double standard ne m'étonne pas, parce que ce n'est simplement pas le même problème. Entre le patron qui ferme des bureaux/usines pour augmenter ses profits et celui qui ferme sa boîte pour ne pas devenir fou, il n'y a rien de comparable.
Entre les deux il y a la boîte en galère, par exemple Mozilla, qui vire du monde parce que ça va mal mais qui brasse malgré tout beaucoup d'argent (beaucoup du point de vue du quidam moyen), et ça suscite encore un autre type de réactions.
Le seul point commun dans tout ça c'est que des gens doivent repartir chercher du travail, peu importe la cause, mais c'est la vie. Et je n'irai pas suggérer à quelqu'un mal en point mentalement de se sacrifier au profit d'un tiers, autrement à la fin tout le monde perdrait. Ce n'est pas quand t'es tombé dans le fossé qu'il faut commencer à freiner.
S'il a jugé qu'il fallait couper court pour tenir sur pied, peut-être qu'il a pris la bonne décision. Je ne suis pas dans sa tête et je lui souhaite d'avoir retrouvé la santé, autant que je souhaite aux employés d'avoir pu se relever.
[^] # Re: Comme une impression de déjà vu :)
Posté par Julien Jorge (site web personnel) . En réponse au journal De la difficulté à grandir.... Évalué à 4.
En faire un logiciel libre est un début de réponse à la question « Que se passe-t-il si je disparais de la nature ? » Ce n'est pas une garantie que le logiciel continuera à vivre où à être maintenu, loin de là, mais au moins il ne disparaîtra pas.
[^] # Re: IPOT ?
Posté par Julien Jorge (site web personnel) . En réponse au sondage Faut-il remplacer la police d'écriture "Lato Light" par "Lato" sur LinuxFr ?. Évalué à 5.
Au temps pour moi. Je me suis dis qu'il fallait dépiler les sondages alors j'ai publié un ancien, sans vérifier la date. Un autre sondage devrait le remplacer sous peu.
[^] # Re: utilité du chiffrement ?
Posté par Julien Jorge (site web personnel) . En réponse au journal Allez, il fallait bien que ça arrive. Évalué à 10.
Je chiffre le disque au cas où je me ferais cambrioler. À moins que le voleur ne l'embarque en le maintenant allumé, trouve le mot de passe de la session ou un autre moyen de se loguer, il ne devrait pas pouvoir récupérer mes trucs.
En terme de source d'emmerde ça n'est pas énorme non plus. À côté de ça, en dix ans j'ai eu un ordi volé (de boulot, pas chiffré), et un ordi jeté, pas chiffré non plus. Pour ces deux là je ne saurais dire si ce qu'ils stockaient a disparu ou si ça a été copié et conservé, et ça me perturbe un peu. Il n'y avait plus grand chose de personnel dessus mais je préfère être prudent pour les prochains.
[^] # Re: Debian
Posté par Julien Jorge (site web personnel) . En réponse à la dépêche Mise à niveau : LinuxMint vous notifie. Évalué à 5.
Cette popup m'agace aussi pour quasiment les mêmes raisons : quand je veux éteindre, c'est pour éteindre, souvent parce que je pars faire autre chose. Et j'ai aussi un disque chiffré qui m'oblige donc à attendre la demande de mot de passe au redémarrage, donc c'est hyper frustrant.
Si le but est de faire l'installation à froid, pourquoi ne pas la programmer pour le prochain démarrage plutôt que d'imposer un redémarrage sur le moment ?
[^] # Re: L'objectif de la revue de code
Posté par Julien Jorge (site web personnel) . En réponse au lien Mais la revue de code, ça sert à rien ?. Évalué à 8.
Je te rejoins complètement, et ce n'est pas le seul truc qui me chiffonne dans cet article.
Ça c'est n'importe quoi aussi. J'ai vu un paquet de fois des belles planifs sur tableau blanc tomber à l'eau dès la première ligne de code. Croire qu'on peut résoudre toutes les questions d'implémentation sans coder, et que si ça ne marche pas c'est qu'il fallait réfléchir mieux, c'est se fourvoyer. C'est même la raison pour laquelle on ne fait plus de cycle en V.
Pour moi la question de la conception doit se faire « en gros », et le moment du chiffrage est un bon moment pour échanger là dessus : on communique sur les approches et on élimine les plus gros problèmes.
Les daily/le stand-up sert à remonter les soucis qu'on rencontre sur le terrain : on communique sur les problèmes, on les élimine ou on les contourne.
La revue sert à partager l'information et affiner des détails : on communique sur comment les choses sont faites en pratique. C'est autant au bénéfice du relecteur que du codeur.
Dans toutes les boîtes où je suis passé ces trois étapes étaient la raison pour laquelle les projets étaient fluides. Trois points de synchro pour communiquer et le reste du temps on est bien tranquille. Les seuls soucis que j'ai eu étaient des galères d'humains de mauvaise volonté qui se pointaient au stand-up en râlant à propos du commercial (c'est pas le sujet) ou du patron (toujours pas le sujet), ou encore des gens qui ne voulaient pas retoucher à leur code crado en revue parce que « boaf, ça marche comme ça », voire des héros fiers bloqués en refusant d'échanger à propos de leurs galères. Au final ça me semble simple : si tu joues en équipe, ça marche bien, sinon c'est la merde.
[^] # Re: Revenons aux rouleaux
Posté par Julien Jorge (site web personnel) . En réponse au journal De l'affichage des documents. Évalué à 10.
C'est cool les rouleaux, combinés avec la tendance « on a des écrans horizontaux/larges, ça n'a pas de sens de restreindre la longueur des lignes », il y a moyen de se retrouver avec des rouleaux rédigés « en paysage ».
Cinq mètres de texte avant de revenir à la ligne, parce qu'on est au 21è siècle bon sang :D
# Pause
Posté par Julien Jorge (site web personnel) . En réponse au journal La Bourse ou la vie ?. Évalué à 10.
Ceci n'est pas un message de la modération
Bonjour papap,
On dirait que tu subis une belle série de journaux négatifs depuis quelque temps. J'en suis navré. Les sujets abordés ne semblent pas trouver pas écho parmi les lecteurs du site.
Je trouve personnellement bien dommage que tu restes dans cette voie. Tes contributions au libre étaient plutôt intéressantes et j'appréciais de lire tes articles sur les jeux vidéo et autres sujets annexes. L'effort de regrouper des jeux sous Linux sur un même support me semblait intéressante, ou du moins constructive, même si le support était discutable.
As-tu des chiffres pour appuyer ces propos ? De mon humble expérience, la visibilité apportée par une publication ici n'est pas si remarquable que ça. À la grande époque de Plee the Bear et de LinuxFr.org la première annonce n'avait amené que quelques milliers de hits.
Bref, revenons à tes journaux. Insister sur ces sujets ou pointer des hypothétiques défauts du système de notes, de karma, ou autres trucs de ce site, ne t'amèneront rien de positif. Si tu vois des soucis je t'invite à ouvrir une entrée de suivi et à y suggérer une alternative ou un correctif. Si tu veux parler de complots, de manipulations, dans n'importe quel domaine, je t'invite à y réfléchir à deux fois. Si tu veux parler de technique et de sujet libres, alors bienvenue parmi nous :)
# À bas les roues en bois
Posté par Julien Jorge (site web personnel) . En réponse au journal Du chemin à emprunter pour les développeurs débutants vers un premier emploi... . Évalué à 10.
Cet argumentaire de « ne pas réinventer la roue » est pour moi un automatisme malvenu que les gens de conseil sortent à tout va pour se donner du crédit. Je pense au contraire que si tu es débutant tu as tout intérêt à réimplémenter des choses existantes ; c'est ce qui te fera passer du stade « connaître » au stade « comprendre ».
À titre d'exemple, j'ai appris à l'école ce qu'étaient des arbres binaires équilibrés mais ce n'est qu'en implémentant un AVL que j'ai compris comment ça fonctionnait. Pourtant mon implémentation n'était qu'une roue mal fichue, mais je l'ai utilisée, j'ai rencontré des problèmes qui m'ont amené à encore plus de réflexion, je l'ai confrontée à des outils plus mûrs pour en apprendre d'avantage.
J'ai aussi codé le chargement d'images bmp, tga, pcx, gif et autres. Cela n'a aucun intérêt dans un projet puisque de nombreuses bibliothèques le font déjà bien et que certains formats sont complètement obsolètes, et en plus je connaissais déjà tous ces formats. Et pourtant ça m'a fait me confronter au RLE, à LZW, à la question de la représentation des couleurs, aux formats palette, rgb16 et autres. À l'époque je confrontais mon code aux temps de chargement d'ACDSee, ce qui m'a amené à la question de l'optimisation. C'était aussi un bon exercice de suivi de specs puisque tous ces formats sont bien définis et que les documents techniques sont disponibles. Il y a en particulier plein de variantes de gif et j'avais dû rassembler de nombreux exemples pour valider l'implémentation.
Réinventer la roue c'est aussi apprendre à gérer un projet. Si tu te dis, par exemple, « je vais implémenter une messagerie instantanée » tu vas devoir poser un cadre. Est-ce que le client tourne dans un terminal, une app desktop, un navigateur ? Comment le serveur fonctionne-t-il ? Gères tu les sockets toi-même, utilises-tu des bibliothèques pour cela ? Est-ce que tout passe par le serveur ? Est-ce du pair à pair ? Comment gères-tu la sérialisation ? T'appuies-tu sur un protocole existant ?
Savoir poser des limites, sélectionner des fonctionnalités et cadrer le projet pour l'amener à terme, c'est aussi quelque chose qui se comprend en pratiquant.
Enfin même de manière professionnelle il m'est arrivé de réimplémenter des choses pour des raisons de coût : nous commencions avec l'outil d'un tiers puis nous le remplacions par quelque chose rendant le même service pour un coût moindre et des performances meilleures.
Moi je crois que les bons sportifs ne sont pas dans les gradins à manger des chips. Je crois que les bons musiciens jouent tous les jours, reprennent des morceaux existants qu'ils jouent du mieux qu'ils peuvent, avec des accords ratés et en passant à côté de subtilités. Ce n'est sans doute pas aussi bien que le morceau original mais ça peut quand même être une belle reprise, et surtout ça les rend meilleurs à ce qu'il font.
Alors si tu es débutant, et d'ailleurs ça marche aussi si tu es expérimenté, et que tu réponds à une offre de la boîte où je travaille, mon conseil est d'avoir :