Рекурсия, Беженцы и я

Сила рекурсии, очевидно, заключается в возможности определения бесконечного множества объектов с помощью конечного утверждения. Таким же образом бесконечное количество вычислений может быть описано конечной рекурсивной программой, даже если эта программа не содержит явных повторений.

Вирт, Никлаус (1976). Алгоритмы + структуры данных = программы.

В вычислениях рекурсия - это особый тип алгоритма. Повторяясь бесконечно, пока не будут выполнены все его критерии, он уникален как по простоте реализации, так и по сложности выполнения. Когда код запускается, компьютер не знает своей конечной точки, он знает только путь к ней.

Это процесс, который, однажды начавшись, может никогда не закончиться.

Когда я был студентом, я не был хорошим программистом, и хотя можно было бы сказать, что все студенты - плохие программисты, я был выдающимся в своей некомпетентности. Даже самый простой фрагмент кода бросил бы меня в кроличью нору условных операторов и циклов с плохим отступом. Весь код, который я написал, был спагетти, и все это воняло. Можно с уверенностью сказать, что я не был прирожденным программистом. Задание за заданием я проходил мимо, медленно продвигаясь к проходным оценкам, почти не понимая, что я на самом деле делаю. Я часами проводил в компьютерных лабораториях по всему университетскому городку, разбирая буквально бесконечные комбинации кода, расшифровывая его значение, как астролог изучает звезды, только с немного меньшим успехом.

На момент написания я был профессиональным программистом в течение пяти лет. Я работал с международными брендами и независимыми стартапами, и я практически «добился успеха». Так что случилось? Я могу с уверенностью сказать, что Стрелец не входил в четвертый квартал, и даровал мне знания о операторах переключения, а акцент Меркьюри не дал мне глубокого понимания компилятора Java.

Проще говоря, мне помогли. Аспирант, которому я теперь обязан своей карьерой, сжалился над сбитым с толку восемнадцатилетним студентом и наставлял меня больше часов, чем я могу сосчитать. Он был терпеливым, когда я был глупым, веселым, когда я был разочарован, и больше всего преданным. Он снова заверил меня, что однажды я смогу читать по звездам.

В то время он начал процесс, конца которого он не знал. Он просто знал, как туда попасть.

Это причина, по которой я поддерживал школы программирования в Лондоне, почему я работал над созданием основы для кружка внеклассного программирования для детей в Ислингтоне и почему я наставляю студентов всякий раз, когда у меня есть возможность. Я в огромном и неоплаченном долгу перед рекурсивной силой обучения и, в частности, перед потенциалом приверженного наставничества для обучения людей.

Это также причина, по которой в этом году я помог открыть школу кодирования для беженцев и длительно безработных в Афинах. Школа кодов в бизнесе по передаче знаний от тех, у кого есть, к тем, у кого нет. Наша школа стремится обеспечить постоянное решение проблем безработицы, бедности и отсутствия образования. Но, к счастью, у нас есть процесс. Процесс, который не имеет повторений, но предлагает бесконечное количество решений для определенного набора проблем.

Это процесс, который, однажды начавшись, может никогда не закончиться.

Если вы, как и я, полагаете, что бесплатное образование - это право, а не привилегия, и эти инвестиции теперь будут иметь далеко идущие последствия, тогда присоединяйтесь ко мне в этом месяце в поддержке Академии социальных хакеров, чтобы продолжить работу по обучению некоторых из них. самый нуждающийся в мире.

7 декабря мы запускаем краудфандинговую кампанию, чтобы обеспечить непрерывную работу нашей школы, и нам нужно, чтобы вы поддержали нас, чем можете.

Следите за нашим путешествием в Facebook или Instagram, чтобы оставаться в курсе.