É-Veille Tech #31 | 22/04/23 | Apprentissage Continu
Pour suivre la veille technologique chaque jour au fil de l’eau, rendez vous sur 👉 https://links.aschen.tech
PROGRAMMATION
TypeScript and Turing Completeness
Typescript est carrément Turing complete!
L’auteur a implémenté un sous langage type brainfuck et Typescript est capable de l’interpréter.
const test1 = interpreter('*>*>*', '000000'); // '111000'
SQL:2023 is finished: Here is what’s new
Le comité ISO a terminé de travailler sur la norme SQL 2023.
Au programme quelques améliorations du langage (qui étaient déjà supportées dans de nombreuses DB comme Postgres par exemple) mais surtout l’introduction du support du JSON et des graphes.
Par exemple les chemins seront simplement accessible avec des « . »
// {"foo": {"bar": [100, 200, 300]}, ...}
SELECT t.j.foo.bar[2], ... FROM table ...
ARCHITECTURE
Load Balancing
Un article explicatif du besoin et du fonctionnement du load balancing.
Très bien expliqué et avec des schéma intéractifs!
Pour bien comprendre les besoins, il ne faut pas oublié que les requêtes ne sont pas égales, certaines sont plus longues ou plus consommatrices que d’autre à exécuter.
Au dela du « simple » round robin, d’autres stratégies existent:
- least connection: le load balancer envoie la requête au serveur en ayant le moins en cours
- peak exponentially weighted moving average: calcul de la latence moyenne des serveurs et tente d’utiliser uniquement les serveurs ayant la plus faible latence
CockroachDB Licensing FAQs
Un style de licensing intéressant chez CockroachDB:
- licence Business Source License (type Server Side Public Licence) avec interdiction de faire un SaaS
- Apache 2 après 3 ans
Cela permet de rentabiliser leur business tout en offrant la totalité du produit en Apache 2 après une certaine période.
Pinecone, what is a Vector Database for AI?
Un nouveau type de base de données qui émerge avec l’IA: la base de données vectorielle
En IA, on représente les données du monde réel sous la forme de vecteurs à N dimensions. Concrètement ce sont des tableaux de nombres à virgules.
Ce genre de base de donnée permet ensuite de rechercher plus efficacement des vecteurs qui sont proches par exemple.
Un exemple de recherche de contexte similaire lors d’une question posée à GPT3 https://docs.pinecone.io/docs/gen-qa-openai
ORGANISATION
Faire partie des 1er dev’ d’une entreprise : le guide pratique pour maximiser ses chances de succès
Un autre article qui parle de rejoindre une startup en early stage mais du point de vu concret d’un développeur et de ce qu’on peut apporter.
C’est aussi un bon résumé de comment arriver à un MVP
Rejoindre une startup early stage : comment bien choisir son projet ?
Excellent article sur les avantages et inconvénients de rejoindre une startup à ces débuts.
Étude 2023 de Talent.io sur les salaires dans la tech
L’étude est sur 3 pays cette année: France, Allemagne et Pays-Bas
Quelques chiffres:
- seulement 16% de développeuses
- 58 000€ salaire médian en France (50 000€ hors Paris)
- jusqu’à 40% de différence entre le salaire Paris vs hors Paris
- le rôle CDI le mieux payé est développeur backend
- le rôle freelance le mieux payé est data engineer/product manager
Évaluer un développeur en 3 semaines : La méthode WeFight
Un retour d’expérience sur comment organiser son process de recrutement.
Les conseils en plus de Fabien Ducher:
En amont
- l’organisation de la tech est suffisamment claire
- on est à l’aise sur la salary grid (qu’elle soit affichée publiquement ou non)
- on est sur d’avoir les ressources pour accompagner l’onboarding et rampup
- Les personnes qui font passer des entretiens sont formées à le faire (posture, ce qui est ok ou pas ok de dire, comment on le mène, les entretiens eux même, etc.)
- Checklist d’onboarding avec toutes les composantes (RH, IT, manager, newcomer) déjà existante.
L’offre
- inclusive! exemple: pas un empilement de compétences (soft et hard), mais un message clair sur le fait que c’est un repère et qu’il ne faut pas cocher toutes les cases pour candidater
- La description du process : les entretiens, avec qui, la durée et à quoi ils servent
Le process de validation
- s’il y a des tests / questions techniques, ce sont les mêmes pour tout le monde et on assess les résultats
- On liste à l’avance les red flag qu’on ne veut pas voir
- Max 2 semaines entre la prise de contact et la décision
- J’aimerai beaucoup tester aussi l’idée que la personne qui candidate vient avec un cas technique qu’elle discute avec des personnes de l’art. (ca brise le test commun à tous, mais c’est au moins un contexte que le candidat maitrise et qui sera moins stressant)
- Feedback clair et factuel après chaque entretien, surtout en cas de nogo à une étape
- Lors du dernier entretien, on est en situation d’échange libre où on répond à toutes les questions de la personne qui candidate, on ré-explique l’onboarding, le carreer path, la période d’essai, les attentes, etc.
- un comité d’évaluation à la fin avec toutes les personnes ayant réalisé un entretien
La proposition
- Salaire en comparant avec la grille, les stats de salaire à poste équivalent en interne (incluant l’équité homme / femme) et des bench extérieur (à noter ici que Figures est canon comme outil)
l’onboarding
- Welcome 1-1 où on présente la checklist d’onboarding, on cale les 1-1 hebdo,
- On présente les obj de PE la première semaine
- On s’assure que l’équipe l’accueil bien dans le day to day
Période d’essai
- on fait des 360 pour avoir le max d’avis et pas uniquement l’avis du manager
- On refait a minima un point à mi PE, voir tous les mois avec le newcomer
- Ou on coupe ou on valide, le renouvellement ne sert que pour des doutes mineurs qui n’auraient pas pu être levé dans le délai. Avoir une boule noire nuira à terme plus à votre organisation que n’avoir personne.
Co-Founder Equity Calculator
Un outil qui permet de calculer la répartition des parts lors de la création d’une startup
Autre outils
https://www.embroker.com/blog/startup-equity-calculator/
https://capbase.com/startup-equity-calculator/
PO/PM, la grande embrouille
Product Owner ou Product Manager, au final ce sont des postes semblables dont le but est de conduire les développements produit à un apport de valeur.
AI
Creativity Lab for AI
Des applications permettant de visualiser une conversation avec ChatGPT sous la forme de nœuds dans d’un graph ou de card sur un tableau blanc.
C’est beaucoup plus pratique de traiter l’exploration d’un sujet comme ça plutôt que de devoir remonter sans cesse dans l’historique du chat.
OpenAssistant is a chat-based assistant that understands tasks, can interact with third-party systems, and retrieve information dynamically to do so.
Un projet communautaire et collaboratif pour créer un modèle entraîné comme ChatGPT
Web LLM runs the vicuna-7b Large Language Model entirely in your browser, and it’s very impressive
Un article plus détaillé sur les possibilités que commence à offrir les LLM pouvant fonctionner en local dans le navigateur.
On est encore loin de l’adoption pour les utilisateurs standards car il faut:
- lancer chrome avec des flags spéciaux
- télécharger le modèle (plusieurs Go)
- une carte graphique puissante
J’en parlais ici aussi https://links.aschen.tech/shaare/Ov51-w
StableLM, an open source language model
L’entreprise Stability AI qui est déjà derrière le modèle Stable Diffusion pour la génération d’images a sorti un modèle pour la génération de texte.
Assez similaire à GPT de OpenAI avec un contexte de 4096 tokens.
Le modèle de base est véritablement Open Source et autorisé pour des applications commerciales:
- code en Apache 2
- poids en creative commons avec citation de StabilityAI
A noter qu’il existe une version des poids fine tuné pour la conversion mais la licence est non commerciale car ils ont utilisé les données de Alpaca (en autre)
Language model roundup, April 2023
Un résumé des innovations de ces derniers jours dans le monde des LLM.
LLM Hacker handbook
Une liste de faille des LLM et des exemples d’exploitation.
C’est principalement des prompt injection
Robust Speech Recognition via Large-Scale Weak Supervision
Whisper, le modèle de reconnaissance de texte de OpenAI est en full open source
Elon Musk is suing Microsoft
Elon Musk attaque OpenAI en justice car ils auraient entrainé leur IA illégalement sur les données de Twitter
The Complete Beginners Guide To Autonomous Agents
Un article très complet sur les agents autonomes à base de LLM.
L’auteur est un peu trop optimiste à mon goût mais ça à le mérite de bien expliqué le fonctionnement et donner beaucoup d’exemples d’utilisation.
Ce qui se cache derrière le fonctionnement de ChatGPT
Une autre vidéo de Science Étonnante pour comprendre le fonctionnement des LLM (Large Language Model) comme GPT et leur spécialisation dans des outils comme ChatGPT.
Voir aussi Comment les I.A. font-elles pour comprendre notre langue ?
WebLLM
Les LLM commencent à arriver dans les navigateur en utilisant la technologie WebGPU.
Ils ont aussi porté StableDiffusion https://mlc.ai/web-stable-diffusion/
SECURITE
Mullvad VPN was subject to a search warrant. Customer data not compromised
Mullvad VPN se fait perquisitionner en Suède, pour le coup ils avaient dit la vérité et il n’y avait vraiment aucune donnée d’utilisateur à saisir
Introduction to OSINT. OSINT is a piece of information that is…
Une liste d’outils OSINT et comment s’en servir
OUTILS
ksnip the cross-platform screenshot and annotation tool
Excellent outil multiplateforme pour prendre des screenshots et les modifier.
PRIVACY
Surveillance totale d’internet en Biélorussie
Du jamais vu niveau collecte d’informations sur les citoyens par des organismes gouvernementaux !
Un décret force les entreprises opérant en Biélorussie à fournir des API pour qu’entre autre le KGB puisse faire des recherches en live dans les bases de données.
AUTRES
debris. by farbrausch (demoscene demo 2007)
Une vidéo demoscene de 7 min qui a été généré par un programme de seulement 177Ko
‘Counter Strike’ Gun Skin Sells for $400,000
Un skin d’une arme CSGO qui se vend 400 000$ (en cryptomonnaie)
Comme quoi il n’y a même pas besoin de NFT pour faire ce genre de transaction hallucinante
Game of Life Universe
Le jeux de la vie de Conway codé avec le jeux de la vie de Conway.
On se déplace à la souris et on peut zoomer/dézoomer entre les niveaux d’univers avec la molette
Explication ici https://blog.oimo.io/2023/04/10/life-universe-en/
TDungeon is a small adventure game that runs in the Typescript type system
Un jeux d’aventure en Typescript 😀
BLOCKCHAIN
Societe Generale’s Euro-pegged stablecoin is disastrous
La société général a déployé un Smart Contract Ethereum pour un stablecoin basé sur l’euro
Sauf que:
- ils peuvent transferer votre argent
- ils peuvent « burn » tout votre argent
- chaque transaction doit être approuvée par une autre transaction
En gros rien de plus centralisé mais avec les inconvénients d’une blockchain (lenteur, prix de transaction, immutabilité)
MARKETING
Create and Share Interactive Demos for Free
Un outil pour créer des démo d’un produit
SOCIETE
Mise en perspective des impacts écologiques du numérique
Un article qui montre l’empreinte en équivalent CO2 des choses du quotidien en comparant à échelles comparables.
Pas de bénévoles pour les JOP 2024 : un tutoriel pour gâcher leur campagne de travail dissimulé – Basta!
Le CIO n’a vraiment aucune race
Ces volontaires travailleraient entre huit et dix heures par jour, six jours sur sept, non rémunéré·es, et sans prise en charge de leurs frais de transport ou d’hébergement
Surtout que le CIO croûle sous le fric des annonceurs
Rémunérer au SMIC horaire toutes ces personnes reviendrait pourtant à moins de 1 % du budget total des JOP (évalué actuellement à 8 milliards d’euros)
Basta conseille de s’inscrire puis de ne pas y aller
DEVOPS
Kubernetes et manifests YAML: trop bas niveau pour les dev ?
Un article qui parle de la complexité élevé des fichiers de configuration Kubernetes et propose un niveau d’abstraction plus simple à comprendre et à manipuler.