Programowanie kultu cargo

Programowanie kultu ładunku to styl programowania komputerowego charakteryzujący się rytualnym włączeniem kodu lub struktur programu, które nie służą żadnemu rzeczywistemu celowi. Programowanie kultu cargo jest symptomem tego, że programista nie rozumie ani błędu, który próbował rozwiązać, ani pozornego rozwiązania (porównaj debugowanie strzelby , głęboka magia ). Termin programista kultu cargo może mieć zastosowanie, gdy ktoś niedoświadczony w rozwiązywaniu danego problemu kopiuje kod programu z jednego miejsca w drugie, nie rozumiejąc, jak to działa i czy jest wymagane.

Programowanie kultu cargo może również odnosić się do praktyki ślepego stosowania wzorca projektowego lub stylu kodowania bez zrozumienia przyczyn tej zasady projektowania. Niektóre przykłady to dodawanie niepotrzebnych komentarzy do oczywistego kodu, nadgorliwe przestrzeganie konwencji paradygmatu programowania lub dodawanie kodu usuwającego obiekty, które są automatycznie zbierane przez wyrzucanie elementów bezużytecznych .

Obsesyjne i zbędne sprawdzanie wartości pustych lub sprawdzanie, czy kolekcja jest pusta przed iteracją jej wartości, może być oznaką programowania kultu cargo. Takie obsesyjne kontrole sprawiają, że kod jest mniej czytelny. [ oryginalne badania? ]

Pochodzenie

Termin kult cargo jako idiom pierwotnie odnosił się do religii tubylczych, które wyrosły na południowym Pacyfiku po drugiej wojnie światowej. Praktyki tych grup koncentrowały się na budowaniu skomplikowanych makiet samolotów i lądowisk wojskowych w nadziei na przywołanie boskich istot, które przybyły samolotami, które przywiozły cudowny ładunek podczas wojny. W ostatnich dziesięcioleciach antropologia zdystansowała się od terminu „kult cargo”, który jest obecnie postrzegany jako redukcyjny stosowany do wielu skomplikowanych i odmiennych ruchów społecznych i religijnych, które powstały w wyniku stresu i traumy kolonializmu i dążyły do ​​osiągnięcia o wiele bardziej zróżnicowane i amorficzne cele – takie jak samostanowienie – niż ładunek materialny.

Użycie tego terminu w programowaniu komputerów wywodzi się prawdopodobnie z określenia przez Richarda Feynmana pewnych praktyk jako nauki o kultach cargo .

Inżynieria oprogramowania kultowego ładunku

Pokrewnym terminem programowania kultu ładunków w inżynierii oprogramowania jest inżynieria oprogramowania kultu ładunków , ukuty przez Steve'a McConnella .

McConnell opisuje organizacje tworzące oprogramowanie, które próbują naśladować bardziej udane domy programistyczne, albo niewolniczo podążając za procesem tworzenia oprogramowania bez zrozumienia jego uzasadnienia, albo próbując naśladować podejście programistyczne zorientowane na zaangażowanie (w którym twórcy oprogramowania poświęcają dużo czasu i energii, aby ich projekty odniosły sukces) poprzez nakazanie długich godzin i niepłatnych nadgodzin, podczas gdy w odnoszących sukcesy firmach mogą to być raczej konsekwencje wysokiej motywacji niż przyczyny sukcesu.

W obu przypadkach McConnell twierdzi, że kompetencje ostatecznie decydują o sukcesie lub porażce projektu, niezależnie od przyjętego podejścia do rozwoju; ponadto twierdzi, że niekompetentne „organizacje oszustów” (które jedynie imitują formę odnoszących sukcesy organizacji zajmujących się tworzeniem oprogramowania) w rzeczywistości angażują się w to, co nazywa inżynierią oprogramowania kultu cargo .

Zobacz też

Dalsza lektura

  •   Pan na pewno żartuje, panie Feynman! , Richard Feynman, WW Norton & Co, Nowy Jork, 1985, ISBN 0-393-01921-7 . Jeden z rozdziałów jest transkrypcją przemówienia inauguracyjnego Caltech z 1974 r., Które zawierało wymyślenie nauki kultu Cargo ”.
  • Cargo Cult Science autorstwa Richarda P. Feynmana . Artykuł oparty na jego Caltech Commencement z 1974 r., Ze zdjęciami, pierwotnie opublikowanymi w Engineering and Science , tom 37: 7, czerwiec 1974 r. Cyfrowa wersja z Caltech Library, pobrana 20 czerwca 2007 r.