Тяжелая работа - как я стал инженером-программистом
Меня часто спрашивают о том, как я могу быть таким, какой я есть сейчас.
«Как ты мог так легко научиться программированию?»
«Как ты мог так хорошо программировать?»
«Как вы могли понять такую проблему?»
«Почему ты так хорошо делаешь то и это?»
И тому подобное.
В большинстве случаев я бы сказал «продолжайте учиться». Да, это правда.
Мой путь до разработки программного обеспечения
Мне повезло, что у меня есть семья, которая меня поддерживает. У меня есть брат, который разрешил мне прикоснуться к своему компьютеру и поиграть с ним. Это были старые добрые времена Windows 98.
Я играл со заставкой (помните ту заставку с трубкой?), Рисовал красками или играл в игры.
Потом был крутой фильм про хакера. Не то чтобы я что-то разбирался в хакерских атаках, но выглядит круто. Итак, с выключенным компьютером я представляю себя хакером. Нажатие этой клавиатуры случайным образом.
Потом мой брат установил Windows XP. Хотя я не понимаю разницы между XP и 98. Я вспомнил, как играл в Rockman / Megaman.
Потом мой брат переехал в другой город изучать дизайн. Вернувшись домой, он принес с собой книгу, это была Macromedia Flash Tutorial.
Мне было 9 лет, и в детстве я заинтриговал эти яркие анимации. Я научился создавать движущиеся сферы, викторины (помните Парампа?) И т. Д.
Для меня это совершенно новый мир, все кажется крутым, пока я не столкнулся с ActionScript. Не знаю, что это было, зачем мне это писать. Я даже не понимаю смысла написанного мной сценария.
Потом брат принес еще одну книгу о 3DS Max. Я изучил 3D-моделирование и рендеринг. Я попытался отрендерить пример дракона из 3DS Max. Это был старый ПК без графической карты, на рендеринг ушел час. Только для того, чтобы обнаружить, что я не знаю, как указать результат рендеринга.
Мой отец был музыкантом, мой брат тоже. Я научился играть на гитаре, клавишных и барабанах. В тот день я представляю, что стану музыкантом и стану знаменитым. Никогда не думал, что буду инженером-программистом.
Я написал несколько песен, собрал группу со своими школьными друзьями. Мы выступали на местном концерте, здорово быть знаменитым.
Пауза
Музыкальная жизнь и студенческая жизнь - не лучшее сочетание для меня. Я чувствую, что у меня стало хуже в учебе. У меня проблемы с математикой, и это был мой последний год в средней школе.
Я не помню точно, как, кто, что и когда. Но я знаю, что мне нужно было пойти в интернет-кафе и набрать «Virtual Basic».
Да, «виртуальный». Я благодарен Google за исправление меня на «Visual Basic». Не помню как, но чувствую, что мне нужно учиться программированию. Особенно, когда у меня были проблемы с уроком математики. Я знал, что программирование может помочь мне решить эту домашнюю работу по математике еще быстрее.
В тот день я приостановил свою жизнь как музыкант и студент. Я пойду в школу, буду учиться всему, что могу. Когда я возвращался домой, я собирал вещи и ехал на велосипеде в ближайшее интернет-кафе. Я провожу день за чтением руководств по программированию. Я помню, что это был сайт https://www.vbtutor.net/vbtutor.html.
Я потратил большую часть своего первого времени на изучение программирования, чтобы разработать решение для моей домашней работы по математике. Это была простая программа для решения алгебры, вычисления площади, объема и т. Д.
Трудный путь к разработке программного обеспечения
У меня нет сильного математического образования, я вообще ничего не знаю о программировании. Мой брат - дизайнер, мой отец - музыкант. В моей семье нет никого, кто мог бы дать мне представление о программировании.
Я живу в изолированной деревне. Дома нет интернета, интернет-кафе находится в 20 минутах езды на моем велосипеде. У меня нет друзей, которые могли бы мне помочь в этом вопросе.
Я знал, что это будет сложно, но ни на секунду не сомневался, что не смогу этого сделать. Я знаю, что могу, я молился, что смогу, я надеюсь, что смогу.
С того дня. Я ходил в интернет-кафе, скачивал несколько HTML-страниц с обучающих сайтов и практиковался дома. При скорости интернета около 35–75 кбит / с мне потребовалось много часов, чтобы загрузить программное обеспечение для разработки, такое как Visual Studio.
Я бы потерпел неудачу, были бы сообщения об ошибках, которых я не понимаю. Отсутствие интернета дома означает, что я должен это исправить в одиночку или дождаться завтрашнего дня, чтобы поискать информацию в Интернете.
Иногда я могу это исправить, иногда мне нужно ждать завтра. Я провел так много дней, читая уроки. Я тренировался так много дней.
Но ничто не может сравниться с ощущением выполнения моей программы. Каждая кнопка нажимается, каждое предупреждающее сообщение отображается, это меня радует.
Я столкнулся с объектно-ориентированным программированием. Это сбивало с толку. Я записался на вечерний урок программирования. Только обнаружил, что в классе преподают основы программирования. Типа, как если бы за высказывания, за высказывания и что-то в этом роде.
К счастью, преподаватель порекомендовал мне пойти в среднюю профессиональную школу. Школа славится хорошим классом программной инженерии. Поэтому я решил поехать туда.
Я подал заявку и меня приняли. Несмотря на то, что школа уже научила меня знаниям, связанным с программной инженерией, на уроках. Я все еще не могу перестать учиться в своем собственном темпе. Так что после обеда я все еще читал уроки. Провел ночь, тренируя свои навыки программирования.
В конце концов я понимаю, что такое ООП. Я узнал, как работает фреймворк, как работает такая библиотека, как работает часть моего кода. По возможности я избегаю фреймворков и библиотек. Не потому, что я их ненавижу, а потому, что мне было страшно, если бы я находился в среде без Интернета, такой как мой родной город. Что я мог сделать?
Эти опасения постепенно утихают, я переехал в город с лучшим доступом в Интернет. Я научился использовать определенные фреймворки, чтобы ускорить свою работу.
Я не родился программистом, никто не родился. Я не потратил 30 минут на чтение руководств и сразу понял. Я потратил годы на обучение и практику. Это не происходит в одночасье.
Так что для любого программиста, который чувствует, что не может этого сделать. ВЫ МОЖЕТЕ. Процесс обучения - это самый важный опыт, который вы усвоите. Ваша неудача так же важна, как и ваш успех. Продолжайте учиться, продолжайте практиковаться.
Это применимо ко всему, не только к разработке программного обеспечения. Вы можете добиться успеха благодаря своему упорному труду, обучению и тренировкам. Неважно, увлечены вы или нет. Страстные люди без тяжелого труда мало что сделают. Страстные люди много работают, они просто делают это с улыбкой на лице.
Я могу быть тем, кем являюсь сейчас, благодаря своему упорному труду.
Или это было?
Был бы я инженером-программистом, если бы мой брат не решил научить меня Windows 98?
Был бы я инженером-программистом, если бы моя семья не купила нам компьютер?
Был бы я инженером-программистом, если бы мой брат не решил купить мне книгу Macromedia Flash и 3DS Max?
Был бы я инженером-программистом, если бы мой преподаватель не рекомендовал меня учиться в этом профессионально-техническом училище?
Был бы я инженером-программистом, если бы моя семья не решила поддержать меня в профессионально-техническом училище?
Стал бы я программистом, если бы один из моих коллег не познакомил меня с лучшей компанией?
Был бы я тем, кем я являюсь сейчас, если бы здесь не было моего брата, семьи, друзей и партнера, чтобы поддержать меня?
Иногда я интересуюсь. Я мог делать добро тяжелым трудом. Но я бы никогда не добился успеха без моей семьи, друзей и партнера. Вещи, которые мы считаем само собой разумеющимися, но наиболее значимыми в нашей жизни.
Я могу быть тем, кем я являюсь сейчас, благодаря моему Богу, семье, друзьям, партнеру и тяжелой работе, которая будет легкой. Из-за них.
Так что спасибо тебе. Всем вам.