ça me donne de la matière pour mes petits modèles :)
Un modèle d'objet que j'utilise depuis longtemps pour du prototypage :
class Character:
index = 1 # Index de classe (compte les instances, cf plus bas)
def __init__(self, name, **kargs): # Tous les mot-clés key=value seront intégrés
self.name = str(name.upper()) # On force le format du nom
for k,v in kargs.items(): # Pour tous les couples k=v passés en arguments
self.__dict__.update({k:v}) # On intègre le champ dans la définition de l'instance
self.index = Character.index # On affect l'indexe de classe en cours
Character.index += 1 # On incrémente l'indexe de classe
def __str__(self):
return json.dumps( self.__dict__, indent=2 )
C'est tout bête comme objet mais ça me sert toujours autant :).
Typiquement :
hero = Character("Toto", life=100, speed=20, force=4, observation=10)
print( hero )
{
"name": "TOTO",
"life": 100,
"speed": 20,
"force": 4,
"observation": 10,
"index": 1
}
On nous l'a imposé il y a un an et je chat beaucoup moins depuis. L'aspect espionnage est évidemment le premier problème...
En tant que logiciel : ça tient à peu près la route mais c'est justement ça le problème pour un "produit microsoft". Vu le niveau qu'on doit attendre, c'est naze en fait. Pas assez ergonomique, ajustable ou ne serait-ce que bien fait... C'est pas un bon logiciel vu le niveau de l'éditeur. Point barre.
Nous imposer ça en entreprise est stupide car il y a moults façon de faire pareil autrement. Même avec un petit budget, enfin... un petit raspberry pi dédié ou plus s'il faut mais non, "on" "se met bien avec MS". Au résultat, que ce soir pro ou non, l'utilisateur paie le très mauvais choix d'outil. Et ça coûte toujours plusieurs bras...
On en a gros !
et on continuera de rire grâce à toi Jean-Pierre o/
woa cool
via Nekoblog
Héhé eh oui ça fait pas rêver ça sans déconner ?
J'adore déjà ce truc :D
Prenant exemple sur le cas français, Paul Rocher fait l’inventaire des politiques successives ayant couvert, sinon encouragé, le caractère agressif du maintien de l’ordre dans l’Hexagone. Il situe l’un des points de bascule historiques au passage de Nicolas Sarkozy au ministère de l’Intérieur. C’est au milieu des années 2000, quand les quartiers populaires s’embrasèrent, que le ministre équipa les forces de police des tristement célèbres Flash-ball
Elle s’est approchée de la porte. Son mari arrive quelques secondes plus tard et lui montre l’endroit où il a été touché. Sur ses conseils, il appelle police-secours pour demander la marche à suivre. L’agent lui recommande de se rendre aux urgences, à moins de dix minutes en voiture. Seule sa femme a le permis de conduire : elle met son manteau pour l’accompagner.
Mais lorsque le couple ouvre la porte donnant sur la rue, les policiers se trouvent à quelques mètres, devant le portail. Ils leur intiment l’ordre de rentrer. Mohammed N. explique aux fonctionnaires qu’ils l’ont blessé et qu’il doit se rendre à l’hôpital. « Là, un des policiers m’a braqué avec le LBD et m’a dit : “Tu rentres, parce que la prochaine, elle sera dans ta gueule.” »
Samia, 38 ans, reconnaît s’être « énervée » en entendant cette menace. « Je leur ai dit : “Vous n’êtes pas bien, vous avez tiré sur un père de famille”. Ils n’ont pas répondu. » Craignant que l’agent ne « tire sur [sa] femme », Mohammed N. la ramène à l’intérieur.
Il compose à nouveau le 17, explique la situation à un agent agacé qui lui suggère d’appeler le 15 ou le 18. Le médecin du Samu lui confirme qu’il doit se rendre par ses propres moyens à l’hôpital et lui remet un numéro de dossier, « en cas de contrôle ». Quand Mohammed N. et sa femme sortent à nouveau, quelques minutes ont passé et les policiers sont partis. Ils se rendent sans encombre aux urgences, où un médecin écoute son récit, constate sa blessure et l’oriente vers le service de médecine légale en vue d’un dépôt de plainte.
En rentrant chez lui, Mohammed N. fait quelques recherches sur Internet et découvre l’existence de la plate-forme de l’Inspection générale de la police nationale (IGPN), à laquelle il adresse un signalement. Dès le lundi, l’IGPN le recontacte pour demander des précisions, puis l’informe qu’un service de police lillois prendra le relais.
[...]
En parallèle de l’enquête pénale, la Direction générale de la police nationale (DGPN) confirme avoir ouvert une enquête administrative, pouvant déboucher sur des poursuites disciplinaires. Ni le parquet, ni la DGPN n'ont souhaité préciser à quelle unité appartiennent les policiers intervenant ce soir-là.
[...]
D’après les informations de Mediapart, ces fonctionnaires déployés pour remédier à des violences urbaines ont justifié leur tir par la présence d’un « individu vêtu de noir » à l’attitude « menaçante », qui s’avançait vers eux en dissimulant ses mains.
Petite modification au niveau du comportement du shaarli. Depuis un moment ma version intègre le header Last-Modified avec la date de changement du fichier datastore.php (ou sont sauvegardés les liens).
J'ajoute quelques lignes pour que cela soit utile côté client, en interrogeant le header de requête If-Modified-Since de mon côté (serveur donc). S'il existe, alors on le compare à la valeur de Last-Modified et selon que le contenu a été modifié ou non, le status sera adapté :
- 304 Not Modified
- 200 Ok (thus modified)
Cela ne devrait pas bloquer le fonctionnement habituel (sinon c'est une régression / c'est pas voulu).
En gros pour obtenir le Last-Modified :
$ curl https://dukeart.netlib.re/links/?do=rss -I 2>/dev/null | grep -ie last-modified
last-modified: Sun, 17 Jan 2021 17:13:30 GMT
Et pour consulter le flux et le télécharger uniquement lorsqu'il est modifié (on place la date reçue précédemment dans le header) :
$ curl https://dukeart.netlib.re/links/?do=rss -H "If-Modified-Since: Sun, 17 Jan 2021 17:13:30 GMT"
La requête renvoie un 200 (et le contenu) si la date de modification du contenu (Last-Modified) est plus grande que la date que vous fournissez. Si le client intègre la mécanique pour chaque flux, cela permet de consulter très régulièrement sans faire de transfert inutile.
Au niveau du code ajouté dans le shaarli, c'est pas méchant :
<?php
$headers = getallheaders();
$last_modified = date("D, d M Y H:i:s", filectime("data/datastore.php")) . " GMT";
if ( array_key_exists("If-Modified-Since", $headers) ) {
$tx = new DateTime($headers["If-Modified-Since"]);
$tm = new Datetime( $last_modified );
if ( $tm <= $tx ) {
header("HTTP/1.1 304 Not Modified");
exit;
}
}
?>
Je pense que ça reste convenable mais je suis ouvert aux critiques ^^ (même sur le principe de base d'ailleurs).
......OO
c'est magnifique... ce travail de ouf !!
moi je fais des cocottes moches mais déjà ça détend vachement. lui il doit être au-délà de la zenitude si ça lui procure ce genre de sensation.
via mastodon
Si on commence à poser des questions, on est antivaxx ou c'est permis par la haute autorité de la bien-pensance (qui n'existe que dans nos têtes mais bon) ? (je troll ! détendez-vous ^^)
Tout n'est pas clair dans cette fuite (les "hackers" ont de beaux jours devant eux) :
https://www.bleepingcomputer.com/news/security/hackers-leaked-altered-pfizer-data-to-sabotage-trust-in-vaccines/
(c'est dommage que l'article ne donne aucun élément pour valider le fait qu'il y a eu manipulation des documents... cela repose donc sur l'affirmation de l'EMA ?)