Journal écrire du code dans le corps d'une classe python

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
12
11
oct.
2024

Découverte que je viens de faire à l'instant : il est possible d'écrire du code dans le corps d'une classe python, et ce code est exécuté automatiquement au chargement du module.

Exemple :

import datetime

class MyClass:
    if datetime.datetime.now().isoweekday() == 5:
        current_day = "trolldi"
        for i in range(10):
            print("TODAY IS", current_day, "!!!!!!!!")
    else:
        current_day = "pas trolldi"

print("current_day:",
(…)

Journal j'aime bien l'auto-complétion par IA (Github Copilot)

28
16
mai
2024

L'outil a déjà été présenté dans ce journal de Anonyme et une alternative libre a été présenté dans ce journal de pulkomandy.

En gros, Github Copilot est un outil de complétion de code assisté par l'IA.

Contexte : jusqu'à maintenant, j'ai presque pas utilisé les modèles de langage à la GPT parce que ça m'intéresse pas tellement. Je trouve le principe super intéressant et reconnais leurs très forts potentiels, mais son implémentation actuel assez bof. J'ai pas envie de donner (…)

Journal Les DRM, ma liseuse et moi, le retour-bis

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
26
28
mar.
2024

Ysabeau< nous avait déjà raconté ses aventures avec les DRM LCP des ebooks de la BnF.

Il m'est arrivé une aventure similaire, mais avec le DRM ACSM de Adobe.

Et j'ai trouvé une solution relativement facile pour les faire sauter.

Manipulations à n'effectuer qu'une fois :

  1. installer gourou. Il est dispo sur Arch sous forme de AUR.
  2. créer un compte sur le site de Adobe
  3. enregistrer votre ordinateur auprès de Adobe adept_activate -u <your_email>

Maintenant, le déplombage proprement dit.

  1. (…)

Journal Django + Jupyter Lab = ❤️

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
17
18
juil.
2023

Au travail, un de mes juniors data-scientist est arrivé avec une demande toute innocente. "Ça serait bien qu'on puisse avoir un truc style Jupyter Notebook sur la prod pour explorer plus facilement les données".

Notre prod est sous Django, un truc assez commun; et Jupyter aussi a l'air aussi rependu dans le domaine de la data-science. Je me suis dit que quelqu'un avait forcément répondu à la problématique.

Et ben non. Pas du tout.

Il existe bien django-extensions (…)

Journal Mathsworld: the S-expressed shader language

Posté par  (site web personnel) . Licence CC By‑SA.
15
17
mar.
2023

TLDR: Mathsworld, un outil web pour faire du raytracing avec des scènes décrite en lisp.

Salut 'nal,

J'ai encore commis un code
improbable. En gros, c'est un truc qui prend en entrée une scène écrite sous forme de S-Expression et qui génère un shader WebGL raytraçant la scène.

Pourquoi ? Parce que ça m'amusait. Et que je voulais apprendre des trucs.

Tout à commencé avec mon envie de comprendre comment on générait des images avec des maths (et un (…)

Journal LIPS : Lisp dans le navigateur

Posté par  (site web personnel) . Licence CC By‑SA.
6
4
mar.
2023

Pour mon projet actuel, je me suis retrouvé à devoir exécuter du lisp dans le navigateur¹. Plein d'optimisme, j'ai dégainé mon moteur de recherche préféré pour voir si il n'y avait pas un malade qui aurait déjà eu le même besoin que moi et bricolé un truc. Et ben il semblerait que plein de gens se soient penché sur la question.

Sélection de projets au hasard :

Pour l'instant, je n'ai joué qu'avec le (…)

Journal VSCodium & support python : pyright

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
14
25
jan.
2023

TL;DR: pyright, extension opensource pour VSCodium ajoutant le support de python.

Y'a longtemps, j'avais parlé de VSCode en ces termes :

Pis un jour j'ai appris que Microsoft avait sorti VSCode. Je me suis dit lol, et parce que je suis une moule de mauvaise foi, j'ai refusé de l'essayer par principe parce que Microsoft bouhcaca, toussa toussa.
Pis un jour, Sam et Max on fait un article dessus. Suite à ma lecture, j'ai décidé de lui laisser (…)

Journal Liste des articles gratuits des Editions Diamond

35
8
jan.
2023

Plop

J'ai vu le journal du camarade vmagnin< indiquant sa difficulté à trouver les articles sous licences libres sur le site des Éditions Diamond et sa solution pour contourner le problème.

Comme je m'ennuyai en ce dimanche nuageux, j'ai commis un script pour récupérer la liste de tous les articles et l'exporter en CSV (best database eva…).

Le script est tout con, il se contente de parser le site pour récupérer les infos.

Au total, j'ai pu trouver 6192 articles (…)

Journal L'ordinateur a perdu sa magie

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
40
1
déc.
2022

Salut les moules!

Ce journal aurait davantage sa place sur mon blog, mais malheureusement, je n'ai jamais fait l'effort d'en maintenir un.

Je suis né en 90. Je pense avoir touché un ordinateur pour la première fois vers mes 5 ans et depuis en ai toujours eu dans ma vie. J'ai sérieusement commencé Linux et la programmation vers mes 15 ans. Je suis rentré à l'IUT de Montpellier en 2008 et sorti en 2011 avec une licence pro de développeur (…)

Journal NixOS 22.11 et OpenBSD 7.2

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
10
1
déc.
2022

Petit journal pour annoncer la sortie d'OpenBSD 7.2 le 20 octobre et de NixOS 22.11 aujourd'hui.

Comme d'habitude, c'est ennuyeusement simple et sans surprise.

OpenBSD : d'abord vérifier dans la section "Configuration and syntax changes" et suivantes les changements impactant votre système, puis doas sysupgrade, se faire un café le temps que la mise à jour se télécharge et s'installe, et faire les changements indiqués dans la documentation.

NixOS : sudo nix-channel --add https://nixos.org/channels/nixos-22.11 nixos && sudo nixos-rebuild (…)

Journal NixOS ou comment j'ai rendu mes machines interchangeables et ennuyeuses

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
58
10
nov.
2022

Salut,

Je voudrais te parler de NixOS, la distribution Linux déclarative. C'est solène% qui me l'a fait découvrir. Elle en a pas mal parlé sur son blog. Elle a même fait des trucs plutôt créatifs avec.

Je l'avais installé sur mon laptop secondaire il y a quelques mois à la place d'OpenBSD (déso / pas déso). C'est une machine que j'utilise assez rarement, et quasi exclusivement pour de la navigation web (youtube/rss dans la chambre). J'ai cherché à (…)

Journal Retour sur Foehn et le parc éolien de la Haute Borne

Posté par  (site web personnel) . Licence CC By‑SA.
44
20
oct.
2022

L'autre jour, j'ai balancé un journal bookmark un peu vide. Je vais profiter de ce journal pour détailler quelques points.

Disclaimer

Je suis lead dev chez Sereema, une start-up proposant une solution de supervision et monitoring des éoliennes afin d'assurer qu'elles fonctionnent bien. Je n'ai pas été payé pour faire ces deux journaux ou Foehn. J'ai fait ça sur mon temps libre parce que ça m'amuse et que je me dis que ça peut intéresser des gens. Je ne (…)

Journal Foehn - Exploration des données SCADA du parc éolien de la Haute Borne

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
33
18
oct.
2022

Y'a Engie qui partage en Open Data les données de quelques éoliennes du parc de la Haute-Borne.

J'ai bricolé un truc en Django pour les analyser. Ça se passe ici.

On peut voir des trucs intéressants, tel que les secteurs dominants de vents, la variation saisonnière de la production ou qu'il y a rarement assez de vent (>12m.s⁻¹) pour que ces éoliennes produisent à leurs plein potentiel (2MW)

Code source.

Journal Computer Graphics de Scratch de Gabriel Gambetta

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
57
16
sept.
2022

J'ai acheté l'ebook de Computer Graphics de Gabriel Gambetta. (et en écrivant ce journal, je découvre que le contenu est gratuitement accessible sur son site).

J'ai toujours été intéressé par les images générées par ordinateur et j'ai voulu comprendre comment ça marche. Comment avec plein de ma~~gie~~ths, on pouvait réussir à générer des pixels ? C'est quoi exactement une carte graphique ? Que voulez vous dire par accélération 3D matérielle ? Par opposition à logicielle ? Expliquez moi. Je (…)

Journal python: ellipsis operator (...)

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
29
15
sept.
2022

J'ai découvert l'ellipsis operator de python (...). Dans le contexte où je l'utilise, c'est équivalent à pass, autrement dit ne rien faire. C'est utilisé principalement pour quand python attend qu'un bloc syntaxique soit rempli (corps d'une fonction, d'une boucle, …), mais qu'on a vraiment rien à y faire. Je trouve que ça permet de faire des interfaces plus élégantes.

from abc import ABC, abstractmethod

class CarElementVisitor(ABC):
    @abstractmethod
    def visitBody(self, element
(…)