Bramka zadziałała 198 razy. Nazwałem to „działaniem”.

Zbudowałem bramkę, aby blokować zły kod. Zablokowała 198 fragmentów kodu. Myślałem, że to oznacza, że bramka działa dobrze. Widząc wysoką liczbę blokad, czułem sukces.

Potem przyjrzałem się rzeczywistym przypadkom. Zdałem sobie sprawę, że wiele z tych blokad było błędami. Bramka odrzucała dobry kod. Odrzucała pracę, która spełniała wszystkie wymagania, tylko dlatego, że jej struktura wyglądała nietypowo.

Popełniłem powszechny błąd. Pomyliłem aktywność z poprawnością.

Bramka może być bardzo aktywna i jednocześnie bardzo błędna. Wysoka liczba blokad nie dowodzi wartości. Dowodzi jedynie, że bramka działa.

Oto jak nauczyłem się rozpoznawać, czy bramka faktycznie wykonuje swoją pracę:

  • Przyjrzyj się przyczynom blokad. Czy wyłapują one rzeczywiste wady? Czy może po prostu potykają się o te same powierzchowne wzorce?
  • Obserwuj ponowne próby. Czy ponowna próba rozwiązuje rzeczywisty problem? Czy może kod po prostu zmienia kształt, aby przypodobać się bramce? Jeśli kod zmienia jedynie kształt, nie poprawiając jakości, to bramka stanowi problem.
  • Sprawdź ostateczną konwergencję. Czy praca ostatecznie przechodzi dzięki swoim własnym zaletom? Jeśli musisz osłabić bramkę, aby praca przeszła, oznacza to, że bramka była błędna.

Dobrze działająca bramka usprawnia system. Zła bramka sprawia jedynie, że system adaptuje się do niej. Kończysz z kodem, który jest ukształtowany tak, aby zadowolić walidator, a nie z kodem, który jest faktycznie dobry.

Przestań patrzeć na łączną liczbę. Łączna liczba pokazuje aktywność. Próba pokazuje prawdę.

Przeprowadź audyt próby tego, co blokują Twoje bramki, lintery lub filtry. Jeśli testujesz swoje zabezpieczenia wyłącznie przy użyciu błędnych danych wejściowych, zadajesz tylko pytania, które mają na celu uzyskanie pochlebnych odpowiedzi. Musisz również sprawdzić, czy przepuszczają one poprawne, nietypowe dane wejściowe.

Czy audytujesz liczbę blokad? Jak decydujesz, czy odrzucenie było uzasadnione?

Źródło: https://dev.to/josephyeo/the-gate-fired-198-times-i-called-it-working-45fk

Opcjonalna społeczność edukacyjna: https://t.me/GyaanSetuAi