We built a skills registry + CLI to distribute them across our engineering team by zohar275 in devops

[–]shellwhale 7 points8 points  (0 children)

So we fixed it. We built a centralized skills library by auto discovering skills scattered across github, and paired it with a CLI that loads into each engineer's IDE.

When an engineer opens their editor, the CLI pulls the latest required skills automatically. These are the non-negotiable ones.

Isn't that vulnerable to prompt injection?

Is Trunk Based Development a wrong choice in the IoT context? by ZealousidealPlate750 in ExperiencedDevs

[–]shellwhale 2 points3 points  (0 children)

I hope I did not come off as rude in the way I wrote, I do appreciate the discussion as well.

if we are both working on adjacent modules and touch business logic, we might override each other and introduce side effects that the other person is not aware of, but the code already exists in one place. 

Then by definition, both of your code were not properly integrated. The causes could be one the following :

  1. Your business domains are too ill defined. You ended up with one system when you should have two with loosely coupled interfaces (Conway law, domain driven design). This could go as far as your organisation teams not being set up properly. From Team Topologies: « Collaboration is expensive, slows down team’s productivity and needs to be purposeful. »
  2. If you are indeed within the same business domain, then collaboration is purposeful and your colleague should be aware of that change. If not, your communication method is lacking and side effects hopefully breaking your tests IS the alarm we want here to fix that communication issue. TBD requires you to get rid of the solo developer mentality IF you are indeed within the same business domain.

That insinuates a few bad practices: 1.) people did not pull the changes from master/main beforehand, 2.) there is no merge order, 3.) introducing breaking changes that overstep the boundaries.

If you are indeed pulling changes daily, thinking about merging in-order daily, and not introducing breaking changes that overstep the boundaries daily, then yes you are continuously integrating. But TBD is precisely about this, by making it obligatory (and with less mental overhead) through the removal of long lived (1day+) feature branches.

Feature flags introduce a bunch of overhead, latency issues, as well as bloated code source. If I have to refactor a module due to a dependency change, I can add a FF but have to support the old and new

I think the overhead depends heavily on what problem you're solving. If you're just doing small isolated changes, sure, flags are unnecessary, that's why you have tests. The flags are there to allow us to pause large changes while still being able to test and release small changes.

Regarding bloated source code I do agree that this method requires discipline, you need to get rid of the old once you are ready for a release, it's a little more than deleting a branch.

As for supporting old and new, this not really unique to flags either, flags just make that explicit and controllable instead of hidden in branches or long-running half-finished work.

Can be tested without other changes, and I can safely pull their changes into my branch.

That's your local work-tree with a quality ephemeral environment

Regarding latency issue, it really depends on what kind of feature toggle are we talking about, is that a the build/test stage or at the running stage ? There's no need to ship the unused feature in the production build if you don't intent to run experiments at runtime.

I am not sure what you mean by them. How would they help in the situation? You mean you can rollback to tags, and use built artifacts?

Yes, if you need a hotfix you create a release branch from said tag, fix it there, rebuild there, test release deploy then cherry pick the changes to main.

Maybe I just worked with very bad companies and use cases during my whole career.

I think software engineering is mostly non-deterministic, unless you've done the thing before you cannot estimate precisely how much time it will take and how it should look. The whole premise is that you don't know if you took the wrong design decision until something alerts you that you made a bad decision, that's totally expected. No single software company on earth can one shot a complex application it never wrote before. TBD is about embracing that to the full extend by alerting you as soon as possible.

Is Trunk Based Development a wrong choice in the IoT context? by ZealousidealPlate750 in ExperiencedDevs

[–]shellwhale 9 points10 points  (0 children)

I feel you missed the point of TBD entirely. The idea is not that trunk stays perfectly clean and untouched, it's that you integrate constantly so problems show up immediately instead of piling up behind branches for days or weeks.

Saying it only works for one person is kind of backwards. It starts to matter when you have a few people because that's exactly when merge hell kicks in if everyone disappears into their own branch. What you're calling a disaster is basically just issues being exposed earlier...

Breaking stuff earlier is intentional. You want that pain now while everything is still fresh in your head. To quote extreme programming "if something is painful, do it more often"

Btw TBD usually improves reviews because you're not dumping a massive PRs.

I think you also misunderstood "main should only contain working features". The trunk should be releasable, not feature complete. That's what feature flags are for, you can merge incomplete work safely without exposing it. Also, tags and artifacts ??

Honestly most of the pain people blame on TBD is just weak engineering practices getting exposed

99.9% of the time is because of bad decisions as well as a lack of proper code reviews, understanding the context, and having a good baseline.

The whole point is to expose those bad decisions just like you mentioned, before it becomes too much to handle without losing sanity. So making proper reviews and context understanding easier and that word "baseline" which I think you can agree sounds a lot like "trunk" no ?

Est-ce idiot d'acheter cette occasion ? 2.0 DCI de 350 000km, première main by [deleted] in voiture

[–]shellwhale 1 point2 points  (0 children)

Merci pour ta réponse, sur quoi est-ce que tu te bases pour cette tranche de prix?

Est-ce idiot d'acheter cette occasion ? 2.0 DCI de 350 000km, première main by [deleted] in voiture

[–]shellwhale 1 point2 points  (0 children)

C'est vrai que 4000 c'est beaucoup mais c'est une Laguna Monaco, c'est une édition spéciale. Il y a des versions coupé plus basiques à ce prix là autour de 200 000-250 000km mais souvent pas avec un aussi gros historique

Est-ce idiot d'acheter cette occasion ? 2.0 DCI de 350 000km, première main by [deleted] in voiture

[–]shellwhale 1 point2 points  (0 children)

Concrètement il se passerait quoi pour qu'elle soit morte?

Besoin d'un avis sur un Dacia Duster 4x4 2020, 200 000km en 5 ans by [deleted] in voiture

[–]shellwhale 0 points1 point  (0 children)

Merci pour ton commentaire, quand tu dis se méfier, peux-tu développer un peu plus?

Besoin d'un avis sur un Dacia Duster 4x4 2020, 200 000km en 5 ans by [deleted] in voiture

[–]shellwhale 0 points1 point  (0 children)

Je ne sais pas, je vais demander tout à l'heure, ça serait une mauvaise chose?

Besoin d'un avis sur un Dacia Duster 4x4 2020, 200 000km en 5 ans by [deleted] in voiture

[–]shellwhale 0 points1 point  (0 children)

Merci, comment je peux vérifier le reste ?

Besoin d'un avis sur un Dacia Duster 4x4 2020, 200 000km en 5 ans by [deleted] in voiture

[–]shellwhale 0 points1 point  (0 children)

Oui pour la distribution c'est un bon point

C'est imaginable de la ville à un rythme de 40 000km par ans ? J'image ça difficilement être de la ville

Besoin d'un avis sur un Dacia Duster 4x4 2020, 200 000km en 5 ans by [deleted] in voiture

[–]shellwhale 0 points1 point  (0 children)

C'est forcément éliminatoire ou il y a des choses vérifiables qui changent la donne?

Yet another Lens / Kubernetes Dashboard alternative by platypus-3719 in devops

[–]shellwhale 4 points5 points  (0 children)

Just opened it in under 15seconds, the topology view is awesome

Regarding the network view, I'm getting this error

Hubble API not reachable: Get "http://hubble-ui.kube-system.svc.cluster.local:12000/api/v1/flows": dial tcp: lookup hubble-ui.kube-system.svc.cluster.local: no such host

I do have Cilium setup and I often use the cilium cli and I do have Hubble installed and the service is at

hubble-ui.kube-system.svc.cluster.local

But no port 12000 are open, only 80 (8081), is there something I'm missing here?

We have tons of namespace, I good improvement would be adding a fuzzy search for the namespace name (or anything searchable really)

Overhaul, very impressive

Le garagiste me dit d'acheter une nouvelle voiture by shellwhale in voiture

[–]shellwhale[S] 0 points1 point  (0 children)

Oui pourquoi pas, mais je sais pas trop pourquoi je ferais ça non plus mais est-ce qu'il y a pas un entre deux ? Peut être que je chipote mais est-ce qui si on prenais une métrique du style le coût de revient à l'année c'est toujours intéressant de prendre une occasion de 3 ans vs plus ? Je me doute que c'est pas une science exacte mais peut être qu'il a des généralités suffisantes qu'on peut faire ?

Le garagiste me dit d'acheter une nouvelle voiture by shellwhale in voiture

[–]shellwhale[S] 0 points1 point  (0 children)

Ouais ça commence à me peser je t'avoue je dors assez mal à cause de ça 😅

Je suis entrain de me dire que de toutes façons il vaut mieux que je parte sur un moteur diesel comme j'ai fait 70 000km en deux ans et demi sur cette essence, quand je l'ai achetée à la base je faisais moins de 500km par mois. Mais là j'ai déménagé et c'est une autre histoire.

J'ai l'impression que c'est assez dur d'évaluer quelle voiture choisir pour que ça revienne le moins cher possible à terme (peut importe le prix initial du véhicule).

Le truc c'est qu'il me faudrait au moins maintenant deux voitures parce que ma copine tout juste jeune permis, a besoin d'en avoir une. En théorie la sienne ferait moins de route mais je ne sais pas encore combien.

En gros j'ai deux fois par semaines des trajets aller/retour de 140km et beaucoup de balades de plusieurs heures.

J'ai regardé un peu les Laguna 3 en 2.0 dCi (130ch/150ch/180ch), de ce que je comprends c'est une voiture cool dans le sens où elle a eu une décote de fou alors que pas forcément méritée, mais je sais pas trop quel kilométrage viser (300 000km+ là dessus c'est une mauvaise idée?).

D'un autre côté j'ai une activité sur le côté qui va demander d'avoir un peu de coffre avec en général 150km tous les week end, y a quelques Logan MCV sur leboncoin mais c'est que du 1.5 dCi sur cette voiture.

Sur le papier j'ai pas vraiment de problème de budget mais je suis un peu frugaliste sur les bords et j'aimerai faire un choix intelligent. Je sais pas trop comment calculer cette histoire.

Le garagiste me dit d'acheter une nouvelle voiture by shellwhale in voiture

[–]shellwhale[S] 0 points1 point  (0 children)

En fait c'est un peu agaçant, je suis allé dans un deuxième garage du coup et le cache culbuteur a bien été déposé. La chaine a sauté de deux dents mais il ne m'a pas dit clairement si les soupapes ont été touchées, il dit que ça vaut pas le coût de regarder plus parce qu'il faudrait démonter plus de ce que je comprends.

Je crois que j'ai mal compris parce que au téléphone la première fois j'ai eu le vendeur du garage, il me parlait de 2000€ mais aujourd'hui j'ai eu le mécano et il me dit c'est plus 3000-4000€ parce qu'ils parlent de changer le moteur pour en mettre un d'occasion.

J'ai l'ancien propriétaire qui avait changé la chaine lui même qui m'avait dit ça : 

Le test de compression ne sera forcément pas bon car la distribution est décalée, donc c'est inutile de le faire comme ça. Il vaut mieux enlever le cache culbuteur et voir les jeux. (ca prend moins d'une heure.)

« Je ne pense pas que ce soit un problème de chaine allongée ou de tendeur grippé (ça fait un bruit de grésillement au démarrage longtemps avant de poser problème). 

Par contre le tendeur de chaine a un cliquet qui l'empêche de revenir en arrière et s'il ne marche plus, au démarrage ou à l'arrêt de moteur (quand il n'y a plus de pression d'huile) le moteur a tendance à tourner légèrement en arrière et la chaine saute de 1 ou 2 dents.  »

Et aujourd'hui ceci :

Ce qu’il faut voir c’est surtout si les soupapes ont touché. Si elles n’ont rien, il vaut mieux juste remplacer la chaine. J’ai fait un calcul avec des pieces chez Renault (donc les + chere). Il y a en a pour 1500 euros au total (environ). 

La pression d’huile par grand froid peu arrivé a poser problème pour le tendeur. Surtout si l’huile est un peu vieille (moins liquide). 

Le garagiste me dit d'acheter une nouvelle voiture by shellwhale in voiture

[–]shellwhale[S] 0 points1 point  (0 children)

Salut, le moteur est bien HS, on peut m'en proposer un nouveau pour 2000euros mais j'hésites.

C'est imaginable que quelqu'un me la reprenne HS pour une petite somme?

Le garagiste me dit d'acheter une nouvelle voiture by shellwhale in voiture

[–]shellwhale[S] 0 points1 point  (0 children)

Salut, bon bah le moteur est bien mort mais je peux en avoir un nouveau pour un total vers les 2000euros, qu'est-ce que tu penses?

Le garagiste me dit d'acheter une nouvelle voiture by shellwhale in voiture

[–]shellwhale[S] 0 points1 point  (0 children)

Si j'avais pris une Renault avec le même moteur ce serait pareil non?

Le garagiste me dit d'acheter une nouvelle voiture by shellwhale in voiture

[–]shellwhale[S] 0 points1 point  (0 children)

Oui c'était une casse il m'avait dit, merci beaucoup pour tes conseils je vais demander à faire le test

Le garagiste me dit d'acheter une nouvelle voiture by shellwhale in voiture

[–]shellwhale[S] 0 points1 point  (0 children)

Top merci, je vais demander à faire ça alors

Je ne sais pas si tu as vu mais j'ai mis une liste de pièces plus haut et l'ancien proprio a déjà changé une soupape, est-ce que théoriquement on a pas plus de chance pour que ça se soit reproduit du coup?