> Это не проблема js, это проблема людей.Это, конечно, проблема людей, но у компиляторов да еще с статической типизацией есть хорошая фича: они могут на фазе компиляции проверить валидность понаписанного и отловить совсем уж явные грабли. А в случае JS сделано все для того чтобы лажа прошла всю мыслимую авотматическую валидацию, т.к. как бы ничего и не нарушает. Все-таки настолько фундаментальные и неизлечимые "даже если явно захотеть" грабельки - это плоховато.
> Чем более высокоуровневый язык - тем легче на нем быдлокодить, откладывая
> решение проблем с качеством кода на потом.
Это только усугубит проблему.
> Многие еще не могут понять сам js, что его парадигма сильно отличается
> от других ОO-языков, и шпарят на нем так, как они привыкли писать на C++.
Если кто си++ нормально освоил - JS ему вообще будет на один зубок, имхо. Но вот так грубо обуть на все опции автоматического контроля синтаксической валидности например объявления переменных - это FAIL, как ни крути.
> И GUI тут тоже ни при чем. На js уже давно можно решать задачи, отвязанные от GUI,
Можно, но лучше не нyжно. Иначе нас задолбают кривые глюкастики с трудноуловимыми глюками.
> и рефакторится он прекрасно.
Да что там, предлагаю новый слоган: Written once. Debug everywhere.
> Другое дело, что пока в node.js юные хацкеры сильно косячат, создавая о js
> неправильное представление. Лучше стандарты CommonJS для начала почитать,
> прежде чем делать выводы.
Извините, стандарты это прекрасно, но если некто сравнивает гайки с бананами - JS это вообще не только не смутит. Еще и какой-то результат будет получен. Какой у него логический смысл - только рандому и известно. И программа где-то потом таки сломается, поскольку сделали явный бред, ломающий логику программы. А в паре мест быдлокодеры вообще написали "бананасы". Но этого тоже никто не заметит. Поскольку они на автомате создались и далее существовали. Хоть никто и не знает что это за фигня и почему она там была.
С другой стороны, си например при попытке сравнить гайки с бананами по дефолту пошлет - мол, ты что, сдурел, гражданин?! Но если вы реально хотите это сделать - да си вообще до балды на самом деле. Можно гаркнуть "Считать гайки за бананы, знать ничего не знаю!" - тогда сравнивайте наздоровье. Но вас завернут если вы это сделаете нечаянно.
Знаете, пистолет у которого совсем нет никакого предохранителя и который по этому поводу стреляет когда попало - это хреновый, негодный пистолет. Он будет чаще простреливать части тела владельца. Что делает его довольно мазохистичной штукой.
> Другое дело еще, что сама Qt сильно на GUI завязана, что тоже
> в свою очередь создает неравильноt впечатление о js.
Внезапно, Qt может быть собран без зависимости от графических подсистем :).