В юном возрасте я обнаружил в себе любовь к программированию и с тех пор стараюсь учиться как можно большему. Я закончил Гарвардский курс CS50 в 14 лет, вот как я это сделал, и почему вы тоже должны это сделать.
Меня зовут Брэкстон Хаджинс. Я 14-летний технический энтузиаст со страстью к программированию. Я начал писать код в 8 лет, когда хотел создать свой собственный веб-сайт, но мне не нравились такие веб-сайты, как Wix, которые не позволяли мне в значительной степени контролировать функциональность моего сайта.
В тот день после школы я пошел домой и погуглил как кодировать веб-сайт. Мне были показаны некоторые общие результаты, такие как изучить HTML, CSS и JavaScript, но в old, я понятия не имел, что означают эти, казалось бы, случайные буквы и слова, поэтому я решил посмотреть учебник на YouTube. Вероятно, я набрал что-то похожее на Как мне программировать в строке поиска YouTube, и меня встретило руководство Как кодировать для начинающих. Я уже делал Scratch раньше, насколько это может быть сложно? Я и не подозревал, что собирался начать путешествие всей жизни.
Я взволнованно следовал в точности шагам, описанным в руководстве, и к концу у меня была программа на Python, которая могла отображать на черном экране белыми буквами «Привет, мир!» Я был взволнован этими результатами, но, по общему признанию, также немного разочарован. Я потратил все это время на изучение и изучение этого руководства, но я все еще даже не знал, что такое Python, и, конечно же, я не приблизился к работающему веб-сайту.
В течение следующих нескольких лет я просмотрел бесчисленное количество руководств на YouTube и создал множество крутых проектов. Я сделал игру Flappy Bird с работающим ИИ, множеством веб-сайтов и другими крутыми проектами. Но когда у меня появилась собственная идея, все, что я мог сделать, это поискать уроки на YouTube, и если их не было, мне не повезло. У меня были все эти проекты, но не было реальных знаний по темам, которые я хотел изучить.

Однажды я сидел у себя в спальне и смотрел короткометражки на YouTube, когда увидел видео, в котором рекомендовалось CS50x, гарвардский вводный курс по компьютерным наукам. Я был заинтригован, когда услышал, что онлайн-курс полностью бесплатный и к нему прилагается бесплатный сертификат участника. Я взволнованно пошел в Google и поискал CS50, и это было там. Я нажал «зарегистрироваться» и на следующий день отправился в школу, хвастаясь перед друзьями, что скоро стану выпускником Гарвардского университета компьютерных наук. Будучи первокурсниками старшей школы, их мало заботили мои усилия, но я не собирался позволять этому остановить меня. Я был готов учиться.
В тот день, когда я пришел домой, я сел за свой компьютер и начал лекцию 1. Я был потрясен, узнав, что мы собираемся начать программировать в Scratch. "Царапать?" Я подумал про себя: «Может быть, это будет проще, чем я думал». Я был неправ.
После того, как я закончил мой проект Scratch, я начал лекцию 2. Когда я услышал, как профессор Дэвид Малан сказал, что мы собираемся кодировать на C, я был шокирован. Я слышал о C раньше, но не мог поверить, что мы начинаем с такого страшного и дружественного для новичков языка. После первой лекции я потратил около часа на поставленную задачу и закончил ее. Я отправил его и получил 100% от Submit50, автоматизированной программы оценивания CS50. Я был в восторге. Я сбежал вниз, чтобы рассказать родителям о своей первой гарвардской пятерке.

В течение следующих нескольких недель я написал один из лучших (и худших) кодов, которые я когда-либо писал, но я делал одну вещь, которую не делал во всех учебниках на YouTube, которые смотрел. Я изучал. Я наконец-то вырвался из «туториального ада», феномена, когда вы смотрите бесконечные туториалы и выполняете бесконечные проекты, ничему не учась, а просто копируете строчку за строчкой то, что напечатал создатель туториала. На самом деле я изучал принципы, которым меня учили, и мог применять их к наборам задач. Конечно, некоторые наборы задач были очень сложными, и иногда мне даже приходилось делать меньшую версию, но все это того стоило для финального проекта.
Мой последний проект назывался CompCube. Когда я учился в средней школе, у меня был класс под названием «Введение в информатику», где мы должны были изучить основы компьютеров и кодирования. Мы выполнили пару заданий, связанных с компьютерами, но большинству учеников в этом классе было наплевать на компьютеры и то, как они работают. Мой учитель, заметив это, решил, что мы будем изучать что-то, что поможет решать наши задачи в увлекательной игровой форме, — кубики Рубика. Мне потребовалось около 4 дней, чтобы научиться собирать куб, но после этого я был выключен. Я был самым быстрым в классе и смог решить головоломку менее чем за 20 секунд.
У меня появилась страсть к сборке кубика Рубика как можно быстрее, известная как «спидкубинг». Я всегда хотел соревноваться с другими, но люди в моей школе не находили это таким забавным, как я, и никогда не хотели соревноваться.
Когда дело дошло до моей окончательной идеи проекта, я был в тупике. Я понятия не имел, что я хотел сделать или как я собирался это сделать, но потом у меня появилась идея. Я бы создал веб-сайт, который позволил бы пользователям соревноваться друг с другом в Интернете, создавая свои собственные соревнования, которыми они могли бы поделиться со своими друзьями.
Я использовал знания, полученные в CS50, для создания этого проекта с использованием бэкэнда flask и внешнего интерфейса, состоящего из HTML, CSS и небольшого количества JavaScript. Если вы хотите просмотреть исходный код и узнать больше о моем финальном проекте, вот он. Я бы хотел разместить свой веб-сайт для всех, но сейчас у меня нет денег на его развертывание.
Я завершил свой последний проект на 100%. На прохождение всего курса у меня ушло около 6 недель, и я достиг своей цели — завершить CS50 до того, как мне исполнилось 15 лет.

Итак, в заключение, если у вас есть страсть к технологиям и обучению, я на 100% рекомендую Harvard CS50. Теперь у меня гораздо больше знаний и возможностей для создания собственных веб-сайтов и других программ, а также лучшее понимание C и Python. Будет трудно, но не сдавайтесь и продолжайте учиться.