Соревновательное программирование: пустая трата времени?

Вот все о том, что соревновательное программирование — пустая трата времени:

Соревновательное программирование — это не пустая трата времени, если только вы не презираете его и не используете в своих интересах.

Вы можете выиграть призы, познакомиться с другими профессиональными программистами, отточить свои навыки и узнать массу вещей на соревнованиях.

Вдобавок ко всему, это может открыть двери в вашей карьере, предоставив вам возможности для общения.

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Итак, если вы хотите узнать все о том, почему некоторые считают соревновательное программирование пустой тратой времени, тогда эта статья для вас.

Давайте погрузимся в это!

Соревновательное программирование: пустая трата времени?  (Вся информация)

Что такое соревновательное программирование?

Молодой профессиональный инженер-программист, программист, ИТ-специалист, работает дома

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

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

Возможно, вы подумали о той сцене из «Социальной сети», где группа студентов колледжа выпивала и яростно печатала на клавиатуре.

Это немного драматизация, но алкоголь и разъяренные пальцы в сторону, это тоже не совсем неуместно.

Соревнование по программированию — это когда программисты собираются вместе, чтобы попытаться решить конкретную проблему, написав код.

Как правило, соревнования рассчитаны на время, и человек (или команда), которые быстрее всех справятся с заданием, становятся победителями.

Соревнований очень много, и в каждом есть уникальные элементы, и здесь слишком много всего, чтобы охватить все.

Суть в том, что люди действительно соревнуются в спортивной среде, чтобы выиграть призы, а программирование — это форма соревнования.

Является ли соревновательное программирование пустой тратой времени?

молодая женщина пишет код на рабочем столе дома

Суть конкурентного программирования в том, что на практике оно сильно отличается от того типа программирования, который вы можете видеть ежедневно в крупной технологической фирме.

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

Итак, это пустая трата времени, чтобы конкурировать?

Если вы извлекаете личную ценность из конкуренции, то нет.

Это не более пустая трата времени, чем поход в кино или прогулка.

Вам разрешено делать то, что вы делаете.

Тем не менее, это не то, что многие люди имеют в виду, когда задают этот вопрос.

Вместо этого они задаются вопросом, может ли конкурентное программирование помочь их карьере профессионального программиста.

В таком случае это еще не пустая трата времени, но и не золотой билет к успеху.

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

Затем я пройдусь по способам, которые это вообще не помогает.

Как конкурентное программирование может помочь в вашей профессиональной карьере программиста? (5 вещей)

программист разрабатывает сайт

Начнем с того, почему соревнования — это не пустая трата времени.

В общем, они могут помочь вам стать лучшим программистом.

Соревнования также могут помочь вам найти профессиональные возможности.

#1 Оттачивание фундаментальных навыков

Профессиональная женщина-программист, работающая над новым проектом на компьютере дома

Профессиональное программирование и соревнования очень разные. Во многих отношениях они проверяют и развивают различные навыки.

Но все программирование исходит из одного и того же основного набора фундаментальных навыков.

Весь код строится из элементарных идей, которые объединяются в алгоритмы для создания программ.

Соревнования могут помочь вам отточить свои навыки на этом фундаментальном уровне.

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

# 2 Расширение вашей любви к программированию

счастливые программисты дают пять

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

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

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

Соревнования могут напомнить вам, что вы любите в программировании.

Они могут бодрить и вдохновлять, и это только поможет вам как программисту.

Если вы больше ничего не получаете от соревнований, этого достаточно.

#3 Нетворкинг

команда программистов и разработчиков в офисе

Я не говорю о компьютерных сетях здесь.

Я имею в виду традицию встречаться с людьми вашей профессии и при этом натыкаться на возможности.

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

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

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

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

В общем, соревнования по программированию — это возможности для общения.

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

Просто приходите, знакомьтесь с людьми и смотрите, что происходит.

Конечно, это лучше всего работает для личных мероприятий.

Онлайн-соревнований много, и возможности нетворкинга там немного другие.

#4 Выигранные призы

молодой человек празднует успех на работе, указывая на свой ноутбук

Большинство конкурсов имеют призы для победителей.

Некоторые из этих призов являются денежными призами в размере нескольких тысяч долларов.

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

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

# 5 Углубление вашего резюме

Менеджер по персоналу просматривает резюме во время собеседования с кандидатом

Самое главное, что помогает программистам получить хорошую работу, — это составление их резюме и портфолио.

Иметь престижную степень — это хорошо, но, в конечном счете, люди хотят подтвердить ваши навыки.

Одних только побед в конкурсах недостаточно, чтобы сделать вас самым востребованным программистом, но это и не повредит.

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

Почему некоторые считают соревновательное программирование пустой тратой времени? (3 вещи)

Грустный и измученный программист на своем рабочем месте

Все это звучит неплохо, правда?

Если у соревнований так много преимуществ, то почему кто-то может подумать, что соревновательное программирование — пустая трата времени?

В основном это сводится к тому, что вы не можете стать профессиональным программистом, только соревнуясь.

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

Я знаю, что сказал ранее, что оттачивание ваших основ важно, и это по-прежнему верно, но перед лицом профессионального программирования одного этого недостаточно.

Есть много вещей, которые просто не охватываются конкурсами, и это важно знать.

Итак, давайте рассмотрим два конкретных аспекта программирования, которые на самом деле не затрагиваются на соревнованиях, и почему они так важны.

Это вещи, которые не принесут никакой пользы, когда вы будете участвовать в соревнованиях.

#1 Комплексное программирование

Разработчик программного обеспечения, работающий над сложными программами

Это большой.

Многие соревнования длятся несколько дней.

Очные соревнования длятся несколько часов.

Между тем, профессиональные программисты могут годами работать над одним и тем же программным пакетом.

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

Есть миллионы строк кода, и ваша работа — понимать их и часто писать.

Кроме того, управление сложным кодом само по себе является навыком.

Как вы за всем успеваете? Как вы изолируете возникающие проблемы (и они приведут к такому большому количеству кода)?

Эти навыки на самом деле не подкрепляются соревнованиями, и поэтому некоторые профессиональные программисты считают соревнования пустой тратой времени.

# 2 Другие вещи

кодирование на экране, женские руки кодируют html и программируют

Также важно помнить, что быть профессиональным программистом — это больше, чем придумывать алгоритмы и писать код.

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

На самом деле, большая потеря времени, которой в большинстве случаев не хватает в соревнованиях, — это документация.

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

Рассмотрим разработку программного обеспечения, которая включает в себя многие миллионы строк кода.

Теперь представьте, что вы отвечаете за обслуживание этого программного обеспечения и работу над обновлениями для него.

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

Проще говоря, конкурсы не помогают вам развивать свои таланты в этих других областях работы.

# 3 Мягкие навыки

Два специалиста ведут деловой разговор

Мягкие навыки определенно можно отнести к категории «другие», но я хотел выделить их отдельно.

Soft skills — это термин, описывающий то, как вы взаимодействуете с людьми.

Мы часто представляем, что программисты сидят в одиночестве за столом и целыми днями печатают на компьютере.

Такие дни определенно существуют, но как профессионал вы пытаетесь писать программы, решающие конкретные проблемы.

Чтобы сделать это, вы должны работать с клиентом, чтобы правильно понять проблему.

Затем вы должны перевести эту проблему в нечто, понятное компьютеру.

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

Во многих случаях они вообще ничего не знают о программировании, поэтому просто перечисляют то, что не совсем понятно.

Именно ваши мягкие навыки могут помочь вам преодолеть пробелы в общении и действительно добраться до сути проблемы, чтобы вы могли ее решить.

Ничего этого нет в соревнованиях. В соревновании вы просто следуете правилам и пытаетесь победить.

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *