azinit / learn-frontend

Study examples during learning and exploring last frontend tools, libs, solutions.
2 stars 0 forks source link

Пройтись wrk-fet гиду по фронту #6

Closed azinit closed 4 years ago

azinit commented 4 years ago

https://github.com/acilsd/wrk-fet/blob/master/README.md

azinit commented 4 years ago

Об этом FAQ

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

так же ждут толковых обновлений / пулл реквестов

Не освещает вопросы уровня

Можно ли вкатиться в age лет?

Можно ли вкатиться без знаний программирования, матана, функционирования гипертекст протоколов и т.д.?

Можно ли вкатиться без высшего образования или с дипломом заборостроительного ВУЗа?

Есть ли работа?

Ответ на все - да

Сколько времени займет обучение?

Много. В среднем, путь с нуля до уровня более-менее шарящего реактодебила/вьюдераста потребуется около года. Ключевое слово - с нуля.

Могу ли учить верстку/JS после работы по 2 часа?

Можете, но это вряд ли будет эффективно.

Слышал что для устройства на работу нужно портфолио

Мы тоже такое слышали, но обычно под "портфолио" понимают профиль на гитхабе и ссылочки на завершенные/активные проекты (если позволяет NDA | заказчик). В принципе, если не лень — можно даже простенький сайтецкий о себе забацать.

Почему фронтенд вообще существует? Есть же CMS/конструкторы-сайтов.

Жизнь сложнее конструктора.

azinit commented 4 years ago

Интро

Что есть фронтенд

В 2019+ фронтенд это не:

В 2019+ фронтенд разраб - продвинутый формошлеп, который, в основном, копается в JS.

но при этом знания верстки все равно пригодятся

Требования Junior

azinit commented 4 years ago

Верстка

Основы

Все вместе:

  • типовая разметка,
  • работа с текстом / картинками / ссылками / таблицами / списками
  • формы / инпуты / лейблы

ИТОГО: Умение верстать простую статику, без новомодных фич / семантики / модульности / бэмов / отзывчивости

ПО ВРЕМЕНИ: Около месяца

ЧТО СМОТРЕТЬ: (источники в статье)

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

Advanced

ИТОГО: Получаем верстальщика, могущего заверстать статику любой сложности и теоретически уже работать за дошираки

ПО ВРЕМЕНИ: 1-3 месяца

ЧТО СМОТРЕТЬ: (источники в статье)

FAQ

В чем работать?

  • В чем угодно. Универсально - Atom / VScode
  • Либо же вообще Sublime / NP++

Что делать дальше?

  • Сверстать пару макетов и к JS
  • Стоит закрепить гит / терминал и попробовать убунту
  • Стоит поковырять галп / вебпак

Туторы по гитхабу

azinit commented 4 years ago

JavaScript

Добро пожаловать в ад

На самом деле, в мейнстриме набор:

Не упарываться, т.к. задачи адаптируют под ньюфагов

over9000 ссылок Spellbook of Modern Web Dev

image

azinit commented 4 years ago

Основы

Лучший JS учебник - Кантор

Читаем про сам язык, скипаем особенности работы в IE6, задачи - избирательно.

Еще лучше - англ. версию, более актуальна и очищена от мусора

Но стоит разнообразить другими источниками, для понмамния (см. в статье)

azinit commented 4 years ago

Продолжение

ИТОГО:

azinit commented 4 years ago

Advanced

Промышленное программирование

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

Выбор фреймворка

Первое и единственное решение, которое нужно принять: на какой фреймворк садиться.

Первый стул - React

Традиционный выбор 2015-2018+

+ JS центричность

+ Высокий, но "плоский" порог входа

Придется изучить все, что пригодится после - тот же вебпак + Много вакансий + Много материалов + Прекрасное комьюнити

- Многое нужно прикручивать саомстоятельно

CSS / Router / StateManagement / ... - Работа с формами Хоть и есть куча либ - есть для них и свои кучи багов - React - для Facebook Возможно через полгода все придется переписывать - Редакс - все еще стандарт, со всеми вытекающими

Второй стул - Vue 2

+ Много что идет из коробки + Простота и интуитивность + Приятно шлептаь формы - Много копипасты с фейсбука - Меньше работы

Второй c половиной стул - Angular

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

+ Вообще все есть из коробки + Шедевральное CLI + Комьюнити суровых энтерпрайзеров + Много работы

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

Также есть куча табуреток: [AngularJS], Backbone, Inferno, Preact, Aurelia, Mithril, Polymer, Ember, ExtJS


Изучение фреймворка

Куча ресурсов в статье

А также

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


Сборка

Учим вебпак - без него никуда

А что дальше?

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

TL;DR: берите TS, не прогадаете

Не забываем про линтинг - тот же ESLint избавляющий от совсем тупых ошибок


Лицензии

Для чего, какую лучше применить, что разрешают, а что нет - знать нужно.

https://tldrlegal.com/


Трудоустройство

На собесе

Основное - рассказ о себе и свои проектах

Готовьтесь

> Платиновые вопросы

Порой хвалят ФП

Хотя из-за наплыва "адептов функциональщины" и "детей ES6" - просят переписать под ES5

azinit commented 4 years ago

Дополнительно

Английский

Нужен. Просто нужен.

Как учить?

Практикой и погружением

Подкасты

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

Игры

azinit commented 4 years ago

Прочие мелочи

Правда ли, что JS был придуман за 10 дней? Мой друг Вася-Джавист сказал, что это ущербный недоязык, хах.

Первая спецификация действительно была разработана и утверждена в кратчайшие сроки, и предназначалась для решения примитивнейших задач (оживить картинку, подсветить кнопочки). С тех пор прошло очень много времени, от первой спецификации осталась только общая концепция да парочка досадных багов, которые нельзя пофиксить из-за обратной совместимости (typeof Null, ага).

Нужен ли матан?

Скажем так: лишним не будет, но и без него frontend разработчик не чувствует себя ущербным. Полезными будут знания дискретной математики, теории чисел и графов, а также основы теории алгоритмов (впрочем, это уже CS). Все это вполне изучается самостоятельно в свободное время. Для практики в этом деле лучше использовать Python: он более строгий, лаконичный и понятный. Хотя и на ES6 получаются очень даже красивые решения всяких олимпиадных задачек.

Хочу фрилансить!

Фрилансить версталой - гиблое дело. Да и вообще фрилансить без опыта работы - гиблое дело. Да и вообще фрилансить в 2017 - гиблое дело. Адская конкуренция, кривые ТЗ, неадекватные заказчики, баны на апворках и прочие прелести ждут. Но никто не мешает попробовать.