• Стратегия входа, путь развития во фрилансе. С чего начать, чтобы стать верстальщиком и php-программистом?

    Nikolino
    @Nikolino
    Html и css с практическими задачами лучше изучать на htmlacademy.ru. После того как освоился, качаешь бесплатные psd макеты и верстаешь, с адаптивом, какие-то сложные вещи, которые не можешь сверстать оставляешь пока.
    Далее ищешь видео где верстают макет, обычно на первых секундах-минутах показывают макет и сразу можешь понять сможешь ли сверстать сам или нет, если понимаешь, что не сможешь, то смотришь как автор это сделает, узнаешь новое для себя.

    По php. Читать большие и толстые книги пока бессмысленно, всё прочитанное будет вылетать из головы. Ставишь OpenServer, и сразу в бой:
    1. Переменные, условия, циклы, массивы.
    2. Пользовательские функции
    3. Базовые функции по работе со строками и с массивами. Комбинация функций. (важно понять и запомнить что они умеют).
    4. Post и Get запросы, получение Post и Get запросов из формы (тут сразу и html по формам подтянешь)
    5. Базы данных, простые запросы к базе, выборки, запись в базу данных из формы.
    6. Куки, сессии.
    7. Чтение и запись в файлы.
    8. Регулярные выражения.
    9. ООП, базовые понятия. Самое сложное и непонятное для новичка. Непонятно потому, что не ясно зачем это нужно и почему это в дальнейшем упрощает работу, поэтому как-то мимо ушей все пролетает.

    Если с английским хорошо, то codecademy.com.
    Если плохо, то базовую теорию (и сразу практику) делать здесь.

    Далее лучше сразу переходить на фреймворк (лучше Laravel). MVC в теории тоже понимается плохо потому, что пользу донести до понимания новичкам сложно, а при работе с фреймворками сам понимаешь почему это удобно.
    Во время изучения фреймворка и ООП подтянешь.

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

    То есть чтения меньше, практики больше. Это про голый PHP.

    Про фреймворк, если английский позволяет то Laracasts: Laravel 5.4 from scratch. Если не позволяет, то ищешь в ютубе что-то вроде "простой блог на Laravel", смотришь и кодишь параллельно у себя.
    Тут тоже самое, под попкорн просмотреть всю серию роликов от начала до созданного блога с админкой бесполезно. Обнаружится потом, что не можешь даже базовые вещи сделать. Нужно делать параллельно с автором, он делает какой-то функционал, смотришь, делаешь также, изначально может быть непонятно многое и зачем автор это делает, но со временем поймешь как это работает.

    Далее пробуешь сделать что-то свое, какие-то "фичи", например авторизацию с помощью соц. сетей, лайки к постам и комментариям (с помощью ajax, тут можно jQuery изучить чуть-чуть), вложенность комментариев и т.д. Можешь другой себе проект придумать(представь себя стартапером).

    Далее можно изучить системное администрирование чуть-чуть, покупаешь VPS недорогой, ставишь Nginx, MySQL, PHP-FPM и т.д. Пробуешь залить туда свой проект, так чтобы всё работало. Далее можешь попробовать прикрутить какой-нибудь поисковый движок (Sphinx, например). Изучение командной строки тоже на codeacedemy.com есть.

    Возможно для фриланса это и не особо нужно, но при устройстве на работу (в том числе и удаленную), будет не лишним, во многих вакансиях это требуют даже от Junior'ов (но в вакансиях любят преувеличить).

    Сам изучаю всё это недавно. До этого был Python+Django(первый фреймворк). В команде никогда не работал. Так что можно сказать передаю опыт от новичка новичку.
    Ответ написан
    3 комментария
  • Как сделать такой эффект фона?

    Antonoff
    @Antonoff
    Разработчик
    Комментировать
  • Как и когда вы повышаете квалификацию?

    @FoxInSox
    Не очень понятно какого ответа вы ожидаете, т.к. чудес не бывает: в сутках 24 часа и выхода всего два:
    1. Повышать квалификацию на работе: внедрять в текущие проекты современные фреймворки, языки и/или менять платформы со старых на новые. Само собой начальству необходимо объяснить какую они выгоду получат и сколько им будет стоит внедрение (Пример: внедрение CI и написание тестов. Плюсы: уменьшает количество багов на продакшене, увеличивает качество кода. Стоимость: 4 часа настройка CI сервера, от 0 до 1 часа в день на тесты). И тут либо вы не умеете объяснять, то это ваша проблема, либо начальство не слишком адекватное и выход тоже очевиден: смена работы.
    2. Повышать квалификацию после работы и/или в выходные: на Курсере в среднем 2-х или 3-х месячный курс требует около 5 часов в неделю - это меньше часа в день. Собственные проекты прекрасно так же разрабатываются если им уделять около часа в день. Вы не правы что с "таким графиком" новые технологии не получится изучать. С учетом того что 90% разработчиков в принципе ничего не изучают, то даже час в день даст плоды в перспективе. Самообразование в свободное время это всегда компромисс между инвестициями в знания и отдыхом/семейными делами/едой и прочими бытовыми вещами. Этот компромисс можете найти только вы сами и никто больше.


    PS1 работа с 9 до 18 это 9 часов. Вы что целый час обедаете или что? Обедайте 15-20 минут, это +40-45 минут в сутки. Можно либо раньше уходить с работы, либо прямо на работе за эти 40 минут почитать, пописать свой проект или на Курсере посмотреть лекцию.
    PS2 насколько я понял в день на дорогу вы тратите около 4 часов - это очень много. Сейчас не вспомню, но есть разработчик местный(на хабре) который тратит на дорогу чуть меньше и читает по несколько технических книг в месяц делая это в основном в транспорте. Если вы на собственной машине, то тут опять выбор за вами: либо держать руль в руках 4 часа в день, либо держать книгу 4 часа в день.
    PS3 причем тут удаленная работа и фриланс не понял в принципе.
    Ответ написан
    5 комментариев