SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.
SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.
Successfully reported this slideshow.
Activate your 14 day free trial to unlock unlimited reading.
Austin Python Meetup 2017: How to Stop Worrying and Start a Project with Python 3
The talk "How to stop worrying and start a project with Python 3 " based on my production experience of using the technology. Typical fears of the engineers which use Python 2 are addressed.
The talk "How to stop worrying and start a project with Python 3 " based on my production experience of using the technology. Typical fears of the engineers which use Python 2 are addressed.
3.
3
3 months back from today...
https://www.slideshare.net/mariczhuck/austin-python-meetup-2017-whats-new-in-pythons-35-and-36
4.
Agenda
1. The story about my journey from 2 to 3
2. Should I use Python 3, not 2?
3. Discover the benefits with your team
4. How to discuss switching to Python 3 with your
manager
5. Summary
4
6.
The story about my journey
6
# python2
@defer.inlineCallbacks
# python2, small projects
@app.route('')
7.
The story about my journey
7
# python2, big project
d = defer.Deferred()
d.addCallback(foo)
d.addErrback(bar)
# python3, non-commercial project
async / await
8.
The story about my journey
8
# python3, big project
11.
Reasons to use Python 3 for a developer
11
New syntax features make our life easier
● PEP 448, additional unpacking generalizations
● PEP 465, a new matrix multiplication operator `a @ b`
● PEP 492, coroutines with async and await syntax
● PEP 498, formatted string literals
● PEP 515, underscores in numeric literals
● PEP 525, asynchronous generators
● PEP 526, syntax for variable annotations
● PEP 530, asynchronous comprehensions
● and others
12.
PyCharm: in late 2017 py3.users > py2.users
12
13.
Does ... work with Python 3?
13
95% of most popular
PyPI libraries support
Python 3
http://py3readiness.org/
14.
New Python libraries will be Python 3 only
14
Libs tagged on PyPI
● Python 3: 55.5%
○ 75669 releases
● Python 2: 44.5%
○ 60732 releases
30.
Experience of my team:
Dev speed is pretty good
after the first month
30
31.
Summary
● The future is already here
● Learn new Python 3 features - they are great
● Make side projects and prototypes to gain experience
● New learners - invest your time only in Python 3
● Start new projects only with Python 3
31