Hi there, I'll continue in my role as the unofficial nag of this project.
So we've had a useful discussion about making PyPy production ready. Excellent! Now we need to follow up on this. We need to distill a list of concrete tasks from it. We need to figure out who does what. Who in the PyPy project is going to make this list? Who will make sure that it gets done (or decides bits *won't* get done right now)? This brings me to commitment again, and leadership. I know I've asked about commitment before, in connection to the RPython for CPython modules facility. I got the answer "we'll need to discuss this at EuroPython", and there was some discussion there. I got the general impression that finishing the interpreter was considered to be of more importance. The current state of this support is rather in limbo: it's still there, but should be reworked to use new stuff that's there now, and it's unclear who will do it or when. Anyway, that's fine, as the main goal, I take it, is the interpreter. Good. And then I heard nothing much more until this current discussion... Perhaps I missed something? So what about the interpreter? What is the plan to bring it into production? Will the first goal be the PyPy-JVM idea that was thrown around at EuroPython? The C-backend? Something else? Someone needs to show leadership and make a plan. There needs to be a certain level of commitment to this plan from the project and project members. Even explicitly saying you are not going to do X and Y (or not right now) is valuable, as it helps people to know what to expect and where to help. Does the PyPy project commit to working on a Python interpreter in any shape and form that people can use in production at all? One that is released? If so, what's the timeline? When is the alpha going to be, when the beta? Do you only commit to this if you get volunteer contributors? Can you consider lowering ambition and do it without further volunteers? If you need further volunteers, will you give them the responsibility and authority to actually make hard decisions to make a release possible? Note that you'll get more volunteers that contribute if they have something to expect in the foreseeable future. I already mentioned release management. If you don't have some form of leadership on this, you risk scenarios like: * "we can't release right now as we're still working on X" * X is done. in the mean time, someone started Y " "We can't release right now as we're still working on Y" * Y is done. in the mean time, someone started Z * "We can't release right now as we're still working on Z" * and so on. You need to have someone or some group of people who are aware of these issues, who have the aim to make a release, and who can clearly say: yeah, I *know* we really need Y, but we are in stabilization mode right now, so please wait or do it on a branch. Making a release is *hard*. It's lots of frustrating work. You know, as you made the releases for the research part of the project. After this, the releases stopped. If you want a successful open source project, you need to make regular releases that people can use. You need to make new release announcements, as people read them. You also need to show some commitment towards production use to the public, and releases in this direction is the best way to do it. I believe doing this will be of tremendous open source marketing value to the project. You've gone all the way up to 1.0, but you've stated explicitly it's not intended for production use. Now is the time to let the world know you're progressing beyond this. Let the internet know that the PyPy project is a serious contender in the Python interpreter world, instead of an experiment. So, what's the plan? Regards, Martijn P.S. I'm leaving the funding discussion out of this explicitly. I assume you want to make PyPy work as an open source project. I'm also assuming that there is a way to get a production-ready interpreter by volunteer effort without external funding. If the project decides that there is *no* such way, then please let everybody know that too. _______________________________________________ [email protected] http://codespeak.net/mailman/listinfo/pypy-dev
