Найти тему

Через тернии к звёздам

Дорогу осилит идущий
Дорогу осилит идущий

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

Как сказал один очень хороший человек:" Программирование - это не творчество, но ремесло". Потому умение набивается через руку, через многократное повторение и понимание того, что ты повторяешься.
Можно прочесть сотни книг, изучить множество различных теорий, доскольнально знать структуру данных, но пока не начнешь практиковаться грош цена таким знаниям.
Повторять и практиковать надо информацию любого уровня. Даже если Вам кажется это мелочью, даже если эта информация незначительна в глобальном плане, ее все равно надо тренировать. Хотите пример? У меня он для Вас есть.

А вот и сама книга. Рекомендую если не имеете понятия что такое алгоритмы. Книга для совсем начинающих
А вот и сама книга. Рекомендую если не имеете понятия что такое алгоритмы. Книга для совсем начинающих

Есть прекрасная книга "Грокаем алгоритмы", где автор максимально простым языком рассказывает об алгоритмах, их сложности, как считать сложность и многое многое другое. Книга настолько простая, что ее поймет даже младенец. В конце каждой главы есть 4-5 заданий для практики. Но так как книга написана простым языком и ты все понимаешь влет, то я подумал:" А зачем мне эта практика если я весь из себя такой умный и понимаю все и сразу?". Я изучил книгу, самые сложные алгоритмы были мне нипочем. Я был мастером их построения.

Но через месяц я ничего не помнил.

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

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

Практика - это важно. Но ставить надо себе посильные задачи. Построить с нуля свою ОС (Операционная Система) задача благородная, но бессмысленная, создавать с нуля свой Skyrim - просто глупо. У Вас нет знаний для реализации поставленной задачи.
Себя я ограничиваю в этом плане локальными маленькими задачами. Хочу программу, которая может открывать картинки? Простая задача? Наверняка. Пусть теперь я могу менять размер изображение, а оно растягивается или сужается под заданные параметры. Затем я хочу обрезать изображение. Тоже довольно реалистично выполнить. А может я хочу кисточку, которой могу раскрашивать свою картинку?А может еще кисточка может менять свой размер? А теперь нужна кнопка отменить действие. Может еще реализовать несколько слоев, чтобы работа на переднем слое не затрагивала задний слой?
Вот так потихоньку можно двигаться от простейшей задачи открытия картинок, до программы поверх которой надстроено множество инструментов. Начало и конец кажутся невыполнимы на текущих знаниях, но дорогу осилит идущий.

Я не считаю ваши идеи глупыми или нереалистичными. Нет, фантазии это хорошо, помогает мозгу не застаиваться. Записывайте свои идеи на бумагу, в файл, куда-нибудь. И когда у вас будет больше знаний вернитесь к ней и спросите себя:" Могу ли я реализовать теперь это? Посильная ли это задача для одного человека".

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

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

Сегодня в комментариях предлагаю обсудить какие у Вас были глобальные задачи в начале пути и что Вы потом с этим сделали?
Начну с себя. Мне всегда хотелось создать свою идеальную игру, которая будет интересна мне и людям, которым я ее покажу. Хотелось признания. Но моих знаний в построение игровых механик, визуала, 2D и 3D анимаций недостаточно. Если еще механики и игровой мир я построить могу, то вот "картинка" для меня до сих пор недоступна. Возможно, когда у меня будет больше времени я смогу реализовать свою фантазию. А пока я вижу кучу пробелов, которые надо заполнить качественной информацией