what's the scoop with python 3?
DESCRIPTION
At PyCon Ireland 2010, Paul described his experience of working with Python 3 in creating O'Reilly's Head First Programming and Head First Python (both of which target Python 3). As a big fan of Python 3, Paul suggested that all Python 2 programmers needed to at least try Python 3 as soon as was practical, if not embrace it for all "new" work. In this talk, Paul provides an update on the current status of Python 3 and discusses the community's adoption (or lack of) the latest version of the Python programming language, talking about what has changed in the year and a bit since last year, as well as describing his own experience of working with Python on recent consultancy projects.TRANSCRIPT
![Page 1: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/1.jpg)
1
What's the scoop with Python 3?
Paul Barry – Institute of Technology, Carlow in Ireland
PyCon Ireland 2011
![Page 2: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/2.jpg)
Grab the slides:
http://paulbarry.itcarlow.ie/Python3.pdf
![Page 3: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/3.jpg)
3
Start working withPython 3 now!
![Page 4: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/4.jpg)
4
It seems nobody was listening...
![Page 5: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/5.jpg)
5
So... what's the scoop?
![Page 6: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/6.jpg)
6
Despite going from strength-to-strength,Python 3 has yet to replace Python 2
![Page 7: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/7.jpg)
7
WTF?
![Page 8: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/8.jpg)
8
Despite being nearly 3 years old,Python 3 has yet to replace Python 2
![Page 9: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/9.jpg)
9
That's OK
![Page 10: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/10.jpg)
10
In the short-to-medium term,Python 3 wasn't meant to replace Python 2
![Page 11: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/11.jpg)
11
Not yet, anyway...
![Page 12: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/12.jpg)
12
I wonder are thecoffee refillsfree today?
![Page 13: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/13.jpg)
13
Which version ofPython
should I usetoday?
![Page 14: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/14.jpg)
14
Not an either-or decision
![Page 15: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/15.jpg)
15
What do the good folk at python.org have to say?
![Page 16: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/16.jpg)
16
“... if you're deploying to an environment you don't control, that may impose a specific version rather
than allowing you a free selection from the available versions.”
Point #1 - Use 2 instead of 3
![Page 17: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/17.jpg)
17
I recently worked on a project that unashamedly specified Python 2.6.4 as the target platform
(even though the work was XML-based)
![Page 18: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/18.jpg)
18
“... if you want to use a specific third party package or utility that doesn't yet have a released
version that is compatible with Python 3, and porting that package is a non-trivial task...”
Point #2 - Use 2 instead of 3
![Page 19: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/19.jpg)
19
Another project (wisely) selected Django asthe target web-dev platform... which meant more
work for me in Python 2.x
![Page 20: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/20.jpg)
20
“... if you wish to use an alternative implementation of Python such as IronPython,
Jython or PyPy...”
Point #3 - Use 2 instead of 3
![Page 21: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/21.jpg)
21
A third project specified the .NET platform,but didn't care which language I used...
![Page 22: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/22.jpg)
22
A third project specified the .NET platform,but didn't care which language I used...
I used IronPython and was restrictedto working with the 2.7 release of Python
![Page 23: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/23.jpg)
23
It's hard to get away fromPython 2...
![Page 24: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/24.jpg)
24
It's hard to get away fromPython 2...
… especially when Python 2.7 isn't half-bad
![Page 25: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/25.jpg)
25
So, like, dude... what's the problem?
![Page 26: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/26.jpg)
26
Eventually, 2.x won't cut it anymore...
![Page 27: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/27.jpg)
27
Python 2.x is
DEAD
![Page 28: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/28.jpg)
28
It will soon start to smell
![Page 29: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/29.jpg)
29
This talk's
BIGMESSAGE
![Page 30: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/30.jpg)
30
Your current 2.x codebase is now
LEGACY
![Page 31: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/31.jpg)
31
![Page 32: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/32.jpg)
32
![Page 33: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/33.jpg)
33
![Page 34: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/34.jpg)
34
How can you saysuch a thing?
![Page 35: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/35.jpg)
35
At some point, you'll have to port allof your “current” 2.x code to Python 3
![Page 36: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/36.jpg)
36
Python 3 will soon become
THE DEFAULT
![Page 37: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/37.jpg)
37
This Is Your Future:
![Page 38: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/38.jpg)
38
Imagine if this was to happen with someother distribution or OS...?!?
![Page 39: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/39.jpg)
39
Prevailing attitudes towards Python 3
![Page 40: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/40.jpg)
40
I'll just ignoreit and it'llgo away.
![Page 41: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/41.jpg)
41
Ignore the future at your
PERIL
![Page 42: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/42.jpg)
42
Whatever were they thinking?Sure, the print statement
doesn't even work!!!
![Page 43: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/43.jpg)
43
The print statement in 2.x is
BROKEN
![Page 44: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/44.jpg)
44
There's no goodPython 3 specific books out there.
![Page 45: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/45.jpg)
45
![Page 46: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/46.jpg)
46
![Page 47: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/47.jpg)
47
This is all rubbish! We'll just keepwriting 2.x code
FOREVER...
![Page 48: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/48.jpg)
48
You are in
DENIAL
![Page 49: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/49.jpg)
49
Be honest... there'snot one single feature
that demands theupgrade, right?
![Page 50: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/50.jpg)
50
UNICODE
![Page 51: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/51.jpg)
51
![Page 52: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/52.jpg)
52
Look – we can'tdo anything until thoseguys over there update
their code...
![Page 53: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/53.jpg)
53
Look – we can'tdo anything until thoseguys over there update
their code... I agree - let'sdo nothing.
![Page 54: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/54.jpg)
54
If you do
NOTHINGyou are in
DENIAL
![Page 55: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/55.jpg)
55
![Page 56: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/56.jpg)
56
![Page 57: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/57.jpg)
57
![Page 58: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/58.jpg)
58
![Page 59: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/59.jpg)
59
I'm back where I started
![Page 60: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/60.jpg)
60
Start working withPython 3 now!
![Page 61: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/61.jpg)
61
Start your Python 3porting effort now!
![Page 62: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/62.jpg)
62
Your love lifedepends on it!!!
![Page 63: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/63.jpg)
63
I really do love you...
![Page 64: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/64.jpg)
64
That's nice. But, I'dlove you more if onlyyou'd port your code
to Python 3.
![Page 65: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/65.jpg)
65
Final question to those of youthat think you can “survive”
with Python 2.x
![Page 66: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/66.jpg)
66
How many of you are still supportingPython 1.x code?
![Page 67: What's the Scoop with Python 3?](https://reader034.vdocuments.net/reader034/viewer/2022052410/555a2e5ad8b42ab3088b5013/html5/thumbnails/67.jpg)
67
Questions?