What follows is an edited-for-my-blog version of the blog post I wrote for the Python Software Foundation. I have maintained some of the structure and form but added my personal thoughts along the way.
It is with great pride that on behalf of the Python Software Foundation and the community as a whole, I am please to announce that the official Python.org website, subsites and back end architecture are getting a total makeover.
To me, personally - this has been a long labor of love. I became a PSF member in 2009, a director of the foundation in 2010 - it's been a long ride for me. Not as long as many others, but four, almost five years means a lot of change and a lot of plans, some coming to fruition, others lying in dormancy.
The complete and total overhaul of the Python.org front end, IA/UX/UI and the back end - moving to a modern and user friendly content editing and addition system, etc has been something I have privately been working on since early 2009 - actually, before I became a PSF member proper.
I have emails dated back to early 2009 conspiring/planning on the overhaul of the site. My sincere personal wish has not just to make something new and shiny. It has been to give Python, a language and community I love a whole new presence. The ability to make portals dedicated to the foundation, education, core development and more. The ability to easily and rapidly add new content or update the style to fit with the times and changing world around us.
This has been a project for me going on 5 years - for me, it's as old as my oldest daughter Abby. And it is with great humility, pride and happiness I get to announce that this plan is finally coming to fruition.
Python has grown significantly in the last decade, both in terms of audience and the amount of information about it. This abundance of information has outgrown the current website’s taxonomy and fundamental design. You can see the growth of the site over time - for example 1997 1999, 2006, and 2011. You can see the growth of focus, audience and information reflected in what was added, how it expanded. Since the last major update, not much has changed though.
When I sat and looked at this with my fresh, naive set of eyes, already inspired by the community and the language, I knew that more could - should - be done to showcase the wealth we have to offer. Education, the Foundation, everything. We could showcase the community user groups, conferences from EuroPython, to PyCon, to PyArkansas, PyTexas and more.
The key goal of the redesign project is to update Python’s official web presence with an eye to better organizing the information we have today (and expect to add in the future).
The end result should help our audience find the information they need, whether it’s official information like downloads and documentation, or resources from our vibrant community.
That's my speak for what I outlined above - not to mention the fact we know how to tailor information to specific types of uses - see the audiences section of the RFP - Python is over 22 years old now, and some people might think that it's just getting old. I see it completely different. I program in Python because I enjoy it. It's what made me want to be a programmer. Now, with projects like the Raspberry Pi, and more and more Python in education, we can inspire a whole new generation with something clean, approachable and vibrant.
Although the current implementation of the Python web site has served its purpose over the years, the time has come for the site to progress and complement the growth and maturity of the language itself as well as the vibrancy of the community.
The back end has not aged well - though there is something be said about what-was-old-is-new-again - I think it's one of the first code bases I remember doing just regular old <input> to <static html> - go, take a look for yourself. If looking through that you're not slightly daunted at the prospect of adding sites, content, etc to it, you're a better man than I. And many better people have spent thousands of man hours doing just that to keep what information is there alive.
There’s a lot we - I - want to achieve
- Modern design and experience
- Concise and intuitive navigation
- Showcase the simplicity and elegance of the language
- Attract and convert potential Python users and Python Software Foundation sponsors
- Represent our vibrant, active community
- Make it easy for a wide range of contributors to add content
- Enhance the visibility of the PSF and its sponsors
- Provide examples of success stories
- Enhance the visibility of alternate implementations
- Stable and scalable infrastructure
The redesign involves some tall tasks. From the fresh and modern UI/UX to the online and offline content editing features, no aspect of the project is to be taken lightly, or even incrementally. Such approaches have stalled and ultimately failed in the past, and rapidly outstrip the free time our community of volunteers can dedicate to the project.
See my introduction - I've been involved in at least 6 skunkworks efforts to redesign the site and its back end. I went so far as to register python-lang.org/.com and others in an intent to fork it due to the constant uphill battle it became. Time and time again I would get friends to join me on my wild crusade and we would crash into the rocks on the shore of stop energy. Time and time again I would see people lose what free time they had fighting and discussing and debating rather than creating.
I could not, in good conscience do that, or ask that of anyone again. Hence, the RFP, hence, getting the board to accept the RFP for publishing publicly stating "we will do this" and eventually pushing through to a vote of approval.
This is a process that started over two years ago with the starting of the of the Request For proposals. This year we issued it publicly, and since that time the psf-redesign team including Nick Coghlan, Doug Hellmann, Idan Gazit, Steve Holden, Brian Curtin, Andrew Kuchling, Issac Kelly, Katie Cunningham, Noah Kantrowitz and others.
I can not thank the team and the board enough - everyone has put in countless hours of thankless work to help me scratch and itch thats been bothering me personally for 5 years. I can not say thank you enough to all those who helped me or supported me in the past skunkworks projects that died in utero.
This was a herculean effort - and we're still not done.
The team received seven bids in total - all of them which included strong points and compelling stories. The team deliberated, ranked, discussed, and asked questions of the bidders, working through the bids for several months. We were constantly impressed by the high quality, well thought out, professional work that the community members submitted to us.
After the review period came to a close, we had a single bid which ranked higher than any of the others, based on experience, references, and overall quality of the proposal. They'll be working with the second highest rated bid, which contained UI/UX and IA that absolutely floored the reviewers.
The first bid, submitted by a joint effort between Project Evolution and Revolution Systems, was the overall highest ranked bid. The team was unanimous in our recommendation to proceed forward with this bid based on the credentials of the team, quality of the proposal, and their deep understanding of how to work with volunteer organizations, oversight and the community as a whole.
This bid provides a clear project management and accountability system as well as detailing how they wish to work with the community as a whole to achieve the project goals.
You might know of Revsys for example - Frank Wiles and Jacob Kaplan-Moss ring any bells? These guys know what they're doing when it comes to the back end architecture. Seth, and the crew from Project Evolution have been equally impressive in their front end work, working with the team and being understanding with us all along the way.
Second, we had the Divio.ch team bid. The IA/UX/UI work which they poured over 120 hours into as a company impressed us a great deal. We were quite literally floored by the amount of thought, planning, and work invested in the visual and IA aspects of the Divio bid.
Divio's proposal blew me away - the amount of work they put into rethinking the IA/UX/UI and consideration for audiences and so much more in a proposal stunned me. Without the team to keep me honest and pegged to the floor, I would have danced away.
Together with Project Evolution and Revolution Systems leading the project, and the stellar Divio team consulting on the visual/IA aspects of the project the redesign team and the board is sure that we will be able to deliver a next generation experience and architecture that will achieve all of the goals we set forward when we went down the path of drafting the redesign RFP.
On September 26th, the Python Software Foundation board of directors unanimously approved the combined bids:
RESOLVED, that the Python Software Foundation accept the Python.org site redesign proposal set forth by Project Evolution / Revolution Systems and Divio with a budget not to exceed $70,000 in total without further board approval.
Overview of the Accepted Bids
The redesign project will completed by the three teams, Project Evolution, RevSys, and Divio, with a division of labor using the best aspects of each team. The project plan and the back end will be handled by members of Project Evolution and RevSys. Members of Project Evolution will handle the front end work, incorporating the guidance of the Divio team.
The accepted bids from the three entities can be found below:
Project Evolution (PE) is a design driven development team founded in 1999 with clients ranging from school districts to Fortune 1000 fashion conglomerates with international holdings. The 12-person team includes creative leads, front-end and back-end developers and associated support staff all committed to open-source technology.
Revolution Systems, LLC., based in Lawrence, Kansas, was formed in 2002 by Frank Wiles to help businesses benefit from open source software. While many large orga- nizations use open source software internally (sometimes without their knowledge), he realized that many organizations did not know how to properly take advantage of this revolutionary type of software.
Divio, a web agency located in Zürich, builds web applications and is specialised in the areas of design and development. For the production Divio uses the modern Webframework Django and is heavily involved in the development of the successful open source projects django CMS and django SHOP.
The company relies on the agile SCRUM-methodology for its projects.
Since I can cheat a little - here's a bevy of screen crops/captures to expand on the next generation site we can look forward to:
Oh, what will it look like on mobile?
There's a lot more coming, obviously - we've just approved running with the color scheme and mocks we've gotten, and haven't started the next round of feedback. The back end is progressing - and man, do we have surprises there (with any luck). A full online CMS for people, plus an HG backed offline editing system with automatic updates to the site?
I am sincerely proud, as both a Python Community member, and PSF director to have been part of this process. The entire review team, every single submitted bid and the Foundation's board works tirelessly for a great deal of time pulling together what is already turning out to be an impressive and surprising redesign. I'm sincerely proud to be working with this team.
This has been a long time in coming - but maybe 5 years isn't a lot in the grand scheme of things. Maybe it's just been me obsessing about this one thing for so long that's colored my vision and made me giggle like a little kid every time I see new mocks, or know that we're funded by the PSF and this thing is really happening.
By contrast, PyCon is almost second nature to me now - it's a ton of work, and I'm pouring more of myself into 2013 than I have any previous year, but seeing that come together like a well oiled machine, and then this dream of mine coming to fruition (it's one of a few … I've got some other big plans) is like Christmas day for the community member in me.
So thank you - thank you to everyone that's making this happen. You're making a lot of people very happy, and very proud.
We've got a bright future. Let's show it off.