Приветствую всех программистов! У меня есть небольшой опыт участия в ACM — олимпиадах и небольшой опыт прикладного программирования. И вот недавно я осознал, что развиваться в двух направлениях очень тяжело. Учась в универе, я могу найти несколько часов в день, для решения нескольких задачек, или для написания нескольких сотен строк кода проекта. Но только на что то одно. А для того, чтобы достичь успеха в чём-то, нужно отдать "всего себя" этому делу. А значит, времени на альтернативу практически не остаётся. Естественно, мне, как и любому другому, хочется добиться успеха, иметь хорошую высокооплачиваемую работу в будущем. И вот я задался вопросом... Что же важнее, быть опытным прикладным программистом, или же уметь "думать" и находить решение к практически любой задаче, которая может встретиться?
Я думаю, что всегда и везде ценятся работники, умеющие логически мыслить, находить различные пути решения проблемы. Остальное, думаю, должно приходить с опытом. Возможно кто не согласен — прошу обсудить.
А что, прикладные программисты не думают и задач не решают? :)
Но я так понимаю что если заниматься спортивным программированием серьёзным (т.е. выше задачек A, B из Div2 на которые меня, скажем, хватает в среднем) — то им надо заниматься хорошо, т.к. для 95% вакансий программистских это не потребуется.
Правда прикладным программированием (для высокооплачиваемой работы) тоже надо заниматься хорошо и всяких много страшных слов изучать. Но по-моему это можно уже после того как на первую работу устроишься развивать.
С этой точки зрения пока есть время и возможность в универе, и если есть желание-способности, можно наращивать усилия в направлении олимпиад.
А что, прикладные программисты не думают и задач не решают? :)
В том то всё и дело, что задачи олимпиадника очень сильно отличаются от задач промышленника.. Хотя, что один, что другой — программист) И если в прикладном, у меня больше вопросов было типа "с помощью чего я могу сделать то-то?", то в спортивном, такой вопрос, как правило не возникает... Тут обычно возникает вопрос "а как оно вообще должно работать?", который, так же, как правило, не возникал у меня при создании проектов..))
Это плохая позиция в "любом" программировании, не думать про то, "как оно вообще должно работать".
Имеется в виду, что этот вопрос обычно легко и просто решается, в отличие от спортивного
Очень тонкое наблюдение :)
Если у промышленного программиста возникают такие вопросы, на большую зарплату он может не расчитывать. Для этих вопросов есть гугл, есть коллективный разум и т.п. — главное уметь в течение определённого времени найти или выбрать нужные варианты.
В масштабных проектах как раз насущные вопросы прикладных программистов в это и упираются. Конечно здесь не об алгоритмах речь, а об архитектуре в основном. Правда в отличие от спортивных задач здесь больше неоднозначностей и соответственно больше яростных споров на кухне, заваленных до ужасного состояния проектов и т.п. И аналогично — типовые подходы, паттерны и целые идеологии есть — но для сложных проектов не всегда ясно как их комбинировать (и даже как реализовывать). Но повторюсь это всё, если повезёт, вы сможете посмотреть и изучить уже на практике если в эту сторону работать пойдёте. Времени будет достаточно!
Развиваться в двух направлениях вполне возможно, при этом иметь успехи и там и там, иметь личную жизнь, спорт, работу, победы, отличные оценки. Такой режим и такой опыт на порядок лучше чего-то узконаправленного. Тем более пока организм молод, то не стоит себя ограничивать.
Ну я в общем то с тобой согласен, правда в такой распорядок никак не вписывается нормальный здоровый сон)))
При таком режиме сон будет очень здоровым, на самом деле.
И проблема бессонницы пропадает. Сон будет очень качественным. Крепким и приятным.
Другой вопрос в том, сколько его будет.
Лично моё мнение следующее. Мне спортивное программирование не принесло ничего, кроме всяких расстройств.) Советую обойтись без него. Если хотите подтянуть скиллы думающего человека, возьмите и почитайте какую-нибудь интересную книгу — а-ля машинное обучение, на худой конец почитайте какие-нибудь математические книжки. Это будет более полезно, чем играть в эти игры...
Просто ты в ИТМО учишься, а учился бы в каком-нибудь провинциальном вузе — сейчас был бы финалистом ACM ICPC :D
А если по теме, то спортивное программирование это просто обычное хобби, ему можно посвящать свободное время, и оно не должно мешать, например, работе. А также оно дает возможность иногда напрягать мозги в процессе решения задачек, (в студенческий период) ездить на контесты и весело проводить там время с другими ACM-щиками, смотреть трансляции финалов и болеть за любимые команды, выигрывать ежегодные маечки от мейл-ру/гугла/еще от кого-нибудь и т.д. Короче, плюсов много, но они в основном не материальные, а духовные; в материальные их удается превращать лишь избранным)
А разве наличие целого шкафа таких маечек не поможет устроиться на хорошую работу?) Как только я поступил, нас всех моралили, типа "никто из вас не сможет работать по профессии. Максимум что из вас всех получится, это 1-2 программиста 1С")
Мне кажется, что работодателям пофиг на успехи в спортивном программировании, так как оно совершенно не связано с работой.
По-моему просто работодателей которым не пофиг нужно сначала найти. Ессно никому не интересны нерелевантные для конторы скиллы.
Среди контор имеющих офисы в Питере я могу припомнить GridDynamics, DevExperts, JetBrains, DINO Systems, Яндекс пожалуй — хотя тоже надо по конкретным вакансиям смотреть.
Пожалуй давно стоило вместо обсуждений-рассуждений как раз отдельным постом список по городам забабахать — люди б пользоваться могли...
Несколько часов в день — да вы, батенька, и не заняты ничем. Спортом вы не занимаетесь (не состоите в сборной универа), каждый день не подрабатываете, общественной нагрузкой не обременены. Вам нужно развиваться не в двух, а в трех-четырех направлениях. Вы себя жалеете — не загружаете.
а вот тут вы несколько ошибаетесь, я являюсь членом сборной не только университета, но и своего района) Являюсь победителем и призёром многих соревнований зонального и российского уровня)) Не лучшая идея, утверждать о чём — то, о чём понятия не имеешь)
Приношу извенения, если ошибся. Если вы действительно серьезно занимаетесь спортом, у вас не может быть свободными несколько часов каждый день. Студенты-спортсмены иногда неделями не появляются в «универе». Вы про какой спорт говорите?
В том то и дело, что будучи довольно успешным армрестлером и тренируясь 4 раза в неделю, я пропускаю занятия только по причине выезда на соревнования в другой город)