Доброго времени суток, дамы и господа. Давайте знакомится! Зовут меня Артём и, в принципе, больше ничего интересного о себе сказать не могу. Решил я тут, знаете ли, научиться сайты делать. Но решил я это очень давно. Первые попытки были ещё в 2010 году. В 2013 мне удалось сделать свой первый статичный сайт, на который уже можно было смотреть почти без слёз (правда только одним глазом). Посвящен он был играм и игровым эмуляторам старых консолей. Денди, Сега и тому подобным вещам. Скажу сразу, некоторым он даже нравился, хоть и был сделан на бесплатном конструкторе wen.ru, который, на данный момент, уже давно приказал долго жить.
Как видите, прогресс мой был небыстрым. Для этого были ряд причин. Во-первых, сайт был полностью, от начала и до конца сделан на мобильном телефоне. То есть, всю html-разметку и css-код пришлось набирать вручную. Хорошо, что это был смартфон на Symbian, где была возможность копирования и вставки текста. Было там даже что-то похожее на полнофункциональный текстовый редактор. Тем не менее, вручную пришлось состряпать около 300 страниц. Естественно, очень быстро пришла необходимость улучшить свою производительность, приобщившись к более продвинутым инструментам, таким как php и mysql. Как думаете, каких успехов я достиг, пытаясь освоить эти технологии, стартовав в этом направлении более 10 лет назад? Томить не буду — никаких! Мне не удалось освоить программирование, для чего, как я сейчас представляю, были ряд причин.
Причины моих неудач в программировании
Причина первая — книги по веб-программированию никогда не объясняют основы этого самого программирования. Может сейчас такие есть, но в то время сыскать такую книгу было очень сложно. Да, они объясняли основы веб-программирования, но как работать с переменными, циклами, функциями или массивами — рассматривалось крайне поверхностно. Более того, если такие сведения и приводились, освоить их на должном уровне мешало, на удивление, полное отсутствие практических задач, которые так ожидаешь увидеть в конце каждой главы. А если задачи и встречались, то никогда не касались основ, а служили для тренеровки только тех моментов, которые связаны с самим веб-программированием, но не с основами программирования, как такового.
Понятное дело, никаких успехов я не добился. Начинал, бросал, и так по кругу, постоянно топчась на одном месте. Уже на много позже я открыл для себя книгу Дейтелов «Как программировать на С++». Тогда она казалась мне находкой. Теория есть, задачи есть, учишься, решаешь, набираешься опыта и так необходимого понимания. Но дальше решения нескольких десятков простых задач я так и не дошел. Много раз начинал сначала, решал практически все задачи начального уровня, что как бы намекало, что способность понимать всё это у меня есть. Но мой первоначальный запал довольно быстро сходил на нет.
Продолжалось всё это долгие годы. Начал — бросил, бросил — начал. Позже я научился строить теории, почему же всё так получается. Вернее почему не получается ничего. Корнем своих проблем я видел разные причины: врождённую неспособность к программированию; отсутствие реального интереса, а только надуманного; ощущение, что никогда в своих компетенциях не догонишь тех, кто занимается этим давно и успешно. Со временем теории мои усложнялись и становились многомернее. Я начал думать, что сильно распыляю своё внимание, что следует отказаться от изучения основ, а сразу броситься делать какой-нибудь проект, не понимая, что это за проект, каким он будет и для чего мне нужен. После я пришел к выводу, что я уже слишком стар и что для меня уже всё давно потеряно. А сейчас ещё появился новый тренд, — программирование с помощью ИИ. По идее, опытного программиста ИИ не заменит, но… Заменить новичка вполне сможет. А как стать опытным, если тебя никуда джуном не возьмут, ведь ты же зарплату потребуешь? А формошлёпить сейчас сможет даже самый захудалый GPT. В общем, неопределённости очень много.
Самая большая проблема в изучении программирования
Но и самая большая проблема, это ощущение того, что ты действительно можешь оказаться ни на что не способным. И тут есть один тонкий психологический момент. Если бросить всё, не дойдя до финала, всегда можно успокоить себя тем, что всё получилось бы, не будь ты такой ленивой задницей. А так, несмотря на явно имеющиеся способности, но по причине врождённой лени просто не смог довести дело до конца. И бросил всё не из-за того, что ты бестолковая чепуха, не способная завершить ни одиного проекта, серьёзнее похода за пивом в магазин. Тем более, что такие проекты я завершаю весьма успешно и, часто, с опережением графика. И вот сейчас я решил попробовать новый способ заставить себя изучить основы, поддав себе пинка с помощью внутренней мотивации. Буду изучать и всести об этом блог. И описывать в нем все трудности, с которыми пришлось столкнуться на этом пути. Не знаю, будет ли это кому интересно, но какая, в принципе, разница, если остатки самоуважения уже и так давным-давно потеряны? ))) В общем ставлю себе задачу. Изучить основы программировпния по книге Дейтелов «Как программировать на С++». Начнем всё с нуля и пойдем по нарастающей: переменные, условия, циклы, функции, ООП и так далее. Изучаю теорию, решаю задачи, привожу здесь свои решения, способы, которыми я до них дошел, если вообще дошел, описываю, когда надо, сколько волос со своей и без того лысой головы пришлось вырвать, пока решал ту или иную задачу. Моя цель — освоить весь учебник по максимуму, вернее то его подмножество, которое я своим умом смогу охватить. И обо всем этом рассказать вам.


Ну как-то так, а может и не так