Привет, новобранец! Если ты читаешь эту статью,то значит тебе точно говорили,что программирование - не твое. Мол программирование нельзя понять без знаний математики, или просто, в твоей родословной нет упоминаний программистов.
А что если я скажу,что все это чушь полнейшая? По своему опыту скажу,что программированию научится можно за месяц. За месяц,Карл!
Если бы я рассказывал это перед живой аудиторией,то лица были бы такие
Поведаю свою историю из личного опыта. Впервые я познакомился с программированием в колледже у нас был Visual Basic. Я не понимал даже что это такое. Плюс ко всему, все это добро было в СУБД Access.
Кстати, в самой СУБД на уровне перетаскивания объектов на формочку я был не плох. Даже поднялся до уровня олимпиады и обошел чувака,который весь интерфейс чисто накодил. Правда занял я тогда 12-е место из 20 по области,но зато был собой доволен,потому что тот самый кодер был с моего колледжа и старше на курс.
Программирование меня не особо привлекало. Это ведь язык общения,который нужно было учить,а мне было лень. Далее в моей жизни появился язык программирования С++,который я успешно пропустил мимо ушей, играя в Counter Strike 1.6. Поэтому я вообще в нем был нуль.Параллельно с С++ я познакомился с Delphi. К данному языку я был нейтрален, но и лабы у меня получалось выполнять. Кстати, диплом я написал на нем. Это было электронное пособие для учебного заведения.
Тогда я не понимал что такое функции и чем они отличаются от процедур. И да, у меня еще проблемы были с циклами и массивами. Вообщем-то программа состояла из конструкций if и встроенных объектов,которые уже содержали какие-либо действия по умолчанию.
Далее была армия и я все окончательно забыл. После армии я устроился в фирму-партнер 1С. Я был шокирован тем фактом,что язык программирования в программах 1С является русифицированным. Тогда я окончательно был расстроен,что вообще не секу в программировании + мне никто объяснять не хотел. Поэтому я просто устанавливал и обновлял программу + консультировал.
Однажды я загнался странной темой,чтобы познать что-то новое. Знакомые посоветовали курсы по разработке сайтов. Я согласился и начал изучение. Там были уроки по HTML, CSS, JS (базовый уровень),PHP(базовый уровень) и MySQL (Базовый уровень). Что касается HTML и CSS,то эти ребята мне прям на изи дались. JS и PHP снова были загадкой,потому что были пробелы еще с колледжа.
После курсов я пытался фрилансить и что-то получалось зарабатывать. Заказы были простенькие ,без крутых вещей на JS.
Я задался целью разобраться в javascript и php. Я проделывал каждую непонятную вещь по своим придуманным задачам. Пытался сделать что-то не типовое из типового. Например,есть задача при клике на кнопку что-то вывести в консоль, а я усложнял эту задачу,чтобы более глубоко понять логику. Например, вывести не в консоль, а на страницу и красиво оформить. Было трудно,но интересно. Это касается JS.
В PHP мне было трудно понять как вообще он работает и его возможности. Может я единственный такой уникум. В JS было все проще.
Спустя 2 года с момента окончания курсов, я устроился к небольшую студию создания сайтов. Да, я имел уже на тот момент понимание,что такое gulp, sass и node js (занесло так занесло). С PHP я все равно был еще на "вы". Мой директор крутой кодер на PHP. Собственно, здесь я и начал шарить уже в PHP и знакомится с Modx. За первый месяц реальной работы я получил колоссальный опыт и развеял шаблоны в голове, просто поговорив с человеком,который давно в этом во всем варится. Сейчас я более чем быстро все схватываю и развиваюсь по полной. Есть в голове крутые решения,которые я хочу реализовать. Сейчас я могу с большой уверенностью сказать,что могу разобраться в любой CMS или CMF,потому что базовые знания в программировании у меня имеются,а остальное - вопрос опыта.
Вы наверное скажите,что все это здорово,но где советы?
Да, пора поговорить о советах, но сначала для общего понимания. Что такое программирование? Это в первую очередь язык с помощью ,которого ты общаешься с компилятором. Компилятор - среда понимания и исполнения твоего кода. Компилятором может выступать браузер,как вариант,если мы рассматриваем веб разработку и в точности Javascript. PHP исполняется на сервере. Это субъективное мнение,дабы избежать бугурта.
А теперь советы:
- Всегда читай документацию и проговаривай ее в голове. Очень важно понимать,что ты хочешь использовать в своем коде. Если это какая-то функция,то пытайся логически объяснить как она работает и зачем нужна в контексте твоей задачи
- Дебаг, дебаг и еще раз дебаг. Дебаг - отладка кода. Я дебажу чуть ли не каждую строчку кода,чтобы отследить логическую последовательность кода и правильно ли все передается от переменных до переменных.
- Очень много гугли информации, ДАЖЕ самой глупой,если не понимаешь. Например, почему ошибка ";" .
- Сначала гугли,а потом спрашивай на форумах. Я очень мало задавал вопросов на форумах,потому что процентов 80% я находил в гугле или яндексе. Обычно вопросы задаются в сообществах,потому что человек в ступоре,но обычно пишут всякие лентяи.
- Решай задачи. Доминируй, властвуй и унижай (себя). Да задачи не всегда даются легко,особенно,когда логически не можешь ее решить.
- Логически пытайся решать задачи. Что это значит? Например, мы получаем результат по API и записываем в переменную, после разбираем JSON и выводим на экран. Пожалуйста, я уже проговорил решение задачи на словах и теперь осталось дело за малым.
- Пытайся на форумах решать задачи таких же новичков. Очень крутой опыт.
- Гори,но не сгорай! Обычно новички сгорают еще в начале,потому что трудно или более опытные программисты стебутся постоянно на форумах. Нужно быть кремнем и идти вперед. Все получится.
Все будет гуд!
Дорогой друг, программированию можно научится в любом возрасте и без знаний математики! Главное - желание и терпение. Все приходит с опытом и со временем. Когда я осознал,что могу все - это было прекрасное чувство. Все получится. Удачи!