[pypy-svn] r23637 - pypy/extradoc/talk/pycon2006
bea at codespeak.net
bea at codespeak.net
Fri Feb 24 15:26:39 CET 2006
Author: bea
Date: Fri Feb 24 15:26:35 2006
New Revision: 23637
Added:
pypy/extradoc/talk/pycon2006/method_talk.txt
Log:
method talk for sunday - holger - please check this - it needs to be cut down...
Cheers
Bea
Added: pypy/extradoc/talk/pycon2006/method_talk.txt
==============================================================================
--- (empty file)
+++ pypy/extradoc/talk/pycon2006/method_talk.txt Fri Feb 24 15:26:35 2006
@@ -0,0 +1,213 @@
+============================================================
+Agile Open-Source Methods, Businesses and EU-funding
+
+============================================================
+
+:Authors: Bea During (Change Maker), Holger Krekel (merlinux)
+:Date: 26th February 2006, PyCon
+
+
+XXX Comments: we have ca 30 min - this suggestion has 18 text slides (and a couple of picture slides
+- it still needs to be shortened...XXX
+
+How it got started
+==================================================
+
+- 2003 first emails between Armin Rigo, Christian Tismer and
+ Holger Krekel
+- Participated in zope3 coding events ("sprints")
+- Initial invitation for a one-week sprint to Trillke, Hildesheim
+- Participants got to know each other at conferences
+- Goal: Python implementation in Python (various motivations)
+
+Key elements of the technical development
+==================================================
+
+- Test-driven from the start
+- Driven by architectural experiences
+- Welcomed by python community (co-operative approach)
+- Based on zen of python / python culture
+- Focus on correctness of concepts, then speed
+- Evolutionary step by step development
+
+Lines of Code and tests
+============================================================
+
+.. image:: plots/loc.png
+ :width: 600
+ :height: 450
+
+PyPy test-driven development
+==================================================
+
+- Identify problems/evolution by tests first
+- Our own testing and development tools
+- Rule: first get the semantics and concepts right!
+ optimize later!
+- Today around 3000 tests (plus CPython regression tests)
+
+EU funding
+==================================================
+
+- Proposal written during sprints as well as distributed
+ (submitted Oct 2003)
+- Got good reviews from EU contracted experts
+- Negotiation and finalisation: 1 year!
+- 2 year project, 1.3 Million Euro funding
+- Contractual framework + reporting obligations
+
+Work organisation (in the EU proposal)
+============================================================
+
+- 14 workpackages and 58 deliverables, 3 phases
+- Need for consortium meetings every month (IRC)
+- Sprints every 6th week (coordinating development and management work)
+- EU project aspects helped to gain mid-term/long-term focus
+
+Balance of interests
+==================================================
+
+- Developers want to (continue to) drive the project
+- Companies have to co-finance 50% of all costs
+ (travel/salary), commercial interests
+- EU wants challenging research goals and tracking of goals
+
+- **at all levels it is about finding
+ models for co-operation that fit**
+
+The developer community
+==================================================
+
+- Weekly 30 minute synchronisation meetings
+- Open collaborative open-source work style
+- Representation through Trusted "Technical Board"
+ within the EU project
+- Research/architecture informally guided by accepted experts
+
+Organising the consortium
+============================================================
+
+- PyPy was first and still is a network of people
+- ...but EU only funds organisations
+- 8 partners, 4 previously not involved in the PyPy community
+- 7 partners only partially funded (50% cost models)
+- 2 new companies: "forced" entrepreneurship
+
+Consortium Meetings ...
+============================================================
+
+.. image:: saarbruecken_consortium.jpg
+
+.. Bea
+
+
+Core of Agile practises: the people factor
+============================================================
+
+- "Agile processes are designed to capitalize on each
+ individual and each team's unique strenghts" (Cockburn, Highsmith, 2001)
+- OSS nature of teams: self-organized, intensely
+ collaborative - fit the agile approach
+- OSS teams are an unique implementation of agile practices - why?
+
+Agile approaches aim at ...
+============================================================
+
+* reducing ... "cost of information",distance from decision-making
+* by ... physical location, unorthodox exchange of knowledge
+* resulting in ... improved sense of community, team "morale"
+
+Origins of sprinting
+============================================================
+
+- Scrum (Agile community): 1 month long iteration of
+ development work, increments (also supporting activities:
+ planning, documentation, tracking work, evaluation)
+
+- Zope Foundation (Python Community): "two-day or three-day
+ focused development session, in which developers pair off
+ together in a room and focus on building a particular
+ subsystem".
+
+Sprinting the PyPy way
+============================================================
+
+- 7 days with 1 break day, every 6th week for 2 years
+- "open" sprints and "closed" sprints - levels of PyPy knowledge in participants
+- sprints at conferences (PyCon, EuroPython)
+- typical activities: start up planning sessions, daily status meetings, closure meetings, sprint
+ reports, pair-group programming, tutorials, talks (consortium activities)
+
+
+Effects of sprints on community participation
+============================================================
+
+.. image:: plots/subscribers.png
+ :width: 600
+ :height: 450
+
+The different cultures of the PyPy project
+============================================================
+
+- OSS/Python culture
+- EU project culture
+- Traditional project management culture
+- Agile development culture
+- - 5+X different national cultures
+
+The challenge: managing diversities part 1
+============================================================
+
+- Developer driven process and formal project organization
+ - management team, technical board and partners
+ - sprint organising
+ - planning and focusing on technical tasks
+- Constant risk of added workload of management
+ work on core developers
+
+The challenge: managing diversities part 2
+============================================================
+
+- Agile strategies and Formal EU requirements
+ - written high level requirements
+ - change control structures complicated
+- Constant risk of missing opportunities and not
+ creating/reacting to change fast enough
+
+The challenge: managing diversities part 3
+============================================================
+
+- OSS community and hierarchies for "conceptual integrity"
+ - pypy-dev/core developers in technical board
+ - industrial usage vs research oriented work
+- Risk for unbalancing the community
+
+Hitchikers guide ...
+============================================================
+
+.. image:: manmoon.png
+
+Conclusion / Food for thought
+============================================================
+
+- A shared and challenging vision
+- Respecting and "exploiting" strengths of the different cultures involved
+- Designing minimalistic project structures channeling work, not hindering work
+- Room for group learning and creating change - not just reacting to change
+
+Outlook on whole project level
+==============================
+
+- Less than 1 year of funding left (Nov 2006)
+- Improve interactions with community & contribution
+- Taking care about post-EU development (2007++)
+- Visiting Lovain La Neuve, Tokyo, EuroPython, Ireland, ...
+- Commercial opportunities ... hiring opportunities ...
+- *Questions?* (talk to us ...)
+
+http://codespeak.net/pypy and http://pypy.org
+
+
+.. |bullet| unicode:: U+02022
+.. footer:: Bea During, Holger Krekel |bullet| PyCon |bullet| 26th February 2006
+
More information about the Pypy-commit
mailing list