Python
От: russian_bear  
Дата: 23.09.08 13:57
Оценка:
Всем привет!

Google сделал свой "хостинг" для приложений на питоне. Почему именно питон?!

И соответственно про Питон вопросы:
— что с IDE?
— насколько удобно писать для web в сравнении с php или ASP.NET?
Re: Python
От: Daevaorn Россия  
Дата: 23.09.08 14:28
Оценка:
Здравствуйте, russian_bear, Вы писали:

_>Всем привет!


_>Google сделал свой "хостинг" для приложений на питоне. Почему именно питон?!


Гугл очень любит питон. И создатель языка там работает.

_>И соответственно про Питон вопросы:

_>- что с IDE?

Есть. Даже выбирать можно: PyDev, Eric, Komodo, WingIDE и т.д.

_>- насколько удобно писать для web в сравнении с php или ASP.NET?


Сравнивать сложно. Если применять фреймворки, то примерно также легко как и на RoR.
Re: Python
От: Nikolay_ США  
Дата: 23.09.08 14:47
Оценка: +1 -7 :)))
Здравствуйте, russian_bear, Вы писали:
_>Google сделал свой "хостинг" для приложений на питоне. Почему именно питон?!

Давненько уже.

_>И соответственно про Питон вопросы:

_>- что с IDE?

А зачем?

_>- насколько удобно писать для web в сравнении с php или ASP.NET?


Гораздо удобнее. Он таки язык практически полноценный, в отличии от вышеуказанных недоязыковдлявеба.
Re[2]: Python
От: Lloyd Россия  
Дата: 23.09.08 14:52
Оценка:
Здравствуйте, Nikolay_, Вы писали:

_>>- насколько удобно писать для web в сравнении с php или ASP.NET?


N_>Гораздо удобнее. Он таки язык практически полноценный, в отличии от вышеуказанных недоязыковдлявеба.


это C#-то недоязык?
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[2]: Python
От: russian_bear  
Дата: 23.09.08 15:27
Оценка:
D>Сравнивать сложно. Если применять фреймворки, то примерно также легко как и на RoR.

Ну скажем так — у гугля есть какой-то свой фреймворк для веб. Но и там html код формируется как строка, то есть нет отдельного View (файл .aspx в дотнете).

Просто интересно есть ли преимущества в плане скорости и т.п.
Re[2]: Python
От: russian_bear  
Дата: 23.09.08 15:28
Оценка:
_>>- что с IDE?
N_>А зачем?

Ну не в нотепаде же код писать.

_>>- насколько удобно писать для web в сравнении с php или ASP.NET?

N_>Гораздо удобнее. Он таки язык практически полноценный, в отличии от вышеуказанных недоязыковдлявеба.

Язык может и неплохой, а вот насчет для веба ли большой вопрос. Надо будет посмотреть фреймворки для Питона...
Re[3]: Python
От: Nikolay_ США  
Дата: 23.09.08 15:30
Оценка: -1 :))) :)))
Здравствуйте, Lloyd, Вы писали:
_>>>- насколько удобно писать для web в сравнении с php или ASP.NET?
N_>>Гораздо удобнее. Он таки язык практически полноценный, в отличии от вышеуказанных недоязыковдлявеба.
L>это C#-то недоязык? :))) :))) :)))

Не знаю, за развитием виндовых технологий никогда особо не следил. А ASP это разве не своеобразный web-ориентированный VB?
Re[3]: Python
От: Nikolay_ США  
Дата: 23.09.08 15:31
Оценка:
Здравствуйте, russian_bear, Вы писали:
_>>>- что с IDE?
N_>>А зачем?
_>Ну не в нотепаде же код писать.

Нет конечно, в редакторе кода. gvim там, emacs какой.

_>>>- насколько удобно писать для web в сравнении с php или ASP.NET?

N_>>Гораздо удобнее. Он таки язык практически полноценный, в отличии от вышеуказанных недоязыковдлявеба.
_>Язык может и неплохой, а вот насчет для веба ли большой вопрос. Надо будет посмотреть фреймворки для Питона...

Ну, для меня это уже скоро два года как не вопрос. Ибо уже посмотрел.
Re[3]: Python
От: Daevaorn Россия  
Дата: 23.09.08 15:33
Оценка:
Здравствуйте, russian_bear, Вы писали:

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


Гугл и разработчики youtube.com решили что для веба. И Яндекс тоже решил. Думаю для него всё-таки.
Re[4]: Python
От: Lloyd Россия  
Дата: 23.09.08 16:21
Оценка:
Здравствуйте, Nikolay_, Вы писали:

N_>>>Гораздо удобнее. Он таки язык практически полноценный, в отличии от вышеуказанных недоязыковдлявеба.

L>>это C#-то недоязык?

N_>Не знаю, за развитием виндовых технологий никогда особо не следил. А ASP это разве не своеобразный web-ориентированный VB?


Во-первых, ASP.NET != ASP. А во-вторых, ASP никак не завязан именно на VBScript, можно хоть тот же Python использовать, если он должным образом интегрирован в систему.
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[4]: Python
От: russian_bear  
Дата: 23.09.08 16:36
Оценка: -2
D>Гугл и разработчики youtube.com решили что для веба. И Яндекс тоже решил. Думаю для него всё-таки.

Странно было бы если бы youtube пошла другим путем. Линия ген. партии все-таки одна. Яндекс давно начал, тогда еще никаких дотнетов 3.5 в помине не было.
Re[2]: Python
От: JohnWayne  
Дата: 23.09.08 17:21
Оценка:
Здравствуйте, Nikolay_, Вы писали:

N_>Гораздо удобнее. Он таки язык практически полноценный, в отличии от вышеуказанных недоязыковдлявеба.


а в чем именно "недоязыковость" PHP?
и в чем именно удобство Python и RoR?
Re[5]: Python
От: dmz Россия  
Дата: 23.09.08 17:21
Оценка:
_>Странно было бы если бы youtube пошла другим путем. Линия ген. партии все-таки одна. Яндекс давно начал, тогда еще никаких дотнетов 3.5 в помине не было.

Яндекс питонить начал буквально вот-вот. Год — два — три как. Когда не было совсем никаких дотнетов, там писали на C/C++.
Re[3]: Python
От: JohnWayne  
Дата: 23.09.08 17:22
Оценка:
Здравствуйте, JohnWayne, Вы писали:

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


N_>>Гораздо удобнее. Он таки язык практически полноценный, в отличии от вышеуказанных недоязыковдлявеба.


JW>а в чем именно "недоязыковость" PHP?

JW>и в чем именно удобство Python и RoR?

вернее, я понимаю в чем была недоязыковость PHP на момент возникновения гугла и яндекса
сейчас по моему все уже нормально
или еще нет?
Re[3]: Python
От: dmz Россия  
Дата: 23.09.08 17:22
Оценка:
JW>а в чем именно "недоязыковость" PHP?
JW>и в чем именно удобство Python и RoR?

Это можно только почувствовать, обсуждать это бесполезно.
Re[4]: Python
От: dmz Россия  
Дата: 23.09.08 17:33
Оценка:
JW>вернее, я понимаю в чем была недоязыковость PHP на момент возникновения гугла и яндекса
JW>сейчас по моему все уже нормально
JW>или еще нет?

Там уже сделали нормальные пространства имен в каком-либо виде? И как там с метапрограммированием? Оно уже перестало позиционироваться как-язык-на-котором-можно-сговнять-страничку и там не надо заключать код в теги? Если мы пишем бизнес-логику отдельно, а шаблоны — отдельно и не на PHP вообще — это несколько неуместно, нет? А оно уже перестало пытаться быть эдаким недо-С++, и раз уж язык высокоуровневый — может быть оно привнесло что-то ценное в языке? Руби и Питон привносят, всяко разно, борются со сложностью, уменьшают количество писанины — что и должен делать язык высокого уровня. А как PHP?

А можно на PHP сделать CORBA-сервант? И что — кто нибудь делает? А там есть такая фигня, например, как twisted? А генераторы парсеров? А там можно замутить AOP?
А XMLRPC сервисы на PHP делать удобно? А сериализация-десериализация там есть? А аналог Pyro? А ICE? И так далее и так далее.

И что в итоге? Нифига нет, язык — обрубок C++ и никакой дополнительной ценности не привносит, фактически на нем не имеет писать ничего кроме веб-страничек, которые при наличии шаблонизаторов все равно пишутся не на нем, а на этих шаблонизаторах. И зачем оно тогда нужно?
Re[5]: Python
От: Daevaorn Россия  
Дата: 23.09.08 18:06
Оценка:
Здравствуйте, russian_bear, Вы писали:

_>Странно было бы если бы youtube пошла другим путем. Линия ген. партии все-таки одна.


Какой партии? Вы о чем вообще?

_>Яндекс давно начал, тогда еще никаких дотнетов 3.5 в помине не было.


Зато было много чего другого. И всё равно стали использовать. И всё больше и больше.
Re[4]: Python
От: anton_t Россия  
Дата: 23.09.08 18:21
Оценка: +3
Здравствуйте, Nikolay_, Вы писали:

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

_>>>>- насколько удобно писать для web в сравнении с php или ASP.NET?
N_>>>Гораздо удобнее. Он таки язык практически полноценный, в отличии от вышеуказанных недоязыковдлявеба.
L>>это C#-то недоязык?

N_>Не знаю, за развитием виндовых технологий никогда особо не следил. А ASP это разве не своеобразный web-ориентированный VB?


Чувствуется
Re[6]: Python
От: Lloyd Россия  
Дата: 23.09.08 19:03
Оценка:
Здравствуйте, Daevaorn, Вы писали:

_>>Странно было бы если бы youtube пошла другим путем. Линия ген. партии все-таки одна.


D>Какой партии? Вы о чем вообще?


Видимо "партия" — это google (владелец youtube). А google любит свои продукты делать на питоне.
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[5]: Python
От: Lloyd Россия  
Дата: 23.09.08 19:06
Оценка:
Здравствуйте, dmz, Вы писали:

dmz>И что в итоге? Нифига нет, язык — обрубок C++


Гм. А что у PHP общего с C++, кроме разве что фигурных скобок?
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[7]: Python
От: Daevaorn Россия  
Дата: 23.09.08 19:12
Оценка: 1 (1) +1
Здравствуйте, Lloyd, Вы писали:

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


_>>>Странно было бы если бы youtube пошла другим путем. Линия ген. партии все-таки одна.


D>>Какой партии? Вы о чем вообще?


L>Видимо "партия" — это google (владелец youtube). А google любит свои продукты делать на питоне.


Но yuotube.com стал частью гугла, когда уже имел мировую известность. А начинался он с двух студентов на кампусе. И именно они выбрали питон. И не прогадали.
Re[6]: Python
От: Гест Украина https://zverok.github.io
Дата: 23.09.08 20:30
Оценка:
Здравствуйте, Lloyd, Вы писали:

dmz>>И что в итоге? Нифига нет, язык — обрубок C++


L>Гм. А что у PHP общего с C++, кроме разве что фигурных скобок?


Базовые синтаксические конструкции (for, if, switch — ИМЕННО так выглядят только в С и его синтаксических наследниках); большАя часть стандартной библиотеки.

Но все же скорее это наследие С, а не С++.
Re: Python
От: yumi  
Дата: 23.09.08 23:28
Оценка:
Здравствуйте, russian_bear, Вы писали:

_>Google сделал свой "хостинг" для приложений на питоне. Почему именно питон?!


Спроси у Гвидо ван Россума
А если серъезно, то при всех своих недостатках и недочетах, Питон все же делает свое дело хорошо. Альтернативой был бы я думаю Лисп, если бы не его синтаксис.
Lisp is not dead. It’s just the URL that has changed:
http://clojure.org
Re[2]: Python
От: JohnWayne  
Дата: 23.09.08 23:46
Оценка:
вопросы к специалистам

1. какая на ваш взгляд самая удобная среда разработки для питона и почему
отдельно рассматриваем
— платные
— бесплатные

2. какие существуют популярные фреймворки для разработки веб приложений на питоне?
каковы их преимущества и недостатки с вашей точки зрения?
Re[3]: Python
От: Непомнящий Евгений  
Дата: 24.09.08 08:26
Оценка:
Здравствуйте, JohnWayne, Вы писали:

JW>2. какие существуют популярные фреймворки для разработки веб приложений на питоне?

JW>каковы их преимущества и недостатки с вашей точки зрения?

Тут довольно много материала о разных фреймворках.
... << RSDN@Home 1.2.0 alpha 4 rev. 1096>>
Re[3]: Python
От: DemAS http://demas.me
Дата: 24.09.08 08:30
Оценка:
> Ну не в нотепаде же код писать.

Я в vim пишу.
Posted via RSDN NNTP Server 2.1 beta
Re[3]: Python
От: yumi  
Дата: 24.09.08 09:06
Оценка:
Здравствуйте, JohnWayne, Вы писали:

JW>вопросы к специалистам


Я не специалист

JW>1. какая на ваш взгляд самая удобная среда разработки для питона и почему

JW>отдельно рассматриваем
JW>- платные
Не пользуюсь.
JW>- бесплатные
jEdit.

JW>2. какие существуют популярные фреймворки для разработки веб приложений на питоне?

JW>каковы их преимущества и недостатки с вашей точки зрения?
Есть один общий большой недостаток, это скорость.
Lisp is not dead. It’s just the URL that has changed:
http://clojure.org
Re: Python
От: sadomovalex Россия http://sadomovalex.blogspot.com
Дата: 24.09.08 09:56
Оценка: +1
Здравствуйте, russian_bear, Вы писали:

_>Всем привет!


_>Google сделал свой "хостинг" для приложений на питоне. Почему именно питон?!


_>И соответственно про Питон вопросы:

_>- что с IDE?
_>- насколько удобно писать для web в сравнении с php или ASP.NET?

отличный язык. Я уже пару месяцев не открывал студию — делаем проект на питоне — и не жалею совершенно . Недавно поймал себя на мысли что и в шарпе я начинаю использовать те же приемы, которые часто используются в питоне (напр. объявление локальных функций). Как правильно заметил Миша на alt.net meeting-е
Автор: mogadanez
Дата: 05.06.08
в СПб, проходившем в офисе MetaCommunications этим летом, это язык который можно взять и сразу начать фигачить.
Тесты писать — одно удовольствие, очень просто mock-ать и stub-ать объекты (все ведь знают что mock != stub ). Если кто сомневается, большинство compile-time ошибок хорошо отлавливаются тулзами аля pylint
"Что не завершено, не сделано вовсе" Гаусс
Re[6]: Python
От: WolfHound  
Дата: 24.09.08 11:10
Оценка:
Здравствуйте, Daevaorn, Вы писали:

D>Зато было много чего другого. И всё равно стали использовать. И всё больше и больше.

Не стоит выдавать жилаемое за действительное.
В Яндексе рулит http://xscript.opensource.yandex.ru/trac
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[7]: Python
От: Daevaorn Россия  
Дата: 24.09.08 11:12
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


D>>Зато было много чего другого. И всё равно стали использовать. И всё больше и больше.

WH>Не стоит выдавать жилаемое за действительное.
WH>В Яндексе рулит http://xscript.opensource.yandex.ru/trac

1. Я знаю о чем говорю.
2. В таких крупных компаниях всегда используют целый спектр технологий.
Re[7]: Python
От: Mr.Cat  
Дата: 24.09.08 12:43
Оценка:
Здравствуйте, Гест, Вы писали:
L>>Гм. А что у PHP общего с C++, кроме разве что фигурных скобок?
Г>большАя часть стандартной библиотеки.

std::string, std::cout и т.п. как-то я в php не обнаружил.
Re[8]: Python
От: Гест Украина https://zverok.github.io
Дата: 24.09.08 14:26
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

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

L>>>Гм. А что у PHP общего с C++, кроме разве что фигурных скобок?
Г>>большАя часть стандартной библиотеки.

MC>std::string, std::cout и т.п. как-то я в php не обнаружил.


Нравится изображать непонимание? На здоровье. Тем не менее:
1. высказывание "большАя часть АПИ стандартной библиотеки PHP позаимствована из С++" не означает "весь АПИ стандартной библиотеки С++ вошел в PHP"
2. оговорку о "скорее С, нежели С++" я сделал.

Какую ценность несло Ваше сообщение?
Re[9]: Python
От: Mr.Cat  
Дата: 24.09.08 16:20
Оценка:
Здравствуйте, Гест, Вы писали:
Г>Какую ценность несло Ваше сообщение?

Просто напоминаю, что C++ не равно C. В рамках общего несогласия с Вашими тезисами. То, что названия каких-то функций php напоминают названия каких-то функций из сишных библиотек — еще не говорит о похожести языков.
Re[3]: Python
От: novitk США  
Дата: 24.09.08 16:30
Оценка:
Здравствуйте, JohnWayne, Вы писали:

По поводу IDE.

У меня есть покупная WingIDE, продукт довольно качественый. Сейчас я ей не пользуюсь, просто не вижу реального увеличения скорости по сравнению с Emacs/IPython.
Re[2]: Python
От: nikov США http://www.linkedin.com/in/nikov
Дата: 24.09.08 16:38
Оценка:
Здравствуйте, sadomovalex, Вы писали:

S>Если кто сомневается, большинство compile-time ошибок хорошо отлавливаются тулзами аля pylint


Неужто type flow анализ реализовали?
Re[3]: Python
От: FR  
Дата: 25.09.08 04:43
Оценка:
Здравствуйте, nikov, Вы писали:

N>Неужто type flow анализ реализовали?


Нет там как и в http://pychecker.sourceforge.net/ сплошные эвристики. Вот на базе PyPy вполне можно было бы сделать анализатор на базе полного вывода типов, жаль что они уперлись в свой компилятор, эта штука была бы не менее полезной.
Re[3]: Python
От: FR  
Дата: 25.09.08 04:50
Оценка:
Здравствуйте, JohnWayne, Вы писали:

JW>вопросы к специалистам


JW>1. какая на ваш взгляд самая удобная среда разработки для питона и почему

JW>отдельно рассматриваем
JW>- платные

http://www.wingware.com/
http://www.activestate.com/Products/komodo_ide/index.mhtml

JW>- бесплатные


http://pydev.sourceforge.net/
http://code.google.com/p/ulipad/
Re[3]: Python
От: monax  
Дата: 25.09.08 08:28
Оценка:
Здравствуйте, russian_bear, Вы писали:

_>Ну скажем так — у гугля есть какой-то свой фреймворк для веб. Но и там html код формируется как строка, то есть нет отдельного View (файл .aspx в дотнете).


В django всё построено на MVC. Если нет желания возиться с фреймоврком (ну не нужен он), то можно взять шаблонизатор, например, Cheetah, и разделять шаблон и код.
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[5]: Python
От: Mamut Швеция http://dmitriid.com
Дата: 25.09.08 10:40
Оценка:
dmz>Там уже сделали нормальные пространства имен в каком-либо виде?

нет

dmz>И как там с метапрограммированием?


нет. но и впитоне, насколько помню, тоже не ахти

dmz>Оно уже перестало позиционироваться как-язык-на-котором-можно-сговнять-страничку и там не надо заключать код в теги?


уже лет 5 как

dmz>Если мы пишем бизнес-логику отдельно, а шаблоны — отдельно и не на PHP вообще — это несколько неуместно, нет?


если логику пишем не на РНР, то какие претензии к РНР? MVC в РНР есть давно в виде нескольких фреймворков

dmz>А оно уже перестало пытаться быть эдаким недо-С++, и раз уж язык высокоуровневый — может быть оно привнесло что-то ценное в языке?


определение ценности в студию

dmz>Руби и Питон привносят, всяко разно, борются со сложностью, уменьшают количество писанины — что и должен делать язык высокого уровня. А как PHP?


Java — это язык высокого уровня? Он уменьшает количество писанины?

dmz>А можно на PHP сделать CORBA-сервант? И что — кто нибудь делает?


http://phporb.sourceforge.net/

dmz>А там есть такая фигня, например, как twisted?


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

dmz> А генераторы парсеров? А там можно замутить AOP?


нет

dmz>А XMLRPC сервисы на PHP делать удобно?


http://phpxmlrpc.sourceforge.net/

dmz> А сериализация-десериализация там есть?


http://php.net/serialize
http://php.net/unserialize

dmz> А аналог Pyro?


нет

dmz> А ICE?


http://www.zeroc.com/icephp.html

dmz> И так далее и так далее.

dmz>И что в итоге? Нифига нет, язык — обрубок C++ и никакой дополнительной ценности не привносит, фактически на нем не имеет писать ничего кроме веб-страничек, которые при наличии шаблонизаторов все равно пишутся не на нем, а на этих шаблонизаторах. И зачем оно тогда нужно?


Мде. Налицо незнание РНР вообще


ЗЫ. Мне РНР тоже не нравится, но настолько огульно хаять технологию не позволю


dmitriid.comGitHubLinkedIn
Re[4]: Python
От: Непомнящий Евгений  
Дата: 25.09.08 10:59
Оценка:
Здравствуйте, yumi, Вы писали:

JW>>2. какие существуют популярные фреймворки для разработки веб приложений на питоне?

JW>>каковы их преимущества и недостатки с вашей точки зрения?
Y>Есть один общий большой недостаток, это скорость.

Скорость — это общий недостаток всего питона Если скорость критична — пасать на интерпритируемом языке с динамической типизацией не стоит.

Так что большим этот недостаток назвать сложно.

К тому ж фреймворки хорошо вылизаны и не факт, что ваш собственный велосипед будет быстрее.
... << RSDN@Home 1.2.0 alpha 4 rev. 1096>>
Re[6]: Python
От: FR  
Дата: 25.09.08 13:56
Оценка: 16 (1) +1
Здравствуйте, Mamut, Вы писали:

M>нет. но и впитоне, насколько помню, тоже не ахти


В питоне вполне нормально, на уровне объектов и классов, метаклассы в стиле смаллталка, плюс декораторы.
Кроме того доступен через стандартные модули компилятор байт кода и AST. Это конечно не квазицитирование, но генерировать и инструментировать код очень просто.
Re[6]: Python
От: dmz Россия  
Дата: 25.09.08 15:41
Оценка:
dmz>>И как там с метапрограммированием?
M>нет. но и впитоне, насколько помню, тоже не ахти

Чего там в питоне не ахти? Чего не хватает? Манипуляций на уровне AST? Да, возможно. Остальное, вроде бы, вполне.
По крайней мере не сталкивался с тем, что невозможно что-то заметапрограммировать. Т.е. еще раз — я верю что оно есть, просто не встречалось в реальной жизни.

dmz>>Оно уже перестало позиционироваться как-язык-на-котором-можно-сговнять-страничку и там не надо заключать код в теги?

M>уже лет 5 как

На нем пишут что-то, кроме веб-страниц? Что-то известное, и что-то большее, чем поделка написанная для прикола?


dmz>>Если мы пишем бизнес-логику отдельно, а шаблоны — отдельно и не на PHP вообще — это несколько неуместно, нет?

M>если логику пишем не на РНР, то какие претензии к РНР? MVC в РНР есть давно в виде нескольких фреймворков

Шаблоны мы пишем НЕ на PHP. А бизнес-логику — на PHP. Вроде именно это я сказал.

dmz>>А оно уже перестало пытаться быть эдаким недо-С++, и раз уж язык высокоуровневый — может быть оно привнесло что-то ценное в языке?

M>определение ценности в студию

Ну вот в питоне есть такие удобные штуки, как list comprehensions, лямбды, operator, itertools, генераторы, декораторы, метапрограммирование, конструкция with и мониторы. Например.
В руби тоже много интересного. А что нам предложит PHP?

dmz>>Руби и Питон привносят, всяко разно, борются со сложностью, уменьшают количество писанины — что и должен делать язык высокого уровня. А как PHP?


M>Java — это язык высокого уровня? Он уменьшает количество писанины?

Нет. Нет. И не надо спрашивать, что я думаю о Java, я все равно не буду отвечать на этот вопрос.

M>http://phporb.sourceforge.net/

И что — кто нибудь серьезно это делает?

dmz>>А там есть такая фигня, например, как twisted?

M>пхп предназначен для веба, нефиг пытаться впихнуть в него невпихуемое

А твистед на вебе использовать милое дело. Начиная от раздачи файлов, кончая coment и оочень-длинными-запросами.
И "язык предназначенный для веба" это вообще звучит довольно нелепо.

dmz>>А XMLRPC сервисы на PHP делать удобно?


M>http://phpxmlrpc.sourceforge.net/

Я не сомневаюсь, что есть. Вопрос был — удобно ли?

dmz>> А ICE?


M>http://www.zeroc.com/icephp.html


И шо — кто-то в здравом уме будет писать серванты для ICE на php? Такой травы даже в амстердаме нет.
нужно?

M>Мде. Налицо незнание РНР вообще


Ну конечно. Впрочем, в PHP нет ничего такого, что требовалось бы отдельно знать — т.к. это просто помойка из фич других языков.
Проекты у нас на нем были, последний в 2005 году, что ли. С большим удовольствием отправили их в топку.

M>ЗЫ. Мне РНР тоже не нравится, но настолько огульно хаять технологию не позволю


Да это никакая не технология. PHP не нужен. Он не быстрый, на нем неудобно писать, он не уменьшает сложность. Он не содержит ни одной оригинальной концепции, равно как и не является концептуально-целостным. Абсолютно бессмысленная вещь, в общем. Единственный его плюс — бывает на дешевых хостингах, и то, наверное, это уже неактуально ни для кого, кто бы делал что-то связанное с веб.
Re[4]: Python
От: russian_bear  
Дата: 25.09.08 15:49
Оценка: :))
M>В django всё построено на MVC. Если нет желания возиться с фреймоврком (ну не нужен он), то можно взять шаблонизатор, например, Cheetah, и разделять шаблон и код.

Да, уже успел глянуть, интересно. Не .NET, конечно, в плане удобства, но тоже вполне ничего. Огромный плюс в том, что не только под винду, видимо поэтому Гуглу он так интересен.
Re[7]: Python
От: Nikolay_ США  
Дата: 25.09.08 15:58
Оценка:
Здравствуйте, dmz, Вы писали:
dmz>>>Оно уже перестало позиционироваться как-язык-на-котором-можно-сговнять-страничку и там не надо заключать код в теги?
M>>уже лет 5 как
dmz>На нем пишут что-то, кроме веб-страниц? Что-то известное, и что-то большее, чем поделка написанная для прикола?

Вряд ли. Но веб-страницы там написаны весьма известные. Википедия, дигг, фликр...
Впрочем, не знаю -- может они просто писались индусами за 3$/h, тогда PHP альтернатив действительно нет.
Re[8]: Python
От: dmz Россия  
Дата: 25.09.08 16:17
Оценка:
Здравствуйте, Nikolay_, Вы писали:

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

dmz>>>>Оно уже перестало позиционироваться как-язык-на-котором-можно-сговнять-страничку и там не надо заключать код в теги?
M>>>уже лет 5 как
dmz>>На нем пишут что-то, кроме веб-страниц? Что-то известное, и что-то большее, чем поделка написанная для прикола?

N_>Вряд ли. Но веб-страницы там написаны весьма известные. Википедия, дигг, фликр...

Мнээ. Мне известно, что на PHP делают веб-страницы, в т.ч. весьма известные, типа яху. Мне интересно что-то не маргинальное, написанное на PHP и не являющееся
веб-страничкой. На самом деле, мне это не очень интересно, потому что и так все понятно. Собственно, адвокатам PHP предлагается выписать плюсы, продолжив список:

1) Дебильно-простой
2) Есть на дешевых хостингах
3) ... — ?
Re[7]: Python
От: Mamut Швеция http://dmitriid.com
Дата: 26.09.08 06:05
Оценка:
dmz>И "язык предназначенный для веба" это вообще звучит довольно нелепо.

Почему?


dmitriid.comGitHubLinkedIn
Re[9]: Python
От: Трурль  
Дата: 26.09.08 06:38
Оценка:
Здравствуйте, dmz, Вы писали:

dmz>Мнээ. Мне известно, что на PHP делают веб-страницы, в т.ч. весьма известные, типа яху. Мне интересно что-то не маргинальное, написанное на PHP и не являющееся веб-страничкой.


А тебе не интересно что-то не маргинальное, написанное на SQL и не являющееся базой данных.
Re[10]: Python
От: dmz Россия  
Дата: 26.09.08 08:27
Оценка:
dmz>>Мнээ. Мне известно, что на PHP делают веб-страницы, в т.ч. весьма известные, типа яху. Мне интересно что-то не маргинальное, написанное на PHP и не являющееся веб-страничкой.

Т>А тебе не интересно что-то не маргинальное, написанное на SQL и не являющееся базой данных.


Году в 2002-ом видел веб-систему бронирования номеров в отелях, написанную чехами целиком на PL/SQL. Даже веб-морда на нем. Использовали какой-то оракловый апп-сервер.

Что же касается SQL, то он не является универсальным, т.е сравнение некорректно. PHP — универсальный язык.

Более того, какая есть у веба такая специфика, что именно на PHP удобно делать веб-приложения (и неудобно — остальные) ?
Re[7]: Python
От: Gluk_Kazan  
Дата: 26.09.08 08:35
Оценка:
Здравствуйте, Гест, Вы писали:

Г>Базовые синтаксические конструкции (for, if, switch — ИМЕННО так выглядят только в С и его синтаксических наследниках); большАя часть стандартной библиотеки.


Г>Но все же скорее это наследие С, а не С++.


Скорее уж наследие Perl-а
(убого и превоатно понятого)
Re[8]: Python
От: dmz Россия  
Дата: 26.09.08 08:37
Оценка:
dmz>>И "язык предназначенный для веба" это вообще звучит довольно нелепо.

M>Почему?


Потому что вся "специфика" веба — это генерация HTML страниц и обработка HTTP запросов. В остальном веб-приложение мало отличается от "не веб".
Средства для "веб" есть практически в любом языке. Что такого есть в PHP уникального, что позволяет сказать что он "предназначен" для веба? Для многих языков есть фреймворки, которые делают работу c HTTP и HTML более удобной, чем она есть на чистом PHP. Но разве кто-то говорит — что python язык для веба? Java язык для веба?
C# — язык для веба? Perl — язык для веба?
Re[9]: Python
От: Mamut Швеция http://dmitriid.com
Дата: 26.09.08 12:08
Оценка:
dmz>>>И "язык предназначенный для веба" это вообще звучит довольно нелепо.

M>>Почему?


dmz>Потому что вся "специфика" веба — это генерация HTML страниц и обработка HTTP запросов. В остальном веб-приложение мало отличается от "не веб".

dmz>Средства для "веб" есть практически в любом языке. Что такого есть в PHP уникального, что позволяет сказать что он "предназначен" для веба?


Не то, чтобы присутствовали, но отсутствуют. Например, GUI на РНР не напишешь (про PHP/Tk умолчим, не будем о грустном )


dmitriid.comGitHubLinkedIn
Re[10]: Python
От: dmz Россия  
Дата: 26.09.08 14:53
Оценка:
M>Не то, чтобы присутствовали, но отсутствуют. Например, GUI на РНР не напишешь (про PHP/Tk умолчим, не будем о грустном )

Ну можно при желании сделать биндинг какого-нибудь wxWidgets. Но слабо представляю, зачем.
Re[11]: Python
От: Mamut Швеция http://dmitriid.com
Дата: 27.09.08 18:31
Оценка:
M>>Не то, чтобы присутствовали, но отсутствуют. Например, GUI на РНР не напишешь (про PHP/Tk умолчим, не будем о грустном )
dmz>Ну можно при желании сделать биндинг какого-нибудь wxWidgets. Но слабо представляю, зачем.

Ну вот в том-то и дело РНР был и есть только для веба


dmitriid.comGitHubLinkedIn
Re[12]: Python
От: JohnWayne  
Дата: 27.09.08 22:29
Оценка:
Здравствуйте, Mamut, Вы писали:

M>>>Не то, чтобы присутствовали, но отсутствуют. Например, GUI на РНР не напишешь (про PHP/Tk умолчим, не будем о грустном )

dmz>>Ну можно при желании сделать биндинг какого-нибудь wxWidgets. Но слабо представляю, зачем.

M>Ну вот в том-то и дело РНР был и есть только для веба


вопрос к специалистам
можно ли рассматривать Python, ну и Ruby (что-то часто начало встречаться названия и этого языка), как более удобную/быструю альтернативу для Java при разработке серверных и десктопных кроссплатформенных приложений?
Re[13]: Python
От: SergH Россия  
Дата: 27.09.08 22:56
Оценка:
Здравствуйте, JohnWayne, Вы писали:

JW>можно ли рассматривать Python, ну и Ruby (что-то часто начало встречаться названия и этого языка), как более удобную/быструю альтернативу для Java при разработке серверных и десктопных кроссплатформенных приложений?


Удобную — да, быструю — нет. И сервера я бы честно говоря не рискнул. Всё-таки динамическая типизация... Но может это предрассудки.
Делай что должно, и будь что будет
Re[14]: Python
От: JohnWayne  
Дата: 27.09.08 23:08
Оценка:
Здравствуйте, SergH, Вы писали:

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


JW>>можно ли рассматривать Python, ну и Ruby (что-то часто начало встречаться названия и этого языка), как более удобную/быструю альтернативу для Java при разработке серверных и десктопных кроссплатформенных приложений?


SH>Удобную — да, быструю — нет. И сервера я бы честно говоря не рискнул. Всё-таки динамическая типизация... Но может это предрассудки.


возможно, возможно
помню в году так в 98-99м один знакомый специалист по хардверу (по его словам изучивший всю начинку интеловских продуктов по элементам) долго смеялся, когда я упомянул о том, что пишу курсовик на джава
да и мне тогда казалось, что это "модно-тупиковая" ветвь, хотя я совсем молодой был

тогда дельфи в российской провинции популярно было, технология завтрашнего дня..
как в дальнейшем оказалось, действительно популярная только в снг
Re[13]: Python
От: dmz Россия  
Дата: 28.09.08 04:47
Оценка: 72 (2) +1
JW>вопрос к специалистам
JW>можно ли рассматривать Python, ну и Ruby (что-то часто начало встречаться названия и этого языка), как более удобную/быструю альтернативу для Java при разработке серверных и десктопных кроссплатформенных приложений?

Python тормознее Java сам по себе в силу объективных причин, но — очень многие библиотеке и конструкции в коде Python это вызывы нативного код. Так что иногда может получаться ситуация, что Python работает даже быстрее. Кроме того, в типичном веб-приложении, тормоза ОБЫЧНО возникают отнюдь не в скорости выполнения питоновского байткода; Типичная ситуация у нас — скорость обработки HTTP запросов в связке reverse proxy + flup + wgsi app — около 2000 RPS если мы не обращаемся к базе. Если обращаемся — то в зависимости от тяжести запроса RPS падает на 1 — 2 порядка сразу. Но даже 200 RPS с одного ядра — это очень прилично; да на самом деле и 20 — вполне сносно, при условии, что результаты кэшируются. Для сравнения — YAWS на том же железе показывает максимум 2500 RPS, lighttpd на отдаче статического контента — макс. 15000.

Про Ruby сказать могу гораздо меньше, т.к. из-за отсутствия компиляции в байткод, отсутствии аналога JIT (у Python есть хотя бы psycho, который иногда помогает), проблем с юникодом и труднопонимаемым (по сравнению с питоном) метапрограммированием в нем как-то разочаровался. Еще были статьи про жор памяти в RoR, в общем как-то не торкнуло оно в свое время.
Re[14]: Python
От: Гест Украина https://zverok.github.io
Дата: 28.09.08 10:33
Оценка:
Здравствуйте, dmz, Вы писали:

dmz>Про Ruby сказать могу гораздо меньше, т.к. из-за отсутствия компиляции в байткод, отсутствии аналога JIT (у Python есть хотя бы psycho, который иногда помогает), проблем с юникодом и труднопонимаемым (по сравнению с питоном) метапрограммированием в нем как-то разочаровался. Еще были статьи про жор памяти в RoR, в общем как-то не торкнуло оно в свое время.


Со всем, кроме выделенного, можно согласиться (правда, насчет RoR знаю мало, т.к. не использую).
Re[5]: Python
От: monax  
Дата: 30.09.08 13:22
Оценка:
Здравствуйте, russian_bear, Вы писали:

M>>В django всё построено на MVC. Если нет желания возиться с фреймоврком (ну не нужен он), то можно взять шаблонизатор, например, Cheetah, и разделять шаблон и код.


_>Да, уже успел глянуть, интересно. Не .NET, конечно, в плане удобства, но тоже вполне ничего. Огромный плюс в том, что не только под винду, видимо поэтому Гуглу он так интересен.


Если есть интерес к Python, то можно посмотреть и на Pylons, своеобразный конкурент django. Авторы одного стартапа очень его хвалили (после того, как выпустили сам стартап).
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[5]: Python
От: Nikolay_ США  
Дата: 30.09.08 13:35
Оценка:
Здравствуйте, russian_bear, Вы писали:
M>>В django всё построено на MVC. Если нет желания возиться с фреймоврком (ну не нужен он), то можно взять шаблонизатор, например, Cheetah, и разделять шаблон и код.
_>Да, уже успел глянуть, интересно. Не .NET, конечно, в плане удобства, но тоже вполне ничего. Огромный плюс в том, что не только под винду, видимо поэтому Гуглу он так интересен.

А что удобного в .NET?
Re[6]: Python
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 30.09.08 13:52
Оценка:
Здравствуйте, Nikolay_, Вы писали:

N_>А что удобного в .NET?


По сравнению с чем?
Re[7]: Python
От: Nikolay_ США  
Дата: 30.09.08 14:01
Оценка:
Здравствуйте, gandjustas, Вы писали:
G>Здравствуйте, Nikolay_, Вы писали:
N_>>А что удобного в .NET?
G>По сравнению с чем?

По сравнению с тем, разумеется, с чем он сравнивался. В моей квоте эта информация была сохранена.
Re[8]: Python
От: russian_bear  
Дата: 30.09.08 17:54
Оценка:
N_>По сравнению с тем, разумеется, с чем он сравнивался. В моей квоте эта информация была сохранена.

Я сразу оговорюсь, что я с Питоном работал не дольше недели и в нотепаде Поэтому я расскажу про достоинства .NET в плане разработки веб-сайтов.

1) Очень простой старт. Фактически, страничку с гридом, который бы соединялся с базой данных (и даже с AJAX) можно сделать вообще не трогая клавиатуру.
2) Удобный редактор кода (Visual Studio). Я не могу сравнивать его с теми редакторами, которые здесь посоветовали — наверняка и там все неплохо, но за VS могу сказать, что он очень удобен.
3) В .NET Framework уже есть 90% того, что нужно для web. Это и элементарное создание страничек и веб-сервисов и управление кешированием, и сессии, и набор различных контролов. И весь остальной набор, который может когда либо понадобится, включая Security, работу с XML, Sockets, ... — бесконечное море.
4) Не видел этого в Python, хотя может оно и есть — контролы. Видел шаблоны, но это совсем не то. Ну и вообще если брать питоновские шаблоны, то это как ASP по сравнению с ASP.NET.
5) Если хочется питоновского аналога MVC, то есть MVC Framework. Я имею в виду .NET аналог следующего:

from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import 
run_wsgi_appapplication = webapp.WSGIApplication([('/', MainPage),
                                      ('/newentry', NewEntry),
                                      ('/editentry', EditEntry),
                                      ('/deleteentry', DeleteEntry),
                                     ],
                                     debug=True)
def main():  run_wsgi_app(application)


Ну и там уже всякие мелочи вроде типизации, LINQ, ...
Re[9]: Python
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 30.09.08 18:06
Оценка:
Здравствуйте, russian_bear, Вы писали:

N_>>По сравнению с тем, разумеется, с чем он сравнивался. В моей квоте эта информация была сохранена.


_>Я сразу оговорюсь, что я с Питоном работал не дольше недели и в нотепаде Поэтому я расскажу про достоинства .NET в плане разработки веб-сайтов.


_>1) Очень простой старт. Фактически, страничку с гридом, который бы соединялся с базой данных (и даже с AJAX) можно сделать вообще не трогая клавиатуру.

_>2) Удобный редактор кода (Visual Studio). Я не могу сравнивать его с теми редакторами, которые здесь посоветовали — наверняка и там все неплохо, но за VS могу сказать, что он очень удобен.
_>3) В .NET Framework уже есть 90% того, что нужно для web. Это и элементарное создание страничек и веб-сервисов и управление кешированием, и сессии, и набор различных контролов. И весь остальной набор, который может когда либо понадобится, включая Security, работу с XML, Sockets, ... — бесконечное море.
_>4) Не видел этого в Python, хотя может оно и есть — контролы. Видел шаблоны, но это совсем не то. Ну и вообще если брать питоновские шаблоны, то это как ASP по сравнению с ASP.NET.
_>5) Если хочется питоновского аналога MVC, то есть MVC Framework. Я имею в виду .NET аналог следующего:

_>
_>from google.appengine.ext import webapp
_>from google.appengine.ext.webapp.util import 
_>run_wsgi_appapplication = webapp.WSGIApplication([('/', MainPage),
_>                                      ('/newentry', NewEntry),
_>                                      ('/editentry', EditEntry),
_>                                      ('/deleteentry', DeleteEntry),
_>                                     ],
_>                                     debug=True)
_>def main():  run_wsgi_app(application)
_>


_>Ну и там уже всякие мелочи вроде типизации, LINQ, ...


Если смотрели состав SP1 для .NET 3.5, то там есть еще Dynamic Data. С её помощью можно создать генератор backend-а по мета-модели.
Re[10]: Python
От: russian_bear  
Дата: 30.09.08 18:48
Оценка:
G>Если смотрели состав SP1 для .NET 3.5, то там есть еще Dynamic Data. С её помощью можно создать генератор backend-а по мета-модели.

За всем не успеть Вообще плохо представляю себе как уследить за всеми новшествами...
Re[7]: Python
От: Дельгядо Филипп Россия  
Дата: 30.09.08 23:13
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>В Яндексе рулит http://xscript.opensource.yandex.ru/trac


XScript — это, по сути, очень продвинутый и оптимизированный шаблонизатор (XSLTшный). И используется, понятное дело, только для фронтов.
А вот бэкэнды можно писать и на питоне.
Re[8]: Python
От: WolfHound  
Дата: 01.10.08 11:06
Оценка:
Здравствуйте, Дельгядо Филипп, Вы писали:

ДФ>XScript — это, по сути, очень продвинутый и оптимизированный шаблонизатор (XSLTшный). И используется, понятное дело, только для фронтов.

Туда проникло зло... lua block.

ДФ>А вот бэкэнды можно писать и на питоне.

А смысл если есть жаба которая всегда будет работать быстрее питона?
А для особо жестких случаев С++.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[9]: Python
От: Дельгядо Филипп Россия  
Дата: 01.10.08 19:33
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Здравствуйте, Дельгядо Филипп, Вы писали:


WH>Туда проникло зло... lua block.

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

ДФ>>А вот бэкэнды можно писать и на питоне.

WH>А смысл если есть жаба которая всегда будет работать быстрее питона?

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

WH>А для особо жестких случаев С++.

Не надо.....
Re[9]: Python
От: FR  
Дата: 02.10.08 08:20
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>А смысл если есть жаба которая всегда будет работать быстрее питона?

WH>А для особо жестких случаев С++.

Про серверы не знаю но на десктопе смесь питона с С++ вполне может и
работать шустрее явы.
Re[10]: Python
От: WolfHound  
Дата: 02.10.08 15:05
Оценка:
Здравствуйте, Дельгядо Филипп, Вы писали:

ДФ>А некоторые задачи просто быстрее написать на питоне. Если есть вполне приличные разработчики, то по скорости разработки питон будет побыстрее.

Это утверждение требует доказательства.
Особенно в условиях длительной разработки.

ДФ>А скорость отдельного бэка в Яндексе, как ты понимаешь, никого особенно не волнует — десятком серверов больше, десятком меньше — уже без разницы, при уже имеющейся инфраструктуре и горизонтальном масштабировании как корпоративной культуре.

Интересно зачем тогда нужны танкисты...

WH>>А для особо жестких случаев С++.

ДФ>Не надо.....
Ну ты еще предложи поиск и хаскрипт на питоне переписать...
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[10]: Python
От: WolfHound  
Дата: 02.10.08 15:06
Оценка:
Здравствуйте, FR, Вы писали:

FR>Про серверы не знаю но на десктопе смесь питона с С++ вполне может и работать шустрее явы.

А смесь С++ и жабы еще быстрее.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[11]: Python
От: FR  
Дата: 02.10.08 15:10
Оценка:
Здравствуйте, WolfHound, Вы писали:

FR>>Про серверы не знаю но на десктопе смесь питона с С++ вполне может и работать шустрее явы.

WH>А смесь С++ и жабы еще быстрее.

А смысл какой в этой смеси?
С питоном понятно при правильном использовании получаем скорость разработки от питона и
быстродействие от C++.
Re[10]: Python
От: Cyberax Марс  
Дата: 02.10.08 15:16
Оценка: -1
Здравствуйте, FR, Вы писали:

FR>Про серверы не знаю но на десктопе смесь питона с С++ вполне может и

FR>работать шустрее явы.
Это сделать весьма сложно. Сам Python — совсем небыстрый. Да ещё и немногопоточный (из-за GIL!!), что в некоторых случаях просто его убивает.
Sapienti sat!
Re: Python
От: FR  
Дата: 02.10.08 15:16
Оценка:
Кстати сегодня зарелизили питон 2.6 http://www.python.org/download/releases/2.6/
Значит 3.0 тоже скорее всего недолго осталось ждать.
python 2.6
Re[11]: Python
От: FR  
Дата: 02.10.08 15:21
Оценка: +2
Здравствуйте, Cyberax, Вы писали:

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


FR>>Про серверы не знаю но на десктопе смесь питона с С++ вполне может и

FR>>работать шустрее явы.
C>Это сделать весьма сложно. Сам Python — совсем небыстрый. Да ещё и немногопоточный (из-за GIL!!), что в некоторых случаях просто его убивает.

Угу только GUI питоные и субъективно и объективно работают шустрее явовских, понятно что за счет C++ библиотек.
Ну и всякие расчетны программки c библиотеками типа NumPy тоже бывают шустрее.

А GIL сейчас модно обходить запуском новых процессов http://pypi.python.org/pypi/processing
Re[11]: Python
От: dmz Россия  
Дата: 02.10.08 16:18
Оценка: 58 (1)
FR>>Про серверы не знаю но на десктопе смесь питона с С++ вполне может и
FR>>работать шустрее явы.
C>Это сделать весьма сложно. Сам Python — совсем небыстрый. Да ещё и немногопоточный (из-за GIL!!), что в некоторых случаях просто его убивает.

Это в общем, предрассудки. Т.е. если он работает просто как glue для кода на C — то это не совсем так, более того, на реализации отдельных
вещей, типа построчного анализа файла — могут получаться такие смешные казусы, что код, написанный "питоновским" способом по умолчанию,
может сделать код, написанный по умолчанию на С++ — ных потоках. Я пару лет назад приводил пример. Но дело даже не в этом — если код большую
часть времени проводит в цикле ожидания данных из базы — то не все ли равно, на каком языке он ожидает?

На типовом приложении, которое заключается, допустим, в запросе данных из базы, наложении на них шаблона и вывода — будет достаточно тяжело
добиться 10-кратного прироста RPS при написании на в "10 раз более быстром" C++. Ну то есть мне бы действительно хотелось бы посмотреть на в "10 раз более быстрое" приложение подобного плана, написанное на C++. Самому писать тесты недосуг.

С точки зрения нищебро... голожо... стартапа, в общем, мы с одного сервера снимаем 200 RPS — это значит, что мы имеем, грубо, 17'280'000 хитов. Давайте скинем еще порядок на усушку, утруску, тяжелые запросы и апдейты (допустим, апдейты мы утащим на вторую машину, что бы главная не просела) — и будем иметь миллион хитов.

Граждане, миллион хитов в сутки это довольно прилично. Такой проект уже должен иметь достаточное финансирование, что бы не экономить на машинках для кластера. В общем, ситуации бывают конечно разные, но в случае веб-проекта, я бы, лично, принес в жертву не задумываясь те проценты производительности, которые можно выжать, используя вместо питона, например, Java в пользу time-to-market а так же меньших издержках на разработку.

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

В общем примеры вполне живых приложений на Python — есть — youtube, reddit — из того, что я навскидку помню. По моему, вполне показательные примеры, что бы устранить сомнения в его применимости.

Что же касается C++ для веб-приложений — то предлагаю оставить его тем, кто может себе это позволить (вопросы, зачем оно надо — тоже лучше не обсуждать).
Re[11]: Python
От: Дельгядо Филипп Россия  
Дата: 02.10.08 23:31
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Здравствуйте, Дельгядо Филипп, Вы писали:


ДФ>>А некоторые задачи просто быстрее написать на питоне. Если есть вполне приличные разработчики, то по скорости разработки питон будет побыстрее.

WH>Это утверждение требует доказательства.
WH>Особенно в условиях длительной разработки.
Для длительной разработки — не знаю. Для конкретных коротких задач всяческий сахар и многопарадигмальность — скорее плюс.
При хороших разработчиках, конечно. Но личного опыта сравнения нет (в отличии от пары C++ и Java).


ДФ>>А скорость отдельного бэка в Яндексе, как ты понимаешь, никого особенно не волнует — десятком серверов больше, десятком меньше — уже без разницы, при уже имеющейся инфраструктуре и горизонтальном масштабировании как корпоративной культуре.

WH>Интересно зачем тогда нужны танкисты...
Кто-кто?

WH>>>А для особо жестких случаев С++.

ДФ>>Не надо.....
WH>Ну ты еще предложи поиск и хаскрипт на питоне переписать...
Ну, анализ данных для поиска — вполне. В качестве языка для запуска на каком-нибудь Hadoop'е.
Сами сервера выдачи поиска — это да, там 10% производительности выливаются в лишние сотни серверов, это уже заметно...

А вот XScript-то кто мешает на Python переписать? Там основная нагрузка идет на XSLT транслятор, а по словам Олега Оболенского, последние реализации XSLT на java (а что еще в Python будет использовано?) уже догнали libxmlc.
Хотя я бы предпочел, конечно, XScript на Java
Re[12]: Python
От: WolfHound  
Дата: 03.10.08 11:28
Оценка:
Здравствуйте, Дельгядо Филипп, Вы писали:

ДФ>При хороших разработчиках, конечно. Но личного опыта сравнения нет (в отличии от пары C++ и Java).

Понятно. Доказательств нет.

WH>>Интересно зачем тогда нужны танкисты...

ДФ>Кто-кто?
Вот когда узнаешь можно будет продолжить разговор о производительности.

ДФ>А вот XScript-то кто мешает на Python переписать?

Как минимум GIL.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[12]: Python
От: Cyberax Марс  
Дата: 03.10.08 11:35
Оценка:
Здравствуйте, dmz, Вы писали:

C>>Это сделать весьма сложно. Сам Python — совсем небыстрый. Да ещё и немногопоточный (из-за GIL!!), что в некоторых случаях просто его убивает.

dmz>Это в общем, предрассудки. Т.е. если он работает просто как glue для кода на C — то это не совсем так, более того, на реализации отдельных
dmz>вещей, типа построчного анализа файла — могут получаться такие смешные казусы, что код, написанный "питоновским" способом по умолчанию,
dmz>может сделать код, написанный по умолчанию на С++ — ных потоках.
Из этого кода нельзя делать вызовы в интерпретатор. Даже банальные AddRef/Release на питоновских объектов работать не будет!!!

dmz>Я пару лет назад приводил пример. Но дело даже не в этом — если код большую

dmz>часть времени проводит в цикле ожидания данных из базы — то не все ли равно, на каком языке он ожидает?
Не всё равно.
Sapienti sat!
Re[12]: Python
От: Cyberax Марс  
Дата: 03.10.08 11:40
Оценка:
Здравствуйте, FR, Вы писали:

FR>Угу только GUI питоные и субъективно и объективно работают шустрее явовских, понятно что за счет C++ библиотек.

Они работают за счёт использования нативных библиотек. Если использовать SWT в Java — то ты разницы не заметишь.

FR>Ну и всякие расчетны программки c библиотеками типа NumPy тоже бывают шустрее.

Даже близко не быстрее.

FR>А GIL сейчас модно обходить запуском новых процессов http://pypi.python.org/pypi/processing

Не всегда доступно.
Sapienti sat!
Re[13]: Python
От: dmz Россия  
Дата: 03.10.08 11:42
Оценка:
dmz>>может сделать код, написанный по умолчанию на С++ — ных потоках.
C>Из этого кода нельзя делать вызовы в интерпретатор. Даже банальные AddRef/Release на питоновских объектов работать не будет!!!

Не понял.

dmz>>часть времени проводит в цикле ожидания данных из базы — то не все ли равно, на каком языке он ожидает?

C>Не всё равно.

Убедительно.
Re[14]: Python
От: Cyberax Марс  
Дата: 03.10.08 12:15
Оценка:
Здравствуйте, dmz, Вы писали:

C>>Из этого кода нельзя делать вызовы в интерпретатор. Даже банальные AddRef/Release на питоновских объектов работать не будет!!!

dmz>Не понял.
Python использует не-threadsafe счётчик ссылок. Поэтому если ты будешь делать AddRef/Release на питоновских объектах без взятого GIL — получишь оооочень интересные эффекты.

dmz>>>часть времени проводит в цикле ожидания данных из базы — то не все ли равно, на каком языке он ожидает?

C>>Не всё равно.
dmz>Убедительно.
Ну да.
Sapienti sat!
Re[15]: Python
От: dmz Россия  
Дата: 03.10.08 12:22
Оценка:
C>>>Из этого кода нельзя делать вызовы в интерпретатор. Даже банальные AddRef/Release на питоновских объектов работать не будет!!!
dmz>>Не понял.
C>Python использует не-threadsafe счётчик ссылок. Поэтому если ты будешь делать AddRef/Release на питоновских объектах без взятого GIL — получишь оооочень интересные эффекты.

Ээ, а что надо делать, что бы вырубить GIL ? И кто предлагает его не брать?

В общем-то, про GIL мне известно. Так же известно, что производительность с ним получается вполне удовлетворительная (собственно, я привел), а также никуда не девается возможность увеличения процессов/разнесения по нодам — у нас же веб. Более того, если ВДРУГ именно питон для какой-то задачи стал боттлнеком — почему не вынести эту задачу куда угодно в отдельный сервис — и работать с ним отдельно.

Конечно, в плане concurrency питон заранее сливает целой пачке языков; Но если для конкретной задачи это некритично — то что мешает им пользоваться — тем более, что скорость разработки действительно оч. высокая.
Re[16]: Python
От: Cyberax Марс  
Дата: 03.10.08 12:29
Оценка:
Здравствуйте, dmz, Вы писали:

C>>Python использует не-threadsafe счётчик ссылок. Поэтому если ты будешь делать AddRef/Release на питоновских объектах без взятого GIL — получишь оооочень интересные эффекты.

dmz>Ээ, а что надо делать, что бы вырубить GIL ?
А ничего. Он обязателен.

dmz>И кто предлагает его не брать?

А если брать — то вдруг пропадёт многопоточность.
Sapienti sat!
Re[13]: Python
От: FR  
Дата: 03.10.08 16:45
Оценка:
Здравствуйте, Cyberax, Вы писали:

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


FR>>Угу только GUI питоные и субъективно и объективно работают шустрее явовских, понятно что за счет C++ библиотек.

C>Они работают за счёт использования нативных библиотек. Если использовать SWT в Java — то ты разницы не заметишь.

Приходилось одновременно пользоватся Еclipse, и недоделаным Boo, может и субъективно но у питоновскго отклик, был гораздо шустрее.

FR>>Ну и всякие расчетны программки c библиотеками типа NumPy тоже бывают шустрее.

C>Даже близко не быстрее.

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

FR>>А GIL сейчас модно обходить запуском новых процессов http://pypi.python.org/pypi/processing

C>Не всегда доступно.

Да ну где это недоступно?
В 2.6 подобный модуль уже стандартный http://docs.python.org/library/multiprocessing.html
Ну и плюс легкая реализация легких потоков через генераторы.
Re[17]: Python
От: FR  
Дата: 03.10.08 16:48
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>>>Python использует не-threadsafe счётчик ссылок. Поэтому если ты будешь делать AddRef/Release на питоновских объектах без взятого GIL — получишь оооочень интересные эффекты.

dmz>>Ээ, а что надо делать, что бы вырубить GIL ?
C>А ничего. Он обязателен.

Не совсем http://www.stackless.com/
Re[18]: Python
От: Cyberax Марс  
Дата: 03.10.08 17:00
Оценка: +1
Здравствуйте, FR, Вы писали:

C>>А ничего. Он обязателен.

FR>Не совсем http://www.stackless.com/
Там тоже GIL
Sapienti sat!
Re[14]: Python
От: Cyberax Марс  
Дата: 03.10.08 21:22
Оценка:
Здравствуйте, FR, Вы писали:

C>>Они работают за счёт использования нативных библиотек. Если использовать SWT в Java — то ты разницы не заметишь.

FR>Приходилось одновременно пользоватся Еclipse, и недоделаным Boo, может и субъективно но у питоновскго отклик, был гораздо шустрее.
Значит Eclipse больше делала в фоне. Так как разницы в отклике на простые операции взяться просто неоткуда.

FR>>>А GIL сейчас модно обходить запуском новых процессов http://pypi.python.org/pypi/processing

C>>Не всегда доступно.
FR>Да ну где это недоступно?
На Windows, например, оно будет ОЧЕНЬ тормозить. Так как создание процессов — весьма недёшево.

Опять же, не всё можно сделать через простой интерфейс в shared memory.

FR>В 2.6 подобный модуль уже стандартный http://docs.python.org/library/multiprocessing.html

FR>Ну и плюс легкая реализация легких потоков через генераторы.
Это не потоки, а сопроцедуры. Т.е. они не выполняются реально параллельно.
Sapienti sat!
Re[15]: Python
От: FR  
Дата: 04.10.08 12:12
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Значит Eclipse больше делала в фоне. Так как разницы в отклике на простые операции взяться просто неоткуда.


Ну под С++ Eclipse почти ничего и не делает.

C>На Windows, например, оно будет ОЧЕНЬ тормозить. Так как создание процессов — весьма недёшево.


Там используется пул процессов.

C>Опять же, не всё можно сделать через простой интерфейс в shared memory.


Там ограничений мало.

C>Это не потоки, а сопроцедуры. Т.е. они не выполняются реально параллельно.


Так для многих задач их вполне хватает, а для некторых они и получше чем тяжеловесные системные.
Re[19]: Python
От: Mr.Cat  
Дата: 12.10.08 22:32
Оценка:
Здравствуйте, Cyberax, Вы писали:
C>Там тоже GIL

Мммм. Я конечно тормоз, но как же IronPython? Wiki говорит, что там нету GIL'а.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.