commit | author | age
|
7a4c7c
|
1 |
:orphan: |
DS |
2 |
|
10520a
|
3 |
Foreword |
CM |
4 |
======== |
|
5 |
|
|
6 |
.. sidebar:: A Foreword By Paul Everitt |
|
7 |
|
|
8 |
Paul Everitt is a principal at :term:`Agendaless Consulting`. |
379280
|
9 |
Before his time at Agendaless, he was the co-founder of *Digital |
CM |
10 |
Creations*, which later became *Zope Corporation*. He has been |
|
11 |
a widely respected member of the Python community since 1994. |
10520a
|
12 |
|
1063de
|
13 |
Some times amazing things can actually happen. |
10520a
|
14 |
|
1063de
|
15 |
In the world of web frameworks, the rate of radioactive decay is very high. |
CM |
16 |
Projects are starting, splintering, folding, and clashing constantly. For |
|
17 |
Python, there are over 50 listed web frameworks. In some ways this shows |
|
18 |
health and experimentation. Yet others have started to ask: "Is this really |
|
19 |
good for Python developers?" |
10520a
|
20 |
|
1063de
|
21 |
This book is the result of an event which bucked this trend, an event which |
CM |
22 |
Armin Ronacher wrote was "one of the greatest moves in Python's web framework |
|
23 |
history." Two projects merged and are bringing in a third. Consolidation |
|
24 |
won a victory over splintering. |
10520a
|
25 |
|
1063de
|
26 |
As someone from the Zope world, I had a strong interest in repoze.bfg. I |
CM |
27 |
viewed it as the escape hatch for Zope, teleporting us into the modern world |
|
28 |
of Python development, permitting but not requiring Zope-style idioms. Chris |
|
29 |
McDonough established a great brand for repoze.bfg: small, documented, |
|
30 |
tested, fast, stable, friendly. As the project manager for a very large |
|
31 |
repoze.bfg application, I can strongly attest that it was a home run on those |
|
32 |
points. |
10520a
|
33 |
|
1063de
|
34 |
But in a crowded web frameworks landscape, repoze.bfg was a long-shot to get |
CM |
35 |
critical mass. It had a lot to offer, but was missing critical pieces such |
|
36 |
as momentum and name recognition. |
10520a
|
37 |
|
1063de
|
38 |
Pylons has long been viewed as holding the number two spot in Python web |
CM |
39 |
frameworks. It is one of (if not the) first "modern" web framework. With |
|
40 |
lots of users, and a "full-stack" framework atop it (TurboGears), Pylons had |
|
41 |
momentum and name recognition aplenty. But it needed more resources to |
|
42 |
accomplish its goals of an architectural transition, and Ben Bangert needed |
|
43 |
to share the load as architect during the transition. |
10520a
|
44 |
|
1063de
|
45 |
Ben and Chris started talking during 2011 about architectural patterns and |
CM |
46 |
discovered Pylons and repoze.bfg covered almost exactly the same surface |
|
47 |
area. After some experiments, it became clear that, technically at least, |
|
48 |
the next version of Pylons could be the same as the next version of |
|
49 |
repoze.bfg. |
10520a
|
50 |
|
1063de
|
51 |
But what about the non-technical parts? It was one thing to consolidate |
CM |
52 |
code. Consolidating projects was new territory. |
10520a
|
53 |
|
1063de
|
54 |
I was fortunate to meet with the principals in Las Vegas and watch as they |
CM |
55 |
hashed out the idea. The projects would merge and keep the Pylons identity. |
|
56 |
repoze.bfg would sacrifice its identity, but provide the technical |
|
57 |
foundation. All the resources from the two projects would be combined. |
10520a
|
58 |
|
1063de
|
59 |
I'll confess, I had high hopes for the outcome. Now that the merge has |
CM |
60 |
happened and 1.0 released, I can honestly say it has done better than I could |
|
61 |
have imagined. The story of "consolidation" is catching on, and interest in |
|
62 |
working together is growing. Pyramid 1.0 is very, very high quality and |
|
63 |
ready to go for PyCon 2011. People interested in "simple, fast, documented, |
|
64 |
tested" have a strong framework and healthy project. |
10520a
|
65 |
|
1063de
|
66 |
It took humility, patience, and pragmatism to reach this point of obvious |
CM |
67 |
success. Certainly by the project leaders, who each had to give up some of |
|
68 |
their sovereignty and sacred cows. But as well, each community had to |
|
69 |
discuss the challenges, the various alternatives for going forward, and the |
|
70 |
pros and cons of consolidation in general but also this particular |
|
71 |
consolidation. That such a conversation and change could happen in a |
|
72 |
responsible, adult fashion speaks volumes about the strength and maturity of |
|
73 |
each community. |
10520a
|
74 |
|
1063de
|
75 |
What might happen in 2011? TurboGears is considering a move into the |
CM |
76 |
umbrella Pylons Project. As Armin writes in his post, there is fertile |
|
77 |
ground for consolidation at other layers. In my own interests, I hope the |
|
78 |
worlds of Zope and Plone view Pyramid as the base for the next decade of |
|
79 |
their ideas. But also, the Pylons Project as a vibrant home for such ideas. |
|
80 |
|
|
81 |
Congratulations, Pylons Project. Not only have you accelerated your spot on |
|
82 |
the Python web frameworks chart, but you have injected the word |
|
83 |
"consolidation" into the lexicon of hot ideas for 2011. |