Non, en tout cas pas seulement. J'ai pu constater la différence entre ma Twingo 2 et une vieille Toyota utilisée au Cameroun.
Sur la Twingo 2, la batterie est dans une boîte, et fixée par un écrou qui est au fond de cette boîte. C'est casse-pied à démonter, et encore plus à remonter, et il s'agit pourtant d'une opération des plus banales. Le moteur, quand à lui, est également dans une boîte, très casse-pied à ouvrir. J'ai voulu changer le filtre à air moteur, et je me suis rendu compte que j'allais en avoir pour plus d'une heure pour dégager l'accès à cette pièce.
Sur la vieille Toyota au contraire, tout était directement accessible. Je n'y ai effectué aucune réparation, mais j'en ai vu faire, et c'était visiblement conçu pour être réparé facilement.
Ce que je trouve incroyable, c'est que les constructeurs automobiles ont des garages auto, avec des garagistes qui doivent souffrir au quotidien des difficultés de réparation. Lorsqu'on aime la mécanique, passer une heure à démonter un tas de trucs juste pour avoir accès à un filtre à air n'a rien de plaisant. C'est du temps facturé, certes, mais même en étant payé pour, passer du temps à effectuer un travail fastidieux pour pallier des défauts de conception d'un appareil n'a rien de satisfaisant, c'est même plutôt frustrant.
(C'est comme parcourir la documentation Java pour parvenir à déterminer que pour créer un document XML, il faut utiliser un truc comme xml.DocumentBuilderFactory.getInstance().newDocumentBuilder().createDocument() : frustant, on a l'impression d'avoir passé du temps à ramer contre le courant)
un agent qui ne soit pas du réseau peut-il réparer (voiture et/ou pièces) ?
Euh, oui ? Pourquoi un garagiste quelconque ne pourrait-il pas réparer n'importe quelle automobile ?
puis-je réparer moi-même (voiture et/ou pièces) ?
Ben, oui aussi, si le cœur t'en dit. Je veux dire, si c'est techniquement faisable par un mécano du réseau du fabricant, pourquoi ne le serait-ce pas par n'importe quel mécano, pro ou amateur ?
Eh bien, c'est là que l'indice de réparabilité est intéressant. Plus le téléphone est facile à réparer, moins la prestation de remplacement d'écran est onéreuse.
Sur mon Fairphone 3 par exemple, si je demande un remplacement d'écran, le réparateur devra sans doute en commander un nouveau, mais ensuite, il va me faire payer ça le prix de l'écran, plus un quart d'heure de main d'œuvre. Une cinquantaine d'euros je pense.
Sur un téléphone à coque collée, batterie collée, tout collé, il fera payer ça le prix de l'écran, si tant est qu'il soit vendu séparément d'ailleurs (sinon ce sera encore plus cher), plus une heure de main d'œuvre. On doit facilement atteindre les deux cents euros.
Je ne comprends pas trop le raisonnement, plus il y a de vitesses et plus tu te rapproches d'une transmission continue, non?
Pas vraiment. Avec une transmission à braquets discrets, le changement de braquet nécessite une opération, qui peut éventuellement être plus ou moins automatisée, mais qui se ressent. Avec un dérailleur, on ne peut pas changer de pignon en effort (ou du moins, pas proprement, ça va vraiment se sentir, et la mécanique n'aime pas ça), ni à l'arrêt. Avec une boîte de vitesse, on peut changer à l'arrêt, mais pas en effort (enfin pareil, pas proprement).
Avec un variateur, autant que je sache, la transition ne se ressent que par son effet souhaité, à savoir la variation de la démultiplication d'effort et de développement.
J'ai peur que ça soit beaucoup un argument marketing. Tu as le choix entre un vélo 11 vitesses et un vélo 12 vitesses pour le même prix, tu as l'impression que tu as quelque chose de mieux avec 12 vitesses.
Pas moi. Pignons plus fins, chaîne plus fine, c'est moins durable.
Après, on n'est pas des voitures, on a du couple à bas régime en vélo, donc on n'a pas besoin de rétrograder pour démarrer après chaque stop. Heureusement d'ailleurs, parce qu'autrement les dérailleurs ne survivraient pas à ce traitement…
Si, c'est presque ce que je fais, presque exclusivement en ville avec un tas de carrefours à feux, et ça a tenu 50.000 kilomètres sans problème !
Enfin, un dérailleur arrière résiste sans problème. Après tout, c'est une pièce qui ne fait que bouger selon un ressort et un câble. Le levier de dérailleur en revanche, a une indexation et des cliquets dont je m'attends à ce qu'ils souffrent davantage.
Autant que je sache, des boutique où on change les écrans des téléphones, il y en a au moins autant que de vélocistes, pourtant. Et pour changer l'écran fêlé d'un Damsung Supernova W42 à 900 €, je pense que les gens devraient être intéressés pour un prix inférieur à quoi, 300 € ? Entre racheter un téléphone 900 € et remplacer l'écran pour le tiers de son prix, le choix est vite fait non ?
Si c'était vrai, pourquoi les équipementiers ont investi des centaines de millions d'euros sur les transmissions continues depuis des dizaines d'années?
Une transmission continue, je suis d'accord, ça a un intérêt majeur. C'est beaucoup plus simple à utiliser.
Mais passer de 9 à 10, puis 11, puis 12v, c'est pour moi aussi intéressant que de passer à des rasoirs à 2 lames, puis 3, puis 4, puis 5… Ça coûte plus cher, c'est tout.
Entre 3 et 5v, d'accord, c'est un peu grossier comme étagement. À 7, ça me suffisait, sauf qu'à 7v, c'est toujours de la cassette intégrée à la roue libre, une technologie qui est une aberration mécanique. Donc 8v+, c'est significativement mieux. 8v m'auraient suffis, j'ai du 9v, a fortiori ça me suffit. Aucune intention d'aller au-delà, en tout cas par remplacement volontaire de ma transmission. Si mon prochain vélo a du 10v, pourquoi pas, mais ce n'est pas un critère d'achat.
Justement, c'est tout récent de voir ce genre de score chez Apple, et c'est une grosse surprise en fait.
Ce constructeur était connu pour des trucs comme l'introduction des vis à tête pentalobe pour compliquer la réparation (il n'y a pas d'autre intérêt à ces têtes, si le but était d'atteindre un couple élevé, il y a Torx pour ça), et de les avoir même utilisées en remplacement de vis à tête cruciforme sur les appareils de clients qui leur avaient confié en SAV.
Et là, tout d'un coup, virement de bord, Apple sortent des trucs conçus pour être un peu mieux réparables. C'est une surprise, un très bonne surprise, et qui à mon avis vient de la prise de conscience autour de ce sujet de la réparabilité. L'introduction d'un score de réparabilité fait partie de cette prise de conscience, donc ça me semble pertinent, même si c'est imparfait.
Parce que les diamètre internes des boitiers sont pas les mêmes chez SRAM et Shimano… Donc si tu veux passer à un pédalier SRAM alors que tu avais du Shimano avant, pour je ne sais quelle raison, tu es obligé.
« Pour je ne sais quelle raison » : tout est là.
Disons, pour prendre un exemple plus direct, si tu veux passer à d'une transmission 9 vitesses à 12 vitesses, tu vas devoir changer dérailleur + manettes + cassette + peut-être corps de cassette/roue.
Même remarque. 9 pignons avec 3 plateaux, ça fait quelque chose comme 13 braquets distincts utilisables et régulièrement répartis si les tailles ont été choisies intelligemment. C'est largement suffisant, passer à 12 pignons me semble inutile, et nuisible puisque la chaîne, plus fine, sera moins durable.
On est dans le domaine des caprices de riche ou de passionné de performance, là, pas du tout de la réparation.
Ben, la capacité à faire évoluer ton matériel, c'est important pour sa durée de vie aussi.
Pour un ordinateur, d'accord, parce que les besoins évoluent, les logiciels évoluent en fait, vers toujours plus d'obésité. En outre, le matériel évolue également, de sorte que lors d'une évolution, on investit une somme raisonnable dans un matériel qui sera deux fois plus performant. On peut mettre 150 € pour doubler les performances d'un ordinateur.
Pour un vélo, je trouve que la situation n'a rien à voir : le terrain reste le même, et le matériel plus haut de gamme permet, en doublant le prix, d'obtenir un gain marginal en efficacité. On peut mettre 150 € pour remplacer sa transmission et gagner 5% de performance. Allez, peut-être 10%. Mais certainement pas pour doubler la vitesse qu'on atteint à effort identique.
Il y a bien un remplacement que je trouve très utile, c'est celui d'une cassette à roue-libre intégrée 7v (mécaniquement parlant, c'est nul, d'où l'intérêt du remplacement) par une cassette encastrable 8v+. Et ça, c'est effectivement coûteux : on se retrouve à changer la roue, la cassette, le levier de dérailleur arrière et éventuellement le dérailleur. D'où l'intérêt de ne surtout pas acheter un vélo avec 7v-, en fait.
Ah, ok. J'étais plutôt dans l'idée de la réparabilité, là c'est un autre sujet en fait.
Par exemple, si tu veux passer d'un pédalier Shimano à SRAM, tu vas devoir changer aussi ton boitier de pédalier.
Pourquoi voudrait-on faire ça ? Je change mon boîtier de pédalier s'il est usé, c'est tout. C'est pour gagner 100 grammes ou 2 watts en dépensant 50 € ?
Ou si tu veux mettre un pédalier GRX (gamme gravel) de chez Shimano, alors que tu as du 105 ou du Dura-Ace, tu vas devoir changer le dérailleur et la manette aussi.
Même question sur la finalité de l'opération. Surtout que c'est parti pour coûter encore plus cher. On s'éloigne de plus en plus du concept de réparation.
Pour la cassette, en fonction du modèle, il faut parfois des outils spécifiques (un démonte-cassette du bon modèle, et un truc pour bloquer la roue libre).
Ça s'appelle un fouet à chaîne.
Au contraire, il faudrait un réseau de réparateurs de vélos qui peuvent s'occupper de l'entretien pour une somme raisonnable, même si ça consiste à graisser la chaine et de régler la butée des dérailleurs.
Justement, ça existe. Mieux encore, il y a plein de vélocistes partout et pas mal d'ateliers participatifs. Le vélo est un excellent exemple des bienfaits de la réparabilité : on peut réparer soi-même si on a la fibre du bricoleur, on peut se faire aider, et on peut faire appel à un pro.
Bon, alors ça va dépendre de l'urgence. La roue est légèrement voilée ? Vite fait, agir sur les quatre rayons de la zone concernée suffit.
Ça fait trois ans que la roue n'a pas été dévoilée, ou elle est plus sévèrement voilée ? On resserre d'abord tous les rayons en sous-tension, et ensuite un dévoile méthodiquement.
Pour le problème des deux dimensions du dévoilage, c'est à mon avis un faux problème. Si la roue a été bien montée au départ, elle n'a pas de ressaut. Si, pour corriger un voilage, on agit en détendant et en tendant des rayons adjacents, on ne crée pas de ressaut non plus.
Après, si vous avez une roue complètement voilée et avec en plus du ressaut, c'est évidemment un enfer à corriger. Mais en usage normal, je n'ai jamais vu ça. Et si je me casse la figure et que ça met ma roue en 8, je ne vais pas essayer de la réparer, c'est justement le genre de cas où je la remplace en entier.
Et d'ailleurs, l'analogie avec le vélo est d'autant plus pertinente, que dans les deux cas, il y a des choses qui se changent bien indépendamment du reste et des blocs incompatibles qu'il faut changer ensemble (je pense notamment à la transmission),
Faux. En tout cas si le vélo est correctement entretenu. J'explique.
La chaîne s'use naturellement en roulant, ce qui peut être mesuré par l'augmentation de sa longueur, parce que l'usure consiste essentiellement en un rainurage des goupilles qui relient les maillons : une goupille rainurée, ça crée du jeu, et le jeu en question, pour une chaîne sous tension, c'est de la longueur supplémentaire.
Bref, en s'allongeant, la chaîne s'emboîte moins bien dans les pignons et les plateaux. En-dessous de 5‰ d'allongement, ça n'use pas excessivement les pignons. Au-delà de 5 ‰ d'allongement, ça va commencer à rogner ces derniers, il est temps de changer la chaîne pour éviter de les user. Au-delà de 1% d'allongement de la chaîne, celle-ci est toujours à changer, mes les pignons devront certainement être changés en même temps. Quant aux plateaux, ils s'usent moins vite et leur usure a moins de conséquences. Il faut aussi les changer de temps en temps, selon leur état, qui peut se constater à la forme de leurs dents.
Bref, sur un vélo bien entretenu, il n'y a aucun raison de changer toute la transmission à chaque fois :
lorsque la chaîne est usée, on la change et elle seulement ;
toutes les trois ou quatre chaînes, il peut être nécessaire de changer les pignons, selon leur usure constatée, et éventuellement les galets de dérailleur ;
toutes les six à dix chaînes, il peut être nécessaire de changer les plateaux, également selon leur usure constatée (à noter qu'il est possible de changer les plateaux seuls, sans racheter un pédalier entier évidemment, même si c'est ce qu'on trouve dans la plupart des grands magasins de sport).
Sur un vélo mal entretenu ceci dit, il est fréquent de ne changer la chaîne que lorsqu'elle finit par casser. Dans ce cas, évidemment, elle a alors atteint un niveau d'usure et d'élongation déraisonnable, et les pignons et plateaux sont à changer en même temps. Ainsi que les galets de dérailleur d'ailleurs.
Ça m'est arrivé de casser 3 rayons en me gamellant, par exemple.
Ah, en effet. Mais disons qu'après une chute qui aura suffis à casser des rayons, je m'attendrais à ce que la jante soit voilée, voire fêlée, au point de ne plus pouvoir être utilisée en toute sécurité. À remplacer, donc en pratique, la roue entière.
Mais même sans casser de rayons, dévoiler une roue c'est quand même chaud, et ça ça va arriver assez régulièrement.
Pas plus compliqué que ça. Il faut de la patience, c'est tout, mais ce n'est vraiment pas compliqué. On vérifie que l'étrier de frein est centré, vélo à l'envers, on fait tourner la roue, quand ça frotte d'un côté on agit sur les rayons qui entourent l'endroit concerné : on desserre les rayons du côté où ça frotte et on resserre les rayons de l'autre côté.
L'autre exemple qui m'est arrivé c'est pour un dérailleur nexus défaillant. Tu peux acheter le Nexus tout seul ou déja monté sur une roue, bah bon courage pour monter les rayons et dévoiler la roue.
Oui, alors ça c'est vraiment l'exemple du truc casse-pied à remplacer en effet. J'ai déjà fait l'inverse, à savoir changer la jante d'une roue équipée d'une dynamo de moyeu. Dans ce sens-là, c'est long, mais pas excessivement compliqué. Dans l'autre sens, il faut remettre tous les rayons, autrement dit remonter complètement une roue, ce qui doit être le sommet de la technique de mécanique vélo.
Il y aurait bien un plan pour éviter le surcoût des composants séparés : acheter deux vélos au départ. Un pour rouler dessus, l'autre pour servir de pièces détachées…
La comparaison est intéressante, en effet. Mais on est d'accord qu'il y a des différences majeures entre les gadgets électroniques et les vélos?
Pas tant que ça. Je me souviens de mon premier ordinateur fixe. Disque dur PATA de 6 Go, lecteur de CD PATA également. Un ou deux ans plus tard, les 6 Go commençant à être un peu petits, j'achète et j'installe un nouveau DD. Puis arrivent les DVD : j'achète et j'installe un lecteur de DVD. Pas possible de les lire, carte graphique pas assez puissante. Pas de problème, je change la CG. Quelques années plus tard, le processeur et la mémoire commencent à être insuffisants, je remplace carte mère, processeur et mémoire.
Finalement, je remplace aussi le boîtier, j'achète un graveur de DVD, je me débarrasse du lecteur de CD. Il ne reste alors plus que le lecteur de disquettes et la carte son d'origine, il me semble.
J'ai continué comme ça assez longtemps, et je suis récemment passé au reconditionné, parce qu'une chose a changé : un PC de cinq ans me convient largement.
J'imagine que tu as remplacé les pièces toi-même et que tu n'as pas compté le temps passé dans ton calcul de coût, ça change quand même pas mal de choses.
Oui, ça coûte encore plus cher si on le fait faire par un pro évidemment.
Je ne suis pas certain que le changement des galets du dérailleur ou de la chaîne soit à la portée de tout le monde, il faut être un minimum bricoleur, avoir un local, un certain outillage, etc.
Oui pour tout, sauf pour le local. Le seul besoin est de pouvoir stocker son vélo, ce qui est indépendant du fait qu'on le répare sois-même, et de stocker les outils. Faire sa réparation dans un local, c'est inutile, n'importe quel endroit pas trop gênant sur le voie publique convient. J'ai effectué des réparation sur une place de stationnement auto, sur un bout de trottoir, dans un jardin public…
Par exemple, je suis incapable de remonter et dévoiler une roue, par exemple. C'est quelque chose que je dois faire faire par un pro; le budget est conséquent et peut impliquer l'achat d'une roue neuve plutôt que le changement de quelques rayons.
Mauvais exemple à mon avis : à moins d'avoir une pratique très particulière, quand on en arrive à casser des rayons par usure naturelle, inutile de chercher à les changer, les autres vont suivre. C'est justement le moment de changer la roue entière. On pourrait changer tous les rayons en gardant la jante, mais quand on est arrivé à user les rayons jusqu'à la rupture, la jante ne doit pas être dans un très bel état.
Comme tu n'indiques pas vraiment tes critères, c'est compliqué d'être en désaccord avec toi. Tu dis que ça t'a coûté plus cher qu'un vélo neuf, donc ton critère n'est pas financier.
Si si. En vérifiant mon vélo, je m'aperçois que la chaîne a atteint le point d'usure où il serait raisonnable de la changer avant qu'elle n'attaque trop les pignons. Je ne vais pas changer de vélo, il est bien plus intéressant de changer la chaîne seule ! Six mois plus tard, un pneu commence à craqueler un peu. Pas étonnant, je ne l'ai pas changé depuis trois ans. Je ne vais pas racheter un vélo, ça coûte moins cher de changer seulement le pneu. Un an plus tard, j'ai un levier de dérailleur qui commence à déconner, pas étonnant, il est d'origine et j'ai quand même roulé presque 50.000 kilomètres avec. Je ne vais pas racheter un vélo entier pour si peu, ça coûte moins cher de changer seulement le levier.
Et ainsi de suite. Les composants d'un vélo ne tombent pas en panne en même temps, c'est progressif.
Le Fairphone 3 serait un bon candidat, évidemment. Je le connais bien, puisque j'en ai un en fait. Un peu encombrant, mais au moins on sait pourquoi, et c'est un modèle de réparabilité.
Sauf que ce n'est pas pour moi, et que le Fairphone 3 est un peu trop encombrant au goût du destinataire de cet appareil.
En particulier, même pour les gens qui font attention, le dernier item devient incontournable après 5 ou 6 ans, puisque tu vas récupérer gratuitement les téléphones de ton entourage, plus performants que le tien, qui autrement iraient à la poubelle.
Et dont tu vas devoir changer la batterie, à mon avis le point le plus important.
Pouvoir changer l'écran, c'est bien, mais c'est cher et ça ne s'use pas vraiment naturellement, ça se casse en faisant tomber le téléphone. Dommage. Mais la batterie, ça s'use vraiment pour le coup, et pouvoir la changer sans effort n'est pas un luxe, c'est juste la base. L'écran, à côté, c'est secondaire.
Si au bout de 10 ans tu as remplacé toutes les parties de ton téléphone, c'est pareil que d'avoir acheté un nouveau smartphone (voire pire, puisqu'il n'y a eu aucune économie d'échelle sur le transport, le stockage, l'emballage des pièces, etc., et que les coûts écologiques du marché des pièces détachées ne sont pas petits (comme la surproduction des pièces de rechange qui peuvent partir à la déchetterie par cartons entier à la fin de la vie du produit).
Tu fais pareil avec ta bicyclette ? Ce n'est pas un exemple anodin, la bicyclette est à mon avis le meilleur exemple actuel de machine parfaitement réparable pièce par pièce. Perso, quand j'ai une pièce usée ou cassée, je ne change que ça, pas le vélo entier. Au bout de dix ans, j'ai presque tout remplacé :
- cintre (bon, pas parce qu'il était usé mais parce que je n'aimais pas sa forme),
- roues,
- pneus (plusieurs fois),
- chaîne (plusieurs fois), pignons (plusieurs fois) et plateaux,
- galets de dérailleur,
- pédales,
- câbles et gaines de dérailleur et de frein,
- leviers de dérailleur et de frein,
- patins de frein,
- sonnette et feux (bon, seulement parce que j'ai trouvé plus performant que ceux d'origine),
- selle,
- porte-bagage,
- garde-boues.
Il ne reste d'origine que le cadre, les manivelles, les dérailleurs, le moyeu-dynamo de roue avant, la fourche, la tige et le chariot de selle, si je ne m'abuse. Les pièces détachées ne sont pas spécialement données, donc ces remplacements successifs m'ont sans aucun doute coûté plus cher que le vélo neuf, pourtant je ne regrette pas d'avoir procédé ainsi. Et j'aimerais pouvoir faire de même avec mon téléphone.
C'est amusant, l'AoC regorge d'exemples de choses qui sont évidentes pour un humain, mais assez ou très difficiles à mettre en algorithme, qui sera d'ailleurs fort différent de la pensée humaine.
Deux beaux exemples cette année :
Comment trouver les trous dans une pierre ponce (ou un emmental, ou une éponge) ? Facile, ça se voit ! Et en algorithme ? Euh, inondation depuis l'extérieur, ça ne remplit pas les trous, qu'on peut déterminer ensuite par différence, par exemple.
Comment relier et orienter les faces d'un patron de cube ? Facile, on découpe et on plie ! Et comme algorithme ? Euh, c'est compliqué !
Bon, aucun problème pour la première partie, en revanche pour la seconde, j'y renonce… pour le moment.
L'intérêt de Avent du Code est entre autres, pour moi, dans la satisfaction d'avoir implémenté des algorithmes originaux, astucieux, élégants, etc. Dans ce cas, en particulier, coder en dur la disposition particulière de mes données d'entrée serait très insatisfaisant. Quant à coder un algorithme qui implémente la modélisation des faces d'un cube à partir d'un patron arbitraire, je n'ai trouvé pour cela aucun moyen qui ne soit pas très, très fastidieux à écrire.
Donc, pour le moment, je laisse tomber. J'y reviendrai peut-être plus tard dans l'année.
On limite le nombre de robot de chaque type au coût maximal d'un robot pour ce type de ressources.
Ce n'est pas empirique ça, c'est prouvable. Comme on ne peut construire qu'un robot par tour, récolter plus d'unités de n'importe quelle ressource que la quantité qu'on peut en dépenser ne sert à rien.
Bon, fait maison, c'est à dire sans eval ni bibliothèque externe. On construit un arbre, pour la première partie on calcule récursivement la valeur du singe racine. Pour la deuxième partie, on force la valeur du singe racine, ce qui force récursivement la valeur des singes en-dessous, jusqu'à forcer la valeur de l'humain.
from__future__importannotationsimportrefromcollectionsimportdefaultdictfromenumimportEnumfromtypingimportCallable,Dict,Iterable,Optional,Sequence,Set,TupleclassOperation(Enum):ADD='+'SUB='-'MUL='*'DIV='/'@propertydefop(self)->Callable[[int,int],int]:ifselfisself.ADD:returnint.__add__ifselfisself.SUB:returnint.__sub__ifselfisself.MUL:returnint.__mul__ifselfisself.DIV:returnint.__floordiv__assertFalse# we covered all cases@propertydefrev1(self)->Callable[[int,int],int]:"""Given a and b, return x so self.op(x, a) = b"""ifselfisself.ADD:returnint.__sub__ifselfisself.SUB:returnint.__add__ifselfisself.MUL:returnint.__floordiv__ifselfisself.DIV:returnint.__mul__assertFalse# we covered all cases@propertydefrev2(self)->Callable[[int,int],int]:"""Given a and b, return x so self.op(a, x) = b"""ifselfisself.ADD:returnint.__sub__ifselfisself.SUB:returnlambdav,a:a-vifselfisself.MUL:returnint.__floordiv__ifselfisself.DIV:returnlambdav,a:a//vassertFalse# we covered all casesclassMonkey:monkeys:Dict[str,Monkey]={}def__init__(self,name:str,value:Optional[int]=None,others:Optional[Sequence[str]]=None,operation:Optional[Operation]=None)->None:if(othersisNone)!=(operationisNone):raiseValueError("others and operation must be both None or both defined")if(valueisNone)==(othersisNone):raiseValueError("value xor (others and operation) must be defined")self.name=nameself._value=valueself.others=othersself.operation=operation# Register self in class directoryself.monkeys[name]=self@propertydefvalue(self)->int:ifself._valueisnotNone:returnself._valueifself.othersisNoneorself.operationisNone:raiseValueError("cannot compute value of a monkey w/o others or operation")returnself.operation.op(*[self.monkeys[other].valueforotherinself.others])@value.setterdefvalue(self,v:int)->None:ifself._valueisnotNone:# This monkey has a fixed valueraiseValueError("cannot change value of a valued monkey")ifself.othersisNoneorself.operationisNone:# This monkey has a free value, we just have to set itself._value=vreturn# The free monkey is somewhere under selfa:Optional[int]=None# value of first sub-monkeyb:Optional[int]=None# value of second sub-monkeytry:a=self.monkeys[self.others[0]].valueexceptValueError:# This failed because the value-free monkey is here, not a problempasstry:b=self.monkeys[self.others[1]].valueexceptValueError:# This failed because the value-free monkey is here, not a problempassifaisNoneandbisnotNone:a=self.operation.rev1(v,b)self.monkeys[self.others[0]].value=areturnifaisnotNoneandbisNone:b=self.operation.rev2(v,a)self.monkeys[self.others[1]].value=breturn# We do not expect to have two or no value-free monkey under usassertFalse_monkey_re=re.compile(r"^(\w+): (.*)\n?$")_operation_re=re.compile(r"^(\w+) ([-+/*]) (\w+)\n?$")@classmethoddefimport_line(class_,line:str)->Monkey:match=class_._monkey_re.match(line)ifmatchisNone:raiseValueError("invalid monkey description '{}'".format(line))name=match.group(1)line=match.group(2)ifline.isdigit():value=int(line)returnclass_(name,value=value)match=class_._operation_re.match(line)ifmatchisNone:raiseValueError("invalid monkey operation '{}'".format(line))others=(match.group(1),match.group(3))op=Operation(match.group(2))returnclass_(name,others=others,operation=op)defsolve_both(lines:Iterable[str])->Tuple[int,int]:"""Solve both parts of today's puzzle"""forlineinlines:_=Monkey.import_line(line)root=Monkey.monkeys['root']humn=Monkey.monkeys['humn']# Get original root monkey valueresult1=root.value# Correct root monkey operationroot.operation=Operation.SUB# Unset our own value so it becomes the free onehumn._value=None# Force root monkey value: this will cascade to eventually set# our valueroot.value=0result2=humn.valuereturnresult1,result2
a) Tu n'as en rien la maitrise de ton système. Tu crois l'avoir, cela s'arrète là
À ce compte-là, personne ne maîtrise rien. Sérieusement, je pense qu'un utilisateur averti d'un système libre maîtrise justement beaucoup mieux ce qui se passe sur son ordinateur, que l'entreprise ne maîtrise ce qui se passe sur ses ordinateurs.
Joli, du coup j'ai honte de montrer ma solution avec liste chaînée maison. Mais je la montre quand même, allez :
from__future__importannotationsimportiofromtypingimportIterable,Iterator,OptionalclassChain:def__init__(self,*elts:Element)->None:self._len=len(elts)self.first=elts[0]last=elts[-1]prev:Optional[Element]=Noneforeltinelts:ifprevisnotNone:prev.attach(elt)prev=eltlast.attach(self.first)def__len__(self):returnself._lendef__getitem__(self,index:int)->Element:index=index%len(self)current=self.firstfor_inrange(index):current=current.nextreturncurrentdefget_elt(self,base_elt:Element,index:int)->Element:index=index%len(self)current=base_eltfor_inrange(index):current=current.nextreturncurrentdef__iter__(self)->Iterator[Element]:current=self.firstfor_inrange(self._len):yieldcurrentcurrent=current.nextdefextract(self,index:int)->Element:elt=self[index]elt.detach()self._len-=1returneltdefextract_elt(self,elt:Element)->None:# WARNING: not checking that elt is part of selfelt.detach()self._len-=1definsert(self,index:int,elt:Element)->None:prev=self[index]next_=prev.next# Attach (prev and elt) and (elt and next_)prev.attach(elt)elt.attach(next_)self._len+=1definsert_elt(self,base:Element,shift:int,elt:Element)->None:# WARNING: not checking that elt is part of selfshift%=self._lenprev=basefor_inrange(shift):prev=prev.nextnext_=prev.next# Attach (prev and elt) and (elt and next_)prev.attach(elt)elt.attach(next_)self._len+=1def__str__(self):result=io.StringIO()result.write('(')foreltinself:result.write('{}, '.format(elt.value))result.write(')')returnresult.getvalue()classElement:def__init__(self,value:int)->None:self.value=valueself.prev=selfself.next=selfdefattach(self,other:Element)->None:self.next=otherother.prev=selfdefdetach(self)->None:prev=self.prevnext_=self.next# Detach selfself.prev=selfself.next_=self# Attach prev and next_prev.attach(next_)defsolve1(lines:Iterable[str])->int:"""Solve part 1 of today's puzzle"""elts=[Element(int(line))forlineinlines]seq=Chain(*elts)zero:Optional[elt]=Noneforeltinelts:ifzeroisNoneandelt.value==0:zero=eltprev=elt.prevseq.extract_elt(elt)seq.insert_elt(prev,elt.value,elt)ifzeroisNone:raiseValueError("invalid input without a zero value")return(seq.get_elt(zero,1000).value+seq.get_elt(zero,2000).value+seq.get_elt(zero,3000).value)defsolve2(lines:Iterable[str])->int:"""Solve part 2 of today's puzzle"""key=811589153elts=[Element(key*int(line))forlineinlines]seq=Chain(*elts)zero:Optional[elt]=Nonefor_inrange(10):foreltinelts:ifzeroisNoneandelt.value==0:zero=eltprev=elt.prevseq.extract_elt(elt)seq.insert_elt(prev,elt.value,elt)ifzeroisNone:raiseValueError("invalid input without a zero value")return(seq.get_elt(zero,1000).value+seq.get_elt(zero,2000).value+seq.get_elt(zero,3000).value)
À noter que c'est pas mal plus lent qu'avec des listes Python en fait… :-(
Au temps pour moi, il me semblait que l'utilisation de la marque Android pour décrire un système d'exploitation impliquait d'y inclure des trucs comme les Google Play Services, mais en fait non.
LineageOS et compagnie sont bien des sytèmes Android, et il serait faux de prétendre que l'Identité Numérique La Poste fonctionne bien « sous Android ». Ça fonctionne sous certaines distributions Android répondant à leurs critères, pour le reste on doit bidouiller.
[^] # Re: Vélo !
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 5. Dernière modification le 06 janvier 2023 à 11:17.
Non, en tout cas pas seulement. J'ai pu constater la différence entre ma Twingo 2 et une vieille Toyota utilisée au Cameroun.
Sur la Twingo 2, la batterie est dans une boîte, et fixée par un écrou qui est au fond de cette boîte. C'est casse-pied à démonter, et encore plus à remonter, et il s'agit pourtant d'une opération des plus banales. Le moteur, quand à lui, est également dans une boîte, très casse-pied à ouvrir. J'ai voulu changer le filtre à air moteur, et je me suis rendu compte que j'allais en avoir pour plus d'une heure pour dégager l'accès à cette pièce.
Sur la vieille Toyota au contraire, tout était directement accessible. Je n'y ai effectué aucune réparation, mais j'en ai vu faire, et c'était visiblement conçu pour être réparé facilement.
Ce que je trouve incroyable, c'est que les constructeurs automobiles ont des garages auto, avec des garagistes qui doivent souffrir au quotidien des difficultés de réparation. Lorsqu'on aime la mécanique, passer une heure à démonter un tas de trucs juste pour avoir accès à un filtre à air n'a rien de plaisant. C'est du temps facturé, certes, mais même en étant payé pour, passer du temps à effectuer un travail fastidieux pour pallier des défauts de conception d'un appareil n'a rien de satisfaisant, c'est même plutôt frustrant.
(C'est comme parcourir la documentation Java pour parvenir à déterminer que pour créer un document XML, il faut utiliser un truc comme
xml.DocumentBuilderFactory.getInstance().newDocumentBuilder().createDocument()
: frustant, on a l'impression d'avoir passé du temps à ramer contre le courant)Euh, oui ? Pourquoi un garagiste quelconque ne pourrait-il pas réparer n'importe quelle automobile ?
Ben, oui aussi, si le cœur t'en dit. Je veux dire, si c'est techniquement faisable par un mécano du réseau du fabricant, pourquoi ne le serait-ce pas par n'importe quel mécano, pro ou amateur ?
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 5.
Eh bien, c'est là que l'indice de réparabilité est intéressant. Plus le téléphone est facile à réparer, moins la prestation de remplacement d'écran est onéreuse.
Sur mon Fairphone 3 par exemple, si je demande un remplacement d'écran, le réparateur devra sans doute en commander un nouveau, mais ensuite, il va me faire payer ça le prix de l'écran, plus un quart d'heure de main d'œuvre. Une cinquantaine d'euros je pense.
Sur un téléphone à coque collée, batterie collée, tout collé, il fera payer ça le prix de l'écran, si tant est qu'il soit vendu séparément d'ailleurs (sinon ce sera encore plus cher), plus une heure de main d'œuvre. On doit facilement atteindre les deux cents euros.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 5.
Pas vraiment. Avec une transmission à braquets discrets, le changement de braquet nécessite une opération, qui peut éventuellement être plus ou moins automatisée, mais qui se ressent. Avec un dérailleur, on ne peut pas changer de pignon en effort (ou du moins, pas proprement, ça va vraiment se sentir, et la mécanique n'aime pas ça), ni à l'arrêt. Avec une boîte de vitesse, on peut changer à l'arrêt, mais pas en effort (enfin pareil, pas proprement).
Avec un variateur, autant que je sache, la transition ne se ressent que par son effet souhaité, à savoir la variation de la démultiplication d'effort et de développement.
Pas moi. Pignons plus fins, chaîne plus fine, c'est moins durable.
Si, c'est presque ce que je fais, presque exclusivement en ville avec un tas de carrefours à feux, et ça a tenu 50.000 kilomètres sans problème !
Enfin, un dérailleur arrière résiste sans problème. Après tout, c'est une pièce qui ne fait que bouger selon un ressort et un câble. Le levier de dérailleur en revanche, a une indexation et des cliquets dont je m'attends à ce qu'ils souffrent davantage.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 6.
Autant que je sache, des boutique où on change les écrans des téléphones, il y en a au moins autant que de vélocistes, pourtant. Et pour changer l'écran fêlé d'un Damsung Supernova W42 à 900 €, je pense que les gens devraient être intéressés pour un prix inférieur à quoi, 300 € ? Entre racheter un téléphone 900 € et remplacer l'écran pour le tiers de son prix, le choix est vite fait non ?
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 3.
Une transmission continue, je suis d'accord, ça a un intérêt majeur. C'est beaucoup plus simple à utiliser.
Mais passer de 9 à 10, puis 11, puis 12v, c'est pour moi aussi intéressant que de passer à des rasoirs à 2 lames, puis 3, puis 4, puis 5… Ça coûte plus cher, c'est tout.
Entre 3 et 5v, d'accord, c'est un peu grossier comme étagement. À 7, ça me suffisait, sauf qu'à 7v, c'est toujours de la cassette intégrée à la roue libre, une technologie qui est une aberration mécanique. Donc 8v+, c'est significativement mieux. 8v m'auraient suffis, j'ai du 9v, a fortiori ça me suffit. Aucune intention d'aller au-delà, en tout cas par remplacement volontaire de ma transmission. Si mon prochain vélo a du 10v, pourquoi pas, mais ce n'est pas un critère d'achat.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 5.
Justement, c'est tout récent de voir ce genre de score chez Apple, et c'est une grosse surprise en fait.
Ce constructeur était connu pour des trucs comme l'introduction des vis à tête pentalobe pour compliquer la réparation (il n'y a pas d'autre intérêt à ces têtes, si le but était d'atteindre un couple élevé, il y a Torx pour ça), et de les avoir même utilisées en remplacement de vis à tête cruciforme sur les appareils de clients qui leur avaient confié en SAV.
Et là, tout d'un coup, virement de bord, Apple sortent des trucs conçus pour être un peu mieux réparables. C'est une surprise, un très bonne surprise, et qui à mon avis vient de la prise de conscience autour de ce sujet de la réparabilité. L'introduction d'un score de réparabilité fait partie de cette prise de conscience, donc ça me semble pertinent, même si c'est imparfait.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 3.
« Pour je ne sais quelle raison » : tout est là.
Même remarque. 9 pignons avec 3 plateaux, ça fait quelque chose comme 13 braquets distincts utilisables et régulièrement répartis si les tailles ont été choisies intelligemment. C'est largement suffisant, passer à 12 pignons me semble inutile, et nuisible puisque la chaîne, plus fine, sera moins durable.
On est dans le domaine des caprices de riche ou de passionné de performance, là, pas du tout de la réparation.
Pour un ordinateur, d'accord, parce que les besoins évoluent, les logiciels évoluent en fait, vers toujours plus d'obésité. En outre, le matériel évolue également, de sorte que lors d'une évolution, on investit une somme raisonnable dans un matériel qui sera deux fois plus performant. On peut mettre 150 € pour doubler les performances d'un ordinateur.
Pour un vélo, je trouve que la situation n'a rien à voir : le terrain reste le même, et le matériel plus haut de gamme permet, en doublant le prix, d'obtenir un gain marginal en efficacité. On peut mettre 150 € pour remplacer sa transmission et gagner 5% de performance. Allez, peut-être 10%. Mais certainement pas pour doubler la vitesse qu'on atteint à effort identique.
Il y a bien un remplacement que je trouve très utile, c'est celui d'une cassette à roue-libre intégrée 7v (mécaniquement parlant, c'est nul, d'où l'intérêt du remplacement) par une cassette encastrable 8v+. Et ça, c'est effectivement coûteux : on se retrouve à changer la roue, la cassette, le levier de dérailleur arrière et éventuellement le dérailleur. D'où l'intérêt de ne surtout pas acheter un vélo avec 7v-, en fait.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 3.
Ah, ok. J'étais plutôt dans l'idée de la réparabilité, là c'est un autre sujet en fait.
Pourquoi voudrait-on faire ça ? Je change mon boîtier de pédalier s'il est usé, c'est tout. C'est pour gagner 100 grammes ou 2 watts en dépensant 50 € ?
Même question sur la finalité de l'opération. Surtout que c'est parti pour coûter encore plus cher. On s'éloigne de plus en plus du concept de réparation.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 7.
Ça s'appelle un fouet à chaîne.
Justement, ça existe. Mieux encore, il y a plein de vélocistes partout et pas mal d'ateliers participatifs. Le vélo est un excellent exemple des bienfaits de la réparabilité : on peut réparer soi-même si on a la fibre du bricoleur, on peut se faire aider, et on peut faire appel à un pro.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 7.
Bon, alors ça va dépendre de l'urgence. La roue est légèrement voilée ? Vite fait, agir sur les quatre rayons de la zone concernée suffit.
Ça fait trois ans que la roue n'a pas été dévoilée, ou elle est plus sévèrement voilée ? On resserre d'abord tous les rayons en sous-tension, et ensuite un dévoile méthodiquement.
Pour le problème des deux dimensions du dévoilage, c'est à mon avis un faux problème. Si la roue a été bien montée au départ, elle n'a pas de ressaut. Si, pour corriger un voilage, on agit en détendant et en tendant des rayons adjacents, on ne crée pas de ressaut non plus.
Après, si vous avez une roue complètement voilée et avec en plus du ressaut, c'est évidemment un enfer à corriger. Mais en usage normal, je n'ai jamais vu ça. Et si je me casse la figure et que ça met ma roue en 8, je ne vais pas essayer de la réparer, c'est justement le genre de cas où je la remplace en entier.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 6.
Faux. En tout cas si le vélo est correctement entretenu. J'explique.
La chaîne s'use naturellement en roulant, ce qui peut être mesuré par l'augmentation de sa longueur, parce que l'usure consiste essentiellement en un rainurage des goupilles qui relient les maillons : une goupille rainurée, ça crée du jeu, et le jeu en question, pour une chaîne sous tension, c'est de la longueur supplémentaire.
Bref, en s'allongeant, la chaîne s'emboîte moins bien dans les pignons et les plateaux. En-dessous de 5‰ d'allongement, ça n'use pas excessivement les pignons. Au-delà de 5 ‰ d'allongement, ça va commencer à rogner ces derniers, il est temps de changer la chaîne pour éviter de les user. Au-delà de 1% d'allongement de la chaîne, celle-ci est toujours à changer, mes les pignons devront certainement être changés en même temps. Quant aux plateaux, ils s'usent moins vite et leur usure a moins de conséquences. Il faut aussi les changer de temps en temps, selon leur état, qui peut se constater à la forme de leurs dents.
Bref, sur un vélo bien entretenu, il n'y a aucun raison de changer toute la transmission à chaque fois :
Sur un vélo mal entretenu ceci dit, il est fréquent de ne changer la chaîne que lorsqu'elle finit par casser. Dans ce cas, évidemment, elle a alors atteint un niveau d'usure et d'élongation déraisonnable, et les pignons et plateaux sont à changer en même temps. Ainsi que les galets de dérailleur d'ailleurs.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 5.
Ah, en effet. Mais disons qu'après une chute qui aura suffis à casser des rayons, je m'attendrais à ce que la jante soit voilée, voire fêlée, au point de ne plus pouvoir être utilisée en toute sécurité. À remplacer, donc en pratique, la roue entière.
Pas plus compliqué que ça. Il faut de la patience, c'est tout, mais ce n'est vraiment pas compliqué. On vérifie que l'étrier de frein est centré, vélo à l'envers, on fait tourner la roue, quand ça frotte d'un côté on agit sur les rayons qui entourent l'endroit concerné : on desserre les rayons du côté où ça frotte et on resserre les rayons de l'autre côté.
Oui, alors ça c'est vraiment l'exemple du truc casse-pied à remplacer en effet. J'ai déjà fait l'inverse, à savoir changer la jante d'une roue équipée d'une dynamo de moyeu. Dans ce sens-là, c'est long, mais pas excessivement compliqué. Dans l'autre sens, il faut remettre tous les rayons, autrement dit remonter complètement une roue, ce qui doit être le sommet de la technique de mécanique vélo.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 6.
Il y aurait bien un plan pour éviter le surcoût des composants séparés : acheter deux vélos au départ. Un pour rouler dessus, l'autre pour servir de pièces détachées…
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 10. Dernière modification le 05 janvier 2023 à 11:40.
Pas tant que ça. Je me souviens de mon premier ordinateur fixe. Disque dur PATA de 6 Go, lecteur de CD PATA également. Un ou deux ans plus tard, les 6 Go commençant à être un peu petits, j'achète et j'installe un nouveau DD. Puis arrivent les DVD : j'achète et j'installe un lecteur de DVD. Pas possible de les lire, carte graphique pas assez puissante. Pas de problème, je change la CG. Quelques années plus tard, le processeur et la mémoire commencent à être insuffisants, je remplace carte mère, processeur et mémoire.
Finalement, je remplace aussi le boîtier, j'achète un graveur de DVD, je me débarrasse du lecteur de CD. Il ne reste alors plus que le lecteur de disquettes et la carte son d'origine, il me semble.
J'ai continué comme ça assez longtemps, et je suis récemment passé au reconditionné, parce qu'une chose a changé : un PC de cinq ans me convient largement.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 10.
Oui, ça coûte encore plus cher si on le fait faire par un pro évidemment.
Oui pour tout, sauf pour le local. Le seul besoin est de pouvoir stocker son vélo, ce qui est indépendant du fait qu'on le répare sois-même, et de stocker les outils. Faire sa réparation dans un local, c'est inutile, n'importe quel endroit pas trop gênant sur le voie publique convient. J'ai effectué des réparation sur une place de stationnement auto, sur un bout de trottoir, dans un jardin public…
Mauvais exemple à mon avis : à moins d'avoir une pratique très particulière, quand on en arrive à casser des rayons par usure naturelle, inutile de chercher à les changer, les autres vont suivre. C'est justement le moment de changer la roue entière. On pourrait changer tous les rayons en gardant la jante, mais quand on est arrivé à user les rayons jusqu'à la rupture, la jante ne doit pas être dans un très bel état.
Si si. En vérifiant mon vélo, je m'aperçois que la chaîne a atteint le point d'usure où il serait raisonnable de la changer avant qu'elle n'attaque trop les pignons. Je ne vais pas changer de vélo, il est bien plus intéressant de changer la chaîne seule ! Six mois plus tard, un pneu commence à craqueler un peu. Pas étonnant, je ne l'ai pas changé depuis trois ans. Je ne vais pas racheter un vélo, ça coûte moins cher de changer seulement le pneu. Un an plus tard, j'ai un levier de dérailleur qui commence à déconner, pas étonnant, il est d'origine et j'ai quand même roulé presque 50.000 kilomètres avec. Je ne vais pas racheter un vélo entier pour si peu, ça coûte moins cher de changer seulement le levier.
Et ainsi de suite. Les composants d'un vélo ne tombent pas en panne en même temps, c'est progressif.
# Fairphone 3
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au message Cherche modèle de téléphone. Évalué à 8.
Le Fairphone 3 serait un bon candidat, évidemment. Je le connais bien, puisque j'en ai un en fait. Un peu encombrant, mais au moins on sait pourquoi, et c'est un modèle de réparabilité.
Sauf que ce n'est pas pour moi, et que le Fairphone 3 est un peu trop encombrant au goût du destinataire de cet appareil.
# Vélo !
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 4.
Dommage qu'il n'y ait pas les vélos dans cette liste. On aurait un indice de réparabilité de 20/20 pour l'immense majorité des modèles !
Et sinon, ce serait bien que ce soit obligatoire pour les automobiles, d'ailleurs.
[^] # Re: Utile?
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'indice de réparabilité. Évalué à 10.
Et dont tu vas devoir changer la batterie, à mon avis le point le plus important.
Pouvoir changer l'écran, c'est bien, mais c'est cher et ça ne s'use pas vraiment naturellement, ça se casse en faisant tomber le téléphone. Dommage. Mais la batterie, ça s'use vraiment pour le coup, et pouvoir la changer sans effort n'est pas un luxe, c'est juste la base. L'écran, à côté, c'est secondaire.
Tu fais pareil avec ta bicyclette ? Ce n'est pas un exemple anodin, la bicyclette est à mon avis le meilleur exemple actuel de machine parfaitement réparable pièce par pièce. Perso, quand j'ai une pièce usée ou cassée, je ne change que ça, pas le vélo entier. Au bout de dix ans, j'ai presque tout remplacé :
- cintre (bon, pas parce qu'il était usé mais parce que je n'aimais pas sa forme),
- roues,
- pneus (plusieurs fois),
- chaîne (plusieurs fois), pignons (plusieurs fois) et plateaux,
- galets de dérailleur,
- pédales,
- câbles et gaines de dérailleur et de frein,
- leviers de dérailleur et de frein,
- patins de frein,
- sonnette et feux (bon, seulement parce que j'ai trouvé plus performant que ceux d'origine),
- selle,
- porte-bagage,
- garde-boues.
Il ne reste d'origine que le cadre, les manivelles, les dérailleurs, le moyeu-dynamo de roue avant, la fourche, la tige et le chariot de selle, si je ne m'abuse. Les pièces détachées ne sont pas spécialement données, donc ces remplacements successifs m'ont sans aucun doute coûté plus cher que le vélo neuf, pourtant je ne regrette pas d'avoir procédé ainsi. Et j'aimerais pouvoir faire de même avec mon téléphone.
[^] # Re: Trop pour moi
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au message Avent du Code, jour 22. Évalué à 5.
C'est amusant, l'AoC regorge d'exemples de choses qui sont évidentes pour un humain, mais assez ou très difficiles à mettre en algorithme, qui sera d'ailleurs fort différent de la pensée humaine.
Deux beaux exemples cette année :
# Trop pour moi
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au message Avent du Code, jour 22. Évalué à 5.
Bon, aucun problème pour la première partie, en revanche pour la seconde, j'y renonce… pour le moment.
L'intérêt de Avent du Code est entre autres, pour moi, dans la satisfaction d'avoir implémenté des algorithmes originaux, astucieux, élégants, etc. Dans ce cas, en particulier, coder en dur la disposition particulière de mes données d'entrée serait très insatisfaisant. Quant à coder un algorithme qui implémente la modélisation des faces d'un cube à partir d'un patron arbitraire, je n'ai trouvé pour cela aucun moyen qui ne soit pas très, très fastidieux à écrire.
Donc, pour le moment, je laisse tomber. J'y reviendrai peut-être plus tard dans l'année.
[^] # Re: Modélisation trop longue à débugger
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au message Avent du Code, jour 19. Évalué à 4.
Ce n'est pas empirique ça, c'est prouvable. Comme on ne peut construire qu'un robot par tour, récolter plus d'unités de n'importe quelle ressource que la quantité qu'on peut en dépenser ne sert à rien.
# Python, fait maison
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au message Avent du Code, jour 21. Évalué à 4.
Bon, fait maison, c'est à dire sans eval ni bibliothèque externe. On construit un arbre, pour la première partie on calcule récursivement la valeur du singe racine. Pour la deuxième partie, on force la valeur du singe racine, ce qui force récursivement la valeur des singes en-dessous, jusqu'à forcer la valeur de l'humain.
[^] # Re: N'importe quoi...
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal L'entreprise est-elle responsable des fuites de données dans le cadre du télétravail ?. Évalué à 9.
À ce compte-là, personne ne maîtrise rien. Sérieusement, je pense qu'un utilisateur averti d'un système libre maîtrise justement beaucoup mieux ce qui se passe sur son ordinateur, que l'entreprise ne maîtrise ce qui se passe sur ses ordinateurs.
[^] # Re: Un bug que j'ai résolu sans jamais le trouver.
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au message Avent du Code, jour 20. Évalué à 4.
Joli, du coup j'ai honte de montrer ma solution avec liste chaînée maison. Mais je la montre quand même, allez :
À noter que c'est pas mal plus lent qu'avec des listes Python en fait… :-(
[^] # Re: SNCF Connect & transilien
Posté par 🚲 Tanguy Ortolo (site web personnel) . En réponse au journal Utiliser l'Identité numérique la Poste sans Google Play. Évalué à 5.
Au temps pour moi, il me semblait que l'utilisation de la marque Android pour décrire un système d'exploitation impliquait d'y inclure des trucs comme les Google Play Services, mais en fait non.
LineageOS et compagnie sont bien des sytèmes Android, et il serait faux de prétendre que l'Identité Numérique La Poste fonctionne bien « sous Android ». Ça fonctionne sous certaines distributions Android répondant à leurs critères, pour le reste on doit bidouiller.