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

Один из методов, который я добросовестно использовал для поддержания творческого потока, — это периодический пересмотр основ и анализ простых задач. Хакатоны — это еще один способ, но они могут быть относительно длинными, поэтому я имею в виду больше 101 задачу по информатике. Они часто оказываются в классе проблем на собеседовании, потому что затрагивают некоторые фундаментальные практики и демонстрируют вашу (отсутствие) дисциплинированность. Кто-нибудь из ФиззБазз?

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

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

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

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