Un site qui permet de vendre des images générées par ordinateur, sauf qu'il ne vend pas les images mais le texte utilisé pour les générer! (le "prompt")
On parle de "prompt engineer" en parlant d'une personne qui manipule des IA pour générer des images à moindre coût.
Un outil pour enregistrer son écran et faire des présentation ou autre directement dans le navigateur!
Pourquoi boire de l'eau à 100 fois son prix, avec en plus une pollution plastique ?
Surtout quand on voit le niveau de contrôle qualité qu'il y a sur l'eau potable (que l'on a pas sur l'eau en bouteilles)
Au total, une soixantaine de paramètres sont contrôlés via des limites et références de qualités bactériologiques, physico-chimiques, organoleptiques, ou encore radiologiques, faisant de l’eau du robinet l’aliment le plus contrôlé en France.
J'en parlais ici http://aschen.tech/index.php/2022/02/09/les-francais-et-leau-en-bouteille/
Héberger son propre mail ça fait déjà longtemps que c'est la croix et la bannière.
Aujourd'hui il est quasiment impossible de ne pas finir dans les spams (et ça c'est quand les e-mails ne sont pas tout simplement redirigés vers /dev/null)
Bien sur ça nuit à la décentralisation et permet aux providers de récupérer toujours plus de données.
Pino est vraiment un super logger, en plus de ses excellentes performances, il permet de
- cacher automatiquement des valeurs dans les objets (comme les jeton d'authentification par exemple)
- créer des sous logger par module
- écrire les logs dans des destinations différentes en fonction des niveaux
Les log sont très souvent une partie critique de l'application car écrire des une sortie est assez consommateur (chez Kuzzle, on s'est rendu compte que nos access log ralentissaient le backend outre mesure.
Il faut aussi faire attention à ce que l'on veut loguer et trouver un équilibre sur la quantité car on peut facilement remplir des tera octets de logs.
Dans l'idéal, il faut construire un système permettant de changer dynamiquement le niveau de log pour activer le mode debug lorsqu'on en a besoin, et l'arrêter ensuite.
Très bon article sur l'envers des levées de fonds à tout va qui déstabilisent le marché et créées des environnements toxiques.
Aujourd’hui, on se pose les fesses dans un job comme on se pose les fesses dans un Uber Pool. Le conducteur, on ne le connaît pas, ni les passagers qui entrent et qui sortent au rythme des feux rouges.
Whoa ça c'est de l'avancée en IA qui claque!
Ils ont réussi à analyser les signaux cérébraux pour comprendre quels sont les mots qu'auraient voulu utiliser des personnes incapable de parler.
Les chercheurs arrivent à reconnaitre 793 mots à 73%.
Anti-guide de bonnes pratiques
Merci à Gaël pour le partage ;-)
Un utilitaire pour trouver des informations sensible dans l'historique de votre shell!
Il y a aussi une commande un peu comme Git pour vider temporairement son historique avant une démo ou un partage d'écran:
shellclear stash
# do you demo
# restore your history
shellclear stash pop
Une image générée avec MindJourney gagne un concours d'art digital aux États-Unis.
La personne à quand même fait des centaines d'essais pour arriver à un résultat satisfaisant.
C'est quelque chose qui arrivera de plus en plus fréquemment et le monde du design se transformera pour inclure les IA avec des spécialistes en manipulation.
Google limite les fonctions des adblockers dans Chrome avec la nouvelle v3 de son système d'extensions.
A partir de janvier 2023, les extensions utilisant encore la v2 seront désactivées.
Pour moi ça va permettre à Firefox de tirer son épingle du jeu avec un plus grand respect de la vie privée de ses utilisateurs.
PS: le meilleur adblocker reste encore uBlock Origin
Un article explicatif sur le versionning d'API chez LinkedIn.
Conceptuellement, ils vont dupliquer les ressources en interne en incluant la version de l'API Foo
=> FooResource_v20220201
Ils ont ensuite un service de conversion qui va convertir les ressources dans le dernier format possible pour éviter d'avoir à dupliquer le code.
Un excellent document qui parle de tests unitaires et tests fonctionnels.
En règle général, il vaut mieux se concentrer sur les tests fonctionnels plutôt que les tests unitaires car ces derniers sont très couteux à maintenir, notamment leur de remaniement de l'architecture du code.
Quelques extraits:
Few developers admit that they do only random or partial testing and many will tell you that they do
complete testing for some assumed vision of complete. Such visions include notions such as: “Every line of code has been reached,” which, from the perspective of theory of computation, is pure nonsense in terms of knowing whether the code does what it should.Tests should be designed with great care. Business
people, rather than programmers, should design most functional tests. Unit tests should be limited to those that can be held up against some “third-party” success criteriaThe purpose of testing is to create information about your program. (Testing does not increase
quality; programming and design do. Testing just provides the insights that the team lacked to do a correct design and implementation.)Don’t underestimate the intelligence of your people, but don’t underestimate the collective stupidity of many people working together in a complex domain.
Une tentative de fishing avec un faux courrier qui ressemble à un avis de recommandé La Poste!
Le népal a été touché par un séisme cet été et un de mes ami qui vit la bas a été durement touché.
Même si ce n'est pas beaucoup, chaque don fait une énorme différence pour lui et sa famille.
J'ai déjà effectué le premier versement des 300 premiers euros que j'ai doublé de ma poche pour palier au plus urgent.
Un super retour d'expérience sur l'utilisation de Flutter Web pour créer une PWA !
Les équipes ont décidé de faire une PWA pour éviter le problème de gestion d'anciennes versions d'une app mobile dans leur parc.
A part quelques difficultés autour de l'utilisation de l'appareil photo, ils n'ont pas rencontré de problème.
C'est vraiment encourageant pour Flutter Web car la techno est en production depuis seulement 1 an et semble déjà à la hauteur des promesses.
Ce genre de choix permet de tester rapidement un concept avec une PWA et de publier plus tard des applications natives sur les stores.
Excellente explication du fonctionnement des GPUs et particulièrement des 4 niveaux de mémoire de travail disponibles.
Une analogie est faite entre un GPU et une entreprise de bureau avec des équipes de personnes qui doivent s'échanger de l'information.
Un exemple de code CUDA, le framework pour bosser sur les GPU Nvidia, est expliqué pas à pas
Article très intéressant sur une sorte de classification des développeurs.
Cela se base sur le ratio entre savoir et expériences.
Junior: Un peu de savoir et aucune expérience.
Middle: Moyennement de savoir et un peu d'expérience
Senior: Beaucoup de savoir et d'expérience, légèrement plus d'expérience
Je ne connaissais pas Radash mais ça tombe bien parce que je trouvais également que Lodash était vieillissant (et tellement lent..)
La librairie standard de Javascript est tellement inexistante que ce genre de lib est quasiment obligatoire malheureusement.
Mes fonctions préférées:
Remplacement de Bluebird.map
:
import { parallel } from 'radash'
const userIds = [1, 2, 3, 4, 5, 6, 7, 8, 9]
// Will run the find user async function 3 at a time
// starting another request when one of the 3 is freed
const users = await parallel(3, userIds, async (userId) => {
return await api.users.find(userId)
})
Terminé les for (let i = 0; i < 5; i++)
:
import { range } from 'radash'
for (const i of range(0, 5)) {
console.log(i) // => 0, 1, 2, 3, 4, 5
}
Nombre aléatoire dans un interval:
import { random } from 'radash'
random(0, 100) // => a random number between 0 and 100
Et toutes les fonctions de manipulation de string comme en Ruby: capitalize
, snake
, camal
, etc
Un outil qui permet d'améliorer la résolution des images grâce à un réseau de neurone