Има много прилики между код и мисъл

Когато бях младши програмист преди много време, работих върху много амбициозен проект. Той включваше само малка шепа разработчици и технологията беше кървяща.

Никой в ​​моя отдел нямаше това знание, така че от малкия ми екип и аз трябваше да предложим решение в много кратък срок.

Работата, върху която трябваше да работя, включваше създаване на потребители в системата. Самото създаване беше относително лесно, но броят на вероятностите беше огромен.

Това, което започна като един възможен маршрут, се превърна в почти море от безкрайни възможности.

Тъй като бях младши разработчик, имах нетърпение да реша този проблем. Бях задал много, както обичам да го наричам сега, „какво-ако“ въпроси.

„Ами ако потребителят направи това? Ами ако потребителят направи това?“

Този тип мислене ми помогна тогава в проекта, но по пътя разбрах как бавно се просмуква в начина, по който се отразява, мисля логично.

Добрата новина е, че с годините се научих да смекчавам въпросите „какво, ако“ заобикаляха живота ми и да си позволя да видя какво се е опитвал да защити през цялото това време.

Поп викторина!

Знаете ли какво прави тази програмна логика?

if (firstName == "Ben"){
   console.log("Hi, Ben!")
}

Ако сте си помислили „If firstName is ‘Ben’ then display ‘Hi, Ben!’“, прав сте!

(Освен това току-що научихте как да програмирате за първи път, така че поздравления за това!)

Защо попитах това?

Като програмисти, ние се занимаваме с използването на логически изрази или условия много в нашия код. Както можете да си представите, нашият код може да стане доста сложен, след като започнем да добавяме все повече условия.

Например, вместо да проверяваме първото име, можем да поискаме да проверим бащиното име или датата на раждане на даден потребител. Колкото по-сложен става кодът, толкова по-трудно е да се опитаме да дешифрираме истинското значение на целта, която трябва да бъде.

В проекта, върху който работех, кодът ми стана много сложен бързо, тъй като имах създадени много условия.

Бях кодирал толкова много и имах объркана логика навсякъде, че не можах да го направя ефективен и елегантен – и честно казано, имаше много грешки.

И така, какво направих, за да поправя това?

Сесия за мозъчна атака

Първо трябваше да вляза и да говоря с моя старши разработчик.

Говорих за това колко сложен стана кодът ми и ние бавно (въпреки че отне много време) разглобихме кода, разгледахме условията едно по едно и видяхме какво прави.

Начертахме условия, които не бяха необходими, и условия, които се повтаряха.

Съвсем скоро имахме работещо решение, което беше лесно за четене и поддръжка.

Условията могат да бъдат свързани с начина, по който мисли нашето его. Често има много допълнителна информация, задръстена в нашето мислене, и на свой ред ни става трудно да различим кое е правилно и кое не.

Само докато не говорим за това с друг човек, обикновено сме в състояние да „коригираме кода“. Човекът може да бъде приятел, близък роднина или дори терапевт.

Коригирането на този проблем не може да бъде завършено наведнъж. Отне ни много часове, за да премахнем допълнителния код, който бях поставил за моя проект, и вместо това внедрихме по-елегантен и красив код в крайна сметка.

Не виждате ли, че можем да направим същото за нашето его?

Фалшиво положителен

Можем да разгледаме и този пример:

if (firstName == "Ben"){
   console.log("Hi, Jane!")
}

Тук това твърдение гласи „If firstName is ‘Ben’ then display ‘Hi, Jane!’“.

А, за съжаление, това е неправилно. Вижте как условието, което добавихме (между другото добронамерено) ни накара да имаме неправилен изход?

Можем да мислим, че егото ни прави същото. Той има истинското си намерение да провери конкретно състояние, но ни кара да показваме елементите неправилно.

Както Диана С. перфектно обобщава в своята „подкана“,

„Горкото старо его просто иска да ни пази в безопасност. Вярно е, че в опитите си да направи това добавя към страданието, което вече изпитваме поради болезнената ни история на травми.

В този случай условието иска да провери дали първото име е Бен, но изходът му е грешен.

Премахнете условието, ако е необходимо

В крайна сметка, как обикновено коригирате тези проблеми?

Е, може да е просто като премахване на условията или премахване на конкретното его!

От гледна точка на програмирането, аз изтрихусловието. Можем да направим това и в живота си, тъй като можем да премахнем конкретни мисли, които в момента ни пречат да влезем в правилния път.

Въпреки че това е трудно и отнема време, наистина си заслужава, ако искате да видите истинската си същност и да си позволите да се излекувате.

И така, какво стана с моя проект в крайна сметка?

Отне близо две години разработка, безброй часове за разработка и кодиране, много срещи, но в крайна сметка го стартирахме успешно.

Имаше много „его“, които бяха създадени и след това премахнати в проекта; въпреки това, правейки това, успяхме да разгледаме действителната логика, която се опитваше да защити.

Благодаря на Diana C. от KTHT за подтикването към този изключителен въпрос!