TECH · 21 марта 2017, 11:34 · Отдел информации dev.by
Как стать разработчиком? Пошаговый план изучения веб-технологий

Разработчик Камран Ахмед визуализировал путь «становления» веб-разработчика, раскрыв все важные этапы получения знаний для будущих фронтенд-, бэкенд- или DevOps-инженеров.

Иллюстрация: Kamran Akhmed

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

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

Иллюстрация: Kamran Akhmed

Иллюстрация: Kamran Akhmed

Иллюстрация: Kamran Akhmed

В продолжение темы разработчик Брендон Морелли составил подробный перечень ресурсов для изучения веб-технологий. Его список сосредоточен в большей степени на изучении JavaScript, React и Node.js. Кроме этого, рекомендации содержат ссылки с информацией о подготовке к интервью и успешном трудоустройстве.

Источник: dev.by
Вакансии
Новые комментарии

Обсуждение

Picture_54?1356409795
faketail
– программист в BELHARD

-1

Всё так, но в чем собственно смысл схем для тех, кто реально стремится в разработчики не очень понятно, несколько кэповство.

Missing
+1

> Как стать разработчиком?

поправьте заголовок. не разработчиком, а веб-разработчиком

Missing
+2

Полная бредятина.

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

И ёщё - не упомянуть Java и .NET для фронт/бекенда это заболевание.

6178553c3088be31671f8146ba91fd4b?1401052672

> Девопс это не роль, это культура в компании.

Что нисколько не мешает существованию спецов по этому направлению. Уж не знаю, кто там где что перемалывал.

> И ёщё - не упомянуть Java и .NET для фронт/бекенда это заболевание.

А какое отношение имеет Java и .NET к фронтенду? А в бэке, если вы не заметили, они есть.

Missing

"Специалисты по этому направлению" конечно есть, только они совсем не те, о ком вы думаете. Это менеджерская работа по изменению культуры компании и постановки правильных процессов, поэтому нет, это не инженерская специальность. Для того, чтобы работать в компании с devops культурой, вам (нам) как специалистам не надо иметь каких-то специальных навыков, поэтому нет, диаграма сверху она не правильная, поскольку авторы не понимают что такое devops. А не понимают потому, что термиин devops выбран ошибочно, так как даёт интиутивно неправильное определение данному термину. Это не только для не-англо говорящих, а для всех.

Предлагаю прогуглить термины "what is devops" и "what is front end in software architecture" и возможно на многие вопросы найдутся ответы.

Front-end concern не обязательно начинается/заканчивается с браузера даже в web. Я не ожидаю многого от автора диаграмы, который явно "джаваскрипт специалист" это больше для читающих новичков чтобы не осталось неправильного представления о реальном состоянии дел.

6178553c3088be31671f8146ba91fd4b?1401052672

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

> Front-end concern не обязательно начинается/заканчивается с браузера даже в web.

Чем же еще может быть фронт в вебе с Java и .NET? Я не то, чтобы сильно новичек, но, кажется, не в курсе "реального состояния дел".

Missing

ну видно, что не в курсе. Какое администрирование и разработка одновременно, я писал сверху это вообще малое отношение к девопсу.

Это изменения процессов внутри компании, это вовлечения бизнеса в процесс, это интеграция команд путём стирания границ между ними, автоматизация процессов, распределение ответственности и т.п. Это чисто менеджерские обязанности.

Если кто-то думает по-прежнему что devops = development + operations админ и программер в одном флаконе, то флаг в руки, как бы, какая разница, просто это совсем не так или маленькая и необязательная часть того что есть devops.

Ну а про фронт-енд java, front-end это concern в архитектуре, это не джаваскрипт per se, лениво писать, прогуглите Java EE 7: Front-end Web Application Development хотя бы для начала.

6178553c3088be31671f8146ba91fd4b?1401052672

> Это изменения процессов внутри компании, это вовлечения бизнеса в процесс, это интеграция команд путём стирания границ между ними, автоматизация процессов, распределение ответственности и т.п. Это чисто менеджерские обязанности.

> просто это совсем не так или маленькая и необязательная часть того что есть devops

В корне не согласен. Причем тут "вовлечение бизнеса в процесс" и "распределение ответственности"? Какие-то общие слова. Можете конкретные примеры? Я вот могу. Настроить CI - это DevOps. Чисто инженерная задача. Win-win для разработчиков (меньше рутины) и для product owner'а (более стабильные релизы).

> прогуглите Java EE 7: Front-end Web Application Development

Погуглил - курс от Oracle. "Students will create web-based user interfaces, using HTML5 and JavaScript along with JSPs and servlets." HTML и JavaScript, Карл!

Вы расскажете про другой front-end, кроме браузера в вебе? Или будете отправлять гуглить технологии без объяснения, что вы имели в виду?

7df30b74d305843fa914ee4b84813649?1493662890
+1

Касательно понятий front-end и back-end. Если повспоминать, то я встречал разные интерпретации:

- клиентская часть и серверная часть;

- пользовательский интерфейс и админка;

- быстрая сервачина, решающая что делать с поступающими запросами: то ли считать, то ли в кеш идти. И в противовес: банда серьезных серверов-считателей (back-end).

Много разных историй бывает. Я не понимаю только зачем люди пафосно щёки надувают, вместо того чтобы сразу мысль объяснить :)

Missing

Я был бы рад, если бы мне сказали ты не прав и ознакомься с предметом детальнее, какой тут пафос? Эти вещии имеют устоявщиеся определения и понятия, при чём тут личные мемуары? Если человек упорно считает что "front-end в вебе это браузер", а девопс это программист устанавливающий дженкинс, то это его личное, но надеюсь, что кто-то засомневается и получше разберётся в предмете.

6178553c3088be31671f8146ba91fd4b?1401052672

То есть никакого примера front end в вебе, кроме браузера вы привести не можете?

> Эти вещии имеют устоявщиеся определения и понятия

Ну хорошо, давайте откроем википедию (не то, чтобы сильно авторитетный источник, но все же).

https://en.wikipedia.org/wiki/Front-end_web_development

"Front-end web development, also known as client-side development is the practice of producing HTML, CSS and JavaScript for a website or Web Application"

Дальше определение Web Application (https://en.wikipedia.org/wiki/Web_application)

"In computing, a web application or web app is a client–server software application in which the client (or user interface) runs in a web browser."

Да, html, js и css можно заменить чем-то другим, но в браузере оно все равно будет представлено этими 3-мя составляющими (на данный момент).

> Если человек упорно считает что

> девопс это программист устанавливающий дженкинс

То есть вы мои сообщения не читаете? Я повторю.

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

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

Missing

Ну вот навскидку джава фронт енд спеки/фреймворки jsp, jax-rs, милион всяких struts/spring mvc/sitemesh лейатув енджинов, xslt, gwt, всякие pdf-renderers, grails, applets, swing (web deployed) можно быть 20 лет front-end джава спецом и вообще не трограть джаваскрипт. Поэтому если мы говорим "java" и добавляем "front end" мы подразумеваем весь спектр технологий. Я не спорю, для js специалиста это всё темный лес (как для меня к примеру какие нибудь embedded системы или mainframes но я туда и не лезу).

>> который помогает разработчикам ставить эти самые процессы."

Отнюдь. Что такое программирование? Это тарабанщина по клаве и смотрение в монитор - не поспоришь, неотъемлемая часть. Покрывает это ответ? Нет. Devops это прежде всего процессы компании, на них админ и программер не имеет никакого влияния. Хоть 10 пядей во лбу и знания всех систем. Вы не заставите бизнес принять и использовать CD, ваши все CI процессы хороши для вас прежде всего, но это не делает вас DEVOPS компанией без всех процессов. Продукт оунер наплевать на ваши внутренние процессы в данном случае если только оно не делает чтото дешевле, а оно не делает, как правило. Автоматизация билдов, деплойменты, CI and automation tests это часть, но важная часть. Можно быть DEVOPS команией без CI. Поэтому в DEVOPS компании все члены команды девопс-специалисты. Также как если невозможно быть девопс специалистом в компании где девопс это только.CI & automation tests. Это всего лишь специалист по CI и спец по тестам. Так что без CD (которое бизнес, в первую очередь) и уменьшения длины дев цикла ( которое обычно не происходит по массе причин) это все не девопс.

Поэтому диаграмма сверху с 3 ролями и одна из них DEVOPS (еще и ответвление от бэк-енд роли) это полная бредятина - но не по злому умыслу, ессно, а по незнанию,

6178553c3088be31671f8146ba91fd4b?1401052672

Спасибо, теперь я хотя бы понял, о чем вы. Такая точка зрения возможна. Правда с таким же успехом в front end можно записать 100500 фреймворков и шаблонизаторов из других языков. Но ок, принимается.

> Devops это прежде всего процессы компании, на них админ и программер не имеет никакого влияния.

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

> Продукт оунер наплевать на ваши внутренние процессы

Тогда это плохой product owner.

> если только оно не делает чтото дешевле, а оно не делает, как правило

У меня абсолютно противоположное мнение на этот счет.

6178553c3088be31671f8146ba91fd4b?1401052672

Владимир, спасибо! Действительно хороший пример другого front end в вебе - "быстрая сервачина, решающая что делать с поступающими запросами". Только тут это очень широкое понятие, и обычно используют более конкретные термины, чтобы не было путаницы: балансировщик, кеш-сервер и whatever что может стоять перед серваками. Ну и статья про другое.

Picture?type=square
Vitaly Borisok
– Java Developer в ISsoft

Как тут в комментариях и было сказано: понимание где находится граница между бекендом и фронтендом - слегка размыта. :)

Например, JavaServer Pages - это back-end или front-end? :)

А GWT - это что? :)

Missing-male
+3

Ветку по яве вообще обделили, никакого стека технологий не описали

6178553c3088be31671f8146ba91fd4b?1401052672
+2

По рекомендациям могу предположить, что автор просто не сталкивался с Java и .NET, но не упомянуть их не мог.

В любом случае проект на github, и вы можете помочь автору. Roadmap уже успел поменяться с момента публикации на dev.by

6178553c3088be31671f8146ba91fd4b?1401052672

Вполне годно. Только в 2017 для фронтэнда я бы рекомендовал PostCSS, а не SASS и убрал бы из рекомендаций jQuery. Redux - это одна из реализаций flux, так что странно их видеть как альтернативы друг другу, а вот про MobX забыли. И CSS3 обязательно в рекомендации.

Для python включил бы еще Flask в рекомендации. Для nodejs - Koa.

Для DevOps обязательно включить безопасность.

И вебсокеты во все три roadmap'а.

Missing

Сорри, конечно, но где тут пошаговый план???


Авторизуйтесь, чтобы оставлять комментарии

© 2008-2017 Частное предприятие "Дев Бай"
Использование материалов, размещенных на сайте, разрешается при условии прямой гиперссылки на dev.by. Ссылка должна быть размещена в подзаголовке или в первом абзаце публикации.
datahata — хостинг в Беларуси