Comments 255
Однако в первом случае используется stateless pythonимеется ввиду Stackless Python
Вообще толковая вещь — документация по Django (в абсолютном большинстве случаев при разработке веб приложений будет использоваться фраймворк).
Сейчас самым популярным веб-фреймворком для веба считается Джанго:
djbook.ru/rel1.9
Для изучения непосредственно самого языка "Dive into Python". Русская версия недопереведена правда.
Прошёл бесплатный курс на codecademy. Базового английского достаточно.
Далее уже по Django на русском неплохой плейлист на YouTube
Я бы предложил начать с "A bit of python"/"A Whirlwind Tour of Python" эти книги дадут достаточно для погружения в язык. Дальше посоветовал бы прочитать первую половину справочника(вторая половина — в основном, перевод документации и читается по необходимости) по питону от Дэвида Бизли. Для погружения на следующий уровень питона — "Effective Python" и "Fluent Python".
ну кто-то пытался использовать JS для игр?
А на чем вы предлагаете писать html5 игры?
Проблема в том, что если вы пишите их на python, то итоге они все равно будут или транслироваться в js, или выполнятся на js. Так что смысла нет(
JS в основном используют как скриптовый язык из-за его простоты и популярности, так как найти программиста, который вот совсем не знал бы js довольно сложно.
Вот что получилось описано в статье:
Каково оно учить JavaScript в 2016
В смысле компилятор C++ на JS для генерации кода для мобильников? Или вы про транспайлинг языков вроде C++, Rust и прочих в JS через LLVM+emscripten?
Что же касается геймдева на питоне, то к сожалению популярности он не набрал. Хотя тот же Blender Game Engine(BGE) вполне неплох, но рынок уже захвачен движками с большой экосистемой и магазинами ассетов.
Как я написал в статье, у Питона есть инструменты под эту сферу, но сама сфера не выглядит перспективно.
Тем не менее, сама фраза „три вещи, которые делают его весьма эффективными в области веб-скраппинга, бибиотеку Requests, beautifulsoup и АПИ для Selenium“ — на мой взгляд, ложная. Ни requests, ни тем более BeautifulSoup не являются эффектвными инструментами, да и Selenium, в отличие от Splash не для веб-скрейпинга создавался.
Да, кстати, спасибо за указание книги по машинному обучению — как раз собирался почитать что-то по этой теме.
Да, стоимость разработки и скорость выпуска для бизнеса важнее надежности. Результаты, к которым это приводит, мне, как потребителю, очень не нравятся. Надо что-то менять в системе. В частности, стараться переходть на более надежные языки.
допускает значение null
иммутабельность наоборот не поощеряет
А C, царствующий на микроконтроллерах, прямо-таки молодец в этих сферах :)
И на микроконтроллерах, где часто важен каждыйкилобайт, с иммутабельностью не сильно разгуляешься. Или нет?
Там, где экономят байтики, python, несмотря на мутабельность, тоже не совсем уместен. К тому же иммутабельность удобна компилятору для оптимизации, и функциональный код часто оказывается эффективнее.
Тут мне стало обидно как минимум за asp.net и node.js.
По мне, так питон только для машинного обучения, анализа данных и подобных штук нужен. И в этом он лидирует. Всё остальное — крохи с барского стола. А для девопса, несмотря на то, что инструменты написаны на питоне, сам питон на уровне знания синтаксиса нужен.
Однако незаметно сюда крадется движок Ren’Py, который внезапно стал лучшим движков для написания визуальных романов (страдальческих историй для девочек) [...]Вот сейчас обидно было.
- Прототипирование и запуск, малая нагрузка
- Популярность, большая нагрузка
Судя по моим наблюдениям, до второй стадии из сотни идей доживает меньше десятка. Поэтому есть смысл делать очень быстрый прототип, так же быстро дописывать и изменять его. ИМХО, это легче и быстрей всего делать на ruby с его рельсами, грейпом и др фреймворками. Через некоторое время, когда идея десять раз изменилась и прототип столько же раз переписали, когда наконец осознали, что именно надо делать и увидели, что это действительно пользуется спросом — прототип свою задачу выполнил, его можно выбросить и переписать начисто на каком-нибудь go, подготавливаясь к хайлоаду. С другой стороны — сервера дешевле времени разрабов. И если проект постоянно изменяется, лучше докупить железа, но сохранить скорость релизов.
Но это всё холивар. У каждого первого имеется свое мнение на тему того, какой яп/фреймворк быстрее/удобнее и почему всё остальное — отстой.
Я с Питоном никогда особо дел не имел, но вот недавно пришлось. Расчеты в исследовательских целях, необходимые инструменты основаны на Numpy/Scipy.
И как бы так поделикатнее сказать… Мне порой кажется, что этот язык был спроектирован с единственной целью — бесить :) Меня в нём бесит буквально всё: отступы, синтаксис, код-стайл, миллион подчеркиваний, экосистема, глючный pip, фреймворки, невнятные сообщения об ошибках… Ну просто вообще всё. А постоянное жужжание вокруг «питон самый простой, питон самый понятный» вызывает когнитивный диссонанс.
Что интересно: когда читаешь новичковские туториалы со стерильными примерами hello world — вроде нормально и можно даже сказать симпатично. Но когда переходишь к реальной практике — см. выше.
Причем, мне трудно сформулировать какие-то конкретные, глобальные претензии. Просто по сумме тысячи мелочей полное отторжение. Те же JS и PHP (традиционные объекты обвинений в плохом дизайне) мне кажутся на порядок прозрачнее и приятнее. Да, я понимаю, что мои знания в Питоне слабы, и я в нём не разобрался, не познал. Но фишка в том, что не хочется разбираться, как не хочется узнавать ближе неприятного тебе человека. Или вот ещё знаете это чувство, когда видишь чужой ужасно запутанный код и думаешь — блин, да мне проще с нуля это переписать!
Можете списать всё на индивидуальные психологические особенности.
JavaScript для вас понятнее, чем python? Это очень странно, обычно наоборот.
Нет, я не говорю, что python должен вам понравится, все-так, люди, разные. Если вас раздражает его code style, ну все, вы не сошлись.
Но суть в том, что обычно python старается вести себя довольно предсказуемо, так как в отличии от js у него строгая типизация и там нельзя, скажем, отнять от строки число, и в то же время, при желании он позволяет делать что угодно. Но стандартная библиотека предоставляет отличную возможность не связываться с этим, пока не возникнет необходимости.
И вот с ним мы характерами не сошлись.Когда я впервый раз потрогал python (после с++), я тоже негативно к нему относился, особенно к отступам, но спустя небольшое время я проникся, и сейчас синтаксис, это просто дело привычки, а «отступы» имеют свое преимущество.
Если код не 10 строчек, то все равно, для читаемости, форматируешь отступами. Что со скобками, что без. В итоге, скобки оказываются визуальным мусором
вообще борцов с мусором в последнее время как-то много развелось кто-то пишет js без точек с запятой яркий пример спичечной экономии некоторые умудряются в stylus не только точки с запятой убрать и скобки но даже и двоеточия лично для меня такой код выглядит вот примерно как этот самый абзац текста всё понятно же значит мусор лишний
Скобки это не мусор, а полезные маркеры начала и конца. Плюс, любой нормальный редактор умеет подсвечивать парные.
Если не писать код в одну строку, то отступы уже являются маркерами начала-конца блока. В этом случае скобки избыточны, не несут дополнительной смысловой нагрузки
Лично мне нравится подход Haskell — можно использовать как отступы, так и скобки для REPL, и нет конструкций с опциональными блоками — неправильные отступы не могут привести к компилируемому коду.
Если на клетке со львом увидишь надпись «Буйвол» — не верь глазам своим.Осторожно! Занятия программированием может лишить тебя будущего.
Слова " код-стайл, миллион подчеркиваний" наводят на мысль, что проблема у вас не с языком, а с библиотекой с которой вы работаете — похоже просто на кривой непроработанный API. Я сейчас вообще Питоном управляю текстовым редактором — так, по-моему, ассемблер был бы проще — но это не в Питоне проблема.
Чтобы нормально работать с numpy, нужно уложить в голове идею векторизации, и тогда все становится хорошо.
Компьютерное зрение (сомнительно)
Я бы здесь разделил стадии исследований для создания алгоритма-прототипа и разработки непосредственно продукта. Для прототипирования (в качестве бесплатной альтернативы Matlab) есть масса неплохих библиотек для Python (skimage, mahotas, etc) и обертка над OpenCV, так что Python очень не плох. Но для продукта прототип, как правило, лучше переписать, например, на С++, иначе проблемы с производительностью.
Компьютерное зрение… вакансий практически нет.
Мне кажется, что сейчас в представлении работодателя «компьютерное зрение» тождественно равно «машинное обучение». Поэтому в вакансиях пишут TensorFlow, PyTorch, etc.
— даже в относительно больших и нагруженных ML проектах вполне можно использовать python, т.к. обычно ядро библиотеки написано на c/c++, а python — это только обвязка;
— для компьютерного зрения тоже все есть — и openCV, и все нейросетевое барахло.
Мой бэкграунд: Мне нравиться PHP, многолетний опыт C#, первые серезные вещи делал на Delphi. То есть можно сказать уже, что я из «старай школы» — компонентно ориентированое мышление.
Решил попробовать Python для Вэб, категорически не понравилось! Не знаю как руби, но PHP превосходит Питон с точки зрения бизнес преминения (это мое субъективное мнение).
И вот почему,
1. это питон 2 и 3 версий. Это не просто сегментация сообщества и кода, это потеря доверия, прежде всего со стороны бизнеса.
2. слабые возжможности для анализаторов кода. Питон крутой язык для людей, но не для машин. Я считаю что IDE это важный инструмент продуктивности, а Python сложнее анализировать машинному коду и давать подсказки, сложнее делать подсветку по сравнению с PHP, не говоря уже о компилируемых языках.
3. По моим ощущениям Django это прошлый век. Да, кода там море, крутого кода. Но он не отвечает современным требованиям разработки. Но например там нету поддержки Ajax из коробки, сложности с визуальными компонентами. Скажем мне нравиться Yii, и установть туда какой-нибуль крутой визуальный виджет это минутное дело. В Django это в принципе сложно ввиду архитектектуры.
4. Если сравнивать с PHP, то на PHP море фреймворков, CMS, компонентов, скриптов для ВЭБ.
5. Лично мне не понравилась ООП в Python, когда я пишу на нем, то чувствую что меня держат за дурака. Да все просто и классно, но мне не надо просто. Я привык к той модели ООП что используют другие языки (Java/Php/C#) с которыми я работаю, и мне не нравиться та обрезаная версия, что есть в питон.
2. Я сам emacs использую, умный автокомплит и навигация по проекту, хватает… Даже, как бы сложно в это не было поверить, есть подсветка. Но неужели PyCharm прямо таки хуже PhpStorm? Пробовали оба, сравнивали?
3. Именно!
4. Качество != количество.
5. А вот тут любопытно, что это за модель такая Java/Php/C# и чем же отн отличается от Python. Можете привести примеры?
3. Отсутствие в django указания типов аргументов методов например очень не нравится.
4. На php это качественные продукты: prestashop, laravel, symfony и т.д.
5. отсутствие модификаторов доступа, отсутствие формальных интерфейсов например (Я знаю про AbsttactBase класс). Безусловное это синтаксический сахар, но ведь питон любят в том числе за наличие классных офис языка.
Безусловно в pythonе есть классные вещи, но в целом все существующие технологии в среднем равноценны. Python проигрывает всем в количестве инсталляций но всю серверах интернета, а значит спрос будет на него ниже как не крути.
Python проигрывает всем в количестве инсталляций но всю серверах интернетаСмотря как посчитать, все (большинство) ведущие дистрибутивы имеют python на борту изначально.
3. Так указывайте, кто вам мешает. В питоне есть аннотации, начиная с 3.5.
4. django, flask, tornado. Тот же Bitbucket или Instagram на джанге написаны если что.
5. Модификаторы доступа в питоне есть, если что. префикс в виде одинарного или двойного подчеркивания. Просто они носят рекомендательный а не запретительный характер. А формальные интерфейсы в языке с утиной типизацией… Это просто извращение. Но если очень хочется есть Mixin.
Откуда взялось утверждение про количество установок, вообще загадка. Есть какие то пруфы? Я бы посмотрел, учитывая что тот же дебиан без питона вообще не поставить.
Это же писал и автор в предыдущей статье. Он просто не нашел вакансий на python. Скажем один из моих клиентов заказывает сайты на стороне, когда я сильно загружен. Их всегда делают на PHP. И не важно плох PHP или хорошо, так же как не важно плох ли английский, просто все его используют.
Но я лично за то, что бы программисты все время остаивали новые языки и технологии.
На счет распространения PHP. Речь идет о веб серверах, писал с телефона тот комент, и на слове вэб что-то случилось.Я видел статью, гды ссылались на статистику гугла, не помню проверял ли ссылку. Вот после 5 минут поисков: w3techs.com/technologies/overview/programming_language/all
Конечно это в своей массе Wordpress, но он написан на PHP. Возможно отчасти причина популярности Wordpressa в удобстве deploy, кинул файлы на ftp и работает.
Возможно отчасти причина популярности Wordpressa в удобстве deploy, кинул файлы на ftp и работает.
Один маленький грязный секрет — это так не работает. Вам еще нужно правильно настроить apache, если вы из каменного века, или, скажем, php-fpm. А потом еще вам надо настроить бд и кеш.
Опять же таки, у PHP куча недостатков, например, та же проблема с "burn-to-die" из-за которой надо говорить костыли из "запусти этот php скрипт через cron"
Что бы найти ссылку на единственную статью в которой даже год исследования не указан, у вас ушло пять минут?
Вот вам за 15 секунд:
www.cleverism.com/programming-languages-web-development
en.wikipedia.org/wiki/Programming_languages_used_in_most_popular_websites
По веб серверам у php действительно может быть преимущество, за счет того что на нем дофига CMS, но это к веб разработке на PHP отношения не имеет. Это не программирование, а устрановка, настройка и верстка.
И удобство вордпресса не установке. Устанавливается он отстойно. Посмотрите как разворачивается Jira на Java. Вот это удобно. Вордпресс удобен в использовании, конфигурировать его может любой школьник и к нему есть 100500 готовых плагинов. И как я уже говорил, для этого не нужно быть программистом.
Я сам делал анализ вакансий. В Швеции Питон — 90% тестирование и dev ops.
Программирование — 1. .NET,2. Java,3. PHP
И как не важно относится это к разработке или к администрированию? Администрирование, это не программирование. Вы же не говорите, ну база данных то на плюсах, то и сайт я буду клиенту на плюсах продавать, зачем зоопарк разводить?
Можно пруф на то, что питон не пользуется большим спросом на рынке труда? А то в почти любой крупной компании (начиная с google и Microsoft) что-то да написано на питоне (а вот на пхп не факт), а спросом он не пользуется.
Посмотрел monster.com, вакансии в New York. На первой странице 2 из 10 вэб, и везде надо знать ещё языки, типо C++ и опыт большой иметь.
Php все чисто вэб.
Все в точности как описал автор. С точки зрения работы, Питон как первый язык не годиться.
Веб-разработка (адекватно и перспективно)
Фраза:
Данное направление занимает оставшуюся треть всех вакансий.
То у вас Швеция центр мира. Теперь Нью-Йорк. К вашему сведению, компании занимающиеся разработкой в NY, нанимают людей где угодно, только не там. Работал в нескольких таких, и ни разу не был в США.
По поводу «первый язык не годится», TIOBE с вами категорически не согласен.
www.tiobe.com/tiobe-index
TIOBE индекс упоминания, PHPшники не задают вопросов, потому что им не надо компилить ничего под виндовс, они делают работу. Сделал анализ сделав на Питон пару проектов, и сделал выбор в пользу PHP, как языка для веб для собственных проектов. Например что бы забекапить проект, мне надо просто заархивировать папку, и не надо думать, а что если пакет будет не доступен через 5-10 лет.
TIOBE индекс упоминания
Нет.
Ну вообще-то Нью Йорк это реально один из центров мира, по крайней мере финансовый
Круто. Спрос на разработчиков в криминальной столице, сельскохозяйственной наверное тоже очень важен.
Индекс упоминания в поиске, то есть по какому языку больше ищут. Просто по Python задают больше вопросов.
У нас есть инфа по россии, швеции, Нью-Йорку. Сделайте по Москве или Питеру со ссылками. И посмотрим, может там Python в топе.
TIOBE — The index is calculated from the number of search engine results for queries containing the name of the language.
Индекс упоминания в поиске, то есть по какому языку больше ищут. Просто по Python задают больше вопросов.
Это только начало определения. Оно на этом не заканчивается.
У нас есть инфа по россии, швеции, Нью-Йорку. Сделайте по Москве или Питеру со ссылками. И посмотрим, может там Python в топе.
Зачем? Я никогда не утверждал что питон в топе. Утверждали вы. Вам и пруфы предъявлять.
Я утверждаю, что с автором статьи случилась не единичная ситуация, а закономерная. В вэб питон проигравыет php по распространению и наличием рабочих мест.
The TIOBE Programming Community index is an indicator of the popularity of programming languages. The index is updated once a month. The ratings are based on the number of skilled engineers world-wide, courses and third party vendors. Popular search engines such as Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube and Baidu are used to calculate the ratings. It is important to note that the TIOBE index is not about the best programming language or the language in which most lines of code have been written.
The index can be used to check whether your programming skills are still up to date or to make a strategic decision about what programming language should be adopted when starting to build a new software system.
Python — 5 место, PHP — с ощутимым отрывом седьмое. Над всем этим реет недосягаемая Java.
Я утверждаю, что с автором статьи случилась не единичная ситуация, а закономерная. В вэб питон проигравыет php по распространению и наличием рабочих мест.
А можно пруф, что случилось с автором? У него вроде все ок. Последняя фраза по крайней мере частично опровергнута цитатой выше.
Мое утверждение заключалось, что лично для меня PHP экономически выгоднее. Его я написал, потому как десятки раз видел восхваление Python, особенно как первого языка. Но это не так. Python вторичен в целом по отношению к java, java более «классический язык». От нее наследуют C# и PHP. Плюс она значительно шире распространена. Если надо как можно скорее зарабатывать деньги, то это PHP. на нем делаеться масса малобюджетных вещей, и это не есть плохо.
А с автором случилось то, что он учил Python. Но работы по нему не нашел. Пришлось выучить ещё и Java. habrahabr.ru/post/322332
Например что бы забекапить проект, мне надо просто заархивировать папку, и не надо думать, а что если пакет будет не доступен через 5-10 лет.
Что бы забекапить проект, надо использовать git. Ну и вот тут написано, что, например, symfony надо качать и ставить в систему. Такая же проблема, как и в случае с python пакетами.
youtu.be/Qt1_atU_Qsg?t=134
Нету времени слушать, где они говорят о цифрах, но по ссылке инженер google говорит, что php самый популярный вэб язык.
2. Прекрасно IDE все подсвечивает. Если у нее возникают сложности, используешь аннотации. Да, конечно если делать всякие стремные фокусы, то тут IDE начинает офигивать. Ну так не надо их делать без острой нужды. А ежели она есть, то тут спасибо языку что это все таки можно сделать.
3. В джанге нет аякса, и не особо круто добавляются виджеты по одной простой причине — это фреймворк для бекенд, а не фронтенд разработки. То что там есть виджеты, это просто вишенка на торте, а не торт. И с каких пор в джанго «код не отвечает современным требованиям разработки»? это вообще что такое?
4. В питоне нет обилия CMS, потому что нафиг они там сдались. На питоне не клепают интернет-магазины за 100 рублей. Для этого есть PHP. А фреймворков ровно столько, сколько нужно, на любой случай есть подходящий. Что такое «скрипты для вэб» это я вообще не понял. Стандартная библиотека питона сама по себе на половину «скрипт для вэб».
5. Это вообще что? Сначала вы говорите что там больше чем нужно, а потом что это обрезаная версия. Что это за поток сознания?
2. Я сравниваю с PHP, Java, C#. Да, PyCharm подсвечиват, но все это рабоает не так хорошо, как в других языках. Особенно рефакторинг. Если я сделал рефакторинг в IDE, я не могу быть уверенным что ничего не поломалось.
3. Бэкенд работает вместе с фронтендом и поддержка фич для нужд фронта быть должна. В этом и отсуствие современности на мой взгляд, фокус смещается на фронтэнд. Если мы делаем SPA, то нам нужен дополнительно RestFramework. Там конечно ничего сложного, но сам факт то, что Django не поддерживает такие элементарные вещи указывает на то, что это фундаментальная проблема. Джанго нас скольк оя понимаю родилась тогда, когда ajax'a ещё небыло как технологии.
4. Заходим на например на codecanyon.net, PHP раздел есть, Python нету. То есть написать скрипт на PHP и продать лего мы можем, на Python нет.
«На питоне не клепают интернет-магазины за 100 рублей. Для этого есть PHP. „
Вот именно, скажем у меня есть клиент, ему иногда нужны небольшые сайтики, скажем на 10 страниц, раз в месяц( Работает по всему миру, новая страна, новый сайт). Кроме этого у него есть большая система, которая реализует бизнес-логику. Зачем мне зоопарк технологий, если Python примерно в целом на уровне PHP, я беру и все делаю на PHP.
5. Я не говорил, что в Python больше, чем нужно. Но я не люблю технологии, что бы “все было просто», я хочу что если мне надо будет сложно, то можно сделать сложно. Конечно PHP тут так себе, но в Java и C# я могу поизвращаться и сделать Enterprise. Или например сделать плагин для PhpStorm, который мне будет помогать писать на PHP, но Python этого не может.
Python 1.0 — январь 1994 года
Python 2.0 — 16 октября 2000 года
Python 3.0 — 3 декабря 2008 года
питону второй версии на данный момент, на минуточку, 17 лет. А он по прежнему в использовании и поддерживается (последний релиз Python 2.7.14 2017-09-16). Куда уж больше?
2. «я не уверен что ничего не поломалось», или «у меня постоянно что то ломается»? Я вот вполне уверен. А для всего остального есть тесты.
3. Это кто вам сказал что должна? Бекенд ничего про виджеты не знает. Когда вы на бекенде всандаливаете виджеты, то это уже бекенд и фронтенд в одном флаконе. Кто вам сказал что джанго не умеет в REST я вообще не знаю. Все там есть. И при чем тут django и аякс вообще? Еще раз, джанго это фреймворк для бекенда. Ему глубоко фиолетово как на фронте идут запросы отправляются, синхронно или нет.
4. На CodeConyon нет скриптов на питоне по той же причине, почему PHP скриптов нет в PyPy. Это площадка для продажи PHP скриптов, что там делать питону? Да и на какой фиг продавать «скрипты»? В мире питона такой фигней не страдают. Скрипты шарят на гитхабе и pypy. Там их больше чем дофига.
Причем тут зоопарк технологий? Если вы продаете сайт на 10 страниц на вордпрессе, к разработке сайтов это не имеет вообще никакого отношения. Это настройка и администрирование, а не разработка. Разработчики этим вообще не занимаются, этим занимаются администраторы.
6. Так, кхм. А что надо сложно то? У каждого инструмента свое применение. Писать сложный, но вполне обычный веб сайт на гибернейт, ну это прямо скажем, стрем. Как и писать большой энтерпраз на питоне или пхп. Можно конечно, но зачем? Это, впрочем, не мешает в большом интерпрайзе писать на питоне отдельные компоненты.
И что не может питон, я не понял? писать плагины для PHPStorm, что бы помогать писать на PHP? Серьезно? На питоне можно писать практически что угодно, включая полноценные десктоп приложения. Было бы только зачем, это не его область применения. Но некоторые даже это делают и вполне успешно.
2. IDE не может в питоне сделать 100% правильный рефаторинг, Python слишком динамичный
3. В моем workflow это так, и это нормальная практика. Бэкенд должен уметь эффективно генерировать HTML/JS и взимодействовать с ним. Скажем хочу на форме атоматическую JS валидацию, на Yii ее получаю.
4. Я не говорил про вордпрес ничего, на php я могу открыть блокнот и в течении часа создать вэбсайт, если верстка уже готова, и без проблем закинуть их на сервак. А если у меня есть 20 страниц на PHP, зачем мне ещё работать в экосистеме Python. CodeConyon я привел в пример, потому что Envato очень крутая компания, которая понимает реальный спрос.
5. в том и дело, для вэба у меня есть PHP, см. пункт 4. Для других вещей Java, C#, С для продвинутых вещей. Лично мне Python не нужен. На мой взгляд сфера применимости Python, это различные, скажем так, системные, скрипты. То есть скрипты управлющие системой или вычислениями — администрирование, тестирование, вычисления, например статистические или AI.
И я полагаю что в мире существует масса людей с такой же систуцией.
Хотя конечно же Python вполне хорошый инструмент. Но лично для меня, PHP более экономически выгоден.
Как и писать большой энтерпраз на питоне или пхп. Можно конечно, но зачем? Это, впрочем, не мешает в большом интерпрайзе писать на питоне отдельные компоненты.Не бывает, что в большом «энтерпраз» используют только один инструмент, всегда зоопарк, если вам кто-то скажет обратное — значит там «энтерпраз» не такой и большой.
Можно конечно, но зачем?Чтобы поиметь плюсы питона? (быстрая разработка), многие вашего же мнения, но я так не разу и не видел дельных аргументов, имхо это маркетинг оракла и java разработчиков.
Одна небольшая проблема — вы не совсем правы. В большинстве случаев это решается через db + cache + worker pool, как в целом, и в других языках. Потому что пилить свою синхронку нет никакого смысла.
5) Это что за извращение? Сложности ради сложности, зачем?
5. Я имел ввиду возможности платформы. На Python рисковано писать сложное GUI, или использовать в проекте с командой 100 человек. Компилируемый язык здесь подойдет значительно лучше.
5.Соглашусь
- это питон 2 и 3 версий. Это не просто сегментация сообщества и кода, это потеря доверия, прежде всего со стороны бизнеса.
- Если я предприниматель и хочу вложить миллион евро в новый продукт, то хочу что бы платформа оставалась актуально хотя бы 10 лет.
Версия 2.0 вышла в 2000 году, 2.7 — в 2010 году, поддержка 2.7 закончится в 2020.
Факт в том, что фреймфорки и CMS на PHP множатся как грибы, то есть есть огромное комунити.
Выпуск 3 версии был большой ошибкойС чего это? python 3 лучше по всем* фронтам, а Гвидо говорит что это самый лучший питон за всю историю.
python 3 лучше по всем* фронтам
По каким всем? В нем почти ничего нового не добавилось: слегка переставили мебель, убили депрекейтед фишки, изменили некоторые типы. Такая ситуация разработчиков мягко говоря не обрадовала, ведь ожидания от третьего релиза были высокие (их частично оправдал Go).
Поэтому все так со скрипом идет уже десять лет и похоже будет идти ещё долго.
Это вы именно про третий, который тогда зарелизился, или про 3.6, со всеми его плюшками, type hints, настоящими kwargs, f-строками и прочим?
Сложный вопрос. Даже безусловно хорошие изменения в 3.4-3.6, не соответствуют тем ожиданиям которые были у разработчиков году примерно в 2007.
Автор статьи очень в тему вспомнил Tornado и иже с ним. В те годы запрос на зеленые потоки и параллельность был очень большой от сообщества. И было некое ожидание, что ситуация изменится в лучшую сторону с выходом Python 3, появятся какие-то примитивы в языке или может, чем черт не шутит, GIL отменят. Но этого не произошло. Да внедрили asyncio, который был и до этого, но сторонний. Но этого оказалось мало. И та аудитория просто отпала, ушла на другие платформы, а существующая кодовая база застыла на второй версии.
Будет ли Python 3.6 хорошим поводом перейти с Python 2? Не знаю, но тут же проблема в том, что раз все равно переписывать, то может сразу на Go/Java?
Я не знаю эту тусовку изнутри, но мне, например, кажется очень странным, что Гвидо, работая в Dropbox, не смог учесть пожелания работадателя и сейчас основные сервисы Dropbox переписываются на что-то другое.
Я не знаю в чем причина, но тот же Гвидо не раз говорил, что GIL не будет убран, а это очень холиварный момент был десять лет назад.
Я думаю, что ключевая проблема Python в том, что уж очень много "был" в его текущей ситуации.
Ну а почему переписали dropbox это вообще вопрос, не факт что причины лежат в запросах к языку. Возможно, к примеру, они просто прошли этап прототипирования и переписали например на С++. С этим ничего особо сделать нельзя — это просто не для питона.
Я не очень понимаю, а в чем проблема с зелеными потоками в python2.7? Единственное что есть, это немного странный синтаксис, но оно работает и вроде вполне успешно.
Не знаю, но тут же проблема в том, что раз все равно переписывать, то может сразу на Go/Java?
Не знаю, как кто, но я очень цену python за его гибкость, которой не пахнет ни в Java, не тем более в очень куцем Go. Ну и стоимость переписывания значительно ниже, учитывая, что можно переписывать постепенно, при помощи того же six.
Я не очень понимаю, а в чем проблема с зелеными потоками в python2.7?
Да в определенной области они успешные, но некоторые задачи, например некоторые вычислительные им не под силу из-за GIL. А без поддержки со стороны экосистемы дебажить проблемы в Tornado не очень удобно.
Ну и стоимость переписывания значительно ниже, учитывая, что можно переписывать постепенно, при помощи того же six.
Тут очень много факторов. Когда переписываешь существующую кодовую базу, надо во-первых, понять зачем, получить бюджет на это дело. И естественно никто не будет заморачивать просто для того чтобы переписать. Вот рефакторинг системы, коренная переделка по внешним причинам, это да — очень хороший повод перейти с Python 2.
И тут возникает вопрос, если мы все равно рефакторимся и переделываем, то может посмотрим на другие решения, разобьем монолит на микросервисы, например, ну и так далее. Одно цепляется за другое и вот вы уже пилите микросервисы на Go и node.js (я думаю именно это и происходит в Dropbox).
Да в определенной области они успешные, но некоторые задачи, например некоторые вычислительные им не под силу из-за GIL
И потому тот же numpy или numba снимают GIL, когда считают нужными. Вроде это у них успешно получается.
И тут возникает вопрос, если мы все равно рефакторимся и переделываем, то может посмотрим на другие решения, разобьем монолит на микросервисы, например, ну и так далее. Одно цепляется за другое и вот вы уже пилите микросервисы на Go и node.js (я думаю именно это и происходит в Dropbox).
Dropbox просто не устроила скорость python в определенных местах и они переписывают важные в этом плане сервисы на go, потому что он лучше, чем тот же C для этого. Как я понимаю. Причем скорость тут не очень зависела от того, зеленые потоки или нет, а просто от того, что это python.
Факт в том, что фреймфорки и CMS на PHP множатся как грибы, то есть есть огромное комунити.
Миллионны мух не могут ошибаться. Они то и множутся, потому что множится больше нечему. Если на python каждый месяц выходит новая либа для машинного обучения или какая-то интересная тулза, то на PHP можно чисто клепать CMS и фреймворки.
Поддержка заканчиватся, а софт бизнес не будет переписывать.
Какой бизнес не будет переписывать софт? RedHat зачесались, Odoo зачесалось. В куче дистрибутиво Linux уже по умолчанию python3. Кто там еще остался?
Потому что web — это все, что может php. Вы не правильно оцениваете комьюнити для python, потому что там web это лишь одно из направлений. И сравниваете с php, на котором каждый считает своим долгом написать cms, хотя смысла с этом 0.
Но я хочу высказать эту альтернативную точку зрения.
Но почему-то erp систем на python написано большое, чем на php: https://en.wikipedia.org/wiki/List_of_ERP_software_packages.
Гигантская проблема php состоит в том, что он не способен работать без клиента, сам по себе. А если и способен, это почему-то никто не использует.
Поэтому и приходится использовать разные странные костыли в духе "web запрос иногда запускает фоновые cron задачи", как это сделано в NextCloud. Как можно с таким подходом писать серьезные системы, которые будут обмениваться данными — вообще не понятно.
Реально можно писать только фронтовый бекенд, который будет работать непосредственно с клиентом, а все остальное на других уже языках. Получается, так.
Ну вообще-то PHP 4 был не совместим с PHP 5. И 5.0 с 7.0 тоже. Т.е. если взять PHP 17 лет назад и сейчас, то их вообще сложно признать одной и той же платформой: глобальные переменные, стандартная либа mysql, ссылочная логика — это все не полный список того, что было либо удалено либо изменено кординально.
Хорошая обратная совместимость это либо C, либо Java, хотя и с нюансами.
Но вот чем питон лучше похапе, так это возможностью внутри одной платформы и языка создать и десктопное приложение для работы с некой матчастью (скажем, аналог 1С-предприятие), влёгкую интегрировать это с интернет-магазином, который даже не потребует установки апача/энджиникса/етц, и здесь же отрисовывать в веб результаты обработки сложнейших математических расчётов.
Вот в чём фишка. Да, для всего описанного есть свои инструменты, вполне логично превосходящие такого умельца на все руки в некоторых аспектах, но с учётом того, что это единый инструмент… Короче, это можно долго спорить впустую. Это свободный мир, в конце концов.
Ах да, почему питон не шибко популярен в корпоративном сегменте — для него нет надёжного инструмента закрытия исходного кода, в отличие от того же похапе, который может быть, скажем так, зазенден. Поэтому мало кто заморачивается разработкой коммерческих продуктов.
Если зенд научился работать с питоном — поправьте меня.
Не соглашушь, для этого .NET подойдет лучше, и там есть все матбиблиотеки. Если надо кроссплатфом, то Java. и Python и проигрывает очень сильно в ввиду медленного исполнения кода.
“ Короче, это можно долго спорить впустую. Это свободный мир, в конце концов.»
Я тоже так считаю, я изучал и работал на десятках языков за 20 лет моего программирования, включая питон, и всегда молчал когда такая дисскусия начиналась, так как реальному программисту индиферентно на каком языке работать. Но предущий пост автора показал что это неверная позиция, зелень в индустрии парит мозги новичкам.
Не соглашушь, для этого .NET подойдет лучше, и там есть все матбиблиотеки.
Нет, вот тут вы не правы. Альтернативы не всегда есть, а даже если есть, ввиду более строгого синтаксиса писать становится совершенно не удобно.
так как реальному программисту индиферентно на каком языке работать
Что бы показать всю неправоту этого утверждения, предлагаю вам попробовать написать интернет магазин, скажем, на Prolog.
Но предущий пост пост автора показал что это неверная позиция, зелень в индустрии парит мозги новичкам.
Что такое зелень в индустрии? Деньги?
Я писал на пролог, и насколько мне известно сделать на нем магазин в принципе не возможно. По крайней мере на той древнуй версии, которую я учил в универе. Но на прологе я писал сходу с первого раза, в то время когда другие не понимали вообще, что это такое, поэтому могу предположиьь что я его «понимаю».
Зелень — до 3 лет рабочего опыта.
Неудобство это цена за другие плюшки. Например рефакторинг, некий уровень тестирования. тут я поворю про приложения, если нам просто надо лелать расчеты, или создать скрипт, который из выполняет в рамках системы, то конечно, это сфера Python'a, тут он лучше всех.
Вы не поверите, но в python теперь можно просто указать типы для функций и вуаля — у вас есть еще проверка по типам.
Про "явное указание типов лучше" уже писали, это довольно мизерное количество багов. Если у вас проблемы с синтаксическими ошибками — pylint вам в руки. Никакого другого "тестирования" в компилируемых языках нет.
Я писал на пролог, и насколько мне известно сделать на нем магазин в принципе не возможно. По крайней мере на той древнуй версии, которую я учил в универе. Но на прологе я писал сходу с первого раза, в то время когда другие не понимали вообще, что это такое, поэтому могу предположиьь что я его «понимаю».
Web framework есть, коннект к бд есть, тюринг полный — значит написать можно. Но что-то вам стало не все равно, на чем писать, да?
Зелень — до 3 лет рабочего опыта.
Забавно, вы явно не зелень, а все еще пишете код в духе старой школы php. Хотя казалось бы. Ну и да, обычно языки вроде опытные люди разрабатывают, а за ними обычно еще и компании какие-то стоят. Что-то не очень похоже на зелень.
Вот только в Django этого нет.
Дело не в багах, а в скорости понимания способов взаимодействия с кодом. Скажем в Java я могу вообще не знать о реализации, и благодоря жесткой системе типов взаимодействовать с кодом. Я знаю что за клас принимает арзумент, и передаю туда этот класс. Но если мы кодим на Django, то там этого нету, все методы без указания типов аргументов.
Ну если есть Web framework, то возможно попробую когда выучу более популярные языки.
Моя цель этой дискусии сказать, что выражение «Python рулит, PHP ерунда» в корне не верно. То есть есть крутые языки я не спорю. Но на мой взгляд Go и Rust интереснее питона с точки зрения программиста. Но с точки зрения применимости лично для меня Python лучше, а ещё лучше PHP.
Три, что ли, года назад Гитхаб сказал, что в Линуксе Питон — язык №1 по популярности для разработки прикладного десктопного софта.
WorldOfTanks — это вам не LUA. Туда же Battlefield. Да, внезапно, на питоне. Civilization.
Яндекс.Диск, опаньки! GoogleDrive, какая неожиданность. И даже, о ужас, Ютубчек! Кстати, логичненько — именно на питоне я впервые в жизни начал работать с веб-камерой напрямую (ну почти) и мне понравилось. Не удивительно, что мощный инструментарий питона для целей обработки видео используется корпорацией добра.
DropBox. Вообще весь. Ну дык а чо, сам создатель языка, ничего странного.
А вообще много реально мощных примеров легко (ну или через транслятор гугла) читается тут.
- Зависимости. Нужно внимательно следить за используемыми модулями, есть ли они в репозиториях популярных дистрибутивов, каких версий и т.п. Если нет, то приходится обходиться без них или бандлить, а это всегда лишняя головная боль и вообще плохо.
- Не всегда простой и тривиальный деплоймент. Пользователи часто просят, типа, «дайте нам тупо экзешник.» Питоновские фризеры проблему отчасти решают, но это лишний геморрой не без своих собственных ограничений. (Хотя есть примеры хорошо упакованных питоньих программ, типа той же youtube-dl, которую ты качаешь одним файлом для любой системы, и он всегда работает; ну и с тех пор появились вещи типа нуитки.)
Фейл с Python 3Наличие в более-менее активном пользовании двух разных веток питона, причем в разных дистрибутивах дефолтной (на сегодня) может быть одна, а в другой — другая. В общем, это еще один источник несовместимостей, ограничений на используемые API, модули и т.д.- Интерпретируемость и динамическая типизация. Нужно как можно больше работы выносить из рантайма и перекладывать на компилятор; отлавливать ошибки как можно раньше. Грубо говоря, шутка про то, что «если программа на хаскелле/расте/ML компилируется, то она работает» часто оказывается правдой, а про программу на питоне, пока её не запустишь, мало что можно сказать.
«если программа на хаскелле/расте/ML компилируется, то она работает» часто оказывается правдойНе так, «если программа на хаскелле/расте/ML компилируется, то она запускается», если программа компилируется и запускается — не значит что она правильно работает, откройте любой популярный проект на github и увидите большой bug-list.
Проблемы «компилляции»/типов — это очень незначительная часть багов (в питоне), поэтому статическая типизация в этом плане от багов не спасет.
Это математическое моделирование, решение численных задач, обработка данных, в общем, бесплатная замена матлабу.
Это скриптописание, как замена bash и cmd — обработка файлов, всякого рода задачи администрирования на своем ПК.
Но денег там тоже мало.
В свое время я поддался некоторому хайпу насчет питона и вложил в него много сил и времени. И я действительно большой фанат питона и практически все мои проекты сделаны на нем и его тулзах. Да и деньги я получаю за питон (вместе с Java, конечно же)
И я пришел к выводу, что Питон хороший язык (я его не критикую), но у него много ограничений, и зачастую изучение другого языка, например, того же PHP/Java/.net могут быть более выгодным решением по вложению своих сил и времени для молодых специалистов. И это правда.
И своими статьями я преследую цель — показать действительность, что работу найти под питон сложно (если ты не из ряда центральных городов), да и платят на нем за вполне определенные области. Поэтому нужно здраво оценивать перспективы.
Моя точка зрения на счет языка первого, в данный момент лучше всего учить Java. Большой спрос, хорошые зарплаты, а главное классическая модель построения кода.
Не только потому, что не умею пока Flask/Jinja/Django, но большей частью из-за того, что для этих задач уже есть миллионы велосипедов, которые переизобретать нет смысла. Конечно, идея сделать всё полностью на питоне и избавить сервер как минимум от апача и похапе очень прельстива, но… Зачем? Слишком уж сложно будет другому эникейщику взять и написать свой шаблон для фронтенда под Jinja. Зато это куда легче сделать под стандартную связку HTML-PHP, используя готовый API умного дома. Просто реквайри и вызывай, или сам пиши вообще, делов-то. А вот на питоне пришлось бы плясать очень долго.
Если у вас есть api, то можно вообще выкинуть php и просто хостить js сайт.
Вы не можете на php писать фронтенд. Вы можете только использовать фреймворки, которые в свою очередь скрывают от вас js код, который они генерируют.
А фреймворки, которые рендерят няшный код и на js есть.
И вот про читабельный код это довольно смешно. Особенно есть мы говорим про php
Когда я делаю связку HTML+JS+PHP, то я генерю HTML и JS в PHP. То есть в зависимостри от разных условий посылаю разный JS, а значит код который запускается в браузере есть отражение моего кода в PHP.
В после небольшого времени в несколько месяцов глаз автоматом начинает парсить синтексис любого, даже самого сумашешедшего языка. Скажем без проблем в увидите цикли его параметры но экране ассеблера.
Но что вызывает реальную проблему, это структура: структура кода, архетектура приложения. И здесь вызодит на сцену асинронная структура языка, которая оприори просто другой уровень сложности для монимания целовеком. Но для справедливости надо заметить, что скажем в ExtJs или Angular структура более четкая.
В после небольшого времени в несколько месяцов глаз автоматом начинает парсить синтексис любого, даже самого сумашешедшего языка. Скажем без проблем в увидите цикли его параметры но экране ассеблера.
А вы пробовали? На самом деле, очень зависит от того, как запутано писать.
Когда я делаю связку HTML+JS+PHP, то я генерю HTML и JS в PHP. То есть в зависимостри от разных условий посылаю разный JS, а значит код который запускается в браузере есть отражение моего кода в PHP.
То есть вы пишите в том стиле, за который все ненавидят PHP — это php код с вкраплениями html и js?
В после небольшого времени в несколько месяцов глаз автоматом начинает парсить синтексис любого, даже самого сумашешедшего языка. Скажем без проблем в увидите цикли его параметры но экране ассеблера.Так вы и на PHP, и на ассеблере пишете? Может еще назовете примеры сумашешедших языков, в которых ваш глаз автоматом парсит синтексис?
А реверс инжениринг делать очень интересно, правда времени не много и я не профи. Но просто привел пример в отрыве от мой личности, что глаз привыкает к любому языку.
Ещё сумашедший язык кроме ассеблера и PHP? ну Python например :D
Но просто привел пример в отрыве от мой личности, что глаз привыкает к любому языку.Простите, но если это в отрыве от вашей личности… То откуда такие далекоидущие наблюдения?
Ещё сумашедший язык кроме ассеблера и PHP? ну Python например :DТ.е. говорите, что и ассемблер (интересно какой), и PHP, и Python — все они для вас входят в категорию «один из самых сумашешедшего языков». Ну ок :[
Интересно, а что же не входит?
Nginx сейчас по интереснее будет, и PHP там отличино работает, и конфигурирование проще на мой взгляд.
То, о чем вы говорите, называется "на php быстрее наговнокодить". Если это вы записываете в плюсы языка, то с php в самом деле все печально.
Начнем просто с того, что сервер надо настроить. Установить там nginx + php-fpm, установить для php нужные модули, установить git, если у вас нет какой-то ci системы, настроить там базу данных и прочее.
В случае с python вы заменяете php-fpm и нужные модули для php на установку python-pip и установку зависимостей. Вообще ничего сложного.
Если вы пишите на чистом php без какого либо фреймворка и прочего, то это ваше решение, но платить за такое я бы, на месте заказчика, бы не стал.
В PHP сервер настраивается 1 раз. В Python для каждого приложения, причем каждое приложение висит в памяти. А в PHP я могу сгенерировать сотню сайтов например без проблем (реальная задача в том проекта, который я делал на Python).
На счет фреймовка, заказчику надо решение безнес проблем за минимальную цену. Я это ему даю. Со всему клиентами я работаю годами, и проблемы возникат как раз с перемудреннуми там, где не надо вещами. PHP и есть сам по себе фрейвок.
Да, питон имеет хороший апи, и для разработчика он более приятятен. Но если скажем сам веду бизнес, то мне надо иметь возможность иногда поставить Wordpress, иногда Joomlu. Я много раз указывал в этом треде, что как для предпринимателя, PHP более экономически выгоден, прежде всего по причине широкой распространнености и наличия готовых решений для любо ситуации в вэб разработке. Разумеется PHP страшен, но с точки зерния бизнеса, PHP более экономичсески выгоден по моим разчетам. Конечно у меян есть право на ошибку, как право на аольтернативную точку зрения.
Но Wordpress написан на PHP, есть Joomla, которая на мой взгляд, имеет крутую экосистему, есть PrestaShop, для более серьезных вещей, и OpenCart для магазов попроще. DjangoCMS, интересная вещь, но это единственное достойное из решений на Python, которое я нашел.
А если ли на Python достойный интернет магаз?
2. Я работал с PrestaShop и OpenCart. на мой взгляд — отличные продукты. OpenCart летает, структура понятна и проста, но есть проблемы с расширением. PrestaShop сложнее, но намного более навороченая.
3. на счет тормозит. берем сервак помощнее и ничего не тормозит. С точки зрения скорость PHP и Python примерно одинаковы. Писал идентичный код, который делал относительно сложные вычисления. разница в выдаче с сервера 2 мс между Питоном и PHP. Притом что PHP крутился на Apache. Самый быстрый был .NET Core
Делать быстро и говнокодить не равноценные понятия. На PHP делаеться в целом быстрее. Хотя код писать на Python процентов на 15% быстрее чем на PHP, но если мне надо понять как работают кишки, и открываю код фреймвока, и в течении 5-15 минут понимаю что, к чему. В Django мне было сложнее, хотя возможно из-за меньшего опыта, но в большей степени из-за динамичной структуры языка.
Или потому, что django просто большой.
В PHP сервер настраивается 1 раз. В Python для каждого приложения, причем каждое приложение висит в памяти. А в PHP я могу сгенерировать сотню сайтов например без проблем (реальная задача в том проекта, который я делал на Python).
Вы не поверите, но php-fpm тоже висит в памяти. И php сервер настраиваться столько раз, сколько разных приложений у вас есть. Аналогично работает и с python. Где вы тут нашли настройку каждый раз, я не знаю.
На счет фреймовка, заказчику надо решение безнес проблем за минимальную цену. Я это ему даю. Со всему клиентами я работаю годами, и проблемы возникат как раз с перемудреннуми там, где не надо вещами. PHP и есть сам по себе фрейвок.
Апелляция к "ну, у меня есть заказчики и все хорошо" не работает, так как заказчики и так есть у всех. Ну и дополнительная проблема в том, что я уже обозначил. Если вы пишите в old-style php, где php код смешанный с html и js — это говнокод. Совершенно не поддерживаемое, и отвратительное решение, которое в конечном счете приходится полностью переписывать, так как внесения изменений требует слишком больших затрат. Это и в целом есть один из важных пунктов, ради которых люди используют фреймворки. Стандартные решения большинства задач позволяют их использовать и не писать кучу своих велосипедов.
А у вас, скорее всего, получается так:
- Вместо ORM -> raw sql
- Вместо архитектуры -> смесь из php+js+html
- Вместо инфраструктуры -> Накидал что-то и готово
Вот и получается поддерживаемость такого решения очень низкая.
Отчасти да. В PHP я выбираю под стать задаче, надо средний проект, беру Yii, надо большой беру Symfony. В мире Python есть Django, Pyramid и Flask, а промежуточного варианта нету. Что бы все из коробки, но в компактном виде.
Если мы говорим про Django, то у каждой аппликации свой демон. В PHP 1 сервер обслуживает все сайты. разве не так?
Ну я говорил про сайт на php в контексте сайта визитки, то есть без логики и базы. Разумеется если мы делаем нечто больше, то берем фреймвок или компоненты Symfony.
Отчасти да. В PHP я выбираю под стать задаче, надо средний проект, беру Yii, надо большой беру Symfony. В мире Python есть Django, Pyramid и Flask, а промежуточного варианта нету. Что бы все из коробки, но в компактном виде.
А что не так с flask? Если он вам кажется большим, вообще есть bottle, размером аж в один файл. Причем со всем, что нужно для сайта визитки.
Если мы говорим про Django, то у каждой аппликации свой демон. В PHP 1 сервер обслуживает все сайты. разве не так?
Если вы говорите про apache, то у вас происходит выполнение скрипта во время запроса. А если про nginx + php-fpm, то оно вроде тоже висит в памяти немного.
Опять же таки, если это сайты визитки без логики, зачем вообще php, если можно просто готовый html выдавать?
Flask имеет компонентную структуру, то есть там надо много допиливать. Но я делал на Django. Смотрел Flask, и пришел к выводу что Yii2 лучше для моих целей. А какой язык, мне все равно.
Могу ошибаться, так как nginx стоит только на одном из серверов, но в смысле выполнения php кода, что там что там воркеры. на самом деле, я лишь хочу сказать, что позиция,«Python рулит, PHP ерунда» — Не верна. Есть области где PHP легко конкурирует с Python (вэб), а есть где ему проигрывает, (скрипты, вычисления). А есть области, где просто нереально использовать не одно не другое.
Если у мня футер и шапка повторяется, то не удобно. Плюс форма контакта например. Но посути да, это HTML, с 10 процентами кода.
Логика такая, я предоставляю услуги клиентом. Есть страницы-визитки, есть системы на сотни человеко-часов. И все в рамках проекта. Тут PHP больше подходит. Если у меня большой продукт, который пилиться, годами, то наверно тут лучше Python, но я пилю на PHP, чисто по историческим причинами, и доволен как слон.
Flask имеет компонентную структуру, то есть там надо много допиливать.
Великолепно противоречивые логические цепочки.
Никаких проблем работы отдельных частей фласка в жизни не наблюдал. Чисто теоретически, возможно, что некоторые компоненты не очень дружат между собой, если вы попытаетесь изобразить какую-то экзотику. Но они и не должны. Flask — это микрофреймворк. Его берут когда вам не особо нужны готовые решения. Брать такой фреймворк, а потом жаловатся что некоторые готовые решения не нем не очень совместимы друг с другом — это было бы странно. Если нужен не микро, а нормальный фреймворк — берете django. Они очень неплохо перекрывают друг друга по нишам и с модулями позволяют делать все что угодно без магии. Фласк без проблем распиливается до джанги, а джанга без проблем обрезается практически до фласка.
код фреймворка сложнее читать из-за обилия абстракций.
Попробуйте для разнообразия читать не код (если у вас с этим проблемы), а документацию. По джанге она восхитительно исчерпывающая.
Мне больше всего нравиться Yii, и другие решения, скажем Joomla, а не сам PHP. В аспекте наличия, готовых, поддерживаемых решений, PHP просто уделывает Python. Одного Wordpressa уже достаточно. Понятно это ниша малобюджетных проектов. Но с финансовой точки зрения разницы между 10 малобюджетными проектами и один большим нету. На малобюджетных я думаю даже легче заработать на начальном этапе развития бизнеса.
Я не писал про разработку ничего.
PHP просто уделывает Python. Одного Wordpressa уже достаточно.
PHP превосходит Питон с точки зрения бизнес преминения
Гугл с вами не согласен. Уж наверное эта компания понимает в бизнесе по больше вашего. При поиске фразы «google uses php» мне вылезает статья «Why is Python preferred at Google over PHP?».
По поводу устаревшего — это обобщенная цитата разработчиков Рамблера и Тинькова.
Пруф:
«Soon, there will be a version of Twisted that is based on asyncio.» (Отсюда: asyncio.readthedocs.io/en/latest/twisted.html)
На мой взляд Twisted — это теперь, в первую очередь, не механизм, а та гора протоколов, которую он поддерживает. Конечно использование голого asyncio выглядит превлекательней, но со временем разница может стереться
А ссылочку то можно?
Не надо поддаваться хайпу по machine learning. Классические инженерные задачи: обработка сигналов, математическое моделирование, оптимизация, дифференциальные уравнения и т. д. всё это никуда не делось. Возьми любой инженерный тулбокс из Matlab, всё это сейчас может заменить Python со стеком библиотек для научных вычислений. Сейчас Python стал очень полпулярным среди инженеров, исследователей, алгоритмистов и учёных для протоипирования, обкатки идей и гипотез, визуализации.
И ещё, вот реально смешной аргумент про desktop
PyQt PyGTK wxPython
Однако практика показывает, что ни один из инструментов не делает 100% кросс-платформенное приложение, которое бы нативно выглядело на каждой из платформ.
При чём тут Python вообще? Qt, GTK, wxWidgets — это самостоятельные библиотеки, а на питоне для них просто есть обвязки. Точно так же в этом контексте можно сказать и про C++ и C для GTK, что они не подходит для кроссплатформенного десктопа c применением этих библиотек.
Есть у кого версии почему питонисты так преданы своему идолу, почему они готовы доказывать в десятках комментариях, и яросно минусовать того, кто говорит что Python хуже PHP для вэб?
Нашел 2 опечатки: «одна из самых хайповы» и «микро асинхронных фреймворк».
Где перспективно и адекватно использовать Python