Как стать программистом с нуля самостоятельно

Как стать программистом с нуля самостоятельно

Coding


С чего начать учится программированию с нуля «чайнику»?

В этой статье я постарался подробно разобрать, можно ли стать программистом с нуля самостоятельно и какие варианты есть для того, чтобы самому изучить программирование начать зарабатывать на этом.

На дворе 2020 год, и я решил обновить одну из лучших отзывам читателей статью для тех, кто изучает программирование самостоятельно. Теперь в ней есть как советы для стартующих совсем с нуля, так и обновлённая информация. И всё бесплатно :)

Постарался дать самый лучший — на мой взгляд — путь. Предупреждаю — он не из легких! Дальнейшее прочтение может стоить вам многих часов интересных занятий — ведь стать можно только через программирование! :)


Скажу сразу — если вы решите изучать программирование только самостоятельно, не вкладывая денег — придется потратить больше времени. Много времени. Чтобы помочь его сэкономить, и написана эта статья.

Рассчитывайте на освоение новой специальности минимум через год, если изучаете программирование параллельно с другой работой.


С чего начать изучение программирования

В этой статье собраны лучше практики, исходя из моего опыта, если вы хотите самостоятельно освоить программирование.

Но с чего начать самым-самым начинающим?

Начните со Scratch —  https://scratch.mit.edu/

Освойте простые алгоритмы, сделайте несколько программ для практики. Если понравится — переходите дальше. Чем сложнее будет логика программы, тем лучше для вас. Сейчас важно познакомиться с такими вещами как переменные, циклы и инструкции. Но получившаяся программа должна быть рабочей.

Вы можете использовать последнюю версию Scratch 3, или  https://scratch.mit.edu/download/scratch2 — не имеет значения. 

Если нужно, не бойтесь использовать Google & Youtube, чтобы разобраться, что к чему. Затем двигайтесь далее.


Каким программистом стать?

Первоначально нужно решить, какое направление программирования вас интересует. Если речь идет о изучении разработки с нуля и вы хотите начать скоро зарабатывать на этом, то на мой взгляд варианта два: разработка для мобильных устройств или веб-разработка.

Лучший выбор в такой ситуации — на мой взгляд — начать изучать веб-разработку. Здесь ниже порог входа для новичков и есть возможность раньше начать выполнять несложные заказы.

Поэтому дальше я буду рассказывать о том, как самостоятельно изучить веб-разработку и начать программировать под веб.


Как самостоятельно стать программистом с нуля

Дальнейшие материалы для тех, кто уже определился и имеет базовое понимание алгоритмов, переменных и инструкций.

Итак, поехали! Если бы сейчас я начинал с нуля изучать веб-разработку самостоятельно (понимая, что без вложения денег это более долгий путь), то сам себе я бы порекомендовал такой путь:


1. Разобраться в HTML и CSS

Хороший курс для базового освоения HTML и CSS: https://learn.shayhowe.com/html-css/ (English) или https://webref.ru/layout/learn-html-css (перевод).

По возможности я рекомендую все материалы читать на английском — он 100% понадобится вам в работе программистом.

После этого стоит посмотреть на возможности Bootstrap, который стал стандартом де-факто для ускоренной разработки веб-приложений: http://getbootstrap.com/

Этого будет достаточно для следующих шагов.

Возможно на этом этапе вы захотите остановиться и изучить CSS подробнее. Это даст вам возможность работать верстальщиком — человеком, который делает из дизайна статическую HTML страницу, после чего программист ее оживляет, реализуя логику проекта.

На этом тоже можно зарабатывать — как на фрилансе, так и работая в ИТ-компании, которая специализируется на веб-разработке.

Но раз мы решили стать программистом — двигаемся дальше!


Познакомиться с jQuery

Для этого я рекомендую книгу «jQuery — учебник для начинающих»:

http://anton.shevchuk.name/jquery-book/

Если понравилось — можно продолжить разбираться с frontend и начать изучать Javascript.

Если следом пойдет https://angularjs.org/ или http://backbonejs.org/ — то это путь во фронт-енд разработку. Хорошая специальность, тем более, что такие знания пригодятся любому программисту, который выбрал веб-разработку.

Мой совет — пока остановиться на jQuery и двигаться дальше.


Освоить серверный язык программирования

Тут выбор большой. Самые перспективные языки программирования — Ruby, Java, Python, Node.JS (Javascript для сервера).

Самым простым языком программирования для начинающего будет Python. Если вы изучите Python, а затем фреймворк Django для веб-разработки — у вас будет все необходимое для самостоятельной реализации довольно сложных проектов.


Хороший вариант: язык программирования Python и фреймворк Django

Плюс — Python и Django научат вас «правильному» программированию. Python стабильно входит в ТОП5-10 самых востребованных языков, а хорошие специалисты в Python одни из самых высокооплачиваемых программистов. Python одновременно простой и понятный для начинающих программистов язык программирования, и при этом используется во многих крупных компаниях и на больших проектах.

Вообщем, я люблю Python и рекомендую начать с него.

Среди других материалов рекомендую Learn Python The Hard Way. книгу «Простой Python. Современный стиль программирования». И, конечно The Python 3 Tutorial.


Django — возможно лучший фреймворк для веб-разработки

Лучший инструмент на все случаи жизни очень сложно найти. Django имеет все шансы стать таким инструментом для веб-разработки.

Я точно рекомендую познакомится с ним.

С чего начать для изучения Django:

Начните с официальной документации, там очень хороший tutorial: https://docs.djangoproject.com/en/dev/intro/

Также пройдите https://tutorial.djangogirls.org/en/

Затем посмотрите http://www.tangowithdjango.com/

Tango with Django — это хорошая возможность подтянуть английский и одновременно получить понимание того, как устроены веб-проекты и как всё работает.


Альтернативный вариант — PHP и WordPress

Другой путь — начать с PHP и работы с популярными CMS. Если вы изучаете программирование сами и хотите быстро начать работать — начните с PHP.

Многие считают PHP «не совсем настоящим» языком программирования и для этого есть основания. PHP редко используется в крупных веб-приложениях и заточен только для веб — использовать его в других областях не получится.

С другой стороны — PHP лидирует по количеству запущенных в мире сайтов. На нем основаны самые популярные CMS (системы управления сайтами).

Для старта рекомендую книгу: «Изучаем РНР и MySQL» авторов Линн Бейли и Майкл Моррисон

После этого разберитесь с созданием тем под WordPress — это самая популярная CMS в мире, если оценивать по количеству запущенных сайтов.

Хорошо разобравшись с этим, уже можно найти работу. Под PHP и WordPress очень много сайтов, поэтому работы хватит всем.


Как начать зарабатывать программистом

Многие представляют работу программиста-фрилансера так:

Хочу стать программистом


Или так:

Как стать программистом с нуля


На самом деле это выглядит примерно так:

Программирование для начинающих


Если вы готовы к работе программиста и ищете способ зарабатывать — добро пожаловать на фриланс! Фриланс-биржи позволят вам найти простые заказы (возможно почти бесплатно на первых порах) — чтобы получить практику. Как правило, работа в ИТ-компании может быть прибыльнее, если вы просто ищете работу программиста.

Уже после пункта 2 — освоив HTML, CSS и jQuery — можно идти на фриланс биржи и брать несложные заказы, нарабатывая профиль.

Знаете английский? https://www.upwork.com/

Совсем нет, даже со словарем? https://freelance.ru/

К тому времени, когда вы сможете самостоятельно делать сайты, вам будет проще найти клиентов — будут отзывы и опыт.


Быстрый путь в веб-разработчики

Исходя из моего опыта, на изучение программирования с нуля уйдет от 6 до 12 месяцев в лучшем случае, при этом 6 месяцев — это если вам кто-то помогает.

Чтобы ускорить процесс входа в ИТ — ищите возможность пойти на тренинг (возможно понадобится не один) или — лучше — найдите человека, который будет заниматься с вами. Без ментора, который передаст вам свои знания — очень сложно, можно просидеть год за книгами и так и не начать. А со знающим человеком, который умеет просто рассказать о сложных вещах — намного легче.

В свое время я для освоения веб-разработки приобрёл тренинг, и это сэкономило мне много времени. При том, что я много знал о разработке, это позволило мне за 2 месяца освоить то, на что могло уйти полгода. Ищите свой путь.


Книги по программированию для начинающих

В 2018 появилась книга «Введение в разработку программного обеспечения» Якова Крамаренко. Для изучающих программирование с нуля — вполне стоящая книга, с которой стоит начать. Освещены начальные шаги в веб-разработке, не затрагивая серверной части. В доступной форме рассказано про HTML, CSS и Javascript, которые необходимы, если вы изучаете веб-программирование в 2020.

Для тех, кто только начинает освоение программирования, и любит работать с книгами, я считаю это хорошим вариантом. Книга доступна бесплатно или за деньги. Думаю она стоит того, чтобы заплатить автору!

Другие книги для начинающих учить программирование, будут добавлены позже.

Если для вас была полезной какая-то книга, поделитесь в комментариях.


Бесплатный онлайн-курс для изучения программирования

Я очень рекомендую Гарвардский курс по основам программирования CS50: https://cs50.harvard.edu/.

Он и может показаться нудноватым или тяжелым для начинающих — это лучшее из того, что есть.

Совмещайте его с советами из этой статьи, и будет вам счастье! :)

Версия 2019 года есть в переводе: https://courses.prometheus.org.ua/courses/course-v1:Prometheus+CS50+2019_T1/about

Лучше пройти курс на английском. И язык прокачаете, и информация посвежее. Оригинальная версия тут: https://www.edx.org/course/cs50s-introduction-to-computer-science

Прохождение курса займёт время, но даст довольно полное понимание, которое сложно иначе получить самостоятельно.

Если вам также понравились другие курсы для начинающих программистов, а может и более серьёзные — напишите в комментариях.

На всякий случай: ссылки на платные курсы будут публиковаться только после личной проверки, чтобы исключить спам.


Что изучать дальше

Как только почуствуете уверенность в том, что можете что-то создать — ищите компанию, где сможете развиваться дальше или клиентов. Для людей, которые хотят стать программистом очень важна практика.

Беритесь за любую работу, которую вам предложат. Только через практику можно освоить программирование.

HTML, CSS, Python и Javascript — это только базовые знания, первый этап. Также важно изучение алгоритмов и знание современных инструментов для разработки.



Понравилась статья? Тогда поделитесь ссылкой с друзьями! Также не забывайте подписаться на наш канал и посетить наш чат






Report Page