C'est à peu près ça. C'était un choix pertinent, il y a 10 ans. Aujourd'hui, la plateforme Web a gagné en fonctionnalités, et performances, et pour beaucoup de cas, c'est le meilleur choix pour l'utilisateur.
Pour mon expérience, le dernier article (sur la distribution) était le plus intéressant.
Notamment :
Distributing applications on a couple of computers inside the same company is not an issue. A lot of products are available for automating the pushing of files onto computers. Issues might start to appear when you need to coordinate the deployment across different physical sites.
Je ne suis pas tout à fait d'accord. Je travaille dans une petite équipe, plutôt indépendante, faisant partie d'un gros groupe, avec sa politique de distribution de logiciels. Nous, on fait les nôtres, sur le côté. C'est volontaire, et assumé, on est un peu électrons libres transversaux, pour mettre de l'huile dans les rouages quand il faut. Et bien sûr, il n'en faut pas trop non plus.
Bref, donc on doit distribuer des logiciels. Et s'intégrer à « l'AppStore » du groupe, c'est difficile, voir pas désirable du tout, car nos logiciels ne doivent pas être installés par tout le monde.
Pendant 10 ans (!), j'ai développé et maintenu deux applications Java/Swing, déployé avec JavaWebStart. J'ai trouvé plein de limites à Swing, et j'ai dû hacker des composants (faire de la pseudo-réflexivité dessus) pour arriver à mes fins. Par exemple, pour que le menu déroulant d'une combobox ne soit pas limité en largeur à la taille de la combobox, mais affiche le maximum d'informations :
importjava.awt.BorderLayout;importjava.awt.Component;importjava.awt.Dimension;importjava.awt.Insets;importjavax.swing.JComboBox;importjavax.swing.JList;importjavax.swing.ListModel;importjavax.swing.event.PopupMenuEvent;importjavax.swing.event.PopupMenuListener;importjavax.swing.plaf.basic.BasicComboPopup;/** * This is a workaround for the combobox popup, whose width is equal to the component width. * To display very large content, it's really annoying, so this listener resize the popup if necessary. */publicclassComboBoxPopupResizerListenerimplementsPopupMenuListener{privatefinalJComboBox<?>comboBox;/** * Build the listener. * @param comboBox The combobox whose popup will be resized. */publicComboBoxPopupResizerListener(JComboBox<?>comboBox){this.comboBox=comboBox;}@Override@SuppressWarnings("unchecked")publicvoidpopupMenuWillBecomeVisible(PopupMenuEvente){// Copy paste from http://forum.java.sun.com/thread.jspa?threadID=522572&messageID=2501520BasicComboPopuppopup=(BasicComboPopup)this.comboBox.getUI().getAccessibleChild(this.comboBox,0);//Popupif(popup==null){return;}intpreferredWidth=(int)Math.max(this.comboBox.getPreferredSize().getWidth(),this.comboBox.getWidth());Componentcomp=popup.getComponent(0);//JScrollPane// Compute height by rendering the first elementJList<Object>popupList=popup.getList();ListModel<Object>popupListModel=popupList.getModel();intmodelSize=popupListModel.getSize();intheight;if(modelSize>0){// Fetch the insets to add to the rendered componentInsetsinsets=popup.getInsets();modelSize=Math.min(modelSize,this.comboBox.getMaximumRowCount());height=(int)popupList.getCellRenderer().getListCellRendererComponent(popupList,popupListModel.getElementAt(0),0,false,false).getPreferredSize().getHeight()*modelSize+insets.bottom+insets.top;}else{height=(int)this.comboBox.getPreferredSize().getHeight();}popup.setPreferredSize(newDimension(preferredWidth,height));popup.setLayout(newBorderLayout());popup.add(comp,BorderLayout.CENTER);}@OverridepublicvoidpopupMenuWillBecomeInvisible(PopupMenuEvente){}@OverridepublicvoidpopupMenuCanceled(PopupMenuEvente){}}
C'est beau comme un camion avec des roues de vélo, mais je m'en suis servi partout.
Ensuite JavaWebStart, c'est pas si beau et tout joli. C'est plein de bugs chiants, comme « tiens, je crois que le cache est pas à jour, mais faut lancer l'application deux fois pour que ça force la mise-à-jour, lalala ». On a dû plusieurs fois demander aux utilisateurs de supprimer le cache et de recommencer.
La signature de l'application est compliquée aussi, mais ça, évidemment, c'est le problème de toute application. Le Web résout ça, en délégant cette partie au serveur, donc à l'administrateur système, et pas au développeur.
Enfin, la sécurité des communications. En Swing, ben… on fait ce qu'on veut. C'est bien, mais il faut aussi réinventer la roue : transmission des informations via TLS, authentification, etc. En Web, c'est déjà dedans. Alors évidemment, quand on a besoin du TCP brut, ou pire, de l'UDP, c'est plus dur.
Donc on est parti sur une réécriture en Web. Parce que ça marche, c'est « mature », ça se distribue facilement. Bien sûr, c'est pas tout rose. La multitude de frameworks est décourageante. La vitesse de dépréciation aussi. Mon application Swing, elle marche depuis 10 ans, même sur des ordinateurs récents. C'est solide, ça tient la route, ça se casse pas tout seul.
Il y a beaucoup d'aspect des applications Web que je n'aime pas. C'est bloaté à mort, c'est souvent un gâchis de ressources monumentales. Pour beaucoup de choses, je préfère une application de bureau. Mais il ne faut pas renier pour autant les fabuleuses avancées de cette plateforme : le Web remplit beaucoup de cas d'utilisation aujourd'hui, pour la plus grande peine des utilisateurs de VisualBasic.
Les contraintes, oui. Par exemple, définir que marcel a besoin de libfoo >=2, <3, !2.2.1 ça peut se concevoir. Évidemment, ça ne marche que si libfoo utilise le système de version sémantique. Sinon, c'est la foire d'empoigne…
In [4]: some_list = 'setanéstebnsetanustebnésatenastubnestpnesanuastnbtsnastbnstanstbnsteanutsenbstanstbnstaà' * 1000
In [7]: %%timeit
...:
...: list_a = []
...: list_b = []
...:
...: for s in some_list:
...: if s[0] == 'a':
...: list_a.append(s)
...: elif s[0] == 'b':
...: list_b.append(s)
...:
...:
6.08 ms ± 142 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
In [8]: %%timeit
...:
...: list_a = [s for s in some_list if s.startswith('a')]
...: list_b = [s for s in some_list if s.startswith('b')]
...:
...:
11.8 ms ± 159 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
In [10]: def starts_with_a(s):
...: return s[0] == 'a'
...:
...: def starts_with_b(s):
...: return s[0] == 'b'
...:
In [11]: %%timeit
...:
...: list_a = list(filter(starts_with_a, some_list))
...: list_b = list(filter(starts_with_b, some_list))
...:
...:
10.4 ms ± 187 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
In [12]: %%timeit
...: generator_a = (s for s in some_list if s.startswith('a'))
...: generator_b = (s for s in some_list if s.startswith('b'))
...:
...:
401 ns ± 1.17 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
In [13]: %%timeit
...: generator_a = (s for s in some_list if s.startswith('a'))
...: generator_b = (s for s in some_list if s.startswith('b'))
...:
...: len(list(generator_a))
...: len(list(generator_b))
...:
...:
12 ms ± 113 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
In [14]: len(some_list)
Out[14]: 88000
Sur une telle liste, moyennement grosse, les générateurs ont l'air d'aller légèrement plus vite. C'était un test rapide et sûrement pourrave.
Pour résumer (traduction libre):
- Utiliser les scopes
- Utiliser un fichier .npmrc à la racine du projet pour paramétrer les dépôts.
- Faites attention lors de l'utilisation d'un proxy.
- Soyez attentifs aux échecs de construction de projet.
Attention quand même à ne pas basculer dans la situation inverse.
La CI/CD existe et marche très bien sans ces gestionnaires de paquets drogués à la version latest.
Dans ma boîte, j'ai un Jenkins qui recompile tous nos logiciels, qu'ils soient en C++ ou en Python. Et on a même plusieurs environnements, SuSE 10, SuSE 11, CentOS 7, Ubuntu 20.04, avec des compilateurs différents (GCC de 7 à 9), des versions de boost différents (pour le C++), etc.
Mais TOUT est hors-ligne. C'est le développeur qui choisit la version, qui la regarde, et qui la soumet à la plateforme de CI/CD (souvent par le biais d'un dépôt Git). C'est pour moi hors de question qu'une plateforme de CI/CD aille chercher une version d'une bibliothèque sur Internet à poil.
Pour Yarn, il existe par exemple yarn install --offline --non-interactive --frozen-lockfile, et dans le lockfile, il y a les condensats des paquets. C'est sûr, le développeur ne peut pas tout vérifier, mais au moins, la plateforme de CI/CD ne fait rien en cachette.
Avant, yavait pas de CI/CD. Mais un logiciel comme Jenkins, forké en 2011 à partir de Hudson créé en 2005. Et avant ça, il existait d'autres solutions. npm est sorti en 2010. Il n'y a donc aucune excuse pour lui, d'un point de vue de la sécurité. Pareil pour pip, 2011, aucune excuse. RubyGems date de 2003, donc c'est plus excusable.
Je pense que c'est la traduction de l'acronyme anglais TIL (Today I learned) qui vient de reddit: Aujourd'hui J'Apprends. Ou bien, Aujourd'hui, J'Ai Appris. Je ne sais pas trop.
Non, c'est vraiment dommage la télémétrie. Et si je me souviens bien, y a pas ça dans VLC. Et retirer la télémétrie dans Chrome est très très difficile, Microsoft a passé plusieurs mois à le faire.
Enfin, il existe VSCodium, comme mentionné dans l'article, qui lui, est libre, contrairement à VSCode. La télémétrie est un moyen de surveillance. C'est léger, mais c'en est un.
Je développe une application Web, dont une partie du backend est en Javascript, sur Node.js. Je veux déployer ça avec des RPMs, parce que je suis un vieux croûtons, et parce que mes machines n'ont pas accès à Internet. Elles sont 200 et plus, parfois sur des lignes ADSL.
Voilà la recommendation qu'on m'a faite : https://github.com/kelektiv/node.bcrypt.js/issues/573#issuecomment-771660008
@Glandos If your deployment is an RPM, just copy the node_modules folder verbatim.
Pour tous ceux qui ont déjà fait ça, un node_modules/, c'est 500Mo. On me demande explicitement de faire un transfert de 500Mo (en xz, 30Mo) juste parce que tout le monde a une bande passante grosse comme… comme… enfin, très grosse ?
Allons bon.
(Au final, j'ai fait du webpack, mon RPM fait 2Mo, il est autonome ;) )
UPDATE: At 2020-01-30 23:17 UTC we received a call from a VP at Google who apologised for the bad communication from Google and explained the situation, which related to some extremely abusive content which was accessible on the default matrix.org homeserver. Our Trust and Safety team had already identified and acted on this content to enforce the server's terms of use, and so we've explained how Element and Matrix works, established a channel for communication over any future moderation concerns, and expect the app to be restored shortly.
UPDATE: The app is restored as of 2020-01-31 00:30 UTC. Huge thanks to everyone for your patience and support while we sorted this out, and to the wider Element team who spent their Saturday on this. Thanks also to Google for being transparent and apologetic and the rapid resolution once we'd established contact.
En effet, c'est revenu. Quand je vois ce qu'il a été nécessaire de faire, je me dis que quand même, ils ont de la chance d'avoir une boîte, des gens motivés et compétents sur la technologie. Je ne suis pas sûr que Google mette en place un « canal de communication pour toutes les affaires futures à propos de la modération ».
Genre… j'ai même pas essayé. Mais je crois que progressive et optimize sont par défaut. Le reste, j'ai jamais testé, mais ça vaut le coup. Bon, évidemment, là, j'ai pas le temps. Je vais devoir mettre ton commentaire très instructif de côté :)
Autant sur des configurations basse consommation, les CPU de Intel sont intéressants, autant sur des configurations « normales », Intel n'a plus d'intérêt aujourd'hui. Pour le Kubb 12, c'est de base un bi-cœur. Le quadri-cœur « performant » rajoute +230 €. J'ai acheté un AMD Ryzen PRO 4750G pour 330€ : 8 cœurs, 16 threads, et une carte graphique intégré.
Je suis exactement au même point. J'ai récupéré il y a 7 ans d'occasion une Lexmark Pro 715 qui a le bon goût d'être réseau, et d'envoyer le scan par courriel. C'est même mon usage principal, depuis qu'elle refuse d'imprimer en noir et blanc sous prétexte qu'il n'y a plus de cyan.
Je lui cherche donc un remplaçant, et sur la technique, je suis un bon maximizer. Donc j'ai beaucoup écumé, les multifonctions parce que c'est ce dont j'ai besoin. Les réservoirs d'encre liquide me paraissait le top aussi, jusqu'à ce que je constate la chose suivante : toutes les imprimantes ont un firmware kikoolol. Oui, elles peuvent numériser des documents, mais seulement dans le cloud. J'ai vérifié, j'ai lu TOUS les manuels d'Epson, de HP et de Canon. En fait, c'est possible chez Epson à partir de l'imprimante à 1000 € qui fait beaucoup plus que ce dont j'ai besoin, et qui est donc trop chère.
Et puis j'ai vu Brother, qui n'hésite pas à garder ces vieilles fonctionnalités qui ont fait leurs preuves. Sauf que… INKVestment n'est pas vendu. C'est une marque utilisée en Amérique, et en Europe, c'est inkbenefit. Et : 0 modèle. Rien. J'en veux. Mais c'est pas possible. Donc si quelqu'un a un tuyau…
Sinon, pour la consommation électrique, c'est pas 99% en veille : ça fait 87h d'activités par an, ça me paraît énorme. On est plus à 99,9%, donc oui, la consommation en veille, c'est la plus importante. Et, personnellement, j'éteins mon imprimante quand je ne m'en sers plus. Avec une rallonge multiprise à interrupteur, parce que c'est trop démodé de mettre des interrupteurs sur les appareils.
Rappelons donc qu'ils ont écrit "We did not change the license of any of the Apache 2.0 code of Elasticsearch, Kibana, Beats, and Logstash — and we never wil […] We believe in open source, and our investment in it will continue unchanged" alors que c'est factuellement faux.
Pour être complet, il y a une note rajoutée à cette phrase qui dit :
Oui, c'est vrai, je n'ai pas assez insisté sur ce point. Les enseignants ne sont pas formés, mais la plupart peuvent y arriver. En plus, la pédagogie, c'est leur métier, donc souvent, ils ont envie de le faire.
Les parents… c'est autre chose. On n'a même pas tous appris à se servir d'un crayon et d'un cahier étant jeune. Ou alors pas en France, et pas en français. Alors l'outil numérique, qui n'a évidemment rien à voir avec celui d'il y a 5 ans (et récursivement pendant 20 ans en arrière), c'est très difficile pour beaucoup de parents. Il faut :
- Du temps
- De la motivation
- Des compétences cognitives entraînées (tout le monde peut y arriver, mais faut-il encore s'être habitué)
- Du matériel qui coûte cher
Toutes ces choses là, ça ne se trouve pas sous le pas d'un cheval…
[^] # Re: Distribution
Posté par Glandos . En réponse au lien Java sur le bureau: parce que les webapps, ça va bien 5 minutes. Évalué à 5.
C'est à peu près ça. C'était un choix pertinent, il y a 10 ans. Aujourd'hui, la plateforme Web a gagné en fonctionnalités, et performances, et pour beaucoup de cas, c'est le meilleur choix pour l'utilisateur.
# Distribution
Posté par Glandos . En réponse au lien Java sur le bureau: parce que les webapps, ça va bien 5 minutes. Évalué à 4.
Pour mon expérience, le dernier article (sur la distribution) était le plus intéressant.
Notamment :
Je ne suis pas tout à fait d'accord. Je travaille dans une petite équipe, plutôt indépendante, faisant partie d'un gros groupe, avec sa politique de distribution de logiciels. Nous, on fait les nôtres, sur le côté. C'est volontaire, et assumé, on est un peu électrons libres transversaux, pour mettre de l'huile dans les rouages quand il faut. Et bien sûr, il n'en faut pas trop non plus.
Bref, donc on doit distribuer des logiciels. Et s'intégrer à « l'AppStore » du groupe, c'est difficile, voir pas désirable du tout, car nos logiciels ne doivent pas être installés par tout le monde.
Pendant 10 ans (!), j'ai développé et maintenu deux applications Java/Swing, déployé avec JavaWebStart. J'ai trouvé plein de limites à Swing, et j'ai dû hacker des composants (faire de la pseudo-réflexivité dessus) pour arriver à mes fins. Par exemple, pour que le menu déroulant d'une combobox ne soit pas limité en largeur à la taille de la combobox, mais affiche le maximum d'informations :
C'est beau comme un camion avec des roues de vélo, mais je m'en suis servi partout.
Ensuite JavaWebStart, c'est pas si beau et tout joli. C'est plein de bugs chiants, comme « tiens, je crois que le cache est pas à jour, mais faut lancer l'application deux fois pour que ça force la mise-à-jour, lalala ». On a dû plusieurs fois demander aux utilisateurs de supprimer le cache et de recommencer.
La signature de l'application est compliquée aussi, mais ça, évidemment, c'est le problème de toute application. Le Web résout ça, en délégant cette partie au serveur, donc à l'administrateur système, et pas au développeur.
Enfin, la sécurité des communications. En Swing, ben… on fait ce qu'on veut. C'est bien, mais il faut aussi réinventer la roue : transmission des informations via TLS, authentification, etc. En Web, c'est déjà dedans. Alors évidemment, quand on a besoin du TCP brut, ou pire, de l'UDP, c'est plus dur.
Donc on est parti sur une réécriture en Web. Parce que ça marche, c'est « mature », ça se distribue facilement. Bien sûr, c'est pas tout rose. La multitude de frameworks est décourageante. La vitesse de dépréciation aussi. Mon application Swing, elle marche depuis 10 ans, même sur des ordinateurs récents. C'est solide, ça tient la route, ça se casse pas tout seul.
Il y a beaucoup d'aspect des applications Web que je n'aime pas. C'est bloaté à mort, c'est souvent un gâchis de ressources monumentales. Pour beaucoup de choses, je préfère une application de bureau. Mais il ne faut pas renier pour autant les fabuleuses avancées de cette plateforme : le Web remplit beaucoup de cas d'utilisation aujourd'hui, pour la plus grande peine des utilisateurs de VisualBasic.
[^] # Re: Pinning
Posté par Glandos . En réponse au lien Le cauchemar de l'empaquetage: côté distrib. Évalué à 4.
Non, le pinning, c'est pas une bonne chose.
Les contraintes, oui. Par exemple, définir que
marcel
a besoin delibfoo >=2, <3, !2.2.1
ça peut se concevoir. Évidemment, ça ne marche que silibfoo
utilise le système de version sémantique. Sinon, c'est la foire d'empoigne…[^] # Re: Python
Posté par Glandos . En réponse au journal Découvrir Docker, Python, LLVM et Emscripten. Évalué à 4.
Allez, on dégaine un iPython, c'est parti.
Sur une telle liste, moyennement grosse, les générateurs ont l'air d'aller légèrement plus vite. C'était un test rapide et sûrement pourrave.
# En gros
Posté par Glandos . En réponse au lien Comment Google se moque de la CNIL (Pixel de Tracking). Évalué à 9.
17 clics pour ne pas être pisté. De multiples panneaux d'avertissements terrifiants.
Au final : un dépôt forcé de cookies.
[^] # Re: Tu t'es fait pythonisé :)
Posté par Glandos . En réponse au journal Découvrir Docker, Python, LLVM et Emscripten. Évalué à 5.
https://github.com/hauntsaninja/pyp Pour piper du shell dans du Python
https://github.com/amoffat/sh Pour appeler du shell depuis Python
Le deuxième est particulièrement efficace.
# Impressionnant
Posté par Glandos . En réponse au lien Archive du web : service Europe ?. Évalué à 4.
Il y a même la page d'accueil de mon site web, pourtant inconnu, et qui ne contient qu'un texte pour dire qu'il n'y a rien.
# Petit guide pour NPM avec GitHub
Posté par Glandos . En réponse au lien Dependency Confusion: How I Hacked Into Apple, Microsoft and Dozens of Other Companies. Évalué à 2.
https://github.blog/2021-02-12-avoiding-npm-substitution-attacks/
Pour résumer (traduction libre):
- Utiliser les scopes
- Utiliser un fichier
.npmrc
à la racine du projet pour paramétrer les dépôts.- Faites attention lors de l'utilisation d'un proxy.
- Soyez attentifs aux échecs de construction de projet.
[^] # Re: Unmix tha police
Posté par Glandos . En réponse au lien Copyright madness : jouer de la musique pour empêcher d'être filmé. Évalué à 3.
L'accordéon marche aussi chez nos amis Saxons : https://youtu.be/QYnSzxS9Wx8
[^] # Re: La faille entre la chaise et le clavier
Posté par Glandos . En réponse au lien Dependency Confusion: How I Hacked Into Apple, Microsoft and Dozens of Other Companies. Évalué à 10.
Attention quand même à ne pas basculer dans la situation inverse.
La CI/CD existe et marche très bien sans ces gestionnaires de paquets drogués à la version latest.
Dans ma boîte, j'ai un Jenkins qui recompile tous nos logiciels, qu'ils soient en C++ ou en Python. Et on a même plusieurs environnements, SuSE 10, SuSE 11, CentOS 7, Ubuntu 20.04, avec des compilateurs différents (GCC de 7 à 9), des versions de boost différents (pour le C++), etc.
Mais TOUT est hors-ligne. C'est le développeur qui choisit la version, qui la regarde, et qui la soumet à la plateforme de CI/CD (souvent par le biais d'un dépôt Git). C'est pour moi hors de question qu'une plateforme de CI/CD aille chercher une version d'une bibliothèque sur Internet à poil.
Pour Yarn, il existe par exemple
yarn install --offline --non-interactive --frozen-lockfile
, et dans le lockfile, il y a les condensats des paquets. C'est sûr, le développeur ne peut pas tout vérifier, mais au moins, la plateforme de CI/CD ne fait rien en cachette.Avant, yavait pas de CI/CD. Mais un logiciel comme Jenkins, forké en 2011 à partir de Hudson créé en 2005. Et avant ça, il existait d'autres solutions.
npm
est sorti en 2010. Il n'y a donc aucune excuse pour lui, d'un point de vue de la sécurité. Pareil pourpip
, 2011, aucune excuse. RubyGems date de 2003, donc c'est plus excusable.# Mais il y est arrivé quand même
Posté par Glandos . En réponse au lien What's holding Firefox 85 on sid ? - reddit. Évalué à 3.
https://tracker.debian.org/news/1228455/accepted-firefox-8501-1-source-into-unstable/
# NFTables ?
Posté par Glandos . En réponse au lien Web GUI / iptables : gère tes règles de pare-feu à la souris avec Easywall. Évalué à 7.
Ah, je suis rabat-joie, mais j'ai récemment migré de ferm vers nftables, et même si ça a été laborieux, j'y ai bien gagné au change.
Je ne sais pas si iptables est sur la pente descendante, mais… ça serait bien que Easywall gère nftables ;)
[^] # Re: Documentaire sur Arte
Posté par Glandos . En réponse à la dépêche Wikipédia : vingt ans déjà !. Évalué à 3.
Je pense que c'est la traduction de l'acronyme anglais TIL (Today I learned) qui vient de reddit: Aujourd'hui J'Apprends. Ou bien, Aujourd'hui, J'Ai Appris. Je ne sais pas trop.
[^] # Re: Tout ça pour ça
Posté par Glandos . En réponse au lien Raspbian : installation dans le dos des utilisateurs d'une télémétrie vers des serveurs Microsoft. Évalué à 10.
Non, c'est vraiment dommage la télémétrie. Et si je me souviens bien, y a pas ça dans VLC. Et retirer la télémétrie dans Chrome est très très difficile, Microsoft a passé plusieurs mois à le faire.
Enfin, il existe VSCodium, comme mentionné dans l'article, qui lui, est libre, contrairement à VSCode. La télémétrie est un moyen de surveillance. C'est léger, mais c'en est un.
# L'écosystème n'est pas du tout économe.
Posté par Glandos . En réponse au lien C’était mieux avant tous ces sites pleins de javascript. Évalué à 7.
Je développe une application Web, dont une partie du backend est en Javascript, sur Node.js. Je veux déployer ça avec des RPMs, parce que je suis un vieux croûtons, et parce que mes machines n'ont pas accès à Internet. Elles sont 200 et plus, parfois sur des lignes ADSL.
Voilà la recommendation qu'on m'a faite : https://github.com/kelektiv/node.bcrypt.js/issues/573#issuecomment-771660008
Pour tous ceux qui ont déjà fait ça, un
node_modules/
, c'est 500Mo. On me demande explicitement de faire un transfert de 500Mo (en xz, 30Mo) juste parce que tout le monde a une bande passante grosse comme… comme… enfin, très grosse ?Allons bon.
(Au final, j'ai fait du webpack, mon RPM fait 2Mo, il est autonome ;) )
[^] # Re: C'est revenu
Posté par Glandos . En réponse au journal Google expulse (temporairement ?) Element (client Matrix) du Play Store. Évalué à 9.
En effet, c'est revenu. Quand je vois ce qu'il a été nécessaire de faire, je me dis que quand même, ils ont de la chance d'avoir une boîte, des gens motivés et compétents sur la technologie. Je ne suis pas sûr que Google mette en place un « canal de communication pour toutes les affaires futures à propos de la modération ».
Allez, soyons positifs, ça n'a pris que 24h ;)
[^] # Re: Imprimante multi-fonctions
Posté par Glandos . En réponse au journal Maximizer, Satisficer et Achat d'une Nouvelle Imprimante. Évalué à 3.
https://framagit.org/Glandos/deliver_scan/-/blob/master/deliver_scan.py#L19
Genre… j'ai même pas essayé. Mais je crois que progressive et optimize sont par défaut. Le reste, j'ai jamais testé, mais ça vaut le coup. Bon, évidemment, là, j'ai pas le temps. Je vais devoir mettre ton commentaire très instructif de côté :)
[^] # Re: Imprimante multi-fonctions
Posté par Glandos . En réponse au journal Maximizer, Satisficer et Achat d'une Nouvelle Imprimante. Évalué à 3.
https://framagit.org/Glandos/deliver_scan
Attention, c'est du gros bricolage. Mais souvent, je gagne 20% sur la taille finale.
[^] # Re: Pas de Ryzen ?
Posté par Glandos . En réponse au journal Assembleur de PC en France. Évalué à 2.
J'y ai quand même trouvé l'OCTO 5 et le META 5, qui sont de l'embarqué avec des Ryzen V1000.
# Pas de Ryzen ?
Posté par Glandos . En réponse au journal Assembleur de PC en France. Évalué à 6.
Autant sur des configurations basse consommation, les CPU de Intel sont intéressants, autant sur des configurations « normales », Intel n'a plus d'intérêt aujourd'hui. Pour le Kubb 12, c'est de base un bi-cœur. Le quadri-cœur « performant » rajoute +230 €. J'ai acheté un AMD Ryzen PRO 4750G pour 330€ : 8 cœurs, 16 threads, et une carte graphique intégré.
Donc, c'est dommage :)
# Je cherche une brother INKvestment / inkbenefit…
Posté par Glandos . En réponse au journal Maximizer, Satisficer et Achat d'une Nouvelle Imprimante. Évalué à 3.
Je suis exactement au même point. J'ai récupéré il y a 7 ans d'occasion une Lexmark Pro 715 qui a le bon goût d'être réseau, et d'envoyer le scan par courriel. C'est même mon usage principal, depuis qu'elle refuse d'imprimer en noir et blanc sous prétexte qu'il n'y a plus de cyan.
Je lui cherche donc un remplaçant, et sur la technique, je suis un bon maximizer. Donc j'ai beaucoup écumé, les multifonctions parce que c'est ce dont j'ai besoin. Les réservoirs d'encre liquide me paraissait le top aussi, jusqu'à ce que je constate la chose suivante : toutes les imprimantes ont un firmware kikoolol. Oui, elles peuvent numériser des documents, mais seulement dans le cloud. J'ai vérifié, j'ai lu TOUS les manuels d'Epson, de HP et de Canon. En fait, c'est possible chez Epson à partir de l'imprimante à 1000 € qui fait beaucoup plus que ce dont j'ai besoin, et qui est donc trop chère.
Et puis j'ai vu Brother, qui n'hésite pas à garder ces vieilles fonctionnalités qui ont fait leurs preuves. Sauf que… INKVestment n'est pas vendu. C'est une marque utilisée en Amérique, et en Europe, c'est inkbenefit. Et : 0 modèle. Rien. J'en veux. Mais c'est pas possible. Donc si quelqu'un a un tuyau…
Sinon, pour la consommation électrique, c'est pas 99% en veille : ça fait 87h d'activités par an, ça me paraît énorme. On est plus à 99,9%, donc oui, la consommation en veille, c'est la plus importante. Et, personnellement, j'éteins mon imprimante quand je ne m'en sers plus. Avec une rallonge multiprise à interrupteur, parce que c'est trop démodé de mettre des interrupteurs sur les appareils.
# Liste des APIs ?
Posté par Glandos . En réponse au lien Google retire à Chromium la possibilité d'utiliser certains de ses services. Évalué à 2.
Je n'ai pas saisi quelles APIs allaient être inutilisables… J'ai bien compris Sync, mais personnellement, ça me va ;)
[^] # Re: Les promesses n’engagent que ceux qui y croient
Posté par Glandos . En réponse au lien AWS fork Elastic Search qui n'est plus sous licence Apache. Évalué à 3.
Pour être complet, il y a une note rajoutée à cette phrase qui dit :
Ça ne change quand même rien à l'argumentaire pour moi ;)
[^] # Re: Du support ?
Posté par Glandos . En réponse au journal Les enseignants, poussés vers GMail. Évalué à 4.
Oui, c'est vrai, je n'ai pas assez insisté sur ce point. Les enseignants ne sont pas formés, mais la plupart peuvent y arriver. En plus, la pédagogie, c'est leur métier, donc souvent, ils ont envie de le faire.
Les parents… c'est autre chose. On n'a même pas tous appris à se servir d'un crayon et d'un cahier étant jeune. Ou alors pas en France, et pas en français. Alors l'outil numérique, qui n'a évidemment rien à voir avec celui d'il y a 5 ans (et récursivement pendant 20 ans en arrière), c'est très difficile pour beaucoup de parents. Il faut :
- Du temps
- De la motivation
- Des compétences cognitives entraînées (tout le monde peut y arriver, mais faut-il encore s'être habitué)
- Du matériel qui coûte cher
Toutes ces choses là, ça ne se trouve pas sous le pas d'un cheval…
[^] # Re: Du support ?
Posté par Glandos . En réponse au journal Les enseignants, poussés vers GMail. Évalué à 3.
Alors… Y a du stockage, mais pas de lien de partage. Nextcloud, c'est bien, mais c'est gratuit, faut pas déconner ;)