Когда вас просят создать систему XYZ и вы просите сделать это на Python поверх PHP или Ruby, какие основные функции вы можете упомянуть, когда они потребуют от вас объяснения?






Сосредоточьтесь на более коротком времени, необходимом для разработки / прототипа и, возможно, более простом обслуживании (ничто из этого не может применяться к Ruby).
Это один из тех случаев, которые действительно сводятся к личным предпочтениям или деталям ситуации. Если вам удобнее работать с Python и вы имеете опыт работы с ним, скажите об этом. Они просят вас оправдать это тем, что им больше комфортно в одной из других сред? После того, как вы закончите, будет ли система передана кому-то другому для долгосрочного обслуживания?
Если они просят вас использовать технологию или язык, с которыми вы не так хорошо знакомы, убедитесь, что они заранее знают, что это займет у вас больше времени.
Я бы посчитал, что использование python в новом проекте полностью зависит от того, какую проблему вы пытаетесь решить с помощью python. Если вы хотите, чтобы кто-то согласился с вами в том, что вам следует использовать python, покажите им, как функции python применимы конкретно к этой проблеме.
В случае веб-разработки с использованием python поговорите о WSGI и других веб-библиотеках и фреймворках, которые вы могли бы использовать, чтобы облегчить вашу жизнь. Одно замечание для python заключается в том, что большинство фреймворков для веб-разработки на python можно подключить прямо к любому текущему проекту. С Ruby on Rails вы практически работаете в DSL, который должен будет изучить любой, кто использует ваш проект. Если они знают python, они могут понять, что вы делаете с django и т. д. За день.
Я говорю только о веб-разработке, потому что похоже, что вы собираетесь работать над тем, чтобы увидеть ruby, python и PHP в одном списке. Настоящее важное сообщение относится к тому, что вам нравится в python напрямую, к какой-то проблеме, которую вы пытаетесь решить.
Я согласен с mreggen. Скажите им, что, работая на Python, вы можете делать дела быстрее. Ускорение работы, возможно, означает экономию денег для клиента. По крайней мере, это означает, что вы работаете с языком, на котором вам удобнее, что означает более быструю разработку, отладку и рефакторинг. У вас будет меньше времени на поиск документации о том, какую функцию использовать для определения длины строки и т. д.
Это один из предпочтительных языков в Google - он на несколько лет опережает Ruby с точки зрения «зрелости» (что бы это ни значило на самом деле - но менеджерам это нравится). Поскольку он предпочитается Google, вы также можете запустить его в Google App Engine.
Mircosoft также использует Python, и вскоре выйдет версия IronPython версии 2.0. Они также работают над реализацией Ruby, но версия Python далеко впереди и фактически «готова к работе». Это дает вам возможность для легкой интеграции с кодом .NET, а также возможность писать RIA на стороне клиента на Python, когда поставляется Silverlight 2.
Самая лучшая продажа Python, которую я когда-либо видел, была продана менеджером нашей группы, у которого была маленькая дочь. Он использовал цитату, приписываемую Эйнштейну:
If you can't explain something to a six-year-old, you really don't understand it yourself.
Следующие несколько слайдов его презентации продемонстрировали, как он смог научить свою маленькую дочь основам Python менее чем за 30 минут, с примерами написанного ею кода и объяснением того, что он делает.
Он закончил презентацию фотографией своей дочери и ее цитатой: «Программирование - это весело!»
Я бы сосредоточился на удобстве использования Python и большом количестве библиотек и фреймворков. Есть также много маленьких библиотек, которые вы не можете получить на других языках, и вам придется писать самостоятельно (например, Как разработчик на C++ пишет Python).
Удачи!
Дайте им фрагмент кода в каждом (не более страницы), который выполняет какую-нибудь интересную функцию, которая им понравится. (например, показать выбросы в наборе данных).
Покажи им каждую страницу. Один в PHP, Ruby и Python.
Спросите их, что им легче всего понять / прочитать.
Скажите им, что именно поэтому вы хотите использовать Python. Его легче читать, если вы его не писали, более управляемый, менее глючный и более быстрый для создания функций, потому что он самый элегантный (питонический).
Несмотря на Все 3 языка универсальны и используются программистами по всему миру., Python по-прежнему имеет некоторые преимущества перед двумя другими. Нравится Из личного опыта: -
- Non-programmers love it (most of 'em choose Python as their first computer language,check this infographic php vs python vs ruby here)
- Multiple frameworks (You can automate your system tasks, can develop apps for web and windows/mac/android OSes)
- Making OpenCV apps easily than MATLAB
- Testing done easy (you can work on Selenium for all kind of web testing)
Концепции OOPS сейчас поддерживаются большинством языков, так почему же Python может остаться позади! За наследованием, абстракцией и инкапсуляцией также следует Python.
Python на данный момент широко разделен на две версии, которые не сильно отличаются по производительности, но по функциям. Python2.x и Python 3.x имеют одинаковый синтаксис, за исключением некоторых операторов, например: -
В конце концов, клиент заботится только о деньгах, а Python помогает вам значительно сэкономить по сравнению с PHP и Ruby, потому что вместо того, чтобы нанимать опытных программистов, вы можете научить новичка и умело использовать Python.