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

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

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

Описание профессии

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

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

С дипломом программиста можно устроиться работать на высокооплачиваемое место не только в России, но и в других странах. Или вообще начать собственный бизнес. Поэтому многие думают, что нужно сдавать на программиста. Ведь поступление на обучение подразумевает столкновение со вступительными испытаниями. В России это ЕГЭ или ГИА.

Методы получения образования

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

Так где обучаться на программиста? На данный момент предлагается:

  1. Поступить в ВУЗ на соответствующее направление. Обычно на программистов обучают на математических и информационных отделениях. Например, можно обратиться в МГИМО или в МГУ. В гуманитарных университетах программирование не встречается.
  2. Закончить колледж. Тут предлагается или после 9 класса пойти учиться, или после 11. Хороший способ получения среднего профессионального образования. В некоторых училищах не требуется вообще задумываться над тем, что нужно сдать на программиста. Достаточно просто предоставить аттестат об образовании. Но на практике чаще всего учеников принимают по результатам ГИА и ЕГЭ.
  3. Пройти курсы переквалификации. Обычно не требуется никаких экзаменов. На обучение направляют или с биржи труда, или с работы.
  4. Обратиться к помощи частных учебных центров. Достаточно закончить специализированные обучающие курсы программирования. В данном случае не требуется вообще думать о том, что нужно сдавать, чтобы стать программистом. Вступительных испытаний нет, достаточно заплатить за обучение.

Куда именно пойти учиться? Это каждый выбирает для себя сам. Но чаще всего на практике встречается поступление в колледжи и ВУЗы. Именно поэтому приходится думать, что нужно сдавать на программиста.

Неоднозначность

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

Рекомендуется сначала определиться с местом поступления, затем уже в конкретном заведении уточнять интересующую информацию. Для ВУЗов и колледжей требуются одни и те же экзамены. Но какие именно? Сдача каких предметов позволит стать программистом?

Обязательные испытания

После 9 или 11 класса? Существует 2 обязательных предмета. Их придется в любом случае сдавать, не обязательно при поступлении на программирование.

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

Ребенок хочет освоить профессию под названием "программист"? Какие экзамены нужно сдавать после 11 или 9 класса? В обязательном порядке:

  • русский язык;
  • математика (желательно профильный уровень).

Распространенные экзамены

А что дальше? Обычно для поступления на ту или иную специальность требуется 3 предмета. Русский язык, хоть и является обязательным, но его довольно часто не принимают во внимание. То есть, он необходим для выпуска из школы. Остается еще 2 предмета.

Что нужно сдать на программиста? Чаще всего от абитуриентов требуют ЕГЭ или ГИА по следующим предметам:

  • информатика;
  • физика.

Соответственно, чтобы стать программистом, ученику придется столкнуться с:

  • математикой;
  • русским языком;
  • физикой;
  • информатикой.

Именно в таком сочетании чаще всего встречаются требования колледжей и ВУЗов. Но это не единственный вариант развития событий. Некоторые предметы, не относящиеся к математике и технике, тоже иногда могут требовать для сдачи. Как уже было сказано, все зависит от учебного заведения, в которое обращается человек.

Прочие предметы

Есть иные предметы, запрашиваемые в сочетании с математикой. Интересно направление под названием "Программист"? Что нужно сдавать после 11 класса? Вполне вероятно, что от будущего программиста потребуют результатов ЕГЭ/ГИА по:

  • иностранному языку;
  • биологии;
  • обществознанию;
  • истории.

Теперь понятно, что нужно сдать на программиста. Именно поэтому сначала люди отдают предпочтение прохождению специализированных платных курсов. И только потом задумываются над реальным поступлением в ВУЗ или техникум на программирование.

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

Кто такой программист

Давайте поговорим о самой профессии программиста. Кто он? Бородатый мужик лет 40 с котом под мышкой? Или же очкастый подросток-хакер круглыми сутками сидящий за монитором? Давайте оставим стереотипы и обратимся к определению.
Программист - это человек, который пишет программы.
В первую очередь стоит отметить, что профессия программиста включает в себя огромное количество различных специальностей. И каждая из них требует определённой специфики. Однако определённые навыки необходимы в любой из специальностей.

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

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

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

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

Какие науки нужно знать, чтобы стать программистом

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

Безусловно, для программиста математика и информатика - основополагающие предметы, но не единственные. Но если вы плохо знали/знаете математику не стоит отчаиваться – если вы действительно жаждите программировать отсутствие этих знаний не сильно повлияет на процесс. Но если он затянет – всегда можно подтянуть свои знания.

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

Работа программиста

Допустим, вы разобрались с теорией. Хочется практики? Хорошо. Давайте посмотрим, чем же всё-таки занимается программист.

Работа программиста в широком смысле слова - это:

  • Грамотная постановка задачи
  • Разработка алгоритма
  • Запись алгоритма на языке программирования
  • Отладка программы
  • Тестирование программы
  • Оформление документации на программу
Все эти этапы требуют различных знаний и умений. Несмотря на то, что теоретически этапов много - программист тратит 80% своего времени именно на этап программирования (запись алгоритма на языке программирования).

Промежуточный итог

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

На этой нотке я закончу первую часть своего повествования. Ждите, всё самое важное уже скоро!

Теги: программирование для чайников

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

Изучите различные типы архитектуры компьютерного оборудования. Будет полезно изучить основы построения цифровых схем и компьютерной архитектуры . Однако некоторые специалисты считают, что на начальном этапе это не нужно, поэтому достаточно будет прочитать 2-3 статьи на эту тему (например эту и эту). Вы сможете вернуться к этому, когда освоите свой первый язык программирования.

Изучите язык программирования базового уровня. Не стесняйтесь изучать то, что считается детским, лишь потому, что вы старше. Примером такого языка служит Scratch. Такие языки облегчат работу с вашим первым настоящим языком программирования. Тем не менее, этот шаг нельзя считать обязательным. Кроме того, заняться этим можно и до предыдущего шага.

Изучите одну из систем продвинутого моделирования (к примеру, UML или ORM).

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

Начните применять полученные знания.

  • Объектно-ориентированная парадигма.
  • Пройдите вводный курс как минимум по одному языку программирования в другой парадигме программирования. Следует выучить один язык в каждой парадигме, и, как правило, все хорошие программисты так и поступают, однако вам достаточно начать с одного, поработать с ним, потренироваться, а затем перейти к другим, когда у вас уже будет реальный опыт в программировании. Присмотритесь к одной из следующих сфер:

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

    • Возьмите простой пример вашей ранней работы на первом языке программирования и перепишите ее, используя второй язык.
    • Создайте новый проект и используйте там оба языка. Возможно, некоторые вещи вам не удастся сделать на одном из языков - все будет зависеть от выбранного вами проекта и языков.
    • Сделайте шпаргалки или сравните похожие конструкции в обоих языках и их отличия в сводной таблице.
    • Найдите способ повторить конструкции, которые есть в одном языке, с помощью другого языка.
  • Изучите концепции визуального программирования с помощью одного из выбранных вами языков. Практически у всех языков программирования есть версии либо библиотеки, которые поддерживают визуальное программирование и другие виды консольного или консолеподобного программирования. Сделать это можно следующим образом:

    • Пройдите вводный курс по событийно-управляемому программированию. В основном визуальное программирование базируется на событиях и обработке событий (с помощью выбранного языка программирования).
    • Попробуйте поработать с большим количеством программного обеспечения для стационарных компьютеров, чтобы понять, что делают эти программы. Большинство компаний-разработчиков предлагают бета-версии приложений, которыми можно попробовать пользоваться. Следите за развитием пользовательского интерфейса.
    • Читайте статьи или руководства по работе с графическим пользовательским интерфейсом.
  • Начните применять свои знания, разрабатывая простые приложения. Попробуйте использовать полученные знания для решения повседневных проблем. К примеру, пишите программы, которые будут массово переименовывать файлы, сравнивать текстовые файлы визуально, копировать названия документов в определенное место в отдельный файл памяти или текстовый файл и так далее. Для начала пусть все будет простым.

    Как стать программистом с нуля самостоятельно? С чего начать учится программирование чайнику?

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

    Как учить программирование с нуля?

    1. Самостоятельно

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

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

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

    Платформа с бесплатными курсами по веб-разработке freeCodeCamp

    Запомните, что у вас ничего не получится без практики. Учитесь по проектно-ориентированным курсам и пытайтесь сами писать разобранные в них программы и сайты. Ищите лекции на YouTube с разбором проектов, которые вы бы хотели разрабатывать. Сначала копируйте работу других людей и анализируйте её. Затем пробуйте отходить от оригинала, экспериментируйте, изменяйте отдельные элементы, пока не сможете создавать что-то уникальное.

    Помимо курсов и видеолекций, к вашим услугам официальная документация, доступная на сайтах языков и книги. Когда разберётесь в основах, поищите свежие издания с подзаголовком Best Practices по выбранному языку программирования. Такие книги содержат лучшие приёмы разработки.

    (!) Обязательно поставьте перед собой цель создать свой проект и постоянно работайте над ним.

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

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

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

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

    2. С помощью ментора

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

    Узнайте, есть ли среди ваших знакомых разработчики. Возможно, кто-нибудь из них захочет вам помогать. Если таких людей вы не знаете, можете поискать их в сообществах программистов. К примеру, на том же « ». Только услуги менторства стоят недёшево, а за просто так тратить много времени на незнакомых людей никто не желает.

    3. У преподавателей «живых» курсов

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

    Популярные русскоязычные онлайн-площадки, которые занимаются системной подготовкой программистов: «Нетология », GeekBrains и Loftschool .

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

    4. В университете

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

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

    Как выбрать направление и язык

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

    1. Веб-разработка : JavaScript, PHP, Python, Ruby.
    2. Мобильная разработка: Java(Android), Swift, Objective-C(IOS).
    3. Разработка игр и программ для настольных компьютеров : C++, C#, C.
    4. Искусственный интеллект, машинное обучение : Python, R, Scala.

    На что обратить внимание при выборе?

    Чтобы сделать правильный выбор направления и, в частности, языка, учитывайте следующие факторы: сложность освоения и количество обучающих материалов в Интернете, ваши личные предпочтения (что именно хотите разрабатывать) и востребованность языка на рынке труда.


    График востребованности языков программирования на международном рынке труда / research.hackerrank.com

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

    Если не можете определиться

    Если вы в замешательстве, присмотритесь к JavaScript - языку, на котором написан почти весь веб. Многие организации и программисты советуют новичкам выбирать именно этот язык в качестве первого.

    Например, основатель образовательного ресурса freeCodeCamp Квинси Ларсон рекомендует JavaScript всем начинающим. Ларсон приводит очень простые аргументы:

    1. JavaScript относительно легко освоить. А чтобы написать что-то и запустить на этом языке, достаточно иметь редактор кода и браузер.
    2. JavaScript - самый востребованный язык на международном рынке труда и у него большие перспективы. В экосистему JavaScript инвестируют крупные компании, такие как Google, Microsoft и Facebook.
    3. У JavaScript очень широкая сфера применения: от сайтов и браузерных игр до мобильных приложений.

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

    Что ещё должен знать программист: математика и английский?

    Каджому программисту не помешает глубокое понимание математики. Для таких направлений, как разработка игровой графики или большие данные, математический ум - это необходимость. Но что касается веб-разработки и создания несложных программ, то в большинстве случаев без математики можно обойтись. Хотя среди профессионалов на этот счёт нет единого мнения.

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

    Как получить первый опыт и первую работу

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

    Очень ценным пунктом в резюме будет наличие опыта работы, особенно командной разработки. Но где его взять, если вы ищете первую работу?

    1. Выполните несколько заказов на биржах фриланса. Это могут быть «Фрилансим » или Upwork . Предлагайте свои услуги бесплатно, тогда к вам придут первые заказчики.
    2. Найдите единомышленников и создайте с ними общий проект. Люди объединяются для таких целей почти на каждой образовательной площадке, где есть курсы по программированию.
    3. Выберите курсы, организатор которых помогает с трудоустройством. Например, в GeekBrains после обучения открывается доступ к стажировкам от разных компаний, в том числе - оплачиваемым. GeekUniversity и «ШАГ» гарантируют трудоустройство своим выпускникам.

    (!) Перед собеседованием не забудьте поискать в Интернете списки задач и вопросов, которые часто задают работодатели.

    Присоединяйтесь в наш Telegram-канал чтобы быть в курсе всех последних новостей из мира Apple, Samsung, Microsoft, Google и других инновационных компаний.

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

    «Как понять, смогу ли я стать программистом?»

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

    Первое, что нужно сделать — это проверить базовый уровень логики. Найди шмурдики тест, пройди его и набери хотя бы 27 баллов с первого раза. Сумел с третьей попытки за счёт понимания дать все правильные ответы - молодец.

    Переходим на следующую стадию. Поставь среду разработки для С++ или С# или еще какого-нибудь языка. Справился и каждый успешно пройденный шаг тебе доставлял удовольствие — хороший признак. Двигайся дальше.

    Найди описание, как создать в установленной тобой среде на выбранном языке первое приложение, Hello World, - это классика. Сделал? Отлично.

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

    Повысить Понизить

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

    Повысить Понизить

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

    Еще надо любить обучаться новому и совершенствоваться в старом. Знанием Django тоже сложно удивить. Стек технологий ежедневно меняется и развивается. Недостаточно просто знать о наличии какого-нибудь инструмента. Важно понимать, как он работает и зачем нужен. Для этого нередко приходится погружаться в основы не относящиеся к программированию напрямую. А чтобы обучение было в удовольствие потребуется пытливый ум.

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

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

    Ну, и, конечно, надо уметь выстраивать коммуникацию с людьми и адаптироваться к разным обстоятельствам. Прошло время бородатых гениев, которые из подвала в одиночку хакали пентагон, писали Windows 3.11 и Facebook с нуля. Сейчас программист - это член команды. От коммуникативных навыков и гибкости зависит успех всей команды.

    В конце спроси себя: «Смогу ли я стать программистом»? Если твой ответ «Да, смогу», то ничто тебя не остановит.

    Повысить Понизить

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

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

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

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

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

    Повысить Понизить

    Для начала вам нужно понять, что считать профессией программиста. Программирование давно перестало быть уделом избранных, способных мыслить байт-кодами и в уме следить за аллоцированной памятью. Сегодня в мире есть много современных языков, синтаксис которых максимально близок к простому английскому. К примеру, User.find_by(name: "Вася").destroy в Ruby (on rails). Знания этих команд достаточно для того, чтобы писать небольшие сайты, блоги, интернет-магазины. Если вы хотите работать на этом уровне, то вам достаточно выбрать понравившийся динамический объектно-ориентированный язык (Ruby, Python) и пройти курс по нему, или прочитать книгу, их достаточно много для каждого языка. Также можно попробовать себя в фронтенд-разработке, выучить JavaScript а затем освоить фреймворки к нему.

    Если вы хотите писать более сложные системы, необходимы знания абстрактной логики, их можно получить изучая высшую математику в институте (в идеале дискретную, но, на самом деле, матанализ тоже весьма неплохо развивает мозги). Можно читать книги по дискретной математике и алгоритмам (Стивен Скиена «Алгоритмы. Руководство по разработке», Томас Кормен «Алгоритмы. Построение и анализ», Род Хаггарти «Дискретная математика для программистов», Дж. Андресон «Дискретная математика и комбинаторика») и просто практиковаться в программировании. Также очень полезно было бы выучить низкоуровневый язык, например С (Керниган, Ритчи «Язык программирования С») — для общего понимания принципов работы программ.

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

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

    Если говорить про простейшую разработку web сайтов, то тут не должно быть никаких сомнений, справится каждый. Если же вы хотите пойти дальше, но при этом считаете, что математика и логика это совсем не про вас, то можете попробовать игровые сайты для разработки алгоритмов:
    https://www.codingame.com/
    https://www.codewars.com/
    На них надо решать простейшие (и не очень) алгоритмические задачи на любом понравившемся вам языке программирования. Не могу сказать, что это очень полезно для обучения реальному программированию, но если вам понравятся эти игры, то вам точно понравится заниматься серьезной разработкой.

    Повысить Понизить

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

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

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

    Повысить Понизить

    Сегодня сложно найти профессию более перспективную, технологичную и финансово стабильную, чем работа программиста. При этом, даже несмотря на высокие зарплаты (в разы выше, чем «средняя по региону»), отрасль испытывает кадровый голод. Как говорил Адам Смит, «спрос рождает предложение» - но все не так просто.

    Кадровый голод на рынке уже не тот, что был десять лет назад. Сфера ИТ очень сильно повзрослела, пережила этап, когда на серьезные позиции брали эникейщиков. Перед будущими программистами стоят новые, сложные вызовы - спектр «первичных» задач этой профессии примитивизируется, а с развитием технологий, все чаще отдается на откуп искусственному интеллекту и автоматизации.

    Профессиональный «голод» обретает новые характеристики. Чтобы преуспеть, нужно владеть фундаментальной базой: качественным алгоритмическим фундаментом, сильной математикой, быть ответственным и готовым постоянно учиться. Если все это у вас есть – Google, Amazon, Facebook и Attack Killer готовы пригласить вас на собеседование прямо сейчас!

    Повысить Понизить

    Начну с того, что сейчас разработка ПО это огромная индустрия с широким диапазоном задач и требуемых для них скиллов, в которой задействованы десятки миллионов людей. Разнообразие компаний и проектов настолько велико, что можно свести ответ к простому - «Да, наверняка вы можете стать программистом».

    Но лучше переформулировать вопрос в «смогу ли я стать хорошим программистом?» На мой взгляд, хорошим программистом можно стать, если:
    1. Любите программирование и испытываете удовлетворение от самого процесса продумывания и написания кода.
    2. Вам нравятся качественные и удобные программные продукты, и вы хотите разрабатывать именно такие.
    3. Испытываете интерес к развитию IT, даже если не все тренды вам нравятся.
    4. Обладаете развитым критическим мышлением и способностями к анализу.
    5. Можете работать в состоянии потока и концентрироваться на одной задаче часами.
    6. Вам не все равно, чем вы занимаетесь и с какими людьми работаете.
    7. Готовы работать в команде для достижения общей цели, даже если не любите общаться с людьми.



  • 
    Top