Путешествие без диплома.
Мое детство
Первое знакомство с компьютером, которое я помню, когда мой брат играл в IGI.
Я провел свое детство, играя в покемонов на эмуляторе VBA. Я только умел открывать эмулятор и играть в него. Раньше я ждал, пока мой брат придет и извлечет заархивированный файл игры, потому что я думал, что для этого нужно иметь большой опыт работы с компьютерами.
Кодирование в первый раз
Впервые я занялся кодированием (не настоящими языками программирования) примерно в 6-м или 7-м классе школы. Нас учили пользоваться программой MS Logo Turtle. Вы только что дали простые команды для перемещения и создания линий.
Встреча с линуксом
В 9-м или 10-м классе один из моих одноклассников рассказал мне о Kali Linux и о том, как его можно использовать для взлома. В то время вышла Watch Dogs, и мне не терпелось попробовать эту штуку.
Я был сценаристом, просто копировал и вставлял команды из Интернета и чувствовал, что я Эйден Пирс(главный герой игры).
Однажды из любопытства я подумал, что означает Kali Linux. На нашем языке Kali означает что-то черное, но мне было интересно, что означает часть Linux.
Затем я погуглил и понял, что есть что-то под названием Ubuntu и что это дистрибутив Linux, такой же, как Kali Linux. Затем у меня было воспоминание о том, когда я был в 8-м классе:
Наш учитель информатики спросил нас, какую операционную систему мы используем, и там была одна девушка, которая сказала, что она использовала что-то под названием Ubuntu, которое она скачала из Интернета.
Когда я услышал, как она это сказала, я поднял кулак и сказал, что Windows — это лучшее.
на тот момент: Девушка: 1, я: 0
Я попробовал Ubuntu и сразу же установил ее в качестве основной операционной системы. С того дня я никогда не использовал Windows на своем ноутбуке.
Затем я несколько раз переключался между дистрибутивами, и один дистрибутив привлек мое внимание, Arch Linux. Я узнал большую часть того, что знаю о Linux, используя этот дистрибутив. Теперь это мой ежедневный водитель.
Затем я использовал Linux без какого-либо кодирования.
Когда я действительно начал учиться программировать
Во время выпускных экзаменов в 11-м классе я решил попробовать себя в программировании.
Я решил начать с Python, так как это был хороший язык для начала. Я скачал кучу PDF-файлов по изучению Python, но никогда их не читал.
Я начал смотреть учебные пособия на YouTube, и именно там я начал писать свои первые строки кода Python.
Как только я понял основные концепции Python, я начал думать о небольшом проекте, чтобы получить представление о структурах данных (списки, словари и т. д.).
Я подумал о создании приложения, которое бы сохраняло расположение предметов в моей комнате, поскольку раньше я забывал, куда кладу вещи, поэтому я начал его создавать.
Я построил его, он работал так, как я хотел, чтобы он работал. Я получил хорошее чувство выполненного долга делая это.
Мой первый настоящий проект
Как только я подумал, что хорошо разбираюсь в объектно-ориентированном программировании и Python, я решил создать реальный проект. Вы знаете, что-то, что кто-то назвал бы полезным.
Я был в доме моего друга, и его отец открыл академию. Они хотели создать программное обеспечение для управления обучением. Я услышал это и подумал, что это будет хороший проект для работы. Поэтому я спросил их, и мы договорились, что я попробую это сделать.
Вскоре я начал работать над этим проектом. Проект находится на GitHub. Это не очень полезно, но близко и дорого мне, потому что это проект, который, я считаю, научил меня большей части того, что я знаю о Python (и разработке программного обеспечения).
Я почти уверен, что я потратил целых полтора года на разработку этого программного обеспечения. Я знаю, теперь я могу построить его за месяц, но я учился, поэтому мне потребовалось так много времени, чтобы сделать это.
Вот самое интересное, на начальном этапе я думал о том, как я буду хранить данные на диске. Я думал о двоичных данных, травлении и т. д., но в конце концов увидел JSON и застрял на нем. Я знал, что существуют базы данных и прочее, но JSON с самого начала работал у меня хорошо, поэтому я подумал, зачем его менять.
Со временем данные, которые мне нужно было хранить, стали сложными, и я начал думать, не попробовать ли мне базы данных. Я так и сделал и остановился на SQLite, так как в Python была встроенная библиотека.
Я также вручную закодировал графический интерфейс, потому что думал, что это поможет мне лучше понять. Это был не очень хороший опыт, потому что теперь у нас действительно нет программного обеспечения, использующего собственные графические наборы инструментов, а вместо этого мы переключаемся на веб-приложения, но, тем не менее, это был хороший опыт.
В то время я думал, что это мой шедевр и чувствовал, что он настолько хорошо сделан.
Теперь я определенно думаю, что это не шедевр или что он хорошо сделан. Я заархивировал его по этим причинам, но это мой первый проект, поэтому я его выложил.
Моя первая стажировка
После того, как стали известны результаты моего 12-го класса, я был дома и решил не поступать в университет. Я очень серьезно относился к тому, чтобы стать разработчиком-самоучкой.
Мой любимый отец устроил мне стажировку в компании, в которой он работал. Я не работал ни над одним из их проектов, но вместо этого я узнал, что они использовали и прочее.
Поскольку это корпоративная компания, все это было JAVA.
Я создал простое веб-приложение на Java, которое мало что делало. Я сосредоточился только на бэкенде, так как меня не особо интересовал фронтенд.
Я показал это менеджеру, и он сказал
это хорошо, но пусть это выглядит профессионально.
так я придумал этот шедевр
к сожалению, тот, что ниже, не сделал это (поэтому он плачет)
Так что это было. Хотя я все это сделал, я совершенно не хотел писать код на Java. Проект состоял из спагетти-кода, и я действительно начал ненавидеть Java из-за отсутствия у меня опыта работы с ним, что звучит странно, поскольку я потратил 1–2 месяца на его создание.
После того, как я построил это, я начал работать над другими вещами. Я снова сосредоточился на Python.
Мой второй настоящий проект
Я начал чувствовать себя комфортно с базами данных, поэтому я посмотрел кое-что и наткнулся на временные таблицы/таблицы истории.
Я немедленно начал искать, поддерживает ли SQLite их, и понял (насколько мне известно), что нет. Поэтому я решил его развить.
Я тогда разработал этот проект. Я также изучил RegEx при разработке этого проекта, потому что решил использовать его в нем.
Мне было весело разрабатывать его, потому что это было нечто совершенно отличное от старого проекта Tuition Manager, к которому я привык.
Моя вторая стажировка
Это было в «Сотовом операторе», дочернем предприятии компании, в которой я проходил свою первую стажировку. Я смог попасть на интервью благодаря рекомендации моего отца.
Я назову это своей первой настоящей стажировкой, потому что именно здесь я работал над чем-то, что было настоящим проектом в компании.
Моим собеседником был менеджер проекта. Все прошло хорошо, и меня выбрали стажером. Я также написал блог о стажировке.
Мне сказали исследовать GSMA Mobile Connect. Опять же, Я написал об этом блог.
Мне пришлось работать с Java. Первые 2 дня разработки были не так уж и плохи. Я разбирался в Java.
Затем произошло нечто странное, мне стала нравиться Java. Я имею в виду, что мне действительно начала нравиться Java. Я ненавидел его, потому что я не очень хорошо знал, как кодировать в нем, но когда я действительно начал кодировать в нем, это было потрясающе.
Затем я перешел в режим полной разработки и каждый день выдавал кучу коммитов. Настолько, что однажды я так увлекся этим, что не заметил, как прошел целый день. Это было странно, обычно я засыпал около 9 вечера, но в тот день мне казалось, что прошло всего 2 или 3 часа, когда на самом деле прошел целый день. В тот день я был в теме.
Затем я закончил проект. Ну, не совсем закончили, но построили базу, которую можно было бы использовать позже.
Я бы сказал, что благодаря работе над проектом я очень освоился в Java всего за один месяц. У меня уже был опыт разработки программного обеспечения, так что смена языков в любом случае не занимает много времени.
Так что это был этап моей жизни, когда я начал учиться программировать до стажировки. Надеюсь, вам понравилось (или вы вдохновились этим :D).