Не секрет, что существуют два противоположных взгляда на олимпиадное (спортивное?) программирование:
Первый из них - почёт и уважение лучшим, вплоть до благоговейного трепета.
Второй взгляд часто - вот де, зачем это надо, получаются гениальные горе-программисты которых трудно потом переучить для работы в нормальной конторе разработчиков.
Помню, когда я впервые устроился работать в одну из контор, разрабатывающую банковское (и вообще коммерческое) ПО, я был поражён примерами кода - проверки и логгирование ошибок для каждой строки, идентификаторы по 50 символов длиной, префиксы различных видов имён и т.п. Пояснения для потомков, доксижен, пространные комменты в системе контроля версий и багтрекере.
Ну и когда я впервые разглядывал исходники сильных спортсменов с топкодера, скажем - я тоже поражался. Некоторым текстам даже обфускатор уже не понадобится - естественно, ведь автор справедливо осознаёт что написать нужно быстро, а возвращаться к этому коду ему вряд ли понадобится.
Сам я ни с тем ни с другим мнением отдельно согласиться не могу. Считаю что и "профессиональные" программисты должны знать что существуют алгоритмические задачи посложнее двоичного поиска - и спортсмены должны примерно представлять сложности "профессиональной" разработки.
Впрочем обсуждать это всё долго, да и много на эту тему говорилось, даже здесь, по блогам уважаемых людей:
http://codeforces.me/blog/entry/1851
http://codeforces.me/blog/entry/2047
и т.п.
Среди своих знакомых - профессиональных разработчиков - я с удивлением не нашёл никого, кто хоть когда-то заходил бы на популярные ресурсы связанные с олимпиадным программированием. Теперь хочу узнать "обратную сторону" вопроса. Так что просто поделитесь (если не тайна):
- работаете ли вы программистом/тестировщиком, и т.п. (если да, то как часто доводилось заниматься интересными алгоритмическими задачами - мне, скажем, раза 4 за два года, притом больше околоматематическими алгоритмами);
- работаете ли вы "математиком/аналитиком-программистом" (или как называется ваша должность) - т.е. человеком который на практике занят разработкой, модификацией или внедрением достаточно неординарных алгоритмов в проектах;
- работаете ли вы в решительно иной отрасли (в инженерной - или нет?);
- либо не работаете пока вообще, но собираетесь (или не собираетесь) работать в IT, даже с учётом того что "интересных задачек" там отнюдь не так много и достаются они обычно либо лучшим, либо везучим... ;-)
Заранее спасибо.