🔶 Как определить является ли человек программистом?



Дать задачку и слушать ответы:

«Буратино дали три яблока.

Два он отдал Мальвине.

Сколько яблок у него осталось?»



(initializing) Неизвестно, сколько яблок было у Буратино до того, как ему дали 3 яблока.

2⃣Неизвестно два "чего" он отдал Мальвине.

3⃣Неизвестно не является ли Буратино и Мальвина двумя разными сущностями, или одно из них это ссылка на другое.

4⃣Неизвестно что подразумевается под процессом "отдал", и результат этого процесса (может Мальвина не взяла).

5⃣Непонятно в какой момент "осталось". После того как он попытался дать в первый раз?

6⃣(state) Неизвестно не являются ли яблоки частью состояния Буратино, или самостоятельными объектами.

7⃣(волатильность) Не ясно, сколько времени прошло с момента нахождения яблок у Буратино до процесса "отдачи":

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

– может их едят пока они у Буратино, а он просто этого не знает.

8⃣(длина переменной) Не ясно, сколько яблок может удержать Буратино.

Может, всего 2... и если он 2 отдал, у него нет яблок.

9⃣Если процесс дачи яблок рекурсивный, мы все останемся без яблок.



😨 Короче, тёмная история...



#изинтернетов