33
Python-технология, которую легко продавать!

Python-технология которую легко продавать!

Embed Size (px)

Citation preview

Python-технология,

которую легко продавать!

Цель презентации

Рассказать о Python так, чтобы эта технология стала самой продаваемой в Itransition.

Кто будет рассказывать

Алексей НакоренкоЗаместитель руководителя SD2 по развитиюE-mail: [email protected]: live:a.nakorenkoМоб. +375 25 9928961

«Ты будешь отвечать за то, чтобы в SD2 как можно больше людей были заняты Python разработкой, юный подаван.» (с)Вадим Нарейко

Что вы получите за эти 45 минут

Максимально полное описание технологии Python человеческим языком.Готовые к использованию ответы на основные возражения.Хорошее настроение.

Что за Python?

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

Высокоуровневый язык

Высокоуровневые языки созданы, в отличие от машинных, скорее, для удобства разработчика. Если раньше писать программы для ЭВМ могли только специалисты, потратившие годы на детальное изучение технологий и основ использования машинных кодов, то с появлением таких возможностей этот процесс занимает намного меньше времени.Примеры: C++, C#, Java, JavaScript, Python, PHP, Ruby, Perl, Паскаль, Delphi и т.д.

Низкоуровневый язык

Низкоуровневый язык программирования- язык программирования близкий к машинным кодам, то есть к системе команд конкретной вычислительной машины. Отличается от высокоуровневого языка большой сложностью изучения, узкой специализацией и большими объемами кода.Примеры: Ассемблер, Forth

Интересные факты о Python

Язык программирования Год его появленияPerl 1987Python 1991Java 1995PHP 1995Ruby 1995JavaScript 1995C# 2000

Возраст:

Статистика по популярности Python

Популярность языков программирования на июль 2013 года:

В среднем в мире около 43 000 000 программистовПо разным подсчетам от 4% до 10% из них позиционируют себя как Python разработчики, еще часть имеют Python в стеке технологий.

Январь: 2,584,754

Февраль: 2,539,177

Март: 3,182,946

Апрель: 3,199,012

Май: 2,855,033

Количество скачиваний Python с официального сайта за 2014-й год:

GitHub

GitHub — самый крупный веб-сервис для хостинга IT-проектов и их совместной разработки. Основан на системе контроля версий Git и разработан на Ruby on Rails и Erlang компанией GitHub, Inc (ранее Logical Awesome).Сервис абсолютно бесплатен для проектов с открытым исходным кодом и предоставляет им все возможности (включая SSL), а для частных проектов предлагаются различные платные тарифные планы.Слоган сервиса — «Social Coding» — на русский можно перевести как «Пишем код вместе».

На 2012-й год в обычный день на GitHub-е происходило следующее:регистрировались 10k новых пользователей и создавали свой первый репозиторий.

StackOverFlow.com

Stack Overflow — популярная система вопросов и ответов о программировании, разработанная Джоэлем Спольски и Джеффом Этвудом в 2008 году.

По данным на ноябрь 2013 года, сайт занимает 55 место по посещаемости во всём мире по рейтингу Alexa Internet, а количество уникальных посетителей составило в декабре 2010 года 18 миллионов человек.

Количество вопросов на stackoverflow.com

Сравнение количества вопросов0

100000

200000

300000

400000

500000

600000

700000

800000

PythonPHPJavaC++C#Rubyobjective-C

С целью определились, теперь задачи?

Задача: предложить заказчику такой вариант, который позволит добиться ситуации win-win-win:

• Заказчик заплатил приемлемую для его бюджета сумму и его устраивают сроки;

• Мы смогли быстро показать результаты при должном качестве;• Вы легко продали;

Решение: Python !

Попробуем понять, почему?

Возражения:

Основные: Дорого, Долго, Нормальное ли качество?

Возможные: • А что уже сделано на Python, есть ли сообщество, поддержка?• Ограничен ли я лицензией на коммерческую разработку?• А Python «подружится» с моей системой/базой данных/сторонним сервисом?• Насколько дорогое(мощное) оборудование мне понадобится?• А тормозить не будет?• Моя система будет расти, накладно ли будет добавлять новые сервера и новый

функционал?• Сложно ли обслуживать и поддерживать?• Etc.

1.Долго и дорого?

1. Возможность быстро сделать работающий прототип или Proof of Concept (стартапы, возможность показать что-то на этапе пресейла или при подготовке RFX). Это может незначительно увеличить общую стоимость проекта, но при этом за небольшие деньги заказчик получит первую версию, которую можно «потрогать».

1.Долго и дорого?

Не всегда с нуля:Есть решения, которые можно адаптировать для: CRM, ERP, Social Network, BI, e-commerce, документооборота, сложнейших математических вычислений: (Высокая популярность в научной среде как бесплатная и более производительная замена Matlab, Scilab, Octave, FreeMat, ) .

2. Нормальное ли качество?

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

2. Нормальное ли качество?

def fib(n): a, b = 0, 1 while a < n: print(a, end=' ') a, b = b, a+b print()fib(1000)

>>> 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610

Примеры программ на Python:list = [2, 4, 6, 8]sum = 0for num in list: sum = sum + numprint("The sum is:", sum)

>>> The sum is: 20

fruits = ['Banana', 'Apple', 'Lime']loud_fruits = [fruit.upper() for fruit in fruits]print(loud_fruits)

>>> ['BANANA', 'APPLE', 'LIME']

Числа фибоначи Сумма чисел в списке

Делает из списка слов, написанных маленькими буквами список слов, написанный большими буквами

А что уже сделано на Python, есть ли сообщество, поддержка?

Ограничен ли я лицензией на коммерческую разработку?

Python и подавляющее большинство библиотек к нему бесплатны и поставляются в исходных кодах.

Более того, в отличие от многих открытых систем, лицензионная политика на Python никак не ограничивает его использование в коммерческих системах и не налагает никаких обязательств. Пруфлинк

Иными словами, Python можно использовать в коммерческих проектах!

А Python «подружится» с моей системой/базой данных/сторонним сервисом?

Python легко интегрируется сa)Языками программирования- Python, C/C++, Java, .Net и др.

b)СУБД: Oracle, MySQL, PostgreSQL,Sybase, Firebird (Interbase), Informix, Microsoft SQL Server и SQLite, PostgreSql, MongoDB.

А Python «подружится» с моей системой/базой данных/сторонним сервисом?

c)Для Python есть API или готовое решение у любой уважающей себя системы или сервиса:

Крупные многоцелевые сервисы и поисковые системы:

Социальные сети:

Платежные системы:

А Python «подружится» с моей системой/базой данных/сторонним сервисом?

Облачные хранилища:

Торговые площадки:

Системы рассылки:

Видео и аудио хостинги:

Энциклопедии:

Насколько дорогое (мощное) оборудование мне понадобится?

Естественно все зависит от требований к разрабатываемому проекту, но в целом Python можно запустить даже на обычном виртуальном хостинге.

Насколько дорогое (мощное) оборудование мне понадобится?

Примеры хостингов которые поддерживают Python:

5. Производительность

Время на операцию, микросекунд Потребляемая память, мегабайт

http://www.gotsulyak.com/2010/08/post404

5. Производительность

http://habrahabr.ru/post/66562/

6. Масштабируемость:

Горизонтальное масштабирование:Возможность разделить систему на более мелкие элементы и разнести их по разным серверам.

Вертикальное масштабирование:Возможность нарастить мощности сервера.

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

7.Support и поддержка

Проекты на Python легко поддерживать и добавлять в них новые функции потому, что:

1. В мире более 3 000 000 Python разработчиков.2. «Порог вхождения» в Python очень низок, что позволяет

программистам легко переходить на него с других технологий.

3. Код, написанный на Python отличается краткостью, лаконичностью, понятностью.

4. Любая другая компания, работающая с Python легко сможет поддерживать и развивать проект т.к. код легко передать.

Пора продавать Python!