Pull to refresh

Comments 33

Ох уж мне эти «примерные пути начинающего фронтенд-разработчика»
Итак, какие технологии должен освоить фронтенд-разработчик

Меня вообще всегда поражают эти списки, которые кто-то должен освоить. А С# программист сначала должен освоить C++, а перед этим Си, Ассемблер, написание драйверов и модулей ядра, программирование микроконтроллеров, сетевое программирование на всех уровнях OSI, машинные коды, схемотехнику, электронику, ТОЭ, иметь ученую степень по физике и математике, знать сто фреймворков, 200 архитектур, 300 паттернов проектирования и 400 алгоритмов, а еще посадить дерево, построить сына и вырастить дом. Разработчик НИКОМУ НИЧЕГО НЕ ДОЛЖЕН, его либо берут на работу, либо не берут. А он в свою очередь либо справляется с поставленной задачей, либо нет. Простите, накипело.
не с той стороны смотрите. надо думать так:
в 99% случаев _хороший_ программист проходит путь от изучения спектрума (условно), от чтения тематических журналов, через написание малюсеньких программ в школе, через хотя бы поверхностное изучение основ работы компьютеров, процессоров, через «вау, как я могу!» от написания своей первой программы на c под winapi (тоже условно) до работы в самых разных компаниях, но чтобы обязательно, оглядываясь назад, кружилась немного голова от былой наивности и даже глупости (по собственной же оценке).
отличные программисты знают ещё и математику.
но это едва ли не пятая часть всех программистов. остальные — просто «компьютерщики», почему-то решившие, что они программисты. так что не расстраивайтесь — ничего вы не должны ))
Большинство начинающих айтишников отсеиваются на этапе «хочу стать программистом и получать зарплату в долларах, но не думал, что придется так много учиться». Уникальность программирования и вообще любой айтишной специальности в постоянном самообучении.

Всегда вспоминается


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

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


Кстати, о тестерах: современный фронтендер должен не просто иметь представление о тестировании, но и обладать практическими навіками юнит-тестирования, как минимум. Мокко, Жасмин и т. п. должны быть его обычными инструментами.

> но и обладать практическими навіками юнит-тестирования, как минимум. Мокко, Жасмин
Не путайте фронтенд и бекенд. Даже используя Селениум это боль и страдание, а не юнит-тестирование.
Юнит тестирование во фронтенде, вообще говоря, невозможно. Поскольку FE оперирует другими абстракциями — это не к библиотеке тесты писать.
Вы спутали юнит и функциональные тесты. Селениум и иже с ним это, как раз, функциональное тестирование. Мокка и Жасмин — юнит. Функциональное тестирование фронта — это, да, боль и страдание. Юнит не более обременительно, чем в любых других языках, поскольку тестирует работу отдельных частей кода, а не всего приложения в целом. В случае js юнит-тестирование даже облегчено, так как нет private и прочих protected, так что можно добиться чуть ли не 100% покрытия.
Итак, какие технологии должен освоить фронтенд-разработчик:
Понимать принципы построения бекэнда и разбираться в серверных технологиях (Node.js, PHP, Ruby, .NET и т. д.)
Базы данных и языки запросов (SQL, MySql, NoSQL, MongoDB и т. д.)
Как говорится, начали за здравие, а кончили…

В итоге сами же смешали Front-end и Full stack разработчиков.
Я правильно понял, что вся эта довольно пространная статья затевалась ровно ради ссылки на " программу подготовки фронтенд-специалистов — «Профессию front-end разработчик»" в конце?
Иначе зачем были бы нужны корпоративные блоги за деньги?)
UFO just landed and posted this here
Спасибо за обстоятельный и конструктивный комментарий! Действительно, в статье приведен «идеальный» стек навыков, и не все из них, понятное дело, надо изучать досконально. С некоторыми из технологий и инструментов вполне достаточно просто ознакомиться. Мы за широкий кругозор у разработчиков :)
Бестолковый комментарий. После «сетки нужны тем, кто не умеет верстать» можно было бы дальше не читать, но там еще много подобного. Типичный комментарий от человека, пришедшего во фронтенд без верстки, сапожники без сапог.
А вот сетки и фреймворки нужны только тем, кто не умеет верстать или делает быстрые прототипы «тяп-ляп и в продакшен».


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

А дальше фигурируют Hadoop и Spark, чисто для примера. Что снижает доверие к автору, приводящему эти данные, почти до нуля.

Спасибо, что обратили внимание. Мы забыли упомянуть, что к статье и теме фронтенда относятся не все технологии с приведенного скрина. Сейчас поправим. По поводу источника данных — это из отчета StackOverflow, в оригинале график называется «Frameworks, Libraries and Other Technologies». А почему вам не понравились именно Hadoop и Spark?

Проблема в том, что они никакого отношения к фронтенду не имеют. То есть ни малейшего. То что кто-то знает эти технологии и занимается фронтендом — чистое совпадение. С тем же успехом можно сюда включать SQL, знание Windows/Linux, и так далее.

Откуда пошли фразы типа «умеет в JavaScript»? «Знает JavaScript» звучит как-то правильнее.

Знать ЯП и уметь на нём программировать — немного разные вещи.

Я о странном для меня использовании предлога «в» — «умеет в компьютер».
Подозреваю, что это калька с «be able to».
Такая мода последние 2-3 года в IT кругах. Плохая калька с английского + наплевательское отношение к русскому языку. Часто встречаю в статьях, чуть реже в презентациях и в выступлениях.
Наверное, думают, что это как-то подчеркивает их «профессионализм». Лучше бы выучили как -тся/-ться пишется и когда ставится мягкий знак после ч|ш.
Тут все как обычно: пошло от старого мема про Polandball: «Poland cannot into space» — «Польша не может в космос». Ему уже 5 лет.

"Смешались в кучу кони, люди." Если frontend разработчик буде знать все что здесь указано, да еще и развиваться… То всех остальных разработчиков можно увольнять. Зачем их держать, если он и нарисует и сверстает и backend сделает.

Хм… У меня вопрос: какого хр*на верстальщик (а фронтенд разработчик это именно верстальщик и никак иначе) должен знать SQL и серверную сторону?
а фронтенд разработчик это именно верстальщик и никак иначе

У нас это две разные позиции, фронтендер пишет JS во взаимодействии с версталщиком и бэкендером.


должен знать SQL и серверную сторону

Ну не то, что должен, но базовые знания — это плюс. Может открыть код сервера и посмотреть, например, что отдаёт ему или ждёт от него вызов API, с которым его нужно реализовать взаимодействие. Ну и локально может поправить где-то, типа моков/стабов себе сделать для отладки

Не у всех есть деньги на отдельного верстальщика. А то, что фронтенд — это все то, что выполняется на клиентском компьютере, очевидно из этимологии.
Как всегда участники не объективны(досконально), и не забывайте былой специалист на след. день попросту может иначе мыслить, грубо говоря всё измениться.
>>Что должен уметь фронтенд-разработчик

И получился фуллстек. Причём, вам и node.js/express подавай и всякие CMS на php.

Особенно это доставило:

>>Базы данных и языки запросов (SQL, MySql, NoSQL, MongoDB и т. д.)

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

Явно напрашивается — ещё должен уметь дизайн рисовать! А почему нет? С таким то списком обязанностей. Дизайн будет совсем не лишним! Золотой работник! И на зарплате можно сэкономить. Платить одну зарплату за пятерых. Мечта галер.
KPI еще не забыть на количество LOC, это обязательно.
HTML и CSS лучше начинать изучать на каком-нибудь интерактивном курсе. Из русскоязычных – HTML Academy

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

А как же клиентская оптимизация? :\

Здравствуйте, друзья! Я — новичок в вебразработке. У меня вопрос: чем должен заниматься бэкенд-программист? Я думал, PHP, MySQL — это его сфера деятельности.
Инструменты контроля версий (Git, GitHub, CVS и т. д.)

Родные вы наши, CVS давно уже умер. «GitHub» вообще не инструмент контроля версий. По этому пункту — местами жив еще SVN; как «интерфейс» к репозиториям (и место хранения) используют Github, Bitbucket.

И еще, любой современный разработчик обязан использовать хоть какую нормальную среду — будь то Vim / VS code / Sublime с плагинами, или Webstorm / eclipse-производные. И обязан использовать ее эффективно. В комментариях минимум Emmet уже упоминали.
Sign up to leave a comment.