С чего начать обучение веб разработке с нуля самостоятельно

Веб-разработка – с чего начать?

Недавно на сайте stack overflow увидел вопрос, в котором программист C++ спрашивал, что нужно начать изучать для того чтобы впоследствии стать веб-разработчиком. С его слов он начал с изучения php, но по совету знакомых переключился на яву, в какой-то момент открыл для себя ангуляр, в итоге в голове у него образовалась каша, и понимания в какую сторону двигаться не было. Именно для людей, которые только что пришли в веб я и решил поделиться это статьей, чтобы у них было примерное понимание, что тут есть.

Любое веб приложение состоит из двух частей: бекенд и фронтэнд. Соответственно и программистов делят также, по сути это две несвязанные между собой касты разработчиков.

Бекэнд

Бекэнд — серверная часть приложения, которая не видна пользователям. Сюда относится: авторизация, хранение и обработка данных, email рассылки и тому подобное. Скажем так бекэнд это то, что под капотом.

Языков программирования тут множество, вот самые распространенные из них:

• Php
• Asp net
• Java
• Python
• Ruby
• Node js

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

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

• Oracle
• MSSQL
• MYSQL
• Postgres

По сложности это примерно тоже, что и освоить язык программирования. Во всех перечисленных БД есть часть, которая одинакова везде – так называемый sql (язык запросов), а так же процедурный язык который в каждой базе свой. Так как sql все-таки един, а он основа всему, что связано с обработкой данных, то переход на другую базу данных, не является такой уж и проблемой. Поэтому выбрать для начала можно любую, но и тут бы я пошел по принципу анализа вакансий.

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

Фронтэнд

Фронтэнд – часть, работающая в браузере с которой непосредственно взаимодействует пользователь. Это динамические интерфейсы, меню, события по действию пользователя обмен данными с серверной частью, в общем, то, что происходит на клиенте.

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

JavaScript на текущий момент времени имеет два стандарта, которые широко используются: ECMAScript 5 и ECMAScript 6. Разница между ними состоит в том, что в ECMAScript 5 отсутствует полноценное ОПП. В ECMAScript 6 оно есть, но поскольку этот стандарт появился относительно недавно, уже большая часть приложений написана на ECMAScript 5, в результате чего нужно будет освоить оба стандарта и как следствие два разных подхода к разработке.

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

Описанные мною проблемные моменты решены в современных js фреймворках (например в таких как ангуляр и реакт). Но в проектах, которые написаны без использования фреймворков эти моменты остаются.

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

Фулстек

Уже из названия должно быть понятно, что данный тип разработчиков занимается разработкой обоих частей. Пытаться стать таким разработчиком не советую, поскольку выучить все мозгов не хватит в любом случае, да и большинство компаний уже пошли по пути разделения труда. Однако фулстек это то с чего нужно начать, чтобы сделать шаг в сторону бекенда или фронэнда. Разработав пару небольших приложений, вы поймете между ними разницу (а она действительно есть) и сможете определиться, какая из сторон вам ближе.

Я в свое время, чтобы определиться прочитал книгу «Создаем динамические веб-сайты», автор «Робин Никсон». Книга небольшая всего 500 страниц, но благодаря ней у меня сложилось общее представление о веб-разработке и я смело сделал выбор в сторону бекенда о чем до сих пор не жалею. Эту книгу я привел в качестве примера, можно взять любую другую это не принципиально.

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

Источник

С чего самостоятельно начать обучение программированию: этапы освоения профессии и советы новичкам

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

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно

Здравствуйте, уважаемые читатели!

Решили сменить сферу деятельности, и выбор пал на программирование? Прекрасно! В этой области много востребованных, прибыльных, творческих и вдохновляющих профессий.

Но прежде чем начать обучение, подумайте и ответьте на пару вопросов: нравится ли вам программирование, готовы ли вы ежедневно посвящать этому делу время, искренне ли интересуетесь информационными технологиями, нужно ли вам вообще программирование? Если ответ на все вопросы “да”, прошу читать дальше. В противном случае, построить карьеру в IT-сфере будет весьма трудно.

Читайте статью, если хотите узнать с чего начать обучение программированию с нуля, как освоить IT-сферу самостоятельно и с помощью онлайн-курсов, кто такой программист, что надо знать, чтобы им стать.

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно

Кто такой программист

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

Стать программистом может любой человек, независимо от пола и возраста. Но он должен искренне интересоваться компьютерами и веб-технологиями, ведь они непрерывно развиваются и меняются, поэтому специалисту надо мониторить изменения и постоянно обновлять знания.

Программисты обладают такими качествами, как:

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

Что нужно знать и уметь

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

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

И это лишь часть того, что должен уметь делать программист.

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

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

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

После освоения алгоритмов и структур данных нужно выбрать направление программирования. Лишь потом можно приступить к изучению веб-технологий и инструментов. Это серверные языки и языки разметки, стили CSS и JavaScript, веб-фреймворки, подходящие к выбранному языку программирования.

И напоследок научиться работать с базой данных.

Подбор направления

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

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

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

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

Веб-программист работает над созданием веб-сервисов и пишет для них программную составляющую. Соцсети, интернет-магазины, информационные сайты, форумы и прочее – все это труды специалистов по работе в сети.

Выбрать направление деятельности можно среди доступных профессий:

И это только часть должностей, которые может занимать программист.

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

Выбор языка программирования

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

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

Если же отталкиваться от направления, то надо знать, что веб-разработчик пользуется C++, Python, Java. Системный программист – Assembler, C, C++, Python. Администратор базы данных – SQL.

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

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

Если к этому времени специалист еще не приступал к изучению фреймворков, структур и баз данных, то сейчас эти знания просто необходимы. Не надо бросаться на все сразу, лучше выбрать что-то из основного: Git, SQL, HTML, CSS, XML, JSP, Maven, Spring, ORM, REST, MySQL, PostgreSQL.

Самообразование

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

Можно использовать бесплатные обучающие платформы, сайты и приложения, форумы, где делятся своим опытом профессиональные программисты. А можно положиться только на самостоятельное обучение, но такой путь сложен для новичка. Лучше совмещать его с другими методами, например, с онлайн-курсами.

Онлайн-курсы

Новичку предлагаются курсы от онлайн-платформ GeekBrains, Нетологии, Skillbox, Coursera, beONmax. Постигать азы сферы информационных технологий можно в своем темпе и в домашних условиях. Так цена будет ниже, чем обучение в вузе.

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

Предлагаю ознакомиться со следующими обучающими программами:

Составление резюме и портфолио

Можно начать работать на бирже, чтобы было что написать про свой опыт в резюме и добавить работы в портфолио. Для первого реального опыта подойдут и небольшие проекты. Главное – начать.

Лучше выбирать иностранные биржи, особенно если есть знания английского языка. Там и заказов больше, и доход выше. Подойдут, например, Upwork и YouTeam. Если говорить о русскоязычных биржах, то популярны Kwork, FL.ru и Freelance.ru.

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

А дальше можно уже перейти на специализированные сайты с вакансиями только для программистов, например, We Work Remotely и Хабр Карьера. А можно поискать работу на таких ресурсах, как hh.ru или SuperJob.ru.

У специалиста должно быть резюме, когда он откликается на вакансию. В нем надо указать правдивые факты о проектах, в которых он участвовал, и свои достижения на этой работе. Не помешает рассказать и о собственных проектах, если они есть. Это показывает профессиональный уровень и любовь к IT-сфере.

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

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

Советы новичкам

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

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

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

При возможности общайтесь с практикующим программистом, у которого есть опыт работы. Если он согласится курировать над новичком, направлять его, указывать на ошибки и давать задания для развития – это будет отличным дополнением ко всему обучению. Особенно если начинающий специалист обучается самостоятельно.

Узнайте больше об архитектуре компьютера.

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

Заключение

Подведем итоги. Чтобы начать обучение программированию, надо следовать поэтапно. Сделайте следующее:

И в качестве общих советов:

Источник

Как стать профессиональным веб-разработчиком: практическое руководство

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно
Дорога длинна и трудна, но интересна и полезна!

Статья задумывалась как практическое руководство для желающих стать профессиональным веб-разработчиком. Я уже более 20 лет пишу код для веба. Я ежедневно работаю с веб-разработчиками и помогаю им. В статье я опишу, что вам нужно выучить, когда вам нужно это выучить и где взять информацию (чаще всего даже бесплатно). Затем я дам совет по получению реального опыта, и что самое важное – по получению денег за написание кода.

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

1. Статью разрешается пролистывать

Руководство может помочь вам вне зависимости от вашего положения на дороге к профессиональной разработке. Прокрутите его к тому заголовку, который лучше всего описывает ваше сегодняшнее положение, и читайте оттуда. Если вы только начали этот путь, или пока размышляете об этом – последуйте совету Короля из «Алисы в стране чудес»:

Начните с начала, и продолжайте, пока не дойдёте до конца; и там уже остановитесь.

2. Попробуйте всего понемногу, а затем выбирайте специализацию.

Деньги – не самое важное. Вам необходимо ЛЮБИТЬ ваше занятие! Но вы не узнаете, что вам нравится, пока не попробуете.

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно
Найдите свою страсть, а потом монетизируйте её

Руководство поможет вам ознакомиться с как можно большим количеством областей веб-разработки как можно быстрее. А потом поможет вам выбрать специализацию в той области, что вам понравилась. Сначала вы не достигнете совершенства ни в чём – вы выучите основы, и потом продолжите изучение. Найдите свою страсть, и я покажу вам, как двигаться дальше.

Я решил писать код. Мне нравится веб. Я не знаю, с чего начать

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно
У вас всё получится!

Поздравляю! Это серьёзный первый шаг и начало чего-то весьма захватывающего. Но это может оказаться и очень сложным. Не волнуйтесь, я помогу.

Сначала вам нужно быстро познакомиться с основами всех областей веб-разработки («полный цикл»). Обучение будет разнообразным, но неглубоким. Это нужно для того, чтобы найти область, которая вам нравится, а также приобрести основные навыки в разных областях. Тогда вы сможете понимать и работать с большим набором задач, вне зависимости от того, на чём вы остановите свой выбор.

Изучите основы HTML

Язык разметки гипертекста, Hypertext Markup Language (HTML), контролирует содержимое и разметку того, что вы видите в браузере. Начав с него, вы получаете интерфейс пользователя, с которым можно взаимодействовать, и видите результаты работы своего кода. При изучении более сложных языков его важность будет возрастать. Вам ведь не нужно кодить вслепую.

Я уже знаю основы HTML

Круто! Это очень важный шаг. Теперь изучите основы JavaScript.

Изучите основы JavaScript

JavaScript – язык веба, и все основные браузеры (Chrome, Firefox, Safari, IE, множество других) поддерживают его. Каждый сайт, каждое веб-приложение, которым вы пользовались, скорее всего, содержит огромное количество JS-кода. Не говоря уже о том, что язык набирает популяность и на других платформах – сервера, настольные компьютеры, другие устройства.

Я знаю основы JavaScript и HTML

Потрясающе! Теперь добавим к вашим навыкам CSS

Изучите CSS

CSS, или Cascading Style Sheets (каскадные таблицы стилей). Используются для настройки внешнего вида элементов HTML на странице. Ознакомьтесь с бесплатным обучающим материалом от Mozilla, а затем обращайтесь к ресурсу CSS-Tricks для решения самых сложных проблем (справа вверху есть поиск).

Переходим к бэкенду

До сих пор мы с вами рассматривали то, что называют «фронтендом» веб-разработки. Вы ознакомились с основными языками, работающими в браузере. Пора переходить к бэкенду – коду, работающему на сервере. Не волнуйтесь, сервер вам не понадобится – ваш компьютер справится с этим.

Языков для бэкенда масса, но поскольку вы знакомы с JavaScript, я порекомендую изучить использование Node.js. Он позволяет запускать JS-код на сервере, а не в браузере.

В дополнение к этому вам необходимо изучить Express и MongoDB.

Express

Это библиотека, с помощью которой Node.JS может работать веб-сервером (слушать запросы от страниц и отправлять им ответы).

MongoDB

Это база данных, позволяющая вам хранить и извлекать информацию.

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

Мне нужно выбрать между «фронтенд», «бэкенд» и разработкой полного цикла

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

К этому моменту вы писали два типа кода. Один предназначен для взаимодействия с пользователем, другой – с данными. Что вы предпочитаете?

Взаимодействие с пользователем? Поздравляю, вы фронтенд-разработчик!

Взаимодействие с данными? Поздравляю, вы бэкенд-разработчик!

Оба? Поздравляю, вы разработчик полного цикла!

Ничего не понравилось? Поздравляю, веб-разработка – это не для вас. Возрадуйтесь, что вы поняли это сейчас, и не потеряли кучу времени и денег. Не готовы сдаваться? Может, вам не попался язык, который пришёлся бы вам по душе? Попробуйте изучить другие языки в разделе «Я хочу быть бэкенд-разработчиком».

Я хочу быть разработчиком полного цикла

Круто. Вам нужно ознакомиться со всем содержимым разделов «Я хочу быть бэкенд-разработчиком» и «Я хочу быть фронтенд-разработчиком».

Я хочу быть фронтенд-разработчиком и я знаю основы JavaScript, HTML и CSS

Для эффективной работы фронтенд-разработчиком вам необходимо в совершенстве овладеть HTML, CSS и клиентским JavaScript. Также вам нужно будет хорошо разобраться в нескольких важных фреймворках. Вы приобретёте навыки, которые работодатели и клиенты ожидают найти в разработчиках фронтенда.

К этому моменту вы уже должны знать основы HTML. В противном случае вернитесь к разделу «Изучите основы HTML».

Изучите промежуточный и продвинутый HTML

Ознакомьтесь с обучающим материалом по промежуточному HTML, а затем – по продвинутому.

Изучите продвинутый клиентский JavaScript

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно
Отличная серия книг по JS, при этом бесплатная

Кроме того, вашим лучшим другом должен стать и MDN JavaScript.

[Также совершенно бесплатно вам доступен превосходный перевод отличной книги «Выразительный JavaScript» — прим.перев.]

Знать «троицу фронтенда», HTML, CSS и JavaScript – это, конечно, здорово. Но для зарабатывания денег придётся вам познакомиться с некоторыми фреймворками.

Изучите jQuery

Это самая популярная библиотека JS всех времён. Хотя из-за некоторых новых фреймворков важность jQuery чуть поуменьшилась, если вы ищете работу, велика вероятность, что jQuery будет присутствовать в описании необходимых навыков (и упоминаться на собеседовании) ещё много лет.

Рекомендую изучить jQuery при помощи материалов FreeCodeCamp – это быстрый и эффективный метод. После этого отправляйтесь на официальный обучающий сайт – там вы найдёте дополнительные инструкции.

Также вам понадобится держать под рукой документацию по jQuery API.

Изучите популярный JS-фреймворк

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

Чуть ли не раз в неделю появляется новый фреймворк, который прочат на место нового стандарта разработки. Вам нужно будет прошерстить сайты с вакансиями и немало погуглить, чтобы выяснить, какой фреймворк популярен на вашем рынке. Также рекомендую инструмент от Hacker News по оценке тенденций рынка вакансий.

Во время написания этой статьи следующие фреймворки пользовались популярностью:

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно

React JS

React создали разработчики Facebook для работы с их архитектурой Flux. Это JS-библиотека для создания интерфейсов. Не так давно она вырвалась на первое место по популярности, перегнав Angular. Начинайте с React. Здесь можно найти хороший бесплатный курс для начинающих.

Angular 1 и 2

Angular JS создали разработчики Google, и он быстро набрал популярность. Многие компании сильно вложились в него, и, судя по графику выше, он всё ещё популярен. К сожалению, в Google приняли решение полностью переписать Angular при разработке 2-й версии. Поэтому Angular 1 и Angular 2 получились практически полностью разными. Если вам хочется стать экспертом в Angular, придётся изучить оба фреймворка. Возможно даже, что вам окажется достаточно и первой версии – пока ещё есть время. Но время это уже на исходе. Большинство работы, связанной с Angular, постепенно переходит на Angular 2. В Code School есть интересный бесплатный курс по Angular 1. А для изучения Angular 2 посмотрите бесплатные видео.

Ember JS

Для людей с опытом работы в Ember JS пока ещё есть места, но судя по графику, он уже помирает. Его не поддерживают такие монстры, как Google или Facebook, а вы и так будете загружены изучением React и Angular. Но если вам интересно, можете почитать официальное руководство по Ember JS.

Выбрав наиболее подходящий фреймворк и хорошенько ознакомившись с ним, стоит изучить идущий в паре с ним CSS-фреймворк. Два крупнейших игрока на этом рынке сегодня – Bootstrap и Material Design.

Bootstrap

Bootstrap сделали разработчики Twitter, и он уже довольно взрослый и популярный. Версии Bootstrap существуют для Angular, Angular 2 и React.

Material

Material – это набор правил дизайна, разработанный в Google. Он набирает популярность, существуют его версии для Angular и React. Поскольку Angular – это тоже детище Google, сочетается Material с ним превосходно.

Поздравляю! У вас есть ключевые навыки фронтенд-разработчика!

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно
Вы только посмотрите на него!

Я хочу быть бэкенд-разработчиком

Прекрасно! Первый шаг – выбор языка. Для работы с бэкендом существует много языков, и у каждого есть свои преимущества и недостатки. Ознакомьтесь с таблицей языков программирования, отсортированных по популярности. Все они уже десять лет входят в десятку лучших. Отмеченные зелёным – это веб-языки, которые с годами набирают популярность.

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно
TIOBE Index of Programming Languages, www.tiobe.com/tiobe_index?page=index

Концентрируйтесь на языках, чьи названия я обвёл зелёной рамкой. Если вы не знаете их, начинайте сверху таблицы и идите вниз. Останавливайтесь, когда найдёте то, что вам нравится, и копайте вглубь!

Если вы знакомы с одним из отмеченных зелёным цветом языков, и он вам нравится – концентрируйтесь на нём.

Чрезвычайно популярный язык, запускающийся почти везде. Разработан в Sun Microsystems (сейчас им владеет Oracle). На этом языке пишутся приложения для Android. Его также можно использовать для создания десктопных приложений, и, конечно, веб-приложений (как отдельных приложений бэкенда, так и работающих в паре с JSP). Он развитый, стабильный, и для его изучения есть огромное количество ресурсов. Кроме того, это самый популярный язык для изучения объектно-ориентированного программирования в колледжах и университетах. Вот неплохой курс по Java для начинающих.

C# был создан в компании Microsoft как прямой конкурент Java. До недавнего времени его поддержка на системах, не принадлежащих Microsoft, была не ахти – но сейчас ситуация выправляется. Как и Java, этот язык объектно-ориентирован, и может использоваться как для создания веб-приложений (как отдельно, так и совместно с ASP.Net), так и десктопных приложений. Если вы пользуетесь ОС Windows, и вам нужна более привычная среда разработки, C# может подойти вам. Ознакомьтесь с бесплатным курсом по языку от Microsoft Virtual Academy.

Python

За ним не стоит огромная компания, как за языками Java или C#, но Python – отличный язык для того, чтобы быстро выполнять поставленные задачи. Его относительно легко учить, и с каждым годом он набирает популярность. Если другие языки пришлись вам не по вкусу, вы можете углубиться в него. Лучше всего начать отсюда.

JavaScript

Если вы читаете эту статью с начала, то с JS вы уже разобрались. С пришествием Node.JS и популярностью npm (системы управления пакетами, Node Package Manager), серверный JavaScript несомненно будет и дальше набирать популярность. Стоит изучения.

Если вы раньше этого не сделали, сейчас самое время изучить Node.JS, Express и MongoDB при помощи этого превосходного бесплатного изучающего материала и его продолжения.

Это странный язык. Те, кому он нравится, влюблены в него по уши. Он входит в десятку лучших, но рост его популярности замедляется. Он представляет собою гибрид между функциональным и императивным программированием. Рекомендую попробовать – вдруг вы станете одним из ярых его приверженцев. Рабочие места для Ruby будут существовать ещё долго. Но обязательно проверьте свой рынок вакансий, чтобы хоть какие-то компании были заражены интересом к Ruby.

Лучше всего учить Ruby на ресурсе RubyMonk

Что насчёт PHP?

На рынке полно вакансий для PHP, но, по крайней мере, судя по нашей табличке, он теряет популярность. Я выделил его жёлтым, поскольку это всё ещё неплохой выбор для создания карьеры. Если говорить честно, я сам не большой фанат PHP – возможно, это предубеждение играет свою роль. Но я не могу представить, чтобы через 5-10 лет PHP стал бы популярнее JavaScript, хотя сейчас он более популярен, и вакансии для PHP всё ещё будут существовать.

Я много чего изучил, но у меня нет реального опыта

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно
Ну что, давайте наработаем вам опыт!

Без опыта работы очень сложно устроиться на работу. Сначала нужно закончить парочку персональных проектов, чтобы освоиться с их созданием от начала до конца. А когда вы начнёте работать над ними, очень полезным будет изучить способ управления и публикации кода. Для этого вам потребуется GitHub.

GitHub

GitHub это онлайн-репозиторий на платформе Git. Он позволяет хранить, управлять и публиковать код. Если вы уже работаете разработчиком, вы просто обязаны иметь там учётную запись. Изучить работу с GitHub вы сможете из этого обучающего материала «Hello World», а также из интерактивного обучающего материала по использованию платформы Git.

Личные проекты
Реальный опыт

Теперь вам нужен реальный опыт. Это значит, работать на кого-то ещё. Персональные проекты – вещь хорошая, но их недостаточно для того, чтобы успешно соревноваться на рынке работы. Для этого существует несколько вариантов.

1. Внесите вклад в проект с открытым кодом

Благодаря популярности GitHub существуют миллионы открытых проектов, в которых есть проблемы (ошибки), которые только и ждут, чтобы их исправил кто-то вроде вас. Включить в резюме упоминание об участии в известном открытом проекте – это отличный способ повысить ваш статус. Лучше всего найти себе проект по душе при помощи ресурса Code Triage. Он поможет выбрать наилучший проект для вас и будет отправлять вам задачи по почте каждый день.

2. Поработайте на знакомого или родственника

Выберите друга или родственника, владеющего своим предприятием, и сделайте для него веб-приложение или сайт, или улучшите существующий. Только выбирайте аккуратно – вам нужен проект подходящего масштаба. Правильный выбор родственника также поможет вам избежать неприятностей. В идеале вам нужен проект, который вы сможете сделать за срок менее 90 дней, и человек, с которым у вас очень честные взаимоотношения. Не бойтесь признаваться, когда что-то пошло не так, как было запланировано, и не бойтесь отказывать и давать отпор на определённые запросы или ожидания. Также убедитесь, что ваш отказ от проекта или отказ от него вашего партнёра не повлияет на ваши отношения.

3. Поработайте на благотворительные организации

Очень полезный способ набрать опыт – поработать на благотворительные и некоммерческие организации. Вы можете обратиться к милой вашему сердцу организации подобного рода и предложить свою помощь. Вы можете найти нужный проект через сайт Catch a Fire. А если вы полностью пройдёте программу обучения на сайте Free Code Camp и получите все сертификаты, вы получите доступ к некоммерческим проектам, где сможете применить ваши навыки.

Дерзкий получился заголовок для следующего предложения – но, по-моему, если вы выберете этот вариант, а потом найдёте нормальную работу или пойдёте фрилансить, он покажется вам рабским трудом. На сайтах Upwork, Fiverr и PeoplePerHour можно преуспеть в роли разработчика, но вам придётся назначать очень маленькую плату и смириться с положением человека, просто зарабатывающего опыт.

У меня есть опыт, помогите мне с работой

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно
Готовы бросить вызов миру?

Первое правило – не называйтесь «веб-разработчиком».

С чего начать обучение веб разработке с нуля самостоятельно. Смотреть фото С чего начать обучение веб разработке с нуля самостоятельно. Смотреть картинку С чего начать обучение веб разработке с нуля самостоятельно. Картинка про С чего начать обучение веб разработке с нуля самостоятельно. Фото С чего начать обучение веб разработке с нуля самостоятельно

Сделайте приличное резюме

Несмотря на все весёлые истории про людей, которые вытворяют что-то невообразимое, чтобы привлечь внимание работодателя, вам всё равно необходимо будет подготовить хорошее резюме. Эта статья с ресурса Tech Republic поможет вам с этим.

Создайте веб-сайт с портфолио

Ещё важнее, чем резюме, иметь хороший веб-сайт с портфолио. Возьмите все реальные проекты, которые вы делали, разместите их на персональной страничке. Почитайте хорошие советы по созданию такого сайта в статье с SitePoint. Ещё очень важно пояснить, как именно каждый из ваших проектов решил бизнес-задачу вашего клиента (или работодателя). В таком случае ваш сайт будет на голову выше других.

Подготовьтесь для интервью

С этим вам поможет моя предыдущая статья How to Win the Coding Interview.

Подкачайте необходимые для интервью умения

Вам нужно подготовиться не только к написанию кода. В хорошей статье с Life Hacker описано много полезной и ценной информации.

Главное – закрепиться на рынке

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

Хочу быть фрилансером

Сам себе хозяин – это хорошо, но это одновременно и огромное давление, и большие сложности. Лучший источник информации по фрилансу из всех, что я видел — DoubleYourFreelancing.com. У него есть серия статей, которые помогут вам стать фрилансером лучше, чем это получилось бы у меня. Читайте.

Ещё один вариант, если вы в себе уверены – сервис Toptal. Они принимают лишь 3% из всех, кто подаёт заявки, и этот процесс очень сложен, но если вы попадёте туда – у вас будет доступ к хорошо оплачиваемым работам, над которыми вы сможете трудиться удалённо.

Я начал работу, но чувствую, что зашел в тупик

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

Освежите ваше первоначальное намерение

Спросите себя, запишите на бумаге, почему вы решили идти по этому пути. В силе ли всё ещё ваш ответ? Если да – то зачем останавливаться? Вперёд!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *