Pull to refresh
0
0
Mattew Skin @a-motion

Fuck Ego Guru

Send message

Настолько — не может. Разница в триста с лишним раз, при втором результате близком к нулю, означает только одно: продукт может быть идеален, но если вам не повезет и вы уткнетесь в единственный баг, вы со своей проблемой останетесь наедине.

Я не вижу смысла. Статическая типизация вытащит один камешек из огромной груды проблем js. У нас довольно специфический бизнес, кроме того, поэтому клиент все равно очень тонкий и с ним как раз проблем особых нет. И уж если мы решим куда-то переходить — то точно не на TypeScript.

Ну и, опять и снова: статическая типизация ортогональна TDD. И кроме хайпа я не слышал внятных аргументов в ее пользу. А TDD дает ощутимую пользу сразу, вне зависимости от типизации.

Думают как? Что задачи нужно решать при помощи предназначенных для этого инструментов? — надеюсь, что да.
Кстати, работы Гойи «Черного периода» — удовлетворяют как раз очень внятному критерию того, что они — настоящее искусство. Мне лично (да и, по моим наблюдениям, многим людям вокруг тоже) пришлось выйти из зала, а затем и вовсе из Прадо на свежий воздух на часа полтора, чтобы потом вернуться их «досмотреть». Я ничего сильнее по воздействию не видел в своей жизни. Они буквально завораживают нахрен (именно так).
К сожалению, репродукции этого не передают никак.

Но этот критерий, конечно, применим только как лакмусовая бумажка: по отсутствию такого эффекта, разумеется, нельзя сказать, что автор — маляр.

Но если автор может _так_ — мгновенно понимаешь, что все эти разговоры про похожесть на оригинал и фотографическую точность — ерунда. Изобразительное искусство не про это.
Ну вот, вы говорите разумные вещи, сразу интересно стало.

Я на sidekiq ссылку дал просто потому, что он первый подвернулся: это я несомненную глупость сморозил. Но я уверен, что кто-то что-то подобное на чистом js давно написал. Сам же «менеджер задач» лишней сущностью не бывает никогда, вы самому себе вчерашнему миллион раз спасибо скажете, когда можно просто будет в очередной раз просто выплюнуть куда-то в заоконный космос задачу, а оно все само по времени разрулит. Ручки из фронтенда — они ровно про это, я уже забыл, как это: жить без крона. Разумеется, я не имел в виду нагружать воркер.

Вообще, вся эта история про лучше быть богатым и здоровым, чем наоборот. Все, что вы говорите — верно, в той или иной степени. Просто я давно понял, что мне проще связываться с теми проблемами, с которыми сто́ит связываться.

Да, программистов проще найти на руби/питоне (на js не смотрел, уверен, что тоже), но зато эрланг позволяет сразу зачеркнуть такой широкий круг проблем, что о выборе не жалею ни разу. Да, фронтенд пришлось отделить в отдельную команду, зато у нас _совсем_ нет связности между ними и куски легко пробуются на Elm’e, например (пока ощущения позитивные).

Ну и самое главное: я понимаю, что выбор языка может быть определен перпендикулярными требованиями, но все задачи, описываемые вами, по уму решаются не скриптами, а на коленке — скриптами, запускаемыми из консоли ноды. Если у вас есть просто скрипт в вакууме, который загружает лишнюю ноду в продакшене — значит где-то что-то пошло не так. И да, все умеют и могут в таком случае вбить костыль, но по уму все-таки так делать не нужно.

Я же с этого начинал, причем довольно дружелюбно. У меня вот атом сегодня отказался из исходников собираться, я полез смотреть, что у меня не так с этим зоопарком, и мне чуть худо не стало. Даже go в свете написания скриптов выглядит изящней, он хотя бы не запутается в собственных зависимостях :)

> логично использовать тот же язык программирования,
> на котором реализовано основное приложение

Разумеется, с этим никто и не спорит.

> Нужен ручной/по расписанию перенос пользователя из одного инстанса БД в другую.

У вас что-то не так с архитектурой. Это задача для самой базы, а не для стороннего скрипта.

> Нужен тяжёлый фоновый расчёт, выполняемый по расписанию.

Менеджеры задач придуманы как раз для этого: https://www.npmjs.com/package/sidekiq

> Нужны какие-то разовые наколеночные отчёты по данным БД.

Я в таком случае вкручиваю ручки под суперадмином во фронтенд и дергаю их хоть с Багам через веб-интерфейс. Не могу себе представить ситуацию, когда скрипт командной строки тут уместен.

Я никогда не предлагал сделать еще одну имплементацию бизнес-логики на баше (или вообще на чем-то другом). Просто если сначала думать, а потом делать — скрипты на js (а еще фронтенды на шелле, базы данных на хаскеле и бекэнды на си) писать не придется. Вот и все.
> У вас какая-то ненависть

Вы диагнозы-то по юзерпику завязывайте ставить.

> современным языкам разработки, вроде Node.js/PHP/Ruby/Python

Один из них вообще не язык разработки, остальные три уже совершеннолетние (старше двадцати одного года). Вы почитайте какой-нибудь дайджест новостей из мира технологий, что ли.
Я это написал в первом же комментарии в этой ветке.

Но тут, видите ли, собрались люди не желающие марать руки об изучение новых (старых?) языков, поэтому я уже и программистов оскорбляю, и недалекое хамло с ограниченным кругозором, и вообще.

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

Так что вы тут поаккуратнее с перлом :)

> Глупости вы говорите
> давайте вы перестанете хамить окружающим из-за своего узкого видения

Вы, стало быть, в ветке появились, от входа приплели два аргумента ad hominem, а хамлю — я?

Изящно.

Если я кого и обижал — так это Javascript, но тут мне особо стараться не пришлось, за меня это прекрасно сделали его создатели и матушка-природа.

Давайте вы за себя говорить станете, а советы, что и как делать мне — давать перестанете?

Потому что в моем мире «JS-ник, который занимается своей работой» — в штате не появится никогда. Он на аутсорсе, за три копейки, и к продакшену я его близко не подпущу.

А те, кто в штате, будут использовать _пригодные инструменты_ для своих целей.

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

Тогда что там делают JS и PHP?

Кроме того, зоопарк всяких не имеющих к делу приблуд на сервере — всегда признак безграмотности архитекторов (и ведет к взрывообразному увеличению количества потенциальных уязвимостей.)

> Ну и что, что установить их надо на сервер?
> Это так сложно, серьёзно? Мне еще обсуждать это с вами?

Не-не, со мной это обсуждать бессмысленно.

Это не сложно, это вредно. Я не могу себе позволить в продакшн тащить какое-то говно только потому, что программисты настолько криворуки, что пишут скрипты на JS. Вот и все. И PHP там, очевидно, тоже нет.

Продолжайте писать скрипты на PHP, это очень достойное и уважаемое занятие, за которое даже иногда платят деньги.

Если вы не в состоянии прочесть и понять комментарий, на который собираетесь ответить, лучше промолчать.

Но мне не сложно: я для не очень внимательных повторю основную мысль. Bash есть из коробки. PHP там фигурировал в совершенно ином контексте: JS — единственный из тех примерно двадцати языков, которыми я владею, который ужаснее PHP по продуманности парадигмы и, как следствие, количеству разложенных граблей, неконсистентности и удобству применимости в серьезном проекте.

А так–то можно на чем угодно Тьюринг–полном написать что угодно работающее. Но зачем?

Класическая фраза всех людей, у которых нет аргументов.

Нет никакой религии и я никогда не пишу ничего сложнее hello-world на баше. Из этого никак не следует, что js пригоден для написания шелл-скриптов.

Пока вы себе на коленке пишете что-то — пишите хоть в машинных кодах. Но объективная реальность такова, что как только вам захочется написать что-то, чем будут пользоваться люди, вам придется написать это на баше, перле, или, в худшем случае — питоне, потому что 99% людей увидев, например, инсталлятор на js, уйдут навсегда.

Есть, конечно, и контрпримеры, вон чуваки даже электрон запилили, но вы пока, насколько могу судить, не они.
Для Кима — очень даже наоборот, публика, для которой написана эта статья (и которая его знает как того еще хакера, волшебника и рок-звезду) — сразу считает здесь сарказм.

Есть несколько языков, в основе которых лежит один сплошной невероятный design flow. Они неконсистентны, ввиду чего грабли разложены повсюду, заботливо прикрытые костылями. И bash script никак не в этом ряду. А js там на первом месте.

Все нарекания в адрес баша сводятся к: «я бац-бац-и-запустил, а оно мне попереименовывало файлы», а все ответы — к «сходи почитай документацию сначала». Баш может выглядеть гораздо менее дружелюбным, но он прост и — главное — предсказуем.

С js все не так. И, самое главное, мне придется полчаса накатывать обновления инфраструктуры прежде чем я смогу обработать список всех файлов в папке. А чтобы поделиться этим скриптом с женой (в соседнем аккаунте), мне придется объяснять ей, как накатывать ноду. Это не нормально.

Питонисты воюют с рубистами на тему «у кого язык круче». У джсистов война идет про библиотеки. Что, как бы, многое говорит про сам язык. Я не встречал такого количества транспайлеров ни в один другой язык. Даже на COBOL’е до сих пишут его родным синтаксисом. А транспайлер в JS не написал только самый ленивый.

И когда мне начинают рассказывать, что на нем удобно писать консольтые утилиты — да, я беленею.
Я единственный тут помню, что мы в топике про _шелл скрипт_? Откуда, ради всего святого, тут вообще взялась производительность веб-серверов?

Я просто ответил на «чего никак не скажешь о PHP, Bash или Python» (чего, разумеется, делать не стоило, потому что «PHP, Bash или Python» через запятую как бы сразу закрывают тему).

Я даже затрудняюсь как-то это прокомментировать. Тут бред все, от первого до самого последнего слова. Вы хоть понимаете, что такое «скрипт» в данном контексте?

При чем тут вообще сервер? (Кстати, на питоне, например, вообще ничего устанавливать не нужно, чтобы запустить сервер — `python -m SimpleHTTPServer` и в путь).

Питон слишком многословен, а руби не всегда есть из коробки.
Во-первых, статья вышла не на хабре, этому списку сто лет в обед и он постоянно дополняется. На хабре появился перевод для тех, кто не умеет читать взрослый интернет.
Во-вторых, я бы не стал винить шелл-скрипты в том, что если ты не понимаешь, что делаешь, то результат может получиться непредсказуемым.
В-третьих, принципиальное отличие шелла от ноды заключается в том, что шелл есть, а ноды нет. Зачем мне это говно в продакшене?
В-четвертых, на фактически всех таргет машинах есть perl, и если скрипт становится действительно сложным, то его имеет смысл писать на перле.
В-пятых, JS как язык не имеет ни одного преимущества перед даже PHP, так что вкупе с перечисленным нет ни единого аргумента в пользу написания на нем скриптов, кроме «я увечный, и больше ничего не осилил».
1
23 ...

Information

Rating
Does not participate
Location
Barcelona, Barcelona, Испания
Registered
Activity