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

Андрей Степанов, руководитель отдела интеграционных решений компании «Синимекс»:

Вопрос достаточно сложный. Нельзя выбирать между теорией и практикой, должна быть гармония. Нужно учить синтаксис и понимать алгоритмы и основы. При этом без практики эти знания не имеют ценности. Нужно чередовать — прочитали некоторую часть, затем опробовали на практике. При этом, на мой взгляд, совсем не обязательно покупать платные подписки на курсы. Очень много материалов есть в открытом доступе. Большое количество интересных практических задач можно получить, задав в Google вопрос «олимпиадные задачи по программированию». На них вам придётся поискать и почитать теорию про алгоритмы, их сложность, структуры данных и прочее. При этом они дают возможность писать свой код, и потом при разборе увидеть свои ошибки и варианты решения из best practice.
Как только почувствовали уверенность — нужно браться за боевые задачи, чтобы увидеть реальный мир и реальные проблемы. Зачастую в учебнике и обучающих задачах многие сложные и интересные практические моменты пощупать не получится. Начните писать свой проект на GitHub. Ещё очень важный момент: ваш шанс на успех сильно повысит наличие ментора — более опытного друга/коллеги/наставника, который может помочь, если у вас «затык», что-то объяснить, проверить результат вашей работы и дать правильный вектор вашему развитию. Никогда не останавливайтесь на достигнутом. Удачи.

Подробности в публикации tproger.ru