Watayarishaji programu, devops na paka wa Schrödinger

Watayarishaji programu, devops na paka wa Schrödinger
Ukweli wa Mhandisi wa Mtandao (na Noodles na... Chumvi?)

Hivi majuzi, nilipokuwa nikijadili matukio mbalimbali na wahandisi, niliona muundo wa kuvutia.

Katika mijadala hii, swali la "sababu kuu" huibuka kila wakati. Wasomaji waaminifu watajua kuwa ninayo baadhi mawazo juu ya hii kuhusuKatika mashirika mengi, uchambuzi wa matukio unategemea kabisa dhana hii. Wanatumia mbinu mbalimbali kutambua uhusiano wa sababu-na-athari, kama vile Sababu tanoMbinu hizi huchukulia kile kinachoitwa "msururu wa matukio" kama fundisho lisilopingika.

Unapopinga wazo hili na kuashiria kwamba katika mifumo changamano, mstari ni wa kuhadaa, mjadala wa kuvutia hutokea. Wadadisi kwa shauku wanasisitiza kwamba ujuzi pekee wa "sababu kuu" hutuwezesha kuelewa kinachotokea.

Nimegundua muundo unaovutia: watengenezaji na DevOps hujibu kwa njia tofauti kwa wazo hili. Katika uzoefu wangu, wasanidi programu wana uwezekano mkubwa wa kubishana kuwa sababu za msingi za jambo na kwamba uhusiano wa sababu-na-athari unaweza kuanzishwa kila wakati katika matukio. DevOps, kwa upande mwingine, wana uwezekano mkubwa wa kukubali kuwa ulimwengu mgumu huwa hautii usawa kila wakati.

Siku zote nilijiuliza kwanini inakuwa hivyo? Nini hufanya Kwa nini watengenezaji wa programu hukosoa wazo la "sababu kuu ni hadithi" kama hiyo? Ni kama mfumo wa kinga unamtambua wakala wa kigeni. Kwa nini wanaguswa hivi, wakati DevOps badala ya kutega fikiria wazo hili?

Sina hakika kabisa, lakini nina mawazo juu ya hili. Inahusiana na mazingira tofauti ambayo wataalamu hawa hufanya kazi zao za kila siku.

Watengenezaji mara nyingi hufanya kazi na zana za kuamua. Bila shaka, wakusanyaji, viunganishi na mifumo ya uendeshaji yote ni mifumo changamano, lakini tumeizoea ikitoa matokeo bainifu, na tunayawazia kwa usahihi kwamba: kwa kuzingatia data sawa ya ingizo, kwa kawaida tunatarajia matokeo sawa kutoka kwa mifumo hii. Na ikiwa kuna tatizo na matokeo ("mdudu"), wasanidi programu hutatua kwa kuchanganua data ya ingizo (ama kutoka kwa mtumiaji au kutoka kwa seti ya zana za ukuzaji). Wanapata "mdudu" na kisha kurekebisha data ya kuingiza. Hii hurekebisha "mdudu."

Watayarishaji programu, devops na paka wa Schrödinger
Dhana ya kimsingi ya uhandisi wa programu ni kwamba data sawa ya ingizo kwa uhakika na kwa uhakika hutoa matokeo sawa.

Kwa kweli, matokeo yasiyo ya kuamua huchukuliwa kuwa hitilafu yenyewe: ikiwa matokeo yasiyotarajiwa au yenye makosa hayawezi kuzaliana tena, basi watengenezaji huwa na mwelekeo wa kupanua uchunguzi hadi sehemu nyingine za rafu (mfumo wa uendeshaji, mtandao, n.k.), ambazo pia hufanya kazi kwa uthabiti zaidi au chini, ikitoa matokeo sawa kwa data sawa ya ingizo... na kama si hivyo, bado inachukuliwa kuwa mdudu. Sasa hivi ni mfumo endeshi au hitilafu ya mtandao.

Kwa vyovyote vile, uamuzi ni dhana ya msingi, inayokaribia kujidhihirisha kwa kazi nyingi ambazo waandaaji wa programu hufanya.

Lakini kwa mtaalamu yeyote wa DevOps ambaye ametumia siku moja kujenga maunzi kwenye rafu au kuchezea API za wingu, wazo la ulimwengu unaoamua kikamilifu (mradi tu kuna njia ya kuweka data yote ya ingizo!) ni, bora zaidi, wazo la muda mfupi. Hata kuweka kando Utani wa BOHF kuhusu matangazo ya jua, wahandisi wenye uzoefu wameona mambo ya ajabu zaidi katika ulimwengu huu. Wanajua hilo Hata kupiga kelele kwa mwanadamu kunaweza kupunguza kasi ya seva., bila kutaja mamilioni ya mambo mengine katika mazingira.

Kwa hivyo, wahandisi wenye uzoefu wana uwezekano mkubwa wa kuhoji wazo kwamba matukio yote yana chanzo kimoja, na kwamba mbinu kama "Sababu Tano" zitasababisha kwa uhakika (na kwa kurudia!) kusababisha chanzo hicho. Kwa kweli, hii inapingana na uzoefu wao wenyewe, ambapo vipande vya fumbo haviendani vizuri katika mazoezi. Kwa hiyo, wanakubali zaidi wazo hili.

Bila shaka, sisemi kwamba wasanidi programu ni wajinga, wajinga, au hawawezi kuelewa jinsi mstari wa mstari unavyoweza kudanganya. Watayarishaji programu wenye uzoefu pengine wameona sehemu yao ya kutoamua kwa wakati wao.

Lakini inaonekana kwangu kwamba majibu ya kawaida kutoka kwa watengenezaji katika mijadala hii mara nyingi yanahusiana na ukweli kwamba dhana ya uamuzi. kwa ujumla huwahudumia vyema katika kazi zao za kila siku. Wanakumbana na hali ya kutoamua mara kwa mara kuliko wahandisi wanapaswa kuwakamata paka wa Schrödinger katika miundombinu yao.

Hii inaweza isieleze kikamilifu miitikio ya wasanidi programu inayozingatiwa, lakini ni ukumbusho wa nguvu kwamba maoni yetu ni mchanganyiko changamano wa mambo mengi.

Ni muhimu kukumbuka utata huu, iwe tunasuluhisha tukio moja, tunashirikiana kwenye bomba la uwasilishaji wa programu, au kujaribu kuleta maana ya ulimwengu mzima.

Chanzo: mapenzi.com

Nunua upangishaji wa kuaminika wa tovuti zilizo na ulinzi wa DDoS, seva za VPS VDS 🔥 Nunua upangishaji wa tovuti unaoaminika kwa ulinzi wa DDoS, seva za VPS VDS | ProHoster