comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 08.01.17 09:13
Оценка: 2 (1) +1 -3 :)
Анонимы такие анонимы Начало — http://rsdn.org/forum/job/6656364.flat
Автор: snaphold
Дата: 03.01.17
Решил ответить отдельной веткой.

Основной кейс — уход в бизнес-анализ и возвращение в разработку(JavaScript)
Здесь и далее "поколение jQuery" — люди, которые ушли во время расцвета jQuery и потом хотели вернуться в разработку.

А>У вас явные противоречия в рассуждения. Если программист активно имел дело с jQuery, то почему у них будет вызывать вопросы язык JavaScript?


Это наблюдаемая реальность. Язык это минорная проблема. Весь нынешний стек фронтенда состоит из вещей, неизвестных поколению jQuery. Билды, тесты, загрузчики модулей, фремворки, разнообразные библиотеки, новые архитектуры и тд и тд.

Все такие вещи раньше были в наличии в десктопных или мобильных приложениях. В jQuery-мире этого ничего не было нужно. Потому нынешний фронтенд он 'неправильный' с точки зрения поколения jQuery.

А>Т потом Node.js — это для серверной части. Почему это должно вызывать большие трудности для тех, кто знает JavaScript, но не имел дело с

Node.js?

В Node.js только язык такой же, а все остальное принципиально отличное от jQuery в браузере — сборка, хостинг, деплоймент, базы данных, HTTP/REST в полный рост, кучи самых разнообразных фреймворков, библиотек и тд для кеширования, авторизации, аутентификации и тд и тд.

Отдельная проблем — Node.js тотально асинхронный при том что внешне однопоточный. Опыта такого программирования у поколения jQuery нет вообще. Всё что они писали — простые обработчики.

А>А самое главное — вам в голову не приходит простая мысль, что если вы, допустим, пишите на Node.js, а другой еще не имел с ним дело, это совершенно не означает, что вы — хороший программист, а тот, другой, — плохой программист.


Да, это известный кейс — узнать, где хорошее лучше плохого, а где наоборот. Здесь доказывать нужно не мне, а тем интервьюерам, которые повстречаются на собеседонии. У каждой конторы свой подход, своё видение.
Re: comeback в JS - анониму
От: Слава  
Дата: 08.01.17 10:16
Оценка: :)
Здравствуйте, Ikemefula, Вы писали:

I>Это наблюдаемая реальность. Язык это минорная проблема. Весь нынешний стек фронтенда состоит из вещей, неизвестных поколению jQuery. Билды, тесты, загрузчики модулей, фремворки, разнообразные библиотеки, новые архитектуры и тд и тд.




Да, во фронтенде понаворотили кучу странных вещей, которых и на десктопе не было. Причём сделали это максимально неудобным способом. А вся-то задача — DOM прости господи частично перегенерировать без перезагрузки всей страницы.
Re: comeback в JS - анониму
От: lpd Черногория https://vk.com/rashchupkinr
Дата: 08.01.17 10:46
Оценка:
Здравствуйте, Ikemefula, Вы писали:

А>>А самое главное — вам в голову не приходит простая мысль, что если вы, допустим, пишите на Node.js, а другой еще не имел с ним дело, это совершенно не означает, что вы — хороший программист, а тот, другой, — плохой программист.


I>Да, это известный кейс — узнать, где хорошее лучше плохого, а где наоборот. Здесь доказывать нужно не мне, а тем интервьюерам, которые повстречаются на собеседонии. У каждой конторы свой подход, своё видение.


Ничего не мешает выучить Node.js(или любую технологию) самостоятельно, и написать какой-нибудь небольшой проект, о котором можно рассказать. Да, часть вакансий отсеится, и тех-лидом не возьмут. Однако работу найти можно, особенно если есть глубокие знания программирования и какой-то серьезный опыт.
У сложных вещей обычно есть и хорошие, и плохие аспекты.
Берегите Родину, мать вашу. (ДДТ)
Re[2]: comeback в JS - анониму
От: TimurSPB Интернет  
Дата: 08.01.17 11:26
Оценка: 4 (1) +2 :))) :))) :)
С>А вся-то задача — DOM прости господи частично перегенерировать без перезагрузки всей страницы.

Angular может это вполне. Там просто делаешь директиву, контроллер, инжектишь зависимости, потом angular.js:14328 ReferenceError: GroupSettingsDialogController1 is not defined at e.$scope.showGroupSettings (groupController.js:68) at fn (eval at compile (angular.js:15156), <anonymous>:4:316) at callback (angular.js:26744) at Scope.$eval (angular.js:17972) at Scope.$apply (angular.js:18072) at TMLButtonElement.<anonymous> (angular.js:26749) at defaultHandlerWrapper (angular.js:3613) at HTMLButtonElement.eventHandler (angular.js:3601) (anonymous) @ angular.js:14328 :(
Make flame.politics Great Again!
Re: comeback в JS - анониму
От: vsb Казахстан  
Дата: 08.01.17 11:47
Оценка: 7 (2) +2
Я немного покопался в современном JS. У меня примерно такие претензии (я с острова Java).

1. Сложность сборки. Grunt. Очень низкоуровнево, проще шелл-скрипт написать. Одна радость — относительно кроссплатформенно. Gulp — хрен редьки не слаще. Только якобы более производительно. Где там производительность, я не знаю, оно собирает несложный JS-проект больше 30 секунд. За 30 секунд я половину линуксового ядра соберу. А тут какой-то JS. Webpack. Ну вроде как чуть более высокий уровень, но ВСЁ РАВНО ВСЁ НАДО ОПИСЫВАТЬ САМОМУ. Очень хочется простой инструмент. Я буду класть всё в нужные пути и он сделает ВСЁ, что мне надо сам, без какой-то конфигурации. Я использую maven, я вообще ничего не пишу ни о чём, но он сам умеет и компилировать и собирать артефакт и прогонять все тесты и генерировать жавадоки. Так и тут. Дайте мне инструмент, который с нулём конфигурации будет генерировать dev/release сборки, всякие map-ы, hot reload-ы, тесты прогонять, документацию генерировать, линтить, в общем делать всё, что делает любой уважающий себя проект. Кажется к этому придёт, скорее всего будут инструменты уровнем выше этих gulp-ов, но всё равно это всё некрасиво. В общем не хватает в JS своего gradle-а. Существующие решения некачественные.

2. Сложность отладки. Пока не видел ни одного проекта, который можно было бы по-человечески отлаживать в браузере. Или отключаешь все эти сборки и тупо инклудишь файлы в HTML-е, тогда браузер видит всё. Или всё минифицировано и отлаживаться невозможно. Вроде map-файлы для этого нужны, но никогда не видел, чтобы они работали.

3. Очень долгий цикл написал-собрал-проверил. В Java гораздо быстрее. С Hot Reload-ом всё очень плохо. Последний проект, в котором я участвовал, выглядел так: изменил 1 букву, 30 секунд пересобираешь проект, 20 секунд обновляешь страницу в браузере, пару минут натыкиваешь всё, чтобы прийти на ту форму, которую ты делаешь. И не дай бог что-нибудь там закешировалось или ты поспешил — начинай всё сначала. Для Java-программиста выглядит дико. В Java с современными инструментами вроде JRebel я вообще практически никогда не делаю редеплой, все изменения подхватываются за доли секунды. Вроде в react+redux что-то такое есть, но надо, чтобы было стандартно и везде. Иначе это привет из девяностых.

А вообще мне JS-мир нравится. Куча разных языков, куча разных фреймворков. Иногда даже не знаешь, что лучше выбрать. Красота.
Re[2]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 08.01.17 13:31
Оценка: +1
Здравствуйте, Слава, Вы писали:

С>Да, во фронтенде понаворотили кучу странных вещей, которых и на десктопе не было. Причём сделали это максимально неудобным способом. А вся-то задача — DOM прости господи частично перегенерировать без перезагрузки всей страницы.


Тут как раз наоборот, постепенно внедряются именно те подходы, что ранее были на десктопе. С той разницей, что все это перепиливается под BOM и DOM.
Re: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 08.01.17 14:00
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Основной кейс — уход в бизнес-анализ и возвращение в разработку(JavaScript)


Продолжение беседы с анонимами

>У вас подход дилетантский, который плодит некомпетентность. Как я уже написал, таким способом вы отбираете не хороших программистов, а тех, кто опередил вас, успев прочитать новую аббревиатуру какой-нибудь очередной технологии и выполнив расписанную по шагам программу "Hello World".


Речь прежде всего про собеседования вообще, а не лично мои Я стараюсь время от времени напрашиваться на собеседование. Как правило такие наблюдения подтверждают ровно то, о чем говорят другие — спрашивают в основном по баззвордам, с той целью что бы человек сразу встал к станку и начал точить гайки. Скажем, на вопрос "три кита ооп" лучше давать ответ как в книге
Re[2]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 08.01.17 14:08
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>1. Сложность сборки.

vsb>2. Сложность отладки.
vsb>3. Очень долгий цикл написал-собрал-проверил. В Java гораздо быстрее.

У меня прямо противоположные ощущения. По моему типичный джава-бакенд это 'сегодня фикшу — завтра будете пользоваться'. В JS 'комитаю — нажмите кнопку рефреш'
Re[2]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 08.01.17 14:11
Оценка:
Здравствуйте, lpd, Вы писали:

I>>Да, это известный кейс — узнать, где хорошее лучше плохого, а где наоборот. Здесь доказывать нужно не мне, а тем интервьюерам, которые повстречаются на собеседонии. У каждой конторы свой подход, своё видение.


lpd>Ничего не мешает выучить Node.js(или любую технологию) самостоятельно, и написать какой-нибудь небольшой проект, о котором можно рассказать. Да, часть вакансий отсеится, и тех-лидом не возьмут. Однако работу найти можно, особенно если есть глубокие знания программирования и какой-то серьезный опыт.


Вопрос в том, какая будет эта доля отсеявшихся вакансий и какая останется ЗП. Бывает так, что люди скатываются на уровень джуниора.
Re[2]: comeback в JS - анониму
От: selkwind  
Дата: 10.01.17 12:48
Оценка: +2
vsb>А вообще мне JS-мир нравится. Куча разных языков, куча разных фреймворков. Иногда даже не знаешь, что лучше выбрать. Красота.

Это называется не красота, а идейный разброд, шатание и графомания авторов.
Re[3]: comeback в JS - анониму
От: SaprXM СССР  
Дата: 15.01.17 23:00
Оценка:
vsb>>А вообще мне JS-мир нравится. Куча разных языков, куча разных фреймворков. Иногда даже не знаешь, что лучше выбрать. Красота.

S>Это называется не красота, а идейный разброд, шатание и графомания авторов.


это был не отсыл ли к

Люблю стандарты... Их много — есть из чего выбрать!

Re: comeback в JS - анониму
От: iHateLogins  
Дата: 16.01.17 04:33
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Это наблюдаемая реальность. Язык это минорная проблема. Весь нынешний стек фронтенда состоит из вещей, неизвестных поколению jQuery. Билды, тесты, загрузчики модулей, фремворки, разнообразные библиотеки, новые архитектуры и тд и тд.


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

Худшее, что может сделать толковый архитектор, это использовать "такие" подходы при серьёзной разработке (ключевое слово — серьёзная), которым от силу пару лет.
Re[2]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.17 09:10
Оценка:
Здравствуйте, iHateLogins, Вы писали:

HL>Всё это говнище будет заменено чем-то новым и так же канет в лету, как и jQuery. Нынешние "скилы" в вебе — просто выброшенное время. Никакого увеличения производительности труда "современный" подход к веб-разработке не даёт, его просто придумали, чтобы инициировать ещё один цикл бесконечных "апгрейдов архитектуры".


Фронтенд стремительно взрослеет. С производительностью труда все в порядке — прежде всего сейчас используется более сложный UI. На jQuery такое пилить надо было годами. Новые фремворки позволяют делать это со скоростью поступления требований.

HL>Худшее, что может сделать толковый архитектор, это использовать "такие" подходы при серьёзной разработке (ключевое слово — серьёзная), которым от силу пару лет.


А что значит серьёзная ? Распознавание лиц в режиме реального времени в браузере ?
Re[2]: comeback в JS - анониму
От: Sharov Россия  
Дата: 16.01.17 09:33
Оценка:
Здравствуйте, iHateLogins, Вы писали:

HL>Здравствуйте, Ikemefula, Вы писали:


I>>Это наблюдаемая реальность. Язык это минорная проблема. Весь нынешний стек фронтенда состоит из вещей, неизвестных поколению jQuery. Билды, тесты, загрузчики модулей, фремворки, разнообразные библиотеки, новые архитектуры и тд и тд.


HL>Всё это говнище будет заменено чем-то новым и так же канет в лету, как и jQuery.



Ну и куда подевался jQuery, если без него ни один фреймворк не обходится. Разве что в стандарт.
Кодом людям нужно помогать!
Re[2]: comeback в JS - анониму
От: sr_dev  
Дата: 16.01.17 10:42
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>3. Очень долгий цикл написал-собрал-проверил. В Java гораздо быстрее. С Hot Reload-ом всё очень плохо. Последний проект, в котором я участвовал, выглядел так: изменил 1 букву, 30 секунд пересобираешь проект, 20 секунд обновляешь страницу в браузере, пару минут натыкиваешь всё, чтобы прийти на ту форму, которую ты делаешь.


какой фронтенд вы делаете на джаве? gwt в этом смысле намного хуже. 300 секунд пересобираешь один permutation, 200 ждешь пока просрётся gwt shell, шаг отладки еще 60 секунд. приложение весит 11М т.е. не очень крупное
Re[3]: comeback в JS - анониму
От: vsb Казахстан  
Дата: 16.01.17 11:50
Оценка:
Здравствуйте, sr_dev, Вы писали:

vsb>>3. Очень долгий цикл написал-собрал-проверил. В Java гораздо быстрее. С Hot Reload-ом всё очень плохо. Последний проект, в котором я участвовал, выглядел так: изменил 1 букву, 30 секунд пересобираешь проект, 20 секунд обновляешь страницу в браузере, пару минут натыкиваешь всё, чтобы прийти на ту форму, которую ты делаешь.


_>какой фронтенд вы делаете на джаве? gwt в этом смысле намного хуже. 300 секунд пересобираешь один permutation, 200 ждешь пока просрётся gwt shell, шаг отладки еще 60 секунд. приложение весит 11М т.е. не очень крупное


Я про бэкэнд на JVM. С GWT дел не имел, от Java там только язык, насколько я понимаю.
Re[3]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.17 12:34
Оценка:
Здравствуйте, Sharov, Вы писали:

HL>>Всё это говнище будет заменено чем-то новым и так же канет в лету, как и jQuery.


S>...без него ни один фреймворк не обходится...


Это заблуждение.
Re[4]: comeback в JS - анониму
От: sr_dev  
Дата: 16.01.17 12:37
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Здравствуйте, sr_dev, Вы писали:


vsb>>>3. Очень долгий цикл написал-собрал-проверил. В Java гораздо быстрее. С Hot Reload-ом всё очень плохо. Последний проект, в котором я участвовал, выглядел так: изменил 1 букву, 30 секунд пересобираешь проект, 20 секунд обновляешь страницу в браузере, пару минут натыкиваешь всё, чтобы прийти на ту форму, которую ты делаешь.


_>>какой фронтенд вы делаете на джаве? gwt в этом смысле намного хуже. 300 секунд пересобираешь один permutation, 200 ждешь пока просрётся gwt shell, шаг отладки еще 60 секунд. приложение весит 11М т.е. не очень крупное


vsb>Я про бэкэнд на JVM. С GWT дел не имел, от Java там только язык, насколько я понимаю.


ну не совсем, там отладка из под gwt shell — это обычное jvm приложение. тормозит страшно. hot reload пару раз видел, но с теми скоростями никакой отладкой заниматься вообще невозможно. в релизе да, java конвертится в javascript.
Re[3]: comeback в JS - анониму
От: hrensgory Россия  
Дата: 16.01.17 12:57
Оценка:
16.01.2017 13:42, sr_dev пишет:

> vsb>3. Очень долгий цикл написал-собрал-проверил. В Java гораздо

> быстрее. С Hot Reload-ом всё очень плохо. Последний проект, в котором я
> участвовал, выглядел так: изменил 1 букву, 30 секунд пересобираешь
> проект, 20 секунд обновляешь страницу в браузере, пару минут натыкиваешь
> всё, чтобы прийти на ту форму, которую ты делаешь.
>
> какой фронтенд вы делаете на джаве? gwt в этом смысле намного хуже. 300
> секунд пересобираешь один permutation, 200 ждешь пока просрётся gwt
> shell, шаг отладки еще 60 секунд. приложение весит 11М т.е. не очень крупное

Давайте обменяемся опытом. У нас в яве на сервер-сайде отладка, когда в
ней появляется необходимость, происходит так — поднимается приложение
(внутри сервера приложений или само по себе, если это какой-то
микросервис), цепляемся к jvm стандартным отладчиком или через jrebel
(там возможностей hot reload больше), делаем к нему запросы через
curl/jmeter/browser/etc., смотрим что у нас там внутри, какие переменные
какие значения имеют, правим код, делаем прямо из IDE(A) hot reload,
повторяем запрос, опять смотрим, опять правим и т.д. Всё достаточно
быстро и удобно.

Вот появился у нас развесистый фронтенд, для примера на ангуляре,
собираемый из кучи файлов (т.к. он реально развесистый) через gulp.
Необходимо что-то изменить/проверить. Что делать? gulp build каждый раз
запускать? Долго. Пробовали gulp watch — всё бы ничего, но на ряде машин
под совершенно обычной вендой он выжирает весь ЦПУ. Ну и как уже отмечал
коллега это ещё не всё — если у нас SPA, возможно придётся после F5 в
браузере предварительно потыкать в кучу кнопок чтобы попасть в то место,
которое нам интересно.

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

--
WBR,
Serge.
Posted via RSDN NNTP Server 2.1 beta
Re[4]: comeback в JS - анониму
От: Sharov Россия  
Дата: 16.01.17 13:04
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Здравствуйте, Sharov, Вы писали:


HL>>>Всё это говнище будет заменено чем-то новым и так же канет в лету, как и jQuery.


S>>...без него ни один фреймворк не обходится...


I>Это заблуждение.


Примеры.
Кодом людям нужно помогать!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.