metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2010-08-13 05:05 pm

Ход раком

Чтобы ИТ-индустрия окончательно встала раком, Гуглу сейчас нужно сделать ход конем - разработать ТРЕТИЙ вариант кроссплатформенного языка-платформы с собственной виртуальной машиной, JIT, итд, итп, в дополнение к жабе и дотнету. И сманить девелоперов на него какими-нибудь заманухами страшными.
Тем более что дотнет семимильными шагами двигается в ту же over-engineered сраку, что и жаба, а альтернативы реальной тому и другому и нету.

[identity profile] norguhtar.livejournal.com 2010-08-14 04:21 am (UTC)(link)
Когда ruby будет работать хотя бы с той же производительностью что и питон, тогда и приходите (c) bobuk

[identity profile] thedeemon.livejournal.com 2010-08-14 05:37 am (UTC)(link)
А они так сильно отличаются?

[identity profile] norguhtar.livejournal.com 2010-08-14 06:02 am (UTC)(link)
Да. Ruby сильно тормознее чем Python. Они там сейчас активно пилят производительность но пока увы увы.

[identity profile] thedeemon.livejournal.com 2010-08-14 11:13 am (UTC)(link)
Он щас по скорости как перл и похапе примерно. Они тоже непригодны к использованию?

[identity profile] norguhtar.livejournal.com 2010-08-14 11:16 am (UTC)(link)
На каких задачах? Приведенный вами график не говорит о тесте ровным счетом ничего.

[identity profile] thedeemon.livejournal.com 2010-08-14 11:29 am (UTC)(link)
Это с shootout'a, там много разных задач.

[identity profile] norguhtar.livejournal.com 2010-08-14 11:41 am (UTC)(link)
"много разных задач" это хорошо, но что это были за задачи увы не понятно. Если вы мне пытаетесь сказать, что ruby не хуже чем python и на нем можно писать, то мне как-то без разницы. Опять же если говорить про php и perl то на php для веба лучше не писать без фреймвока, просто в силу того что можно получить безобразную кашу в приложении которая работает при этом не сильно быстро. А perl увы я не использую по той причине, что код на нем написанный через неделю читается крайне плохо.

[identity profile] thedeemon.livejournal.com 2010-08-14 12:00 pm (UTC)(link)
Я думал, programming language shootout знают все.

Мой поинт лишь в том, что вопрос скорости в сравнении руби и питона поднимать нет смысла, и отвергать руби по одному этому критерию неразумно. Об этом с самого начала и толкую.

[identity profile] norguhtar.livejournal.com 2010-08-14 12:47 pm (UTC)(link)
Далеко не все знают про shootout. Ruby же мне не нравится не из-за медленности, а из-за моего личного ощущения языка как перегруженного.

[identity profile] theiced.livejournal.com 2010-08-14 01:38 pm (UTC)(link)
то есть нравится питон и не нравится руби? вы содомит?

[identity profile] norguhtar.livejournal.com 2010-08-14 01:44 pm (UTC)(link)

то есть нравится питон и не нравится руби?

Таки да.


вы содомит?

Вам нравится lisp. Так что от себя могу вам задать точно такой же вопрос. :]

[identity profile] theiced.livejournal.com 2010-08-14 01:56 pm (UTC)(link)
пистон - уродливое гипермегауёбище, "спроектированное" дауном-пидорасом. иначе откуда там в качестве элемента синтаксиса И табы И пробелы _одновременно_?

[identity profile] norguhtar.livejournal.com 2010-08-14 02:03 pm (UTC)(link)
Ну а лисп "спроектирован" безумным бородатым ученым помешанным на скобках. Но вообще в качестве элемента синтаксиса лучше пробелы не использовать :]

[identity profile] theiced.livejournal.com 2010-08-14 02:17 pm (UTC)(link)
ты не понял. И пробелы И табы. одновременно. это пиздец. а скобки - это клёво, действительно клёво.

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-14 14:20 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2010-08-14 14:22 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-14 14:24 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2010-08-14 14:30 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-14 14:33 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-14 16:19 (UTC) - Expand

(no subject)

[identity profile] nealar.livejournal.com - 2010-08-14 22:29 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2010-08-15 00:41 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 03:38 (UTC) - Expand

(no subject)

[identity profile] thedeemon.livejournal.com - 2010-08-15 06:00 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 06:16 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 03:31 (UTC) - Expand

(no subject)

[identity profile] thedeemon.livejournal.com - 2010-08-15 06:02 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 06:35 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 03:21 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 03:36 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 03:53 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 04:03 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 04:32 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 04:46 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 04:58 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 05:03 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 05:10 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2010-08-15 05:43 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 05:48 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2010-08-15 05:51 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 05:56 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 06:34 (UTC) - Expand

(no subject)

[identity profile] thesz.livejournal.com - 2010-08-15 16:53 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 06:29 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 06:57 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2010-08-15 07:01 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 07:11 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2010-08-15 07:25 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 07:30 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2010-08-15 07:03 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 07:12 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2010-08-15 07:26 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-15 07:29 (UTC) - Expand

(no subject)

[identity profile] thesz.livejournal.com - 2010-08-15 16:52 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-16 01:27 (UTC) - Expand

(no subject)

[identity profile] thesz.livejournal.com - 2010-08-16 08:36 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-16 10:05 (UTC) - Expand

(no subject)

[identity profile] thesz.livejournal.com - 2010-08-16 19:25 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2010-08-17 01:21 (UTC) - Expand

(no subject)

[identity profile] kurilka.livejournal.com - 2010-08-15 06:32 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 06:49 (UTC) - Expand

(no subject)

[identity profile] kurilka.livejournal.com - 2010-08-15 09:08 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 10:37 (UTC) - Expand

(no subject)

[identity profile] kurilka.livejournal.com - 2010-08-15 11:04 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 12:39 (UTC) - Expand

(no subject)

[identity profile] kurilka.livejournal.com - 2010-08-15 12:50 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 12:57 (UTC) - Expand

(no subject)

[identity profile] kurilka.livejournal.com - 2010-08-15 13:03 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 13:08 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 12:52 (UTC) - Expand

(no subject)

[identity profile] kurilka.livejournal.com - 2010-08-15 12:57 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-15 13:00 (UTC) - Expand

(no subject)

[identity profile] kurilka.livejournal.com - 2010-08-15 13:04 (UTC) - Expand

(no subject)

[identity profile] clayrat.livejournal.com - 2010-08-15 20:34 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-16 03:43 (UTC) - Expand

(no subject)

[identity profile] kurilka.livejournal.com - 2010-08-16 04:54 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2010-08-16 05:31 (UTC) - Expand

(no subject)

[identity profile] kurilka.livejournal.com - 2010-08-16 10:16 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2010-08-14 14:20 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2010-08-14 14:23 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2010-08-14 14:30 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2010-08-14 14:34 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2010-08-14 14:43 (UTC) - Expand

(no subject)

[identity profile] freiksenet.livejournal.com - 2010-08-14 19:32 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2010-08-14 22:30 (UTC) - Expand

(no subject)

[identity profile] permea-kra.livejournal.com - 2010-08-19 16:50 (UTC) - Expand

[identity profile] metaclass.livejournal.com 2010-08-14 02:19 pm (UTC)(link)
Нет, лучше табы не использовать. Пробел он везде пробел, а вот таб он кто во что горазд.

[identity profile] thedeemon.livejournal.com 2010-08-14 10:17 am (UTC)(link)
Вообще, тут изначальная посылка глупая. Питон и Руби надо юзать там, где вопрос скорости не стоит вообще. Если нужна скорость, обоих втопку. Поэтому определенно, скорость - не то, на что стоит обращать внимание при их сравнении.

[identity profile] norguhtar.livejournal.com 2010-08-14 10:22 am (UTC)(link)
Часть сервисов яндекса написано на python и django я думаю это довольно хороший показатель достаточной скорости питона. Ну а Ruby увы даже до его скорости на данный момент не дотягивает.

[identity profile] thedeemon.livejournal.com 2010-08-14 10:33 am (UTC)(link)
Часть проектов - хорошо звучит. На деле один или полтора, и тот под первой же небольшой нагрузкой свалился.
http://softwaremaniacs.org/blog/2008/02/22/why-offline-crashed/

Гугл тоже использует питон для некоторых сервисов. Когда серверов до жопы - можно. Там же можно и Руби.

[identity profile] thedeemon.livejournal.com 2010-08-14 10:40 am (UTC)(link)
А, есть еще один - яндекс.афиша:

Можем только сказать, что после размазывания по кластеру "крейсерская" нагрузка получается в районе 7-8 RPS на машину. Это и внешний, и внутренний трафик. И это совсем далеко от обстрельных нагрузок, где сервис держал порядка 100 RPS на одном хосте.
http://webnewage.org/2009/05/15/widget-on-morda/

Ню-ню.

[identity profile] norguhtar.livejournal.com 2010-08-14 10:53 am (UTC)(link)
Да-да. Только вот для Ruby потребуется в двое больше серверов. А когда я послушал одного из адептов руби, который призывал переписывать тормозящие куски на C, мне как-то стало не по себе.

[identity profile] thedeemon.livejournal.com 2010-08-14 11:00 am (UTC)(link)
Еще раз: нужна скорость - обоих втопку.
А 100 RPS на Руби держать не сложнее, чем на Питоне.

[identity profile] thedeemon.livejournal.com 2010-08-14 11:04 am (UTC)(link)
Собственно, поиск и другие нагруженные щтуки в Яндексе пишут на С++. Кое-что, вроде фоток или видео, на яве. Что подтверждает мои слова об области применимости.

[identity profile] isagalaev (from livejournal.com) 2010-08-15 08:03 am (UTC)(link)
Я понимаю, что вы видите в тех постах то, что очень хотите увидеть, но количество ерунды, которую вы тут написали зашкалило настолько, что я хочу вмешаться, чтобы *остальные* случайно не начали вам верить.

- в первой статье, на которую вы сослались (why-offline-crashed) я долго рассказывал, что тормоза обеспечил неудачный индекс MySQL
- из второй статьи про Афишу тоже нигде не не следует, что 100RPS -- это потолок Питона, и поскольку я знаю, как она написана, я могу сказать, что причина в сложных запросах в базу
- то, что "поиск" написан на C++ -- подмена понятий, потому что речь здесь про веб-морду, а она написана на Перл (а весь остальной поиск написан на некотором количестве разных языков, включая и плюсы, конечно)

В общем и целом, идея о том, что причиной тормозов на вебе является *язык* -- это либо трайбализм, либо непрофессионализм (либо они вместе). На Питоне, Руби, PHP и Перл в вебе написано больше, чем на плюсах или Яве. Так что, про зависимость от области применимости вы сказали в принципе правильно, но по сути поставили всё с ног на голову: надо ещё поискать приложения, где интерпретируемые языки бы не справлялись.

[identity profile] thedeemon.livejournal.com 2010-08-15 09:29 am (UTC)(link)
Спасибо за пояснения!

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

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

Веб-девелоперу, наверное, и правда сложно такое представить. :) Я вот обработкой и сжатием видео занимаюсь, там сплошь примеры таких приложений.

[identity profile] isagalaev (from livejournal.com) 2010-08-15 04:41 pm (UTC)(link)
Представить несложно. Но я полагал, что разговор именно про эту область.