Переход от нуля к разработчику героев
Я разработчик смарт-контрактов-самоучка.
В течение многих лет я совершал ошибки в своем подходе к обучению — и учился на них.
Считайте, что то, что вы собираетесь прочитать, имеет решающее значение для того, чтобы стать профессиональным разработчиком.
Люди говорят, что техническое сообщество поддерживает. По моему опыту, большинство профессиональных разработчиков оказывали мне холодный прием один на один.
Это избегают? Или отсутствие уважения к ученикам, которыми они когда-то были?
Интересно, откуда люди берут слова «поддерживающее техническое сообщество». Поддержали очень немногие.
Тем не менее, первое, что я сказал любому, кто хочет стать хорошим разработчиком, — это найти хорошего наставника. Если вы не можете найти такого, как я, не отчаивайтесь.
Вы все еще можете быть опытным программистом, следуя этим проверенным практическим методам.
Эти шаги основаны на моем опыте разработчика-самоучки и исследователя. Я объединил два подхода и получил семь шагов. Используйте их, чтобы стать профессиональным разработчиком-самоучкой.
Давайте углубимся.
1. Найдите хорошие учебные ресурсы
Это первое препятствие, которое вы должны преодолеть.
От этого во многом зависит ваш успех как разработчика-самоучки.
Хорошие учебные ресурсы — это кратчайший путь к цели. Они работают как чудо. Вы учитесь и становитесь программистом-самоучкой быстрее.
Как и многие другие самообучающиеся, я продолжаю сталкиваться с проблемой поиска хороших ресурсов. Но тебе повезло.
Найдите ссылки на хорошие учебные ресурсы на Reddit.
На Reddit есть отличное техническое сообщество, в котором есть ответы на вопросы, которые люди задавали в течение долгого времени. Некоторые из этих ответов ссылаются на отличные ресурсы. Многие из этих замечательных ресурсов бесплатны, а за некоторые вам, возможно, придется заплатить.
Возможно, вам не нужно задавать новый вопрос. Возможно, кто-то задавал тот же вопрос, что и вы, в прошлом.
Вот как вы можете найти отличные ресурсы на Reddit прямо из Google. Введите то, что вы ищете, в Google и напишите Reddit в качестве последнего слова. Например:
«Ресурсы о том, как стать разработчиком смарт-контрактов Reddit»
Еще кое-что. Если вы не согласны с ответами Reddit, которые вы проверили, настройте свой поиск. Например:
«Учебные ресурсы, чтобы стать разработчиком смарт-контрактов Reddit»
Прочитайте все ответы Reddit. Просмотрите ссылки в ответах одну за другой.
Есть также дерьмовые случайные ссылки, которые люди оставляют на Reddit. Не волнуйся. Когда вы увидите такую ссылку, ваше чутье подскажет вам. Люди пишут такие ссылки в Reddit, чтобы прорекламировать себя.
Люди знают StackOverflow как центр решения ошибок кода. Думайте о Reddit как о месте со ссылками на отличные ресурсы по программированию.
Вы только что выиграли золото.
2. Хорошо изучите основы
Представьте себе дом без хорошего фундамента.
Все, что вы будете делать как программист, во многом зависит от хорошего знания основ программирования.
Если вы работаете со статически типизированными языками программирования, такими как Java, C++, C или Solidity, вы должны знать такие вещи, как классы, переменные, циклы, массивы, списки, функции и так далее.
Не торопитесь, чтобы хорошо изучить основы любого языка, которым вы владеете.
3. Запишите концепции, которые вы, скорее всего, забудете
Это ошибка, которую я совершал неоднократно — у меня не было блокнота для записи важных и повторяющихся концепций.
С тех пор, как я начал использовать Solidity, мне всегда приходилось настраивать среду кодирования для каждого нового проекта. Вы запускаете разные установки в своей рабочей среде, а не в глобальном масштабе.
И были строки кода для установки некоторых пакетов, которые я редко помню. Это означает, что я должен выйти в интернет и снова найти строки.
Вы обязательно столкнетесь с некоторыми понятиями в программировании несколько раз. И вы также, вероятно, забудете их несколько раз, когда столкнетесь с ними.
Если есть вероятность, что вы забудете какую-то определенную концепцию, или вы продолжаете забывать, заведите специальную книгу или блокнот, куда вы сможете записывать эти концепции.
Это принесет вам чертовски много пользы и сэкономит вам кучу времени на устранение ошибок и исследования.
Еще одно преимущество заметок — это то, что вы записываете в мозг в долгосрочной перспективе.
4. Вспомните вместо того, чтобы перечитывать
Люди делают это, когда забывают концепцию программирования — возвращаются и перечитывают концепцию. В перечитывании нет ничего плохого.
Но сколько раз вы хотите перечитывать концепции программирования? Что, если я скажу вам, что есть лучший способ?
Вот лучший способ помочь концепциям остаться с вами — вспомнить.
Воспоминание — это размышление о концепции программирования, которую вы изучили. Как будто вы пишете концепцию в своей памяти навсегда.
Я помню, как использовал этот метод еще в школе. А теперь в программировании.
Найдите тихое место и используйте свой мозг, чтобы вспомнить строки кода, которые вы выучили. Да, ваш мозг может это сделать. Если не помните, проверьте код еще раз. Затем попытайтесь вспомнить.
Еще одно большое преимущество использования метода припоминания заключается в том, что он помогает вам ясно мыслить. Вы ясно видите вещи глазами своего мозга.
Если вы не знаете, мозг потрясающий.
5. Практикуйтесь, когда собираетесь забыть
Такие веб-сайты, как Codecademy и Web3schools, просят вас сразу же практиковать то, что вы узнали. Вы также не можете перепрыгнуть этот шаг. Вы должны сначала сделать это.
Вот минус. Немедленная практика дает вам только один результат:
Понимание.
Вы понимаете только то, что узнали. Период. Это не значит, что то, что вы поняли, останется в вашей памяти навсегда.
На самом деле, если вы отработаете одни и те же строки кода сразу пятьдесят раз, с вероятностью 80 % вам будет трудно запомнить одни и те же строки кода через месяц.
6. Читайте хорошо написанный код
Я прочитал два кода, написанных двумя разными разработчиками, но служащих одной и той же цели.
Первый был длинным, и его логическую последовательность трудно было проследить.
Второй был коротким и легким. Это тип кода, который вы читаете и заново влюбляетесь в программирование.
Читать коды. Затем сконцентрируйтесь на чтении кода, написанного хорошими разработчиками.
Чтение кодов поможет вам найти коды, написанные хорошими разработчиками.
Когда вы читаете коды, написанные хорошими разработчиками, вы думаете, как они. Вы не напишете тридцать строк кода вместо двенадцати.
Найдите коды в репозиториях GitHub. Он имеет более 300 миллионов репо.
Чтобы упростить поиск, перейдите в Google. Напишите Search GitHub в поле поиска. Нажмите «Поиск на GitHub». Это первый результат в Google.
Введите в поле поиска GitHub проект, который вы имеете в виду.
7. Создавайте проекты
Не попадайте в цикл обучения. Цикл обучения — это бесконечный цикл.
Вы смотрите бесчисленное количество уроков на YouTube. Купить курсы за курсами. Это не способ стать профессиональным разработчиком.
Начните создавать простые проекты с тем, что вы узнали. Затем создавайте реальные проекты. Клонирование Twitter или Facebook не является их частью. Я вижу в этом пустую трату времени.
Видите ли вы проблему, с которой люди сталкиваются каждый день, и вы можете решить ее с помощью кода? Ага, это проекты, которые вы должны построить. Это отличает вас.
Вы можете принять решение о создании собственной технологической стартап-компании. Или наймитесь работать на кого-то другого — основатели любят видеть оригинальность и креативность.
Еда на вынос
1. Найдите хорошие учебные ресурсы
2. Хорошо изучите основы
3. Запишите концепции, которые вы, скорее всего, забудете
4. Вспомните вместо того, чтобы перечитывать
5. Практикуйтесь, когда собираетесь забыть
6. Читайте хорошо написанный код
7. Создавайте проекты
Одна последняя вещь. Не будьте строги к себе, когда дела идут не так, как вам хочется. Делайте перерывы и будьте терпеливы.
Вы доберетесь до того, чего хотите, если не перестанете пытаться.
Дополнительные материалы на PlainEnglish.io. Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter, LinkedIn, YouTube и Discord . Заинтересованы в хакинге роста? Ознакомьтесь с разделом Схема.