Mensuel Shaarli

Tous les liens d'un mois sur une page.

January, 2023

DBeaver - Liste des racourcis clavier

DBeaver est un super outil de gestion de base de données relationnelle.

Il a remplacé SQL Developper depuis des années dans ma logitech. A tous ceux qui ne connaissent pas, je vous le recommande.

PostgreSQL - Choisir correctement sa clef primaire

Merci à @Kalvn pour le lien.

chatCGT - le bot qui refuse de se faire spoiler par les neo-capitalistes

J'ai découvert ça ce matin. C'est une pépite. J'ai trollé le chat-bot sur les bienfaits de l'actionnariat et il vient de se mettre en grève et ne veut plus me répondre. \0/

JS - Comment déclarer une URL avec des paramètres et en plus une ancre ?

L'ordre de déclaration est le suivant :

http://www.example.com?foo=bar&bla=valuebla#myAnchor

Ce qui explique pourquoi nous ne parvenions pas à mélanger ancres et paramètres d'URL chez mon client. Nos prestataires écrivant http://www.example.com/#hashme?foo=bar&bla=valuebla ce qui syntaxiquement est faux.

Quand je pense qu'ils sont bloqués sur ça depuis octobre/nombre et que 3 minutes (à peine) de recherche m'ont suffit à trouver la réponse... J'ai de la peine pour eux.

Factur-X – Documentation sur le format de facturation

Factur-X est un format permettant d'échanger des factures en B2B via Chorus Pro (la plateforme publique de centralisation des factures numériques) et lisibles en PDF (pour les être humains).

Rappel, à partir de juillet 2024, plus possible d'émettre des factures comme on veut pour les grands groupes et 2026 pour les TPE/PME. J'anticipe un peu donc.

Récupérer une ancienne version de l'Adoptium OpenJDK 11

Comme le site adoptium.net ne permet de ne récupérer que la dernière version du JDK 11, voici le lien vers la page des releases publiées sous GitHub.

Edit pour les autres LTS, par exemple la 17, transformer l'URL en https://github.com/adoptium/temurin17-binaries/releases/

Au temps pour moi ! Il y a cette page.

Maven - Dans quelle property se trouve le chemin vers le pom.xml racine.

Le chemin est affecté à la propriété ${maven.multiModuleProjectDirectory} à la condition qu'à côté du pom.xml racine se trouve un dossier .mvn/ même s'il est vide !

You might not need an ORM - kalvn's links

@Kalvn tout à fait d'accord avec toi !

Depuis que j'ai assisté à la présentation ORM is anti-pattern de @Kysofer il y a bien 5 ans, je suis convaincue qu'ils apportent bien plus de problèmes que de solutions.

Pour Kotlin, il y a Ktorm qui est un DSL et JOOQ qui est un query builder.

KDoc & Dokka - Documenter du code Kotlin

L'utilitaire JavaDoc ne fonctionne pas avec du code Kotlin (normal me direz-vous). Heureusement, Jetbrains fourni Dokka sous la forme de plugin Maven et Gradle permettant de faire la même chose.

Les annotations et syntaxes Dokka diffèrent un peu de la JavaDoc, voici un résumé :

@param Identique à JavaDoc
@property Pour documenter un attribut
@constructor Pour documenter un constructeur primaire
@return Identique à JavaDoc

Pour faire un lien vers une _classe/method/autre_ simplement écrire ceci
/** Je veux faire un lien vers [MaClass] **/ 
et Dokka fera le job
What is Personal Data Under GDPR - Definitions and Examples - Dataedo Blog

Je me posais la question de savoir si nous avions quelque part une liste exhaustive de ce que sont les données personnelles au sens RGPD du terme.

Voici un listing assez complet :

GDPR defines special categories of personal data (sensitive data) that should be protected with additional means, and should not be collected without explicit consent, good reason or a few other exceptions. Those categories are:

  • racial or ethnic origin,
  • political opinions,
  • religious or philosophical beliefs,
  • trade union membership,
  • genetic data, biometric data,
  • health data,
  • sex life and sexual orientation.

Examples of Personal Data you can find in your databases

  • First name, last name/surname, maiden name
  • Email address
  • Home address (street, zip, postal code, city)
  • Phone number
  • Photo
  • Date of birth
  • Bank account number
  • Credit card number
  • National Identification Number, (Social) Insurance Number, Social Security Number
  • Taxpayer Identification Number, Tax File Number, Permanent Account Number
  • Passport number, national ID number, driver's license number
  • Vehicle registration plate number
  • Employee number
  • IP address
  • Cookie ID
  • Location data
  • Handwriting
  • Login
  • Password
  • Social media profile IDs/links
  • Mobile device IDs
  • Employment history, job title
  • Education history

Special Personal Data

  • Sex/Gender
  • Race/Ethnicity
  • Place/city/country of birth
  • Spouse name
  • Health details
  • Medical records
Maven 4 – Guide to Working with Multiple Modules

Maven 4 s'approche tout doucement, boosté par l'arrivée bienvenue de Maven Daemon (dont la 1.0.0-m1 se base sur la alpha-3 de Maven 4).

Bref, le comportement de Maven change un peu sur les projets multimodules. @Animal & @Kysofer je vous recommande de lire cela à tête reposée.

Oracle Java licensing refit means price hikes, say expert • The Register - Liens en vrac de sebsauvage

Alors la situation est un poil plus compliquée que ce qui est dit.

Sur les vieilles versions de Java, Oracle fait effectivement la chasse aux licences. Mais il s'agit d'un modèle privateur donc normal.

Sur les versions 8 à 19 de Java, le modèle est basé sur trois composantes. Une JVM (machine virtuelle Java) avec les dernières features, une JVM avec les derniers correctifs de stabilité ou de sécurité, une JVM gratuite.

Quelle est l'astuce ? Simple, on ne peut pas avoir ces trois composantes simultanément.

C'est-à-dire que soit on veut avoir les dernières features et être stable/securisé et alors on paie.

Soit on ne paie pas mais dans ce cas on a :

  • Soit les dernières features sur une JVM instable/non-sécurisée
  • Soit on a une JVM avec 3 ans de retard sur les features mais qui est gratuite et stable/sécurisée.

Enfin, rappellons que Java est libre (GPLv2) et que les projets Eclipse Temurin, Apache et OpenJDK ont fusionné pour donner naissance à une JVM 100% libre Adoptium. Donc bye bye Oracle.

Remarque : si vous codez en Kotlin, puisque le compilateur peut cibler la version de la JVM que vous utilisez et vous fournir les dernières features sans que la JVM ne soit a jour, alors autant partir sur la dernière LTS gratuite de Java et être tranquille côté sécurité / stabilité.

Sinon Kotlin se compile très bien en WASM et en natif aussi <3

When the working class is asking for help

Ok, j'ai rigolé 😤😆

Image

What's new in Kotlin 1.8.0 | Kotlin Documentation

Attention, Java 6 n'étant plus supportée les dépendances kotlin-stdlib-jdk7 et kotlin-stdlib-jdk8 n'existent plus (puisque c'est Java 8 la version minimale requise pour Kotlin à présent).

Il faut donc les remplacer par kotlin-stdlib. Une migration simple qui va poser de nombreux problèmes à certains, sans aucun doute.