Mais c'est surtout une expérience utilisateur misérable
Question de goût. C'est pas parce que tu aime pas qu'il faut en dégoûter les autres.
Moi j'aime beaucoup (lineageos + fdroid), je trouve ça reposant. C'est fluide. Pas d'applications qui cherchent à te la mettre à l'envers. Un Firefox avec synchro de profile, un VLC pour les vidéos, un OSMAND pour la navigation offline. Un bonheur.
L'énoncé m'a fait tout de suite pensé à deque ; donc même soluce, en moins classieux
importsysfromcollectionsimportdeque# init data structureS=list()for_inrange(9):S.append(deque())# parse initial positionsfor_inrange(8):line=next(sys.stdin)forjinrange(9):c=line[4*j+1]ifc!=" ":S[j].append(c)next(sys.stdin)next(sys.stdin)# processwhileline:=sys.stdin.readline():_,q,_,f,_,t=line.strip().split(" ")for_inrange(int(q)):S[int(t)-1].appendleft(S[int(f)-1].popleft())# print final positionsprint("".join(s.popleft()forsinS))
Et une deque temporaire pour les CradeMover9001
import sys
from collections import deque
# init data structure
S = list()
for _ in range(9):
S.append(deque())
# parse initial positions
for _ in range(8):
line = next(sys.stdin)
for j in range(9):
c = line[4*j+1]
if c != " ":
S[j].append(c)
next(sys.stdin)
next(sys.stdin)
# process
while line := sys.stdin.readline():
_, q, _, f, _, t = line.strip().split(" ")
tmp = deque()
for _ in range(int(q)):
tmp.append(S[int(f)-1].popleft())
for _ in range(int(q)):
S[int(t)-1].appendleft(tmp.pop())
# print final positions
print("".join(s.popleft() for s in S))```
mais si c'est pour mettre du Android dedans, ce sera tous sauf souverain
On peut mettre du Android sans Google. Ça demande un peu de travail mais moins que de créer un OS from scratch et ça permet une certaine compatibilité.
Je ne sais pas si ce ne serait pas possible d'exhumer Firefox OS pour faire baisser le prix.
Posté par steph1978 .
En réponse au lien Fin du blog de ploum.
Évalué à 5.
Dernière modification le 05 décembre 2022 à 18:14.
Fichier texte qui s’affiche ensuite dans vos mails, votre lecteur RSS ou votre nagivateur.
(tiens une faute de frappe)
Donc il écrit un gmi qui est gros est du md et il a une moulinette qui crée un HTML, un RSS, un mail et qui envoie tout ça par le canal qui va bien. C'est à peu près ma définition du SSG.
Merci pour ta vigilance vis à vis de ce lobby écologiste dont le but est de nous fourguer … heu … un changement complet de note modèle consumériste. Ça se vend ça ?
Nous attendons vivement tes analyses sur les lobbies de l'aggro alimentaire, de la chasse, des labo pharma, de l'industrie, du bâtiment.
I think the solution should probably not involve git, local builds from the terminal, or CNAME configs to get a custom domain.
Bah si justement ! GitLab pages : un repo cloné d'une template Hugo ou autre et un enregistrement CNAME et un TXT, tu écris en Markdown et hop c'est publié. C'est bien aussi simple que les thèmes Wordpress et la mise en plage d'articles … et un enregistrement CNAME et un TXT pour avoir son domaine.
Et je ne prends que ça dans la liste des trucs à éviter énumérés par Mr Bernard avec laquelle je ne suis pas d'accord.
Heureusement la série "Post-Collapse Computing" me réconcilie avec le personnage.
Mais si son message est qu'il faut être activiste pour sauver le monde. J'admets et je les admire. Mais tout le monde n'a pas la foi de faire ça. Donc héberger des services internet pour des amis, leur refaire un vieux PC sous linux ou un smartphone sous lineage, c'est aussi apporter sa petite contribution.
Oui je dirai que ce n'est pas un langage qui passe à l'échelle, en nombre de lignes et en nombre de contributeurs.
C'est un langage de niche : manipuler de la donnée tabulaire avec concision et une bonne perf. En AWK t'es facilement à 1M/s
Moi ça m'a sauvé les miches lors d'une mise en production de nuit, d'un système assez critique et assez coûteux aussi. On devait insérer 20M d'enregistrements dans la base. Sauf que les données de départ (xml) étaient loin d'être propre. Si on arrive pas à initialiser la DB, on repousse la MEP.
J'ai du retailler et retravailler des lots d'enregistrements pour faire du rampup (lots de plus en plus gros tant que ça passe) et de la reprise sur erreur. Je peux dire qu'à ce moment là, au milieu de la nuit, t'es content de pouvoir exprimer facilement un petit traitement itérer rapidement et produire le résultat super vite.
Oui, quand la plus grosse partie est de lire l'input ligne à ligne, de la tailler en colonne, de mettre ça dans des variables puis de faire un petit calcul, c'est du pain béni pour AWK :)
C'est quand il faut construire et manipuler des structures de données complexe que Python prend sa revanche.
J'imagine que ton site tourne sur une machine allumée 24/24 et branché à ta box internet. Pour ma part je ne connais que la Freebox v6 mais elles fonctionnent à peu près toutes pareil.
Ta machine a une IP privée (192.168.x.y), non accessible par internet. Seule ta box a une IP publique (A.B.C.D), accessible par internet.
PAT sur la box
Il faut donc configurer ta box pour faire de la redirection de ports :
80 -> IP privée serveur : 80
443 -> IP privée serveur : 443
Sur le serveur, il est possible de faire écouter le serveur web sur n'importe quel port. Des fois on choisi 1080 et 1443 pour ne pas avoir besoin de faire tourner en root. Tout ce qui est inférieur à 1024 nécessite d'être root.
DNS chez namecheap
Ensuite, il faut configurer ton DNS pour pointer vers ton IP publique. C'est un enregistrement de type "A"
www A A.B.C.D
Si il existe déjà (pointe sur une page bidon de ton fournisseur de domaine), ne pas hésiter à supprimer l'ancier pour remettre celui là.
Maintenant les choses se corsent si ton fournisseur a choisi de découper ton IP publique entre plusieurs clients (le IPv4 se font rares). Car ils le font en découpant la plage de ports entrant :
1 à 16383
16384 à 32767
32768 à 49151
49152 à 65536
Donc si tu es le client 2, 3 ou 4, tu ne possèdes pas de port 80 ou 443. Gloups.
Dans ce cas, tu peux réclamer une IP complète (en tout cas chez Free). Ton IP va alors changer car l'IP actuelle est découpée. Il en faut une entière.
Si tu as la chance d'être le client 1. NE FAIS RIEN.
enjoy
Si tout marche, bravo. Tu pourras nous donner le lien de ton site.
Faire tourner Photorec ou testdisk peut-il retrouver les vidéos ?
Photorec, oui. Il te faut un gros disque dur à côté pour que photorec mette ce qu'il trouve
Est-il possible d'accélérer l'éxécution de Photorec et testdisk ?
Non. Cela passe forcément par un scan de chaque bloc du disque source pour essayer d'y retrouve une signature de ficher. Et tu auras énormément de déchêts dû à des faux positifs.
Y a-t-il d'autres alternatives ?
Pas à ma connaissance. Photorec m'a déjà sauver les miches.
Puis je me suis mis à faire des sauvegardes :) mais c'est un autre sujet très largement traité sur ce site.
À moins de 500e, ça me parait pas trop mal. Le SSD en SATA doit pas casser des briques. Chassis alu, c'est sympa.
T'as regardé du côté du seconde main. pour ce budget, doit y avoir moyen de taper plus haut.
En particulier, je trouve la ram un peu chiche. Et elle ne parait pas extensible (pas d'option).
Quant à l'écran, 11 pouce c'est bien pour de l'ultra mobilité (cohérent avec le CPU d'un TDP de 6W seulement), genre "je ferai mes mail dans le train". Mais pour réellement travailler dessus, il faudra un écran externe.
Pour moi la limite inférieur pour réellement travailler sur un écran de portable, c'est 13". Certains te diront mm 14".
un EPUB est un zip de fichiers HTML, CSS et JPG/PNG, en gros. Et qui permet de lire un livre sur liseuse (ou logiciel de lecture d'epub). C'est un format de lecture.
Tu parles d'archiver, c'est à dire de conserver des données pour longtemps. Une archive ne veut pas dire que les données sont exploitables immédiatement. Simplement qu'elles ne sont pas perdue et que, moyennant une mise à disposition, elles peuvent être consultées.
En regardant le site, j'ai l'impression que chaque histoire est composés d'un fichier son wav et d'un fichier json.
Pour moi, c'est cela qu'il faut archiver. Un zip de tout ça, déposé sur le IPFS et/ou chez archive.org pourra assurer la pérennité de ce bout de patrimoine.
récupérer assez facilement certaines versions de fichiers à certaines dates
avec des spécifications plus précises il serait possible de mieux optimiser.
Le soucis est que j'ai des milliers de répertoires quotidiens et cette commande prend du temps
find -exec est très lent car il lance un processus par fichier/dossier trouvé.
Si tu pouvais te permettre de tout transférer, rsync -r source/ destination/ serait très rapide. Rsync étant très efficace pour ne transférer que les différences.
Tu peux essayer avec un rsync --include="./22_11_*" ./ destination/
Tient aussi en un onliner awk 'NF==0{print a;a=0}{a+=$1}END{print a}' < input | sort -rn | head -3 | awk '{S+=$1}END{print S}' mais peut être moins lisible 😝
[^] # Re: Souveraineté ?
Posté par steph1978 . En réponse au lien Le premier smartphone fabriqué en France arrive en 2024. Évalué à 7.
Question de goût. C'est pas parce que tu aime pas qu'il faut en dégoûter les autres.
Moi j'aime beaucoup (lineageos + fdroid), je trouve ça reposant. C'est fluide. Pas d'applications qui cherchent à te la mettre à l'envers. Un Firefox avec synchro de profile, un VLC pour les vidéos, un OSMAND pour la navigation offline. Un bonheur.
# python et deque
Posté par steph1978 . En réponse au message Avent du Code, jour 5. Évalué à 2.
L'énoncé m'a fait tout de suite pensé à deque ; donc même soluce, en moins classieux
Et une deque temporaire pour les CradeMover9001
[^] # Re: Souveraineté ?
Posté par steph1978 . En réponse au lien Le premier smartphone fabriqué en France arrive en 2024. Évalué à 3.
On peut mettre du Android sans Google. Ça demande un peu de travail mais moins que de créer un OS from scratch et ça permet une certaine compatibilité.
Je ne sais pas si ce ne serait pas possible d'exhumer Firefox OS pour faire baisser le prix.
[^] # Re: SSG
Posté par steph1978 . En réponse au lien Fin du blog de ploum. Évalué à 5. Dernière modification le 05 décembre 2022 à 18:14.
(tiens une faute de frappe)
Donc il écrit un gmi qui est gros est du md et il a une moulinette qui crée un HTML, un RSS, un mail et qui envoie tout ça par le canal qui va bien. C'est à peu près ma définition du SSG.
[^] # Re: shit project
Posté par steph1978 . En réponse au lien Le vrai coût écologique du streaming vidéo. Évalué à 4. Dernière modification le 05 décembre 2022 à 18:04.
Merci pour ta vigilance vis à vis de ce lobby écologiste dont le but est de nous fourguer … heu … un changement complet de note modèle consumériste. Ça se vend ça ?
Nous attendons vivement tes analyses sur les lobbies de l'aggro alimentaire, de la chasse, des labo pharma, de l'industrie, du bâtiment.
[^] # Re: Autoplay
Posté par steph1978 . En réponse au lien Le vrai coût écologique du streaming vidéo. Évalué à 3.
Les instances invidious n'ont pas l'autoplay par défaut.
[^] # Re: Autoplay
Posté par steph1978 . En réponse au lien Le vrai coût écologique du streaming vidéo. Évalué à 2.
Bof, si la vidéo fait 40 minutes et que tu t'aperçois au bout de 5 minutes que ça ne t'intéresse pas. Tu va DL 75% pour rien.
[^] # Re: Chemin inverse
Posté par steph1978 . En réponse au lien Fin du blog de ploum. Évalué à 3.
Bah si justement ! GitLab pages : un repo cloné d'une template Hugo ou autre et un enregistrement CNAME et un TXT, tu écris en Markdown et hop c'est publié. C'est bien aussi simple que les thèmes Wordpress et la mise en plage d'articles … et un enregistrement CNAME et un TXT pour avoir son domaine.
Et je ne prends que ça dans la liste des trucs à éviter énumérés par Mr Bernard avec laquelle je ne suis pas d'accord.
Heureusement la série "Post-Collapse Computing" me réconcilie avec le personnage.
Mais si son message est qu'il faut être activiste pour sauver le monde. J'admets et je les admire. Mais tout le monde n'a pas la foi de faire ça. Donc héberger des services internet pour des amis, leur refaire un vieux PC sous linux ou un smartphone sous lineage, c'est aussi apporter sa petite contribution.
# SSG
Posté par steph1978 . En réponse au lien Fin du blog de ploum. Évalué à 7.
Bref, Ploum a écrit un "static site generator".
[^] # Re: un bout de AWK
Posté par steph1978 . En réponse au message Avent du Code, jour 4. Évalué à 3.
Oui je dirai que ce n'est pas un langage qui passe à l'échelle, en nombre de lignes et en nombre de contributeurs.
C'est un langage de niche : manipuler de la donnée tabulaire avec concision et une bonne perf. En AWK t'es facilement à 1M/s
Moi ça m'a sauvé les miches lors d'une mise en production de nuit, d'un système assez critique et assez coûteux aussi. On devait insérer 20M d'enregistrements dans la base. Sauf que les données de départ (xml) étaient loin d'être propre. Si on arrive pas à initialiser la DB, on repousse la MEP.
J'ai du retailler et retravailler des lots d'enregistrements pour faire du rampup (lots de plus en plus gros tant que ça passe) et de la reprise sur erreur. Je peux dire qu'à ce moment là, au milieu de la nuit, t'es content de pouvoir exprimer facilement un petit traitement itérer rapidement et produire le résultat super vite.
[^] # Re: un bout de AWK
Posté par steph1978 . En réponse au message Avent du Code, jour 4. Évalué à 4.
Oui, quand la plus grosse partie est de lire l'input ligne à ligne, de la tailler en colonne, de mettre ça dans des variables puis de faire un petit calcul, c'est du pain béni pour AWK :)
C'est quand il faut construire et manipuler des structures de données complexe que Python prend sa revanche.
# un bout de AWK
Posté par steph1978 . En réponse au message Avent du Code, jour 4. Évalué à 4.
Problème assez trivial aujourd'hui
partie 1
partie 2
[^] # Re: Enedis
Posté par steph1978 . En réponse au message Coupure électricité cette hiver. Évalué à 2.
Je ne parlais pas forcément d'une API officielle bien documentée :)
# un bout de AWK
Posté par steph1978 . En réponse au message Avent du Code, jour 3. Évalué à 3.
disclamer : j'ai d'abord écrit une solution en python parce que j'ai tout de suite penser à utiliser les
set
. puis en AWK pour le plaisir :)part 1
part 2
# exposer un site hébergé chez soi
Posté par steph1978 . En réponse au message site internet: me guider de l'achât d'un nom de domaine (namecheap, done), ouverture de ports (?!??). Évalué à 2.
J'imagine que ton site tourne sur une machine allumée 24/24 et branché à ta box internet. Pour ma part je ne connais que la Freebox v6 mais elles fonctionnent à peu près toutes pareil.
Ta machine a une IP privée (192.168.x.y), non accessible par internet. Seule ta box a une IP publique (A.B.C.D), accessible par internet.
PAT sur la box
Il faut donc configurer ta box pour faire de la redirection de ports :
80 -> IP privée serveur : 80
443 -> IP privée serveur : 443
Sur le serveur, il est possible de faire écouter le serveur web sur n'importe quel port. Des fois on choisi 1080 et 1443 pour ne pas avoir besoin de faire tourner en root. Tout ce qui est inférieur à 1024 nécessite d'être root.
DNS chez namecheap
Ensuite, il faut configurer ton DNS pour pointer vers ton IP publique. C'est un enregistrement de type "A"
www A A.B.C.D
Si il existe déjà (pointe sur une page bidon de ton fournisseur de domaine), ne pas hésiter à supprimer l'ancier pour remettre celui là.
Pour connaître ton IP publique, tu peux aller sur https://whatismyipaddress.com/
difficultés
Maintenant les choses se corsent si ton fournisseur a choisi de découper ton IP publique entre plusieurs clients (le IPv4 se font rares). Car ils le font en découpant la plage de ports entrant :
Donc si tu es le client 2, 3 ou 4, tu ne possèdes pas de port 80 ou 443. Gloups.
Dans ce cas, tu peux réclamer une IP complète (en tout cas chez Free). Ton IP va alors changer car l'IP actuelle est découpée. Il en faut une entière.
Si tu as la chance d'être le client 1. NE FAIS RIEN.
enjoy
Si tout marche, bravo. Tu pourras nous donner le lien de ton site.
# tout à fait
Posté par steph1978 . En réponse au message Fusion de plusieurs fichiers .db. Évalué à 2.
# Q&R
Posté par steph1978 . En réponse au message cherche à récupérer des vidéos sur un disque dur externe avec table de partition HS. Évalué à 3.
Photorec, oui. Il te faut un gros disque dur à côté pour que photorec mette ce qu'il trouve
Non. Cela passe forcément par un scan de chaque bloc du disque source pour essayer d'y retrouve une signature de ficher. Et tu auras énormément de déchêts dû à des faux positifs.
Pas à ma connaissance. Photorec m'a déjà sauver les miches.
Puis je me suis mis à faire des sauvegardes :) mais c'est un autre sujet très largement traité sur ce site.
# ultraportable entée de gamme
Posté par steph1978 . En réponse au message Vos avis critiques sur ce modèle ?. Évalué à 3.
À moins de 500e, ça me parait pas trop mal. Le SSD en SATA doit pas casser des briques. Chassis alu, c'est sympa.
T'as regardé du côté du seconde main. pour ce budget, doit y avoir moyen de taper plus haut.
En particulier, je trouve la ram un peu chiche. Et elle ne parait pas extensible (pas d'option).
Quant à l'écran, 11 pouce c'est bien pour de l'ultra mobilité (cohérent avec le CPU d'un TDP de 6W seulement), genre "je ferai mes mail dans le train". Mais pour réellement travailler dessus, il faudra un écran externe.
Pour moi la limite inférieur pour réellement travailler sur un écran de portable, c'est 13". Certains te diront mm 14".
# préciser le besoin ? zip et IPFS ?
Posté par steph1978 . En réponse au message Est-ce faisable en .epub ? ou dans un autre format ?. Évalué à 2.
un EPUB est un zip de fichiers HTML, CSS et JPG/PNG, en gros. Et qui permet de lire un livre sur liseuse (ou logiciel de lecture d'epub). C'est un format de lecture.
Tu parles d'archiver, c'est à dire de conserver des données pour longtemps. Une archive ne veut pas dire que les données sont exploitables immédiatement. Simplement qu'elles ne sont pas perdue et que, moyennant une mise à disposition, elles peuvent être consultées.
En regardant le site, j'ai l'impression que chaque histoire est composés d'un fichier son wav et d'un fichier json.
Pour moi, c'est cela qu'il faut archiver. Un zip de tout ça, déposé sur le IPFS et/ou chez archive.org pourra assurer la pérennité de ce bout de patrimoine.
# précisions et pistes
Posté par steph1978 . En réponse au message Problème sur enchainement de commandes find et rsync. Évalué à 2.
avec des spécifications plus précises il serait possible de mieux optimiser.
find -exec
est très lent car il lance un processus par fichier/dossier trouvé.Si tu pouvais te permettre de tout transférer,
rsync -r source/ destination/
serait très rapide. Rsync étant très efficace pour ne transférer que les différences.Tu peux essayer avec un
rsync --include="./22_11_*" ./ destination/
# OS à se dispenser du C
Posté par steph1978 . En réponse au message sans le C, quel logiciel conséquent/répandu aurait existé?. Évalué à 3.
un OS en Rust : https://www.redox-os.org/
un OS (noyau) en Nim : https://github.com/dom96/nimkernel
[^] # Re: un bout de AWK
Posté par steph1978 . En réponse au message Avent du Code, jour 1. Évalué à 3.
Tient aussi en un onliner
awk 'NF==0{print a;a=0}{a+=$1}END{print a}' < input | sort -rn | head -3 | awk '{S+=$1}END{print S}'
mais peut être moins lisible 😝# un bout de AWK
Posté par steph1978 . En réponse au message Avent du Code, jour 1. Évalué à 4. Dernière modification le 04 décembre 2022 à 11:26.
à passer dans ce pipe:
awk -f script.awk < input | sort -rn | head -3 | awk '{S+=$1}END{print S}'
[^] # Re: Enedis
Posté par steph1978 . En réponse au message Coupure électricité cette hiver. Évalué à 2.
il y a toujours une API 😇
# petit bout de AWK
Posté par steph1978 . En réponse au message Avent du Code, jour 2. Évalué à 5.