Многие начинающие разработчики получают совет: «продолжать делать проекты», чтобы продолжить свое развитие в программировании. Для начинающего разработчика доступно множество различных готовых проектов с данными и предлагаемыми проектами. Есть несколько примеров проектов, использующих титанический набор данных, просто для примера. Эти проекты полезны, но я обнаружил некоторые проблемы с этим подходом.

Обучение в контролируемой среде

Я завершил несколько разных проектов, которые можно охарактеризовать как «контролируемые». Здесь действительно нет возможности потерпеть неудачу, вы получаете все, что вам нужно. Иногда вы даже получаете блокнот Jupyter для работы. Это здорово, если вам нужно научиться использовать новый пакет или метод удобным для новичков способом.

Однако у меня есть проблема с этой контролируемой средой. В этих проектах много «потерянных знаний». Конечно, вы можете написать 15–20 строк кода, и особое внимание уделяется коду, который вы изучаете. Но есть много пропущенного обучения. 15–20 строк кода пропускают 50–70 строк кода, которые работают в фоновом режиме, и этот код очень важен.

Настройка важна

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

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

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

Теперь, когда дело доходит до идей для проектов, пусть ваш собственный интерес будет вашим руководством. Гораздо легче оставаться устойчивым, пытаясь исправить ошибку, когда она находится в проекте, касающемся чего-то, что вас действительно интересует. Вы любите спорт? Создайте предиктор игры. Любите делать ставки на криптовалюту? Создайте парсер, который сканирует твиттер в поисках новостей о биткойнах.

Узнайте, где найти информацию

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

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

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

Выводы

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