Pull to refresh

Comments 105

Тот кто умеет писать JS код, тот и пишет. Если программист PHP и верстальщик не умеют, то кто-то другой.
:) так оно и есть. Если дизайнер рисовать не умеет, пусть рисует кодер. Иначе ногой под зад и - какого черта мне вообще содержать всю эту панибрацию?
по моим представлениям на данный момент - программист серверной части web-приложения, или как минимум человеком, знакомым с этим, с используемым на серверной части API, и т.д..
И да, почему именно PHP-то?
Привел пример конкретной компании, занимающейся разработкой на PHP + MySQL
Пояснение: если в компании нет кодера, я имею ввиду Front-end разработчика, который занимается написанием различных интерфейсов со стороны пользователя. Кто по вашему мнению должен выполнять его обязанности - программисты (Back-end разработчики) или верстальщики. Если не тяжело поделитесь боевым опытом.

P.S. И программисты и верстальщики владеют JS. Интересно на кого бы вы переложили обязанности Front-end разработчика.
Ситуация тут крайне непростая: с одной стороны PHP программист должен концентрировать свое внимание именно на серверной части, не даром хорошим стилем является отделение интерфейса он бизнес-логики. С другой стороны верстальщик должен в первую очередь делать интерфейс красивым, а все остальное - это только потом.
JS код может быть как для создания каких-нибудь доп. красивостей, так и для достаточно сложных действий (типа OS-like GUI), которые являются чем-то средним между бизнес-логикой и гуём, поэтому в зависимости к чему ближе в конкретном проекте JS, тот и занимается, т.е. если JS только для интерфейса - то лучше пусть им займется верстальщик, а если часть бизнес-логики - то лучше поручить это PHP программисту.
Красивым интерфейс должен нарисовать дизайнер. А верстальщик должен его «оживить» и сделать удобным в использовании. Это предполагает использование и js тоже. С другой стороны, если речь идёт о сложной логике на стороне клиента, то очевидно, что для её реализации требуется отдельный js-разработчик.

А если мы вынуждены выбирать в качестве js-разработчика между верстальщиком и php-программистом, то у нас явно проблема с кадрами :)
UFO just landed and posted this here
JS - это язык программирования, выполняется на клиентской машине, поэтому, не совсем понятно, почему в голосовании указан именно PHP программист (Существуют и др.: C#, JAVA). Однозначно писать должен программист, какой конкретно, зависит от устройства компании и штата (Уже давно состоялась профессия Java Script программиста, гуглите: "js программист вакансии").
'Уже давно состоялась профессия Java Script программиста'. Ой ли..
Мы живем в прекрасной стране, где HR нанявший человека,писать только JS,
вылетит с работы раньше , чем успеет сказать 'HeadHunting'
ну-ну
я вот нанят как javascript-программист
в москве
или имеется в виду другая страна?
Да, имеется в виду другая страна. Россия =)
ага, я ожидал эту шутку : )
но интересно послушать re7
имеется в виду -->прекрасная
Намного больше ценится профессионал в одной области, например в JS, чем мастер на все руки: фотошоп, дримвевер, php, mysq и пару десятков других слов, с которыми он сталкивался только бродя в интернете.
UFO just landed and posted this here
вот имеено так и должно быть. Допустим я как server-side programmer и кое-чего понимающий в JS могу что-то написать, дописать, но самую малость (prototype, jQuery, ...). Если проект большой и требует значительной части работы на стороне клиента, то однозначно должен быть отдельный человек.
UFO just landed and posted this here
UFO just landed and posted this here
должен писать специалист компетентный в вышеуказанной технологии

в организациях с небольшим числом разработчиков часто эти функции совмещаются, зачастую один из разработчиков серверной части занимается разрабткой клиентского слоя

но опять таки, клиентская часть бывает очень разной по объёму работ
а из этого следует - если клиентскачая часть достаточно "навороченная" то сервер будет не менее сложным

из за этого либо достаточно разрозненные вещи лягут на одного человека, либо на пару, как повезёт)
Нет там никаких "разрозненных вещей". Код может довольно-таки свободно гулять между серверной компонентой и клиентской (особенно если используется что-то типа GWT). Конечно если задача JavaScript'а - просто какие-нибудь красивости и с сервером он не работет, то тут другое дело, но тут и вопрос бессмысленен: если Javascript в приложении элементарен и пишется "на раз" - то не всё ли равно кто его пишет ?
под разрозненными вещами я имел в виду немного другое

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

между севером и клиентом устанавливается протокол взаимодействия, и это единственно что их связывает

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

два разных типа приложений, вот что я имел в виду
Я и верстаю и програмлю сам, поэтому сложно ответить на этот вопрос :) я вообще считаю что программер и должен верстать. Если такая разделённость я даже незнаю как тут быть с аяксом :)
Я уже высказывался на эту тему: "вестальщик" - это пятое колесо в телеге. Не нужен он. В принципе. Разве только для статических страниц - но такие уже давно большая редкость. Сложная страница зачастую собирается из десятков компонент, которые вообще могут вырабатываться не на одной машине - и вёрстка будет зависеть не только от того, что должно получиться в результате, но и от того что там может получиться и в каких случаях. Наличие отдельного верстальщика оправдано только в том случае, когда разработка ведётся "методом водопада" и в конце сдаётся, а переделывать работу никогда не приходится. В противном случае программист всё равно должен понимать как устроена вёрстка и как она отреагирует на те или иные изменения - а этого проще всего добиться когда он сам её и разрабатывает.
UFO just landed and posted this here
У вас, на сколько я понял, достаточно однотипный опыт.. Существуют другие проекты, в которых ваш процесс не работает.
UFO just landed and posted this here
Что происходит когда после всего этого требуется изменить внешний вид проекта (в каком-то месте нужно увеличить текст, в каком-то - уменьшить, добавить пару кнопок, и т.п.) ? Если вы клепаете сайты "под заказ", то вас это не волнует - но в моей практике на начальный дизайн уходил такой мизер времени, что было абсолютно неважно - займёт это два часа или два дня, а вот затраты времени, уходящее на всевозможные преобразования дизайна (которых иногда пару десятков приходится проделать до релиза) - это другое дело.

P.S. Может я потому так ко всей этой деятельности отношусь, что и "php-программиста" я не признаю. Программист - он программист. Сегодня он пишет на PHP, завтра (если потребуется) - на С++ или Erlang'е, послезавтра - на XSLT или Python'е... Конечно потребуется некоторое время на переучивание (последние 4-5 языков обычно находятся в активном состоянии, остальные забываются и при необходимости их использовать приходится пользоваться справочниками), но чем CSS/HTML хуже чем SQL ? Для запросов в базу отдельного человека будем теперь держать ? И ещё одного для написания Makefile'ов ? Да иногда услуги человека, который в тонкостях знает что-то одно (скажем умеет оптимизировать запросы в базу строго под Oracle или писать драйвера блочных устройств под Linux) оправданы, но обычно всё упирается в то, что
1) его сложно загрузить если у вас в фирме не 10'000 человек и
2) зачастую для введения его "в курс дела" уходит столько времени что "овчинка выделки не стоит"
Вторая причина - гораздо более важная, чем первая...
UFO just landed and posted this here
UFO just landed and posted this here
Ну если его функции ещё чуток расширить и добавить туда несложное программирование, то да - в таком человеке уже есть смысл.
UFO just landed and posted this here
А если его функции расширить и дальше, то получится неплохой секретарь-референт, а может быть даже уборщица.
Всё просто.
Если код содержит мудрёный алгаритмы, и систему по захвату мира, то тут должен програмист возится (php програмист сойдёт).
Но если код влияет на вёрстку (двигает блоки или меняет цвета,кому что в голову придёт) ,то тут нужно запрягать верстальщика.
Аякс по вашему система захвата мира? Кому отдадите отправку комментариев на аяксе? Может сразу дизайнеру?
Нет! Уборщице. Вы просто придираетесь к словам(на JS можно и ядерный реактор рассчитать, главное чтобы руки из того места росли).
Судя по вашим словам (что JS можно отдать верстальщику) на JS можно только рюшечки делать.
его можно отдать верстальщику если он рюшечек делает больше чем сложных расчётов. А если вестальщику не хватит мозгов на эти расчёты, то он пойдёт просить php програмеров чтоб они ему "ухо почесали".
UFO just landed and posted this here
В том-то и дело что JavaScript, который мало чего меняет встречается редко, JavaScript, который не включает в себя сложных алгоритмов в современном мире - тоже редкость и в результете верстальщик оказывается скорее вредной штатной единицей, чем полезной: нужен человек, который умеет программировать и верстать. А уж как его назвать - не так важно...

Хороший пример: Google Spreadsheets. Сейчас в них можно сделать несколько тысяч строк и не убить при этом браузер (при том что многие аналогичные табличные widget'ы уже при таблице 100x100 начинают безбожно томозить). Как это достигнуто ? За счёт грамотной верстки. Но чтобы понять почему эта вёрстка должна быть именно такой нужно немного понимать как работает браузер и какая сложность у разных, используемых при этом, алгоритмов. Ну и кто это разрабатывал ?

P.S. На практике обычно оказывается проще отправить программиста на курсы вёрстки, чем обучить верстальщика программировать, но движение в обратном направлении тоже возможно.
Верстальшик должен генерить хтмл код и ксс. А заставоять это плясать должен пхп программер. Если яваскрипт нужен для рюшечек типа смены цвета кнопки, то это можно отдать тому кто лучше знает яваскрипт. Если же аякс, то это надо отдавать пхп программеру, или заставить его написать чёткое тз о том что и куда должно посылаться на сервер.
UFO just landed and posted this here
UFO just landed and posted this here
Каждый должен заниматься своим делом.
К примеру если программист будет делать дизайн, то это будет ужОс (Ну конечно есть исключения. Но тогда стоит задуматься как у него с программингом...).
Сколько не разрабатываю скрипты, всегда js пишу сам, более того, мне нравится работать с js, и писать на нём код. А так, согласен. Тот кто лучше умеет делать, тот и должен делать (или программист, или верстальщик, или js программист :) )
UFO just landed and posted this here
Должен делать тот, кто это сделает качественно и быстро.
В принципе и дизайнер может написать, наверно, если ему дать много времени и гугл (:
Много времени — сегодня это слишком дорого.
Как раз это я и пытался отразить в своём комменте, написав слова: качественно и быстро
UFO just landed and posted this here
Ну GWT никто не заставляет юзать, если вы конечно не в гугле работаете...
UFO just landed and posted this here
Неправда ваша. Нормальный PHP-программист осилит. Более того, войдет во вкус, и его потом за уши от GWT не оттащишь, и уже не заставишь лабать JS "ручками".
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
У меня в команде JS-скрипты пишет верстальщик...
предпочтительнее js-код писать js-программисту
В той цивилизации, откуда они прилетают всё немного по другому устроено, здесь им проще нанять людей, дать им много золота, и дать им формулы вычисления кармы, а на выходе получить хороший сайт.
100% js-код должен писать js-программист.
javascript код должен писать программист интерфейсов.
Более неожиданных вариантов ответа на вопрос я не видел :)
js код бывает очень разный, иногда это просто примитивные вставки, которые можно отдать верстальщику. Но если это всё-таки существенный объём кода, то писать его должен программист.

А чистый верстальщик в вакууме - это не программист, а человек, владеющий только html + css и программировать не способный. В минимуме от него требуется из картинки сделать статичную вёрстку, которую потом запихнёт в шаблоны кто-то. В максимуме ему дают доступ к шаблонам. Код он не пишет.
на мой взгляд писать js должен js - программист, а остальные разработчики должни видеть этот магический язык как можно меньше. А лучше бы вообще ничего не знали о клиентской части :-)
остальные разработчики должни видеть этот магический язык как можно меньше

Почему магический и почему как можно меньше?
Просто чем дольше я пишу на js, тем больше мне хочется посмотреть в глаза разработчикам этого языка. Хорошо хоть есть prototype. Он часто выручает.
А может просто еще не достаточно много написали? Последняя фраза как-то заставляет усомниться..
Презабавный опрос!
Может быть, стоит добавить пункт "JS-программист"?)
По хорошему, должен быть программер серверной части и программер интерфейса (и всего что к нему относится). Так, последний натягивает верстку, прилизывает JS, и т.п. Он, по чистой случайности, может быть и верстальщиком.
Я лично не против, чтобы PHP-программист писал JS код, но: во-первых, часто JS код по объёму и сложности не уступает PHP-коду, поэтому вешать дополнительную задачу на пхп-програмера ведёт к сильному ухудшению производительности. Это вовсе не означает, что пхп-программист не должен знать JS, всего лишь разделение труда. JS код должен писать верстальщик, так как верстальщик не знающий JS и DOM, имхо, не годится к работе. Во-вторых, в связи с глобальным веб-2.0 не писать JS код верстальщику просто не получится. В-третьих, верстальщик пересекается с графическим дизайнером, отсюда и графический дизайнер должен знать вёрстку.

Выходит такая цепочка: дизайнер (графика + HTML,CSS) -> верстальщик ([X][HT]ML,CSS,JS) -> пхп-программист (JS,PHP etc).

Это лично моё програмерское имхо, которое пришло со временем и опытом.
Дык тут все зависит от проекта. Если это большой проект с мощными клиентскими скриптами, то нужен специальный человек, который будет писать эти самые скрипты. Если под «JS кодом» понимается еще и ajax запросы, то лучше, чтобы этот человек тесно сотрудничал с программистом серверной части.

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

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

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

Главное, не впадать в маразм.
У меня таких вопросов не возникает)
Я и кодер и верстальщик)
Только с дизайном у меня плохо =)) А то бы полный цикл разработки был!)
вопрос из серии кто идет за клинским
ответ - самый умный : ))

а по делу - кто умеет, тот и пишет. главное, чтобы не проджект менеджер, а то субординация, знаете ли.
Вполне логично, что верстальщик строчит JS, гораздо удобнее управлять своим собственным html-кодом, я лично пишу сам, иногда консультируясь у программистов.
У многих программистов, кстати, есть проблема - недостаточное знание xhtml/css. Мое мнение - клиентскую часть скрипта верстальщику, а взаимодействие с сервером - программисту.
Если JavaScript нужен в первую очередь для визуального отображения, то верстальщик, если для взаимодействия, то PHP-кодер.
под javascript-ом как я понимаю здесь имеется ввиду только гуи, никакого аякса.
и под "верстальщиком" как я понимаю имеется ввиду профессионал с 1-2 годами опыта минимум, и при этом если он не знает javascript - то это голубоглазая блондинка которая верстает кое что другое.

аякс - это взаимодействие с сервером. это в принципе тоже самой что формы на странице.

исходя из этого:
javascript - верстальщику
формы(имеется ввиду что они сверстаны) и аякс оставим на программиста серверной части

ps: но как мы знаем идеальных случаем не много. у нас в компании я верстаю, программирую серверную часть и js сам пишу.
и все потому что ни разу не попался нам верстальщик-профессионал. и по моему опыту верстальщик-профессионал это бывший программист
Даже если все трое умеют писать js-код, все его напишут по разному.

Часть кода принадлежит непосредственно верстке, тут может и должен писать верстальщик.
Другая часть делает что-то с сервером, тут будет лучше если код будут писать пара программистов и оба в курсе что происходит.
Третья делает что-то с пользователем ...
Да вобщем-то и т.д.

Т.е. если js-код должен писать только js-программист то он должен быть вкурсе всех тонкостей по всем направлениям (верстка, хаки, JS, AJAX, XML, и откуда это все берется).
Чтоб получить качественный результат, скриптами на клиентской стороне должен заниматься Front-end разработчик.
Как раз вчера над этим задумался, когда делал очередной проект. И был уверен, что это должен делать верстальщик, т.к. кроме серверных технологий, никакими больше и не владею.

Так что 100% это должен писать верстальщик, если, конечно нет JS программиста. Верстальщик в процессе своей работы должен использовать технологии HTML, CSS, JS - ведь иногда дизайны не совсем простые, а с динамическими элементами - и динамика эта обеспечивается не php а js. Ведь PHP только формирует страницу, которая как раз и состоит и HTML, CSS и JS.
Какой-нибудь User Interface Designer должен этим заниматься. Если он случайно совпал с PHP-программистом или верстальщиком... ну, такое тоже возможно.
А когда-то спорили кто должен верстать - дизайнер или программист? А оказывается, что есть такие верстальщики, специально под это заточены. Так что скоро никого не будет волновать вопрос, кто должен писать код JS.
Мне кажется, что должны быть правильно разграничены роли.
Я встречал проекты (не web-проекты, конечно, но тем не менее), где бизнес-логика обрабатывалась в onclick.
Поэтому, следует поступить следующим образом: есть программист, отвечающий за логику, допустим она обрабатывается на сервере (в оффлайн-приложении: в хранимых процедурах каких-нибудь), и задача управляющего проектами ни в коем случае не допустить того, чтобы она не попала в presentation-tire, а программист presentation-tire'а уже получает готовые, обработанные данные, которые уже волен отображать как его душе угодно (естественно в рамках case'ов), но как только он захочет проверить валидность каких-нибудь данных самостоятельно, тут же должен получить по рукам от управляющего.
Верстальщик - это такая интересная должность, которой почему-то называют "нарезчика html". От которой при разработке web-проекта требуется минимальное участие. Грамотно нарезать PSDшину и дело с концом. Поэтому в рамках определённой занятости "верстать", имхо лучше самому дизайнеру. Если же вам попался такой офигеннейший дизайнер, который супер-красиво рисует в фотошопе, но не знаком с htmlем, то следует задуматься, стоит ли он тех денег, которые на него будут потрачены.
Поэтому в зависимости от сложности проекта fromt-end программингом должен заниматься либо "верстальщеко-дизайнер", либо конкретный "front-end программер".

Это всё моё "имхо" =)
Мне в ближайшем будущем, я надеюсь, предстоит как раз заниматься подобным управлением. Если это всё-таки произойдёт, я думаю, что смогу более компетентно отписаться по этому вопросу.
Возможно этот классический текст поможет ответить на поставленный вопрос. :)
http://lib.rin.ru/doc/i/16704p.html
JS код обычно активно сотрудничает с сервеным кодом (например, через ajax-запросы), поэтому логичнее отдать его написание программисту.
В методологии разработки должно быть указано.
По хорошему должна существовать проектная документация, которая описывает взаимодействие с серверной частью и с UI, программист обеспечит актуальность серверной части (работоспособность вебсервисов и аяксовых заглушек), верстальщик - соответствие UI(правильное наименование объектов и их состояние), а реализовать бизнес-логику сможет любой из них, либо третий.
В противном случае программисту прийдется разбираться с тонкостями наименования полей формы и не допускать их переименования, либо верстальщику с интерфейсами заглушек.
UFO just landed and posted this here
В голосовании выбрал верстальщика. Потому что сам верстаю и вообще отвечаю за клиентскую часть. Но по уму это всё-таки программист должен быть. Если он веб-программист, то обязан шарить в JS, а в алгоритмах и подавно.

Ещё зависит от того, к чему больше привязан JS, к интерфейсу или к движку. То ест ьу каждого должна быть своя зона ответственности и деятельности. Предпочитаю, чобы дизайнер сам сверстал (чтобы не нарушить интерфейс и логичность) и чтобы все друг с другом активно общались, тогда проект нормальный получается.
А я комбаин...
И PHP пишу и JS и верстаю...
JavaScipt для Суперхабра пишет мой коллега — верстальщик, помимо вёрстки разбирающийся и в сложном JavaScipt-коде, и в тонкостях взаимодействия его кода с тем, что пишут программисты.
Я думаю что любой web developer должен уметь разбираться и писать JS.
Хотя конечно разделение обязанностей -> штука хорошая, но JS обычно приходиться писать (из перечисленных) PHP программисту.
У меня на работе верстальщик пишет JS, но обычно это "меню", "включение fix'ов", "валидация формы (если не динамическая)". А так, задача верстальщика -> сделать "приятную" кроссбраузерную верстку.
Обычно у нас верстальщик имеет право выдать макет сайта с готовым JS-кодом.

А программист имеет право полностью его переписать или дополнить.
естественно, большая часть разработчиков не особо знают JS, да и PHP тоже. Perl - as is.

так что в основном верстальщик. часть задач отдают специальному Frontend-программисту.
Программированием на том или ином языке должен заниматься человек, умеющий лучше программировать на этом самом языке.
Отдельный это человек или нет - зависит от возможностей и размаха проекта или студии, ессно.
Например я давно совмещаю в себе верстальщика и флешера. Работодатели довольны. Так что можно задавать вопрос "Должен ли флешер уметь верстать и знать js?".

Если же вопрос возник в результате спора программера-php и верстальщика(резчика), которые оба знают JS и не смогли распределить работу, то стоило бы штрафануть обоих ленивцев.
Да 100 пудов этим должен заниматься человек, знакомый с JavaScript, а уж кто он - это второстепенный вопрос. Пусть хоть секретарь пишет, главное чтобы этого человека нанимали писать javascript.
Оба в общем случае. Команда в случае разработки AJAX-функционала. Лучший спец по JavaScript в случае, когда взаимодействие клиента и сервера ограничивается переходом по ссылкам и постингом форм.
JS-код должен в оптимале писать JavaScript-кодер, а если такого нет - предпочтения (по своему опыту) должно отдаваться разработчику бэкенда, который в своей работе согласовывается с верстальщиком.
Главный вопрос здесь в том, чему служит JavaScript. Я вполне допускаю, что в сложном Web2.0-style приложении логику AJAX пропишет кодер backend-a, а рюшечки и script.aculo.us приделает дизайнер.
Если что то простое и сам допишу на готовых JS либах, если что то посложнее разумееться искать человека который занимаеться в основе своей JS, верстальщик помойму кроме как всяких меню и подсветки пунктов ниче не должен делать (Это как я себе представляю).

P.S. PHP кодер.
Sign up to leave a comment.

Articles