Python Hype? Brian Ray Hi, Im Brian Ray Indy Consulting Years - - PowerPoint PPT Presentation

python hype
SMART_READER_LITE
LIVE PREVIEW

Python Hype? Brian Ray Hi, Im Brian Ray Indy Consulting Years - - PowerPoint PPT Presentation

Python Hype? Brian Ray Hi, Im Brian Ray Indy Consulting Years Directive Years 2010-2013 1998-2003 Leadership Years 2009-2010 Engineering Years Big Four Consulting 2003-2006 2013-current Taken in China May 20


slide-1
SLIDE 1

Python Hype?

Brian Ray

slide-2
SLIDE 2

Hi, I’m Brian Ray

  • Directive Years

1998-2003

  • Engineering Years

2003-2006

  • Leadership Years

2009-2010

  • Indy Consulting Years

2010-2013 Taken in China May 20th, 2016

  • Big Four Consulting

2013-current

slide-3
SLIDE 3

Why “Python Hype”?

In the last 10 years, we are seeing Python having (select one):

  • A. Slow and steady growth.
  • B. Spiked and now on decline.
  • C. Spiked + Declined now stabilized.
  • D. Lives in independent domain.
  • E. We (Python fans) live in a bubble.
slide-4
SLIDE 4

What measure?

  • Hype Cycle
  • TIOBE Index
  • On Github
  • PYPL
  • Some other
slide-5
SLIDE 5

Don’t tell me there aren’t trends

slide-6
SLIDE 6

Programming language “popularity” is hard to measure.

Lenses to help measure:

  • 1. Learned: was taught Python in course
  • 2. Migrated: from language to language
  • 3. Addressed: problem class to solve
  • 4. Platform-ed: ecosystem of tools
  • 5. Retained: sticking with Python
  • 6. Promoted: Promoted
slide-7
SLIDE 7

OUR SURVEY

236 respondents broken up into 3 groups

slide-8
SLIDE 8

Who

1 2 3 Groups

The missing group 4: Those who didn’t take the survey

slide-9
SLIDE 9

User Distribution

2 49 % 1 29% 3 22%

slide-10
SLIDE 10

Treatment of groups

  • Curve

Questions

  • Retained
  • Promoted
  • Addressed
  • Platform-ed
  • Learned
  • Migrated

1 2 all 3

slide-11
SLIDE 11

Group 1: Learned/Migrated

  • 60% heard of python Word of mouth
  • 56% had very positive first impression, 31%

had positive, less than 13% neutral or less.

  • Net-promoter to recommend
slide-12
SLIDE 12

Group 1: Learned/Migrated

slide-13
SLIDE 13

Group 1: Learned/Migrated

“Python is Now the Most Popular Introductory Teaching Language at Top U.S. Universities” By Philip Guo July 7, 2014

slide-14
SLIDE 14

Group 2: addressed / platformed

  • 63% very positive 1st impression

(3% higher than Group 1)

  • 77.5% very positive 2nd impression

(after months)

  • 71 % very positive 3rd impression

Hype curve-esk?

slide-15
SLIDE 15

Group 2: addressed / platformed

Dislikes:

  • Poor documentation
  • Don’t like whitespace
  • Slow
  • Prefer statically typed
  • Threading
  • Runtime not as ubiquitous as Java
  • GIL
  • Models not pip installable
  • Inheritance can be confusing
  • Lack of Mobile dev support
  • That it’s not Lisp
  • Python 2 or 3 choice
  • Package support for Python 3
  • Python 2 vs 3
  • Dependency Management
  • Installation Issues
  • Smarmy attitude

Likes:

  • Flexibility, simplicity, transparency
  • Legibility
  • Easy to learn
  • Approachable
  • Community
  • “Batteries included”
  • Correct or “pythonic” way
  • Standard library
  • Online resources
  • Scientific libraries
  • Versatile
  • Third party libraries
  • Online communities
  • Concise
  • Easy to get started
  • Not Java 8
  • Garbage collection
  • Great depth
  • Complex times included
slide-16
SLIDE 16

Group 3: Retainer / Promoter

Group 1 Group 3

  • 53% think Python Very high quality, 39% High, less then 9%

Natural or below

slide-17
SLIDE 17

Group 3: Retainer / Promoter

Group 1 Group 3

slide-18
SLIDE 18

Group 3: Retainer / Promoter

Small drawbacks:

  • 45% Speed
  • 44% GIL
  • 30% easy to duck type / monkey patch

Big Drawbacks:

  • 9% GIL
  • 15% Unicode Support

Critical:

  • 5% Unicode Support

25%– 50%– 100%–

Python 2 (before 2.7) 10.64% 12.77% 2.13% Python 2.7 - 2.x 16.67% 30.30% 43.94% Python 3+ 22.03% 32.20% 23.73% PyPy 14.89% 0.00% 2.13% Jython 4.44% 4.44% 0.00%

slide-19
SLIDE 19

Group 3: third-party

  • Surveyed 58 most downloaded pypi packages
  • 53% marked “Used”
  • 24% marked “long time user”
  • 14% marked “plan on long time”
  • 7% marked “stop”
slide-20
SLIDE 20

Group 3: third-party

Top Plan on long time: pip kid virtualenv ipython pep8 requests pandas django celery reportlab Top Stopped: plone pylons pycurl twissted zope nose pyramid

slide-21
SLIDE 21

All Groups

  • Hype
slide-22
SLIDE 22

All Groups

  • TIOBE

When did Python Peak:

  • 2007: 1%
  • 2010: 28%
  • Never: 46%
  • Other: 23%

Other:

  • 2011: when google recruited for
  • Science/web lead to second

wave

  • 2011-2012
  • 2014
  • Peak is still coming
  • Big Data will lead to future peak
slide-23
SLIDE 23

All Groups

  • Github

2008-2009 2014+ 2010-2013

slide-24
SLIDE 24

Github Top Python Projects

How forked

0,0 10,0 20,0 30,0 40,0 50,0 60,0 before 2010 2013-2014 after 2014 JavaScript Ruby PHP Python Objective-C C C++ Java Shell CoffeeScript 0,0 1,0 2,0 3,0 4,0 5,0 6,0 7,0 8,0 PHP Python Objective-C C C++ Java Shell

Activity, based on count: watched + forked

slide-25
SLIDE 25

All Groups

  • PYPL

Why seeing Steady upward Line?

  • Has broader range of uses, unlike Ruby (rails and

devops)

  • Mirrors Data Science Usage
  • Mirrors Big Data Usage
  • Steady growth
slide-26
SLIDE 26

OTHER FACTORS

Some other “Popularity” Metrics

slide-27
SLIDE 27

A local approach

  • Jobs
  • Meetups
slide-28
SLIDE 28

Corporate Suite

  • Python (and R) compatibility with Commercial

vendors: Datameer, IBM, Microsoft Azure, Oracle, Platfora, SAP, Tableau, Teradata and Tibco Software.

slide-29
SLIDE 29

Adoption in Data Science

  • KDNuggets reporting that 49% of analytics

and data mining developers have used R, and 35% have used Python

slide-30
SLIDE 30

Google hiring Python

It all got started, I believe, because the very earliest Googlers (Sergey, Larry, Craig, ...) made a good engineering decision: "Python where we can, C++ where we must” - Alex Martelli Python's growth and acceptance in its many roles just hasn't followed any ups-and-downs curve as models would predict -- it's been pretty steadily, gradually upwards instead.

slide-31
SLIDE 31

HIGHLIGHTS

Some interpretation of results…

slide-32
SLIDE 32

Revisiting our question

  • A. Slow and steady growth.
  • B. Spiked and now on decline.
  • C. Spiked + Declined now stabilized.
  • D. Lives in independent domain.
  • E. We (Python fans) live in a bubble.
slide-33
SLIDE 33

Slow and steady growth.

Supports:

  • Strong first impressions from

Group 1, 2, 3

  • Strong retention in group 2
  • Spikes not

measures as large

  • 30% of hardcore

users have switched to Python 3+ 50% of the time

  • r more
  • Because Alex Martelli

says so Negates:

  • 20% no disruptive
  • 5% increase in watchers+forkers on

github

  • We did

measure some spikes

slide-34
SLIDE 34

Spiked and now on decline.

Supports:

  • Some domain-specific languages,

push down?

  • Lack of mobile support
  • Small amount of degative: 2/3

support, swarmy Negates:

  • Lack of significant data showing decline in

Python popularity

  • Very low activity scores confirming decline
  • Not much negative press
  • 46% say never peaked
slide-35
SLIDE 35

Spiked + Declined now stabilized

Supports:

  • 30% Data Science market uses

Python

  • ¼ surveyed see as in reached

Productivity/maturity

  • TOIBE shows some spike-ish

around 2010- 28% surveyed agree Negates:

  • Hard to measure market penetration, is it

20%

  • Of third party packages, only 14% plan on

using what they use now for a long time

slide-36
SLIDE 36

Lives in independent domain

Supports:

  • Python remained someone on

effected on the PYPL Index where clearly other languages ebbed and flowed Negates:

  • Google and others site using Python with
  • ther languages
  • Considered good-glue
  • Commercial software vendors adding

Python support

slide-37
SLIDE 37

We (Python fans) live in a bubble

Supports:

  • Nearly 90% approval rating is

insane, and that’s who took the survey

  • 45% of users found Python from

Word of Mouth Negates:

  • Python lives in two many different

independent domains to be blind sided

slide-38
SLIDE 38

SOME CLOSING THOUGHTS

In my own words

slide-39
SLIDE 39

The Future of Python

  • A good choice to learn
  • Not going away (anytime soon)
  • Get involved with your local community
  • Contribute in your area of interest
  • Python Addition Helpline
  • Openness allows self fulfilling prophecy
  • Still, don’t live in a vacuum, learn other

languages!

slide-40
SLIDE 40

THANK YOU!

Brian Ray

Email: brianhray@gmail.com or brray@deloitte.com https://www.linkedin.com/in/brianray https://twitter.com/brianray https://github.com/brianray http://chipy.org

slide-41
SLIDE 41