Иван Иванчей: «не бояться учиться совсем не знакомому»

#thinkcognitive продолжает публиковать рассказы о первых самостоятельно сделанных на компьютере экспериментах. Программировать — это не сложно и интересно =) Сегодня — рассказ Ивана Иванчея, аспиранта СПбГУ, занимающегося изучением имплицитного научения:

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

Когда я узнал про пакет PsychoPy, я с радостью начал его использовать: ведь он позволяет самостоятельно конструировать эксперименты без умения программировать. Кроме того, он создан психологами, что решает озвученные выше проблемы.

Вскоре оказалось, что у меня всё-таки есть запросы к программе, не предусмотренные разработчиками с самого начала. Сначала я приставал с вопросами к Андрею Четверикову, потом решил освоить язык python, на котором написан PsychoPy. Ника Адамян дала в твиттере ссылку на учебник: «Non-Programmer's Tutorial for Python 3» (http://en.wikibooks.org/wiki/NonProgrammer's_Tutorial_for_Python3/Print_version). Я его проштудировал, выполняя несложные упражнения. Это уже позволило мне не только более полно использовать Psychopy, но и написать несложные программы для других своих исследовательских нужд. Потом я прошёл курс на coursera.org «Learn to Program: the Fundamentals» (https://www.coursera.org/course/programming1), чуть более обширный, но тоже для новичков. На самом деле, чтобы решать конкретные задачи, достаточно ознакомиться с самыми основами программирования и конкретного языка. Зная эти основы, большинство простых задач можно решить, немного погуглив. Кажется, общие основы и понятия я более или менее усвоил, так что за новые языки, если возникает необходимость, берусь без страха.

Я бы посоветовал не бояться учиться совсем не знакомому, чаще гуглить (почти все проблемы, которые возникают у новичка — у кого-нибудь уже возникали и разобраны на разных форумах). Для запоминания полезных функций и команд я веду блокнотики. Вот и всё".