January 23rd, 2007

Программизм

Слово, вышедшее из употребления

В программировании я - натуршпилер. Так лет сто назад называли тех, кто не учился шахматам по учебникам, а изучил их самостоятельно. Кажется, последним из таких был Акиба Рубинштейн.

Нет, мне читали некоторое количество лекций, и я сдавал некоторое количество семинарских работ. Но в силу восприятия до типичных решений, даже зная о них, я дохожу сам - до сих пор помню, как после долгих раздумий понял, что вместо жуткого кривого решения, которое я сам придумал, для имитации раздачи карт (точнее, для того, чтобы одна и та же карта не оказалась розданной двум игрокам) идеально подойдет цикл while. До того момента он мне ни разу не требовался.

Основное обучение у меня всегда было при наблюдении за старшими коллегами - а теперь я уже сам с усами. При этом книги я всегда читал, запоминая потенциально актуальные решения, которые потом придется воспроизводить. А еще я коллекционировал всякие примеры решения задач, которые плюс-минус актуальны - это, впрочем, с появлением интернета отошло на задний план: интернет - одна такая большая коллекция. Лучше всего было с рефакторингом - плохого и не очень хорошего кода всегда хватало и в DirectX SDK, и в рабочем коде.

Я успешнее ряда коллег искал в MSDN - но не за счет того, что я хорошо ищу, а за счет того, что поиск в ширину при малом числе статей очень эффективен, а если долго сидеть перед мейлером, то тоссер принесет ответ на 90% вопросов.

Беда моего натуршпилерства - в том, что обучение только на собственном опыте. Как-то так.