Но главная проблема JS - это то что язык мерзкий
Даже PHP лучше. Или бейсик ‎· discard the universe
Уж жаба-то красивая :) ‎· всё это хуйня
Да, жаба по сравнению с JS красивая и логичная ‎· discard the universe
даешь webassembly в массы уже ‎· BSOD bluez
define мерзкий, это жавоподобный синтаксис? невозможность понять, как работает this? прототипы? почти нет стандартной библиотеки? смесь перечисленного? ‎· [object Subject]
ну уж все-таки PHP хуже, чем JS (ни того, ни другого не знаю) ‎· чумата на порнографията
^ howaboutism! ‎· в меру культовый
^ fallacy-fallacy.jpg ‎· [object Subject]
Эйч зассал и вместо честной схемы сделал эту залипуху c модным в то время синтаксисом :) ‎· BSOD bluez
@whatever: как минимум, мне интересны ответ Альфа на твой вопрос, а комментарий @artemandreev рискует увести тред от "чем плох js" в сторону "чем js лучше/хуже, чем php" :) ‎· в меру культовый
подписка узнать про мерзости JS ‎· Запасной исчезнувшего Бобика
^ про чужой взгляд на мерзости JS. Я фронтенд-разработчик и думаю, что знаю кое-что про недостатки JS :) Но интересно и других послушать. ‎· в меру культовый
^ взгляд на мерзости js ‎· [object Subject]
(obligatory http://i.imgur.com/tNvOJg9.jpg) ‎· 9000
JS содержит ряд приятных черт, доставшихся от, как говорят, схемы (first-class functions, lambas, вот это всё), ряд менее приятных черт, доставшихся от C/C++ (типа цикла for и понятия null) и несколько болезненных misfeatures (this, правила про точку с запятой, байда с properties, ужасы coercion). Последние обычно вызывают основную ярость в процессе. Лично я prototype inheritance проблемой совершенно не считаю (ибо composition over inheritance). ‎· 9000
^ а с properties какая именно байда? ‎· в меру культовый
@mindszenty: Необходимость иметь вещи вроде hasOwnProperty и то, что происходит при итерации по объекту, кажутся мне явными дизайнерскими провалами. (Да, можно сравнить с питоном, например.) В es2015 это пытаются довольно внятно починить, заместив новыми интерфейсами, но убрать-то не могут. ‎· 9000
1. Да, практически нет библиотеки. 2. Как отметил 9k, даже написать цикл по коллекции — это маленькое достижение. Если не программируешь на JS каждый день, постоянно боишься что забыл ещё какую-нибудь гадость. 3. Автоматическое приведение всего ко всему. ‎· discard the universe
Что касается scheme, была прекрасная статья про то что JS настолько не scheme, что либо все языки scheme, либо уж JS самостоятельный язык со своим собственным адом. http://journal.stuffwithstuff.com/2013/07/18/javascript-isnt-... и к ней https://news.ycombinator.com/item?id=6068360 и https://www.reddit.com/r/javascript/comments/3bux3t/javascrip... ‎· discard the universe
Да, без tail recursion и нормальной работы со списками какая же схема :-\ ‎· 9000
Про PHP же ответим "чем армяне^W PHP" ‎· discard the universe
Написать for-of — это достижение?) ‎· [object Subject]
Про библиотеку — с одной стороны, да, с другой стороны — (мне кажется) иначе бы не было такого феномена npm. upd: Ну да ладно, примерно понял, спасибо. ‎· [object Subject]
^^ "В es2015 это пытаются довольно внятно починить, заместив новыми интерфейсами, но убрать-то не могут." ‎· в меру культовый
Supported in Microsoft Edge (Edge browser). Also supported in Store apps (Microsoft Edge on Windows 10). See Version Information. Not supported in the following document modes: Quirks, Internet Explorer 6 standards, Internet Explorer 7 standards, Internet Explorer 8 standards, Internet Explorer 9 standards, Internet Explorer 10 standards, Internet Explorer 11 standards. Not supported in Windows 8.1. — https://msdn.microsoft.com/en-us/library/dn858238(v=vs.94).aspx ‎· discard the universe
for-of, говорите? Это не JS, и уж точно не JS для "быстренько начать зарабатывать деньги." ‎· discard the universe
А если серьёзно, я тут просто опять начал играть в спортивное программирование, и с JS даже на грейдерах огребаешь всё вот это счастье: в тестовых прогонах ES6, в грейдере IE6. Три часа на эксперименты на ровном месте. ‎· discard the universe
Дальше мы оказываемся в мире промышленного программирования. И тут оказывается что есть десяток стилей программирования, все они используются, и все надо как минимум смутно понимать. ‎· discard the universe
(Что интересно, ни один из ужасов с this меня ни разу не укусил) ‎· discard the universe
^ ну, меня ни разу не укусил ни один из ужасов ни с hasOwnProperty, ни с coercion, что не отменяет претензии к тому, что они вообще есть :) ‎· в меру культовый
^ меня hasOwnProperty укусил ровно один раз, но с тех пор я не могу написать цикл спокойно — мне постоянно кажется что надо было сплясать ещё какой-то танец с бубном ‎· discard the universe
травматики в треде хаха (я тоже) ‎· Vlad Kaznacheev
Да-да, я уже представил себе беседу с терапевтом: "понимаете, доктор, я боюсь писать циклы на JS..." Хорошо, что у меня нет терапевта. ‎· discard the universe
нет ли группы для травмированных JS? ‎· Сложный и платонический
А давайте и такую группу! ‎· в меру культовый
Это вы еще на флеше не писали, видимо ‎· Дима is new Стас
Писали некогда. Там хотя бы типы были! ‎· в меру культовый
Лёша, про схему это ирония была (горькая) :) ‎· BSOD bluez
не понимаю чего вы ноете - не нравится JS - возьмите там кофескрипт, кложурскрипт, хуескрипт, дарт наконец - сейчас в JS можно компилировать хоть суахили ‎· Дима is new Стас
вопрос в том, что если бы в свое время были приняты другие решения, то сейчас не пришлось бы изобретать сотни языков, чтобы потом компилять их в говно. ‎· Сложный и платонический
^ ну это аргумент какой-то странный. ява-машина тоже говно, и что теперь? ‎· Дима is new Стас
^ и все теперь!1111 ‎· Сложный и платонический
^ okay.jpg ‎· Дима is new Стас
@ai212983 исходный тезис был "Сейчас самый простой способ быстро начать получать деньги в разработке — учить фронтендные фреймворки" — мне кажется что это (само)обман. Что касается компиляции в JS, это обычно заканчивается необходимостью знать как "свой" язык, так и JS, так что ад всегда рядом. The mandatory Mickens article: https://www.usenix.org/system/files/1403_02-08_mickens.pdf ‎· discard the universe
^а что тогда учить? ‎· Запасной исчезнувшего Бобика
Не знаю, я бы ставил на чистую жабку, просто потому что при прочих равных заметно больше денег, и сам язык достаточно простой — но я уже немного писал на ней, так что моё представление о "простом" неизбежно замылено. ‎· discard the universe
у жабы экосистема напоминает гадюку (извините) ‎· [object Subject]
Как будто гадюка это что-то плохое :-) ‎· Все собаки попадают в рай
@alf: У меня сейчас в работе три кложурскриптовых проекта, все на реакте. Я несколько biased, но знание яваскрипта за те полгода, что я пишу эти проекты, не пригодилось ни разу. Как мне кажется, человек с живым и неиспорченным ООП мозгом может легко раскурить достаточно хороший стек (cljs + reagent / om / rum +...) и быстро начать получать более-менее приличные деньги. Джуниору на яве же светит потогонка типа люксофта, долгая еботня с сертификациями и пиздецовыми фреймворками (JBoss, GWT, you name it) при небольшом бабле. И кривая проф. роста в яве очень длинная и пологая, имхо. ‎· Дима is new Стас
Вот это интересно, кстати. В скале от джавки уйти практически нельзя (а про изгиб кривой я не согласен). ‎· discard the universe
^^ каким бы богам помолиться за то чтобы этот стек стал мейнстримом ‎· BSOD bluez
^^ у быстрого жизненного цикла фронтенд-фреймворков есть несколько безусловных плюсов =) один из них - все находятся примерно в одинаковых стартовых условиях. ну вот знаю я ангуляр, а хули толку - второй от первого отличается очень прилично, надо фактически заново учить. то есть можно прямо со старта набрать хороший стек. в яве ни разу не так (я еще и OCP Java 8, если что), в ней у старожилов очень приличное преимущество. ‎· Дима is new Стас
^^ смотря где. этот стек на самом деле уже достаточно большую долю отъел, вон @nek в Стокгольм с таким стеком упоросячил ‎· Дима is new Стас