- IPFM donne pour chaque hôte interne la quantité de trafic échangée avec l'extérieur, avec une granulosité d'une heure.
- net-acct, qui donne pour chaque connexion un n-uplet avec un timestamp, le protocole de niveau 4 utilisé (TCP / UDP / ICMP), IP source, IP destination, port source, port destination, timestamp, nombre de paquets échangés, nombre d'octets échangés (enfin, « connexion UDP ou ICMP »... j'me comprends).
On utilise IPFM pour identifier les gros téléchargeurs / uploaders, net-acct pour rentrer dans plus de détails lorsqu'il y a contestation ou qu'on veut identifier du trafic bizarre.
org-mode, le mode d'emacs ? C'est du texte pur. Les exports HTML / pdfLaTeX sont possibles. L'impulsion initiale a été de faire un outline-mode plus simple. Il est facile de faire des liens entre les fichiers ou vers des fichiers externes. Le côté moteur de recherche, ce sera M-x rgrep (avec les résultats cliquables pour sauter à la bonne note, mais ce sera peut-être rugueux pour toi, je ne sais pas).
Parmi les manques : il n'y a pas de "rigidité" imposée. La synchronisation entre postes, ce ne sera pas intégré à org-mode, utilise quelque chose comme mercurial (quoique, emacs permettant de commiter directement depuis l'éditeur, on peut considérer que c'est intégré :-) ).
C'est drôle, Guido insiste sur le fait que cela empêche d'avoir une jolie backtrace, alors que cela me semble secondaire. Par contre, il mentionne en passant la gestion des exceptions, ce qui à moi me semble un bien meilleur argument. On ne peut effectivement pas faire de "continuations" si l'on est dans un bloc try, et regarder si on est dans un tel bloc avant de décider si l'on peut optimiser l'appel de la fonction doit être tout de suite moins trivial...
J'ajouterais un détail. La tail queue récursion n'est utilisable que pour les algos où l'appel recursif est la dernière chose effectuée dans ce programme. Ce n'est pas le cas de la plupart des algorithmes récursifs. Et pour ceux pour lequel c'est le cas, ils peuvent tous très facilement s'écrire avec une boucle while.
On peut certainement. Je peux aussi faire du calcul numérique en Perl, mais je préférerais le faire en Python :). Réécrire du code à cause des déficiences du compilateur, bof, bof. Ce n'est pas toujours naturel. Dans le cas de la factorielle, je reconnais que la version impérative est aussi claire. Dans l'article WP sur la récursion terminale, il y a un meilleur exemple, le calcul du PGCD :
def pgcd(a, b):
if a == 0: return b
if b == 0: return a
if a >= b: return pgcd(a - b, b)
else: return pgcd(a, b - a)
Je veux bien que ceci puisse être réécrit avec une boucle while, mais l'écriture sera moins naturelle, et la démonstration que tu as vue en cours de maths sur la validité de cet algorithme ne sera plus valable, il faudra refaire un invariant de boucle (c'est d'ailleurs le cas sur la page WP : en:Euclidean_algorithm#Implementations.
Help on built-in function setrecursionlimit in module sys:
setrecursionlimit(...)
setrecursionlimit(n)
Set the maximum depth of the Python interpreter stack to n. This
limit prevents infinite recursion from causing an overflow of the C
stack and crashing Python. The highest possible limit is platform-
dependent.
Cela ne fait que repousser le problème. Le vrai souci est que Python ne sait pas ce qu'est une récursion terminale, c'est pour cela qu'il met une limite à la profondeur de la récursion (et qu'il va consommer une mémoire proportionnelle à la profondeur de la récursion). Bon, chez moi ça segfault à partir de fac(2000), donc la mémoire utilisée viendra plus de Python que du code exécuté...
Pour mettre du code, j'ai utilisé la balise <pre>, avec l'option sous la boîte de commentaire « texte avec HTML sans retour chariot ».
Pour continuer dans les problèmes de Python, pas de récursion utilisable :
% python
>>> def fac(n):
... def fac_aux(n, p):
... if n == 1:
... return p
... return fac_aux(n - 1, n*p)
... return fac_aux(n, 1)
...
>>> fac(5)
120
>>> fac(999)
[ ... ]
File "<stdin>", line 5, in fac_aux
File "<stdin>", line 5, in fac_aux
RuntimeError: maximum recursion depth exceeded
% perl
sub fac {
sub fac_aux {
my ($n, $p) = @_;
return $p if $n == 1;
return fac_aux($n - 1, $n * $p);
}
my $n = shift;
fac_aux($n, 1);
}
printf "\n%d - %d\n", fac(5), fac(1000000);
^D
120 - -1
(Bon, le résultat est numériquement faux, mais l'exemple porte sur la récursion; sinon j'aurais utilisé une bibliothèque bignum.)
On ne parlera pas de l'impossibilité de dire qu'on veut déclarer à l'avance ses variables pour au moins éviter les typos (il paraît que c'est un avantage).
C'est vrai, je n'avais pas pensé à cela. Mais les signatures faites par GPG sont signées, non ? Et au pire, tu peux garder en local une table de correspondance date du backup => SHA512 du backup, ou alors inclure dans chaque backup un fichier de méta-données avec en autres la date. Dans ce cas, c'est un peu moins simple que ce que je décrivais...
Mon détecteur à sarcasme ne sait pas trop comment réagir... Est-ce que tu suggères sérieusement que l'endroit où je stocke déjà ma carte bancaire, ma CNI et ma carte grise est un mauvais endroit pour stocker le mot de passe permettant de déchiffrer mes archives ?
De cette façon, tout est chiffré, tu n'as pas besoin d'avoir confiance en l'admin de la machine distante, etc. (enfin, si, il doit être possible pour lui de supprimer des dossiers ; mais pas d'en modifier ou d'en ajouter).
Sinon, l'autre façon est d'utiliser gpg, quelque chose du genre (non testé) :
C'est justement parce qu'il est en manque de testeurs d'un logiciel libre sur une certaine plateforme que geh poste ici. S'il y avait beaucoup d'utilisateurs de Darcs on Windows, il n'aurait pas eu besoin de cet appel...
Quant à la pertinence de ce journal, moi je trouve que la recherche de testeurs pour un LL a sa place ici.
Mais de toute façon, corrigez-moi si je me trompe (je suis trop jeune pour déclarer des impôts), mais le gros de la déclaration est fait dans une applet Java. Hors, Java est portable, tourne de la même façon dans toutes les VM certifiées Sun, et tous les OS cités disposent d'une telle VM. Ce n'est pas le cas ?
Maintenant (et je considère cela comme une faille de sécurité) il y a certain cas où le fichier à les droits d'exécutions sans que tu le demandes (quand on décompresses une archive *.zip *.tar.gz).
Tiens, j'avais toujours pensé que c'était parce que Free avait intérêt à conserver le plus de trafic "en local", parce que des abonnés qui vont sur *.free.fr ça coûte moins cher que des abonnés qui vont sur youtube.com. Je ne voyais pas cela comme un moyen d'équilibrer les flux de peering, plutôt réduire la taille des tuyaux vers l'extérieur...
L'utilisation des pages persos comme contenu pour les eyeballs des autres opérateurs est réellement prépondérante dans le choix de cette offre de pages persos, ou c'est de la spéculation ?
(Et il n'est réellement pas envisageable que la fondation Free ait fait cela par bonté d'âme ? Je peux ravoir de la guimauve ?)
Et aujourd'hui, FreeBSD (et sûrement d'autres OS) utilise OSS. On peut lancer plusieurs applications qui émettent du son en même temps, c'est géré par le noyau comme tout ce qui touche au matériel est censé être, d'après ce que je lis (je n'ai jamais eu besoin de jouer des sons dans mes applis) on a une API raisonnable...
[^] # Re: commentaire inutile
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Ah le français !. Évalué à 2.
Si si, vérifiez, ça commence toujours par : « Il y a bien longtemps dans une galaxie lointaine, très lointaine... ».
[^] # Re: AEIOU
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Ah le français !. Évalué à 4.
Sur la page citée par OP, il y en a quelques unes :
L'AVOCAT SE FAIT JUGE (il change de métier ou passe sur le banc des accusés ?)
UN INTERNE TUE (quatre interprétations possibles)
Ainsi que L'ENTREPRISE DE MACONNERIE (à une espace près, c'est vrai).
[^] # Re: Fonction sleep() et nationalité
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Orange: La suite. Évalué à 4.
Je dirais oui, vue l'énormité de la chose, mais dans la mesure où le document parle aussi du serveur jBoss avec admin/admin, j'ai un doute...
# IPFM + net-acct
Posté par Frédéric Perrin (site web personnel) . En réponse au message IP accounting. Évalué à 3.
- IPFM donne pour chaque hôte interne la quantité de trafic échangée avec l'extérieur, avec une granulosité d'une heure.
- net-acct, qui donne pour chaque connexion un n-uplet avec un timestamp, le protocole de niveau 4 utilisé (TCP / UDP / ICMP), IP source, IP destination, port source, port destination, timestamp, nombre de paquets échangés, nombre d'octets échangés (enfin, « connexion UDP ou ICMP »... j'me comprends).
On utilise IPFM pour identifier les gros téléchargeurs / uploaders, net-acct pour rentrer dans plus de détails lorsqu'il y a contestation ou qu'on veut identifier du trafic bizarre.
# statfs
Posté par Frédéric Perrin (site web personnel) . En réponse au message C/commande : nombre de fichiers sur une partition/disque. Évalué à 10.
Ou alors, "df -i". Ça permet d'éviter de parcourir la totalité du système de fichiers :).
[^] # Re: Un rasoir ?
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Des rasoirs de sûreté. Évalué à 10.
# emacs le fait
Posté par Frédéric Perrin (site web personnel) . En réponse au message Organisation et prise de notes scientifiques. Évalué à 4.
Parmi les manques : il n'y a pas de "rigidité" imposée. La synchronisation entre postes, ce ne sera pas intégré à org-mode, utilise quelque chose comme mercurial (quoique, emacs permettant de commiter directement depuis l'éditeur, on peut considérer que c'est intégré :-) ).
Le site du projet : [[http://orgmode.org]], avec le manuel : [[http://orgmode.org/manual/index.html]] pour un aperçu des possibilités.
[^] # Re: Pourquoi les gens critiquent toujours python avec de mauvais argumen
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Journal inutile : Python c'est complêtement pourri, j'ai un exemple. Évalué à 2.
http://neopythonic.blogspot.com/2009/04/tail-recursion-elimi(...)
C'est drôle, Guido insiste sur le fait que cela empêche d'avoir une jolie backtrace, alors que cela me semble secondaire. Par contre, il mentionne en passant la gestion des exceptions, ce qui à moi me semble un bien meilleur argument. On ne peut effectivement pas faire de "continuations" si l'on est dans un bloc try, et regarder si on est dans un tel bloc avant de décider si l'on peut optimiser l'appel de la fonction doit être tout de suite moins trivial...
[^] # Re: Pourquoi les gens critiquent toujours python avec de mauvais argumen
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Journal inutile : Python c'est complêtement pourri, j'ai un exemple. Évalué à 2.
[^] # Re: Pourquoi les gens critiquent toujours python avec de mauvais argumen
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Journal inutile : Python c'est complêtement pourri, j'ai un exemple. Évalué à 4.
setrecursionlimit(...)
setrecursionlimit(n)
Set the maximum depth of the Python interpreter stack to n. This
limit prevents infinite recursion from causing an overflow of the C
stack and crashing Python. The highest possible limit is platform-
dependent.
Cela ne fait que repousser le problème. Le vrai souci est que Python ne sait pas ce qu'est une récursion terminale, c'est pour cela qu'il met une limite à la profondeur de la récursion (et qu'il va consommer une mémoire proportionnelle à la profondeur de la récursion). Bon, chez moi ça segfault à partir de fac(2000), donc la mémoire utilisée viendra plus de Python que du code exécuté...
Pour mettre du code, j'ai utilisé la balise <pre>, avec l'option sous la boîte de commentaire « texte avec HTML sans retour chariot ».
[^] # Re: Pourquoi les gens critiquent toujours python avec de mauvais argumen
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Journal inutile : Python c'est complêtement pourri, j'ai un exemple. Évalué à -1.
[^] # Re: Il n'y a que moi qui en ai marre...
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Demain, osez la serviette !. Évalué à 8.
[^] # Re: Vers un format unifié?
Posté par Frédéric Perrin (site web personnel) . En réponse au journal CUDF, ou la résolution de dépendances universelle. Évalué à 5.
Il y a optdepends, qui permet de dire "si tu veux la fonctionnalité X, installe le paquet Y" (comme suggests, quoi)
[^] # Re: bah euh
Posté par Frédéric Perrin (site web personnel) . En réponse au message chiffrer un email après réception en clair. Évalué à 2.
[^] # Re: bah euh
Posté par Frédéric Perrin (site web personnel) . En réponse au message chiffrer un email après réception en clair. Évalué à 5.
C'est pas moi qui le dis, c'est Schneier : <http://www.schneier.com/blog/archives/2005/06/write_down_you(...)
[^] # Re: bah euh
Posté par Frédéric Perrin (site web personnel) . En réponse au message chiffrer un email après réception en clair. Évalué à 2.
encfs --reverse /mon/dossier/clair /mon/dossier/chiffré
rsync /mon/dossier/chiffré ssh://serveurdistant/srv/backups
De cette façon, tout est chiffré, tu n'as pas besoin d'avoir confiance en l'admin de la machine distante, etc. (enfin, si, il doit être possible pour lui de supprimer des dossiers ; mais pas d'en modifier ou d'en ajouter).
Sinon, l'autre façon est d'utiliser gpg, quelque chose du genre (non testé) :
tar -c -f - -C /home/PegaseYa Mails | gpg --encrypt --sign | ssh serveurdistant "cat - > /srv/backups/Mails.tar.gpg"
(Signer + chiffrer, de cette façon l'admin de serveurdistant ne peut pas modifier tes backups à ton insu.)
[^] # Re: gourage de site
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Appel aux testeurs Windows pour Darcs 2.4.4. Évalué à 8.
Quant à la pertinence de ce journal, moi je trouve que la recherche de testeurs pour un LL a sa place ici.
[^] # Re: Iceweasel
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Declaration impot sur le revenu en ligne interdite pour Linux. Évalué à 2.
[^] # Re: Gros ratage.
Posté par Frédéric Perrin (site web personnel) . En réponse au journal De l'abération de la notion même d'antivirus. Évalué à 1.
echo umask 0155 >> ~/.${SHELL}rc
[^] # Re: Nouvelles fonctionnalités
Posté par Frédéric Perrin (site web personnel) . En réponse à la dépêche Emacs, brevets, et Ubuntu Unity et Light. Évalué à 3.
http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg000(...)
[^] # Re: Oh yeah
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Mandriva et Linagora. Évalué à 4.
[^] # Re: Adieu Mandriva
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Mandriva et Linagora. Évalué à 4.
[^] # Re: Montée
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Comment MegaVideo parvient-il à financer sa bande passante ?. Évalué à 6.
L'utilisation des pages persos comme contenu pour les eyeballs des autres opérateurs est réellement prépondérante dans le choix de cette offre de pages persos, ou c'est de la spéculation ?
(Et il n'est réellement pas envisageable que la fondation Free ait fait cela par bonté d'âme ? Je peux ravoir de la guimauve ?)
[^] # Re: Tout ça ...
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Pulseaudio vs JACK. Évalué à 9.
[^] # Re: [:aloy]
Posté par Frédéric Perrin (site web personnel) . En réponse au journal Pulseaudio vs JACK. Évalué à 3.
Donc non, emacs et Hurd ne se font pas concurrence :)
Je n'aurais jamais dû mentionner emacs...