Всем привет, меня зовут Артур, и мне 15 лет. С программированием я познакомился ещё в возрасте 12 лет, но начал изучать только с 14, потому что у меня в данный промежуток времени не было компьютера. Тогда я читал про программирование, и узнал о таком языке, как Python. «Хм, что за язык такой интересный?» — подумал я. Посмотрел пример программы «hello world» и был немного удивлен:
print("hello world")
Тогда я был знаком только с Си и думал, что он самый лёгкий из всех языков. Где точка с запятой, где int main? Решил попробовать. Искал хорошие учебники около двух дней. Наткнулся на Марка Лутца (эх, как же я пожалел об этом...), этот учебник был не для новичков, поэтому половину прочитанного из книги я просто не понимал, но основы языка по первой части, все же, дошли до меня, хотя я даже не дошел до классов. Я всегда записывал важную информацию в тетрадь.
В конце учебника я вообще перестал понимать, о чём идёт речь и забросил обучение.
Нашел другой прекрасный учебник, называется «Изучаем Python. Программирование игр, визуализация данных, веб-приложения». В этом учебнике после Лутца я начал понимать всё. Там я выучил основы, понял принципы ООП, но когда пришло время практики (мне нужно было создать сайт по инструкции на Django), я понял, что ещё многое нужно подучить, так как результат меня не очень порадовал, и в это время я нашел учебник от Head First, который был тоже достаточно хорош, нестандартной подачи информации.
Я дошел до темы базы данных, научился писать сайты на Flask. После решил показать своим одноклассникам свои умения (они не верили тому, что я начинающий программист), на что получил ответы такого типа:
«Python? Ха-ха-ха, его все знают!», «Ты реально ничего не умеешь!», «Какой же ты программист, ты даже не умеешь ддосить и взламывать сайты».
Вот с этого все и началось…
Меня их слова, на тот момент, очень сильно разозлили, так как программист не должен уметь взламывать сайты, его работа — писать программы. Но тогда я задумался: «А почему я пишу именно на Python? Есть же другие языки программирования, а вдруг есть лучше?»,
а затем: «А может лучше научится создавать сайты (фронтенд)?». Тогда я начал с учебника Head First, про HTML, CSS. Я прочитал весь учебник, но пропускал некоторые темы, так как эта информация, в данное время, устаревшая и неактуальная. Далее я прошел первый бесплатный курс, так как возможности платить за все курсы у меня нет. Поэтому, я начал искать сливы курсов…
Таким образом, я прошел курс по верстке, и сверстал один сайт с достаточно классной анимацией. Но это занятие не принесло мне никакого удовольствия, для меня верстать страницы на чистом HTML и CSS — сущий ад. Стало грустно, ведь я столько времени потратил на изучение… Вдруг, я наткнулся на С# — серьезный язык программирования, на котором можно писать программы под Windows, сайты и многое другое. Меня он очень сильно заинтересовал даже простым синтаксисом.
Я скачал один курс, начал его проходить, познакомился с одним человеком в соц.сети. Оказалось, мы живём с ним в одном городе, ему 21 год, и он пишет на С#. Мы с часто с ним советовались насчёт моего выбора в программировании: я уже выучил LINQ, ООП, начал делать десктопные приложения… Но вдруг, я прочитал про Unity. Узнал, что его основной язык — это C#, и я подумал: «Ого, это же так круто! Почему бы не рассмотреть подробнее?». Я забросил мой прошлый курс, так и не закончив его, и, нашел курс по созданию игр на Unity. Изучение было очень сложным, я терялся в 3D пространстве, но спустя неделю уже начал разрабатывать простую игрушку. Так, я занимался Unity около месяца, но когда дошел до UI, эта тема показалась мне очень скучной. У меня было много ошибок, которые я пытался исправить сутками. После, Unity без причины перестала запускаться, и мой проект удалился. Я пришел в ярость и удалил его. Затем, подумал: «Я уже попробовал несколько сфер, но ни одна мне не понравилась. Почему?».
И тогда я решил попробовать программирование под Android, нашел курс (в котором были основы Java, а после — создание приложений). Прошел почти весь курс, но в изучении появились проблемы. Именно на тот момент я понял, что уже не могу контролировать свои интересы. У меня быстро пропадал интерес к одной сфере и также быстро появлялся новый. После программирования под Android, я уже перепробовал и «Ruby», и «Go», и «Flutter». Затем я просто на просто забросил всё изучение.
Я заметил, что в мое поведение поменялось, многое изменилось. Меня начали раздражать малейшие детали, которые находились в кривом положении. В моем доме все стояло по своим местам, все было идеально, по полочкам, в компьютере все точно по пикселям. А если что-то хоть немного сдвинется, я начинал злиться до тряски и не мог успокоиться, пока каждый предмет не будет находиться в идеально ровном положении. Я замкнулся в себе, появились проблемы с формулировкой речи, мое настроение менялось чуть ли не каждый час.
На протяжении этого времени мысли были только о программировании, день изо дня я решал, какой же язык и какую сферу мне выбрать, при этом каждый день мои интересы менялись по нескольку раз, но за компьютер я так и не садился, потому что хотел найти язык, который будет устраивать меня по всем параметрам, и только тогда сесть за изучение. Ближе к сентябрю эти проблемы только усилились, я продолжал думать на выбором сферы. Вчера утром я хотел разрабатывать на С#, к вечеру выбрал Flutter, пообещал себе, что это будет окончательный выбор, но сегодня утром я сильно захотел разрабатывать фронтенд, а сейчас захотел написать обо всем этом на Хабре, надеясь, что мне кто нибудь даст совет и поможет…
4urbanoff
Терпение мой друг, вы на правильном пути!
Tiriet
а в чем правильность-то? чувак перебирает инструменты, совершенно не понимая задачи, которую хочет этими инструментами решать. Мучительный выбор между сверлом и рубанком- что же из них выбрать? линейное движение или вращение? идеально плоское лезвие или сходящиеся под углом грани? ручная работа или электродвигатель? Так и до дурки не далеко.
ТСу- задачу переформулируй- вместо «писать на шарпе» на «написать свою СУБД», и пиши «СУБД» (можно на шарпе). В конце концов- не так давно бытовало мнение, что программирование- это «алгоритмы + структуры данных», а не «языки и фреймворки».
4urbanoff
Порой человека нужно просто подбодрить. Он учит сам, с поверхности, как видит, не подозревая, что правильнее из глубины. Он понял, что что-то не так, и к взрослым дядькам за советом пришел, рассказал как есть, а взрослые дядьки что? Статью и карму в минус загнали? Мотивация и желание у пацана сейчас наверно зашкаливают.