за сколько можно выучить php для трудоустройства
Сколько времени в среднем проходит для освоения программирования с нуля и возможностью заработка?
Мне 20, студент, и я всерьез, да и довольно долго, думал о том, чтобы связать свою жизнь с программированием. Математика нравится, но не изучал в силу ненужности. Так вот в чем, собственно, вопрос. У меня около 10 часов свободного времени в день (на обучение программированию готов уделять бОльшую часть) и мне интересно: через сколько я смогу зарабатывать? И сколько я смогу зарабатывать? И в какую сферу программирования лучше ‘сунуться’: веб, прикладное, или %забылназвание%? И смогу ли я всю жизнь этим заниматься, из серии: выбрал и развивайся себе в удовольствие?
UPDATE: для подписавшихся и для себя подведу краткие выводы.
Вроде все важные выводы =)
Оценить 1 комментарий
Upd: Что скажете по поводу вот этого?
Хорошим программистом можно стать только если это занятие нравится. По крайней мере в первые годы это занятие должно приносить удовольствие само по себе. Это должно быть стремление, страсть, талант. Если бы у вас это было, вы бы вопросы здесь не задавали, а просто программировали. Не важно что.
Это не предел. Потом можно стать тимлидом и самому руководить разработкой какого-то проекта в какой-нибудь компании. Или набрать техже фрилансеров на крупный проект и организовать свое дело. Потолка по доходности просто нет.
«тостер превратился в сборник вопросов и разряда «Хай, пасаны! Вы тут прогеры все крутые? Какую мне книжку почитать минут на 15, что бы завтра мульёны зарабатывать?»
На самом деле кол-во таких вопрос действительно зашкаливает, потому что беспокоит многих, но каждый считает, что именно ему ответят каким-то уникальным образом. К сожалению нет, не ответят, универсальных рецептов нет. Я сам одно время, брался за одной, брался за другое, загорался и снова перегорал. Потом приходит понимание, что топчешься на одной месте, даже совершая «гипер прыжки» в кратчайшее время, такие переключения с новым «гипер-прыжком» отбрасывают сильно назад. Это как вектор, который резко меняет направление. Сумма таких векторов может не порадовать точно 🙂
Вроде выбрал, вроде решил, начал углубляться, но смотришь по сторонам и начинаются сомнения, а то ли ты выбрал, а насколько это будет актуально, а насколько будет интересно дальше и так далее. Например, мне импонирует разработка под мобильные платформы, но нет работы на местном рынке. Возникает разумное сомнение, выбрать то, что нужно здесь и сейчас, но не особо перспективно, либо. либо. и еще много разных либо.
Какой же выход из этого порочного круга. Наверное составить Roadmap, где придется проверить свою силу воли. Составить карту планов на год. Проанализируйте такие вопросы как:
1. Что интересно
2. Что проще всего дается
3. Что востребовано на местном рынке
4. Рассматривается ли возможность переезда
5. Что востребовано на фриланс биржах и каков уровень конкуренции в данном сегменте
Теперь ответ на ваш вопрос: время освоения программирования с нуля и возможность заработка никак между собой напрямую не связаны. То есть ответа конкретного никто не сможет дать.
Что нужно знать и уметь джуниору PHP программисту для того чтобы устроится на работу(минимальный набор знаний)?
Простой 6 комментариев
уметь джуниору PHP программисту для того чтобы устроится на работу(минимальный набор знаний)
Я бы дал ссылочку но там трэш.
ключевые слова двач, программирование, мы вам перезвоним
И вообще на сколько это тяжело по вашему мнению устроится в 2019 году PHP-джуном
учитывая, что до 265 лет я не игрался в песочнице
В свое время на собеседовании мы проверяли знание основ PHP (простенькая задачка на знание синтаксиса), знание ООП в контексте PHP, понимание принципов SOLID, знание основных паттернов, как программных, так и архитектурных. Так как мы занимались Laravel, собственно, знание фреймворка не далее, чем написано в документации. Ну и просили написать небольшой тестовый фрагмент кода, примерно на 1 час работы, который оплачивался, впоследствии, где проверяли умение работать с базой данных, миграциями, небольшое умение верстать и знание основ (!) JS, а также умение писать аккуратно. Git и умение пользоваться редактором кода.
На ошибки внимание не обращалось, если человек хорошо себя показывал, даже, если он ошибся в каких-то вопросах, мы это игнорировали.
Как выучить PHP самостоятельно с нуля? Уроки и курсы для новичков
PHP – один из самых популярных языков в области веб-разработки. Если вы хотите заниматься созданием сайтов, он вам пригодится. В статье вы найдете пошаговый план обучения, список других технологий, которые нужны для работы, бесплатные уроки и советы для новичков.
Содержание:
Стоит ли учить PHP? Какие у него перспективы?
Это один из самых популярных языков для разработки сайтов. На нем написаны бесплатные системы управления (CMS), такие как WordPress, Joomla, Drupal, OpenCart и множество других, а также фреймворки Laravel, Yii2 и Symfony. Если вы хотите заниматься созданием сайтов и веб-приложений, учить PHP имеет смысл.
Сложно ли его освоить? На самом деле нет. Он относительно прост для новичков и востребован на рынке. Найти работу не проблема, так как вакансий – много. Если вы не знаете, нужно ли учить PHP, рекомендуем посмотреть следующий ролик:
Язык создал датский программист Расмус Лердорф. В 1994 году он написал набор скриптов, которые собирали статистику по просмотрам его резюме в интернете. Расмус назвал его PHP Tools (от Personal Home Page Tools – инструменты для персональных страниц). Постепенно набор расширялся. Первую официальную версию ПХП представили 8 июня 1995 года.
В 1997 году вышла вторая версия обработчика. В это время 1% всех сайтов в интернете использовали PHP – это около 50 тыс. ресурсов. Уже через год язык был установлен на 10% веб-серверов. Благодаря открытому коду, простоте и большому сообществу разработчиков популярность технологии быстро выросла.
Сейчас высказываются мнения, что PHP может терять позиции, поскольку сами сайты могут уйти в прошлое и уступить место приложениям. Однако пока эти опасения не подтверждаются, и технология по-прежнему востребована.
Зачем учить PHP: плюсы и минусы языка
Резюме: если вы хотите заниматься разработкой сайтов, то PHP – это популярный язык, который относительно просто освоить. Даже если вы раньше не занимались программированием. При этом вакансий на рынке много, и у хорошего разработчика не будет проблем с трудоустройством. Можно работать в веб-студиях или брать заказы на фрилансе.
За сколько времени можно выучить PHP с нуля?
Основы можно изучить в течение месяца. Вы освоите синтаксис, базовые команды и сможете писать простые программы. Однако для работы программистом этих знаний недостаточно.
Получить подготовку, необходимую для трудоустройства, можно на онлайн-курсах. Обычно они идут от 4 до 12 месяцев. Например, в Skillbox есть курс «PHP-разработчик», обучение на котором занимает 1 год. Если вы хотите выучить язык быстрее, то в Гикбрейнс есть курс по PHP продолжительностью 4 месяца. Его плюс – возможность стажировки и работы над реальными проектами.
Изучить основы языка можно по бесплатным урокам и курсам, размещенным на YouTube. О них расскажем ниже в статье.
С чего начать и как правильно учить PHP?
В таблице представлен план, по которому можно выучить язык самостоятельно с нуля. Начать рекомендуется с верстки, так как это азы, которые требуется знать. Освоив HTML и CSS, вы сможете быстрее изучить другие технологии.
1. Освоить HTML и CSS – чтобы уметь верстать макеты
Основные теги для верстки и их атрибуты, селекторы CSS, позиционирование элементов, оформление текстов, блочная модель, адаптивная верстка.
2. Изучить основы PHP
Синтаксис и основные команды, базовые операторы и функции, циклы, основы работы с объектами, файлами, формами, протокол HTTP, заголовки, куки, сессии.
3. Углубить знания PHP
Понятие класса и объекта, что такое наследование, полиморфизм, инкапсуляция, работа с базами данных My SQL, тестирование кода.
4. Узнать, как работает CMS (система управления сайтами)
Самые популярные – 1C Битрикс, WordPress. Можно освоить любую, которая вам понравится, т.к. изучив одну систему, вы сможете разобраться в других.
5. Посмотреть, как работают фреймворки на PHP, и изучить один из них
На выбор – Laravel или Symfony. Есть и другие, но перечисленные более популярны.
6. Получить дополнительные знания
Принципы ООП, MVC, система контроля версий Git, ОС Linux, работа в командной строке, планировщик cron, JavaScript.
Чтобы стать Junior PHP developer, достаточно знать HTML, CSS, PHP, базы данных MySQL, принципы ООП и MVC, систему контроля версий Git и популярную CMS на выбор. С таким багажом вас могут взять на работу в веб-студию. Для позиции Junior опыт работы может не требоваться. Главное знать ПХП и успешно пройти собеседование.
По мере набора опыта вы станете Middle PHP developer. Это программист с опытом работы от 2 лет, который участвовал в больших проектах, хорошо знает язык PHP и фреймворки, способен решать задачи средней сложности и работать самостоятельно без постоянного контроля со стороны старших коллег.
Уровень Senior предполагает экспертные знания в области программирования, владение широким стеком технологий, умение решать сложные задачи, управлять командой и опыт разработки от 5 лет. Зарплата такого специалиста может превышать 300 тыс. рублей в месяц.
Бесплатные курсы для новичков
Поскольку язык популярен, в интернете есть много бесплатных уроков, курсов и статей для новичков, которые позволяют выучить PHP самостоятельно с нуля. Большой популярностью пользуются мануалы, где за 1-1,5 часа рассказывают про синтаксис и основные команды. Одно из таких видео можно посмотреть ниже:
Также мы собрали для вас популярные курсы с YouTube, в том числе свежие (за 2020-2021 год). По ним можно учиться бесплатно:
Помимо видеороликов, в интернете есть много полезных сайтов для начинающих разработчиков. Они собраны в обзоре 24 сайта для изучения программирования на русском языке. Там вы найдете бесплатные справочники, сборники статей, мануалы, форумы и библиотеки.
Где учить PHP с нуля: обзор онлайн-курсов
В интернете есть онлайн-курсы, на которых обучают программированию, в том числе новичков. Вы получаете системную подготовку, осваиваете теорию и практику, общаетесь с преподавателями. После курсов можно искать работу или выполнять заказы на фрилансе. Примеры таких программ:
Курс в университете Нетология. Включает программу помощи с трудоустройством. Позволяет выучить PHP с нуля и освоить другие технологии в области веб-разработки: верстку, JavaScript и многое другое. Вы получите комплексную подготовку, необходимую для работы веб-программистом.
Курс в Skillbox, на котором изучают PHP, базы данных MySQL, фреймворк Symfony и CMS «1С Битрикс». Если вы хотите выучить только язык, это оптимальный выбор.
Курс на сайте Geekbrains. Уровень обучения – с нуля. Включает более 140 часов практики и прохождение стажировки в Geekbrains. В программе – основы программирования, верстка, изучение языка PHP и фреймворка Laravel.
Советы начинающим разработчикам
Новичку проще устроиться в небольшие веб-студии и стартапы. Там платят не самые большие зарплаты, зато дают возможность набрать опыта и в дальнейшем устроиться в более крупную компанию.
Мы рассказали, как быстро выучить PHP самостоятельно с нуля, где можно найти бесплатные курсы и уроки. Если вас интересуют вакансии в сфере ИТ, рекомендуем посмотреть обзор 36 сайтов для поиска удаленной работы.
PHP: с чего начать, как учить и что в итоге знать?
Введение
Ровно 2 месяца назад я спрашивал тут о том, как стать профессиональным веб-разработчиком за 7 лет (http://habrahabr.ru/qa/21830/). Сразу стало понятно, что без английского, с которым у меня все не очень гладко, не обойтись. За 2 месяца я подтянул свои знания английского на уровне чтения технической литературы, обзавелся маком и подтянул знания в html5.
К делу
Настало время изучения php. Хотя я его уже учил. Знаю типы данных, функции, mysql на уровне простых запросов, немного ооп и небольшую часть библиотеки GD2. Очень плохо с практикой, то есть не знаю как применять все это в деле. Я смогу написать очень простую систему регистрации с хранением данных в mysql базе; вход с помощью cookie и сессий; гостевую книгу и какой-нибудь простой поиск.
Вопросы
На первые несколько пунктов попробую написать рекомендации в свободной форме.
Первое и самое главное — чтобы хорошо изучить программирование на РНР, надо хорошо изучить программирование. Это очень важная вещь. Большая часть людей, пишущих на РНР, не имеют ни малейшего представления о программировании. Даже о таких базовых вещах, как форматирование кода, отладка, профайлинг, обработка ошибок, файловые операции. Можно заметить, что я не говорю об ООП. Это совсем отдельная тема, ООП надо учить специально. К сожалению, из 100 человек, которые говорят, что знают ООП, 90 являются банальными копипастерами, выучившими синтаксис, но не понимающими смысла объектов. Но чтобы играть в шахматы, недостаточно знать, как ходят фигуры.
Ещё неплохо бы ответить себе на вопрос — для чего ты хочешь выучить программирование на РНР? Вопрос совсем не праздный. Многие люди смешивают в нем кучу разных понятий. К примеру, здесь уже упоминали CMS. и действительно, если речь идёт о зарабатывании денег, то кастомизация Джюмлы и написание к ней говномодулей в финансовом плане куда более выгодны, чем умение писать что-либо с нуля. Для фриланса, во всяком случае.
Вариантов масса! поэтому нужно определиться сначала, чего хочется.
Там выше говорили про JS+CSS — не надо слушать, это полная ерунда. Фронтенд программирование — совсем отдельная вещь, куда больше визуальная, чем абстрактная. И, слава богу, все больше работодателей начинают понимать это. Хотя опять же — если фрилансишь и на все руки мастер — то без этого никуда.
Но если работать хардкорным серверным программистом в команде, то об HTML/JS/CSS нужно иметь только общее представление (поскольку тексты на этих языках являются, вообще-то, практически единственным результатом работы РНР).
А вот что обязательно нужно хорошо знать из сопутствующих технологий — это протокол НТТР, устройство файловой системы, работа c командной строкой в линуксе.
Теперь по остальным
Mysql всё ещё является краеугольным камнем хранения данных в вебе. Нужно знать и понимать джойны, индексы
Фреймворки — обязательно. Тут, правда, стоит проблема выбора, но принципиальной разницы между ними нет. Yii — неплохой выбор.
Гитхаб тебе не нужен, знать его не обязательно. Знать надо git.
А вот что является обязательным для веб-программиста — это умение пользоваться гуглем. Хотя бы на уровне умения скопипастить в поисковую форму сообщение об ошибке или написать вопрос «Что такое git» 😉
Потому что для работы в команде какую-либо систему контроля версий знать надо, а git является стандартом де-факто. Понимать принцип работы и базовые команды — чекаут, коммит, пуш.
Стоит ли смотреть в сторону PHP тому, кто решился только со второй попытки научиться прилично программировать?
Здравствуйте, друзья. С большой осторожностью касаюсь столь холиварной темы, но хочу рассказать свою небольшую историю о том, почему я, будучи уже далеко не в студенческом возрасте, решил всё-таки изучать программирование, и от чего же я собираюсь (о, боже) использовать для реализации своих намерений PHP. Буду рад получить от вас, коллеги по IT-индустрии, ценные советы и наставления.
Забегая вперёд скажу, что в комментариях к топику (кроме холиваров о языках) сказано много полезного. За что огромное спасибо хабровчанам.
Личный опыт
Моя карьера складывалась не самым типичным образом: я постоянно работал сразу в нескольких организациях и почти всегда на свободном графике. Почему меня всюду терпели? Похоже, что за универсальность: мог своими руками проложить сеть, настроить офисный сервер на Debian`е, мог в CorelDraw нарисовать аккуратную листовку, подготовив её к печати с цветоделением, мог обучать пожилых сотрудниц «входить в интернеты», мог нарисовать и сверстать шаблон для CMS и в одиночку за пару недель развернуть для компании небольшой сайт, мог чего-то по месту автоматизировать написанными на коленке программами, когда становилось ясно, что несколько рутинных операций в разы тормозят весь рабочий процесс отдела или конторы в целом. Мог и всё это делал.
Гордиться тут особо нечем, как вы понимаете, узкоспециализированным профессионалом ни в одной из затронутых отраслей я так и не стал, а стал этаким универсальным IT-многоборцем, человеком-окрестром среднего звена, который появляется и максимальную пользу приносит там, где в небольшом коллективе надо решить сразу много проблем. На жизнь, впрочем, вообще не жалуюсь, потому что некоторое время назад удалось запустить свою небольшую, но развивающуюся региональную веб-студию. И там я сам себе проджект-менеджер. Разрабатываем мы, в основном, на CMS Drupal и реже на фреймворке Yii, которые, как известно, на PHP писаны.
Сейчас мне, откровенно говоря, немного неловко управлять парой достойных программистов, чей JS и PHP код я понимаю лишь на 20%.
Университет и многие места работы научили меня основам трёх языков: C++, Java и PHP. Ну, как научили, я всего-то знаком с базовыми алгоритмическими конструкциями, могу отсортировать массив десятком методов (из-за курсовика, написанного по этой теме), понимаю как устроены стеки и очереди, на уровне концепций и учебных задач знаком с ООП. В общем, программированием владею как заурядный, но прилежный студент средненького технического вуза. Зато на практике почему-то меня всегда выручал именно PHP, притом заманивая своими самыми жжёными печеньками с тёмной стороны.
Я писал на PHP шелл-скрипты для коррекции длинных табличных отчётов через PHPExcel, парсил сайты без API сначала регулярками, а потом уж и с использованием phpQuery, быдлокодил (мешая вёрстку с логикой) веб-странички выводящие в интернет актуальные цены из локальной MSSQL-базы складской системы, мастерил всякие конвертеры из разряда «вот сюда вы неправильный файлик загрузите, а потом правильный по этой ссылочке скачаете и там уже сумма будет прописью». В общем, сколько бы я не заставлял себя использовать правильный язык и правильный подход при решении какой-то практической задачи, всегда всё скатывалось к тому, что решение, достаточно быстро и безобразно на уровне архитектуры (без всяких ООП и MVC), создавалось на PHP. При этом снаружи решение выглядело работоспособным и вело себя, увы, тоже как вполне работоспособное. Это всех устраивало, даже меня, потому что придаваться рефлексии и проклинать себя за несоблюдение эстетики — было некогда.
А вот сейчас я решил, что пора остепениться. Мне уже не стать профессиональным программистом, но до уровня junior`а с правильно поставленными мыслями и руками мне бы очень хотелось дойти. Немного времени у меня для самообучения есть, а, главное, я уже умею заставлять себя делать нечто ре-гу-ляр-но, что должно положительно сказаться на образовательном процессе. При этом, я так благодарен много раз выручавшему меня PHP, что хочу теперь по-правильному освоить именно его. Не верю я, что отсутствие строгой типизации, может мне испортить вторую попытку.
Но с чего заново начать, чтобы расти правильным программистом? Вот этого я — не знаю. По PHP я вообще не читал книжек, а учился по коду из статей с комментариями, разбросанному в сети. По Java помню книжку, которая мне понравилась — её автор Хабибуллин. Но эта книжка не учит стилю и правильным подходам, хотя и доступно знакомит с языком и платформой. И книжка не про PHP.
Что делать?
Какой диагноз поставите, коллеги? Можно ли вообще, по вашему мнению, переучиться программировать или, торопясь побыстрее решать рутинные задачи, я бесповоротно сам себя заклеймил на роль вечного «похапэшного быдлокодера»?
Какие первые шаги, по вашему, мне теперь стоило бы совершить: что почитать, какие практические задачи решить, какие табу себе поставить?
P.S. И, чтобы два раза не вставать, задам уж совсем, наверное, смешной вопрос: какую IDE вы посоветуете использовать? Я, стыдно признаться, все мегабайты своего кода написал в PSPad и протестировал в браузере кнопочкой F5, читая про ошибки и нотисы и возвращаясь снова их исправлять в редактор. А как и в чём отладку ведут правильные программисты?
P.P.S. Проще лечить больного по известным симптомам, поэтому, пожалуй, приведу несколько примеров, иллюстрирующих бардак в моей голове. Задам некоторые глупые вопросы, не дающие мне покоя:
1. Приведите минимальный пример, который иллюстрирует модель MVC, так чтобы были видны практические профиты от её применения?
2. Говорят: пишите безопасный код. Но каковы базовые правила? Я, например, понимаю, что если то, что пришло через GET или POST без проверки и обработки отправлять в SQL запрос, то быть беде. Но какие ещё бывают типовые косяки в безопасности, которых стоит сразу же бояться и не допускать как SQL-инъекций?
3. Я встречал несколько разных гайдов по форматированию кода. Они порой постулируют противоречивые вещи. Есть ли где-то хотя бы один русскоязычный гайд, где для каждого пункта приводилось бы пояснение в духе «надо оформлять вот так, потому что это решает такие-то проблемы»?
Промежуточные результаты
В комментариях Juraseg посоветовал «Совершенный код» Стива Макконнелла и сразу несколько человек посоветовали «PHP Objects, Patterns and Practices». К сожалению, английский мой слаб, поэтому буду читать перевод.
Cord дал ссылки на конкретные русскоязычные статьи и даже поделился собственной программой «занятий», по которой готовит свою команду.
Многие люто рекомендуют и поддерживают JetBrains PHP Storm в качестве самой правильной IDE для PHP.
Также многие пишут, что раз у меня и без идейно верного владения программированием всё сложилось, то нечего гневить судьбу, надо продолжать заниматься тем, чем занимаюсь, раскачивая менеджерские скиллы.
Ну, и, многие советуют таки забить на PHP и смотреть в сторону других языков, в основном, в сторону Python. На эту тему понравился философский комментарий от LayneBuchyn о том, что для того, чтобы толсто троллить объективно критиковать PHP, надо отлично знать PHP.