Dima Bolonikov
июнь 2015.
9583

С чего начать начинающему программисту?

Ответить
Ответить
Комментировать
0
Подписаться
25
4 ответа
Поделиться
Ответ партнёра TheQuestion

Если программист начинает с азов, лучше подойти к вопросу комплексно.

Погрузиться в среду

Начните читать СМИ об IT, подпишитесь на блоги практикующих программистов, следите за сайтами крупных образовательных проектов для программистов. Например, на сайте Geekbrains.ru (совместный проект с Mail.ru Group) регулярно появляются полезные статьи и вебинары на темы, так или иначе касающиеся жизни разработчиков. Здесь же функционирует очень живой форум, где отвечают на любые вопросы от новичков, даже самые наивные.

Выбрать язык

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

Затем можно переходить на языки для взрослых. Начните с HTML: вы научитесь верстать сайты, освоите язык разметки web-страниц. Ещё один вариант для начинающего — Python. Это лаконичный, простой в освоении язык, который пригодится на разных этапах карьеры. Его плюсы: возможность быстрого перехода непосредственно к web-разработке, множество обучающих материалов, библиотек.

Пройти бесплатные курсы

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

Начать программировать

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

Выучить английский

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

3
Прокомментировать

Я сейчас являюсь senior python разработчиком, поэтому позволю себе просто описать свой путь.

  1. Настройте мозг. Вы должны познакомиться поближе с математикой и полюбить её. Для ускоренного знакомства подойдёт хотя бы конспект лекций Письменного и какое-нибудь лёгкое чтиво по дискретке. Читайте учебник по математике параллельно с обучением программированию.
  2. Подружитесь с программистом. Вам нужно найти человека, который будет с вами вместе учиться, либо станет наставником. В идеале — обоих. Появится кто-то, кто сможет оценить ваш код и алгоритмы.
  3. Выстрелите себе в ногу. Изучайте С или C++ и алгоритмы. Будет тяжело, местами больно, вы выстрелите себе в ногу несколько раз, но зато получите опыт и будете знать, как всё работает. Вы научитесь управлять памятью, писать эффективный код.
  4. Посмотрите по сторонам. Итак, вы умеете писать программы. Теперь можно смотреть на другие языки и технологии. Скорее всего, у вас уже сформировался вкус, и вы сможете выбрать то, что вам нравится. Теперь можно без страха погружаться в море информации.
  5. Пишите. Никогда не прекращайте писать код. Пишите как можно больше. И постоянно узнавайте что-то новое.
14
Прокомментировать

Для начала, важно убедиться, что вы действительно начинающий программист =)

Выберите язык программирования, с которым вы будете работать. Для первых опытов подойдет Python, для более сложных технических задач - C++, Java. Изучать языки программирования удобнее по многочисленным онлайн курсам и интерактивным платформам (https://stepic.org/explore/courses).

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

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

Школа и университет давно позади? Посмотрите на образовательные проекты, которые проводят в онлайне и оффлайне IT-компании. "Домашние" проекты хорошо получаются? Не забудьте опубликовать их на github — он станет существенной частью вашего резюме и копилкой ваших идей.

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

10

не надо унижать питон(

0
Ответить

Наоборот, активно рекомендую его

+1
Ответить
Прокомментировать

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

2
Прокомментировать
Ответить