On Thu, 15 Sep 2005, holger krekel wrote:
> On Wed, Sep 14, 2005 at 22:17 -0400, Michal Wallace wrote:
> > ... The stated goal for this
> > project is just to make a faster version of
> > python, but can you really charge for that
> > given that pypy is already open source?
>
> PyPy is not primarily - at least not only - about making
> Python faster although many people like to view it this way :-)
Hi Holger,
What I said is that the stated goal is to make a faster
version of python. I actually looked it up before I
wrote that:
"""
The PyPy project aims at producing a flexible
and fast Python implementation. The guiding idea
is to translate a Python-level description of the
Python language itself to lower level languages.
Rumors have it that the secret goal is being
faster-than-C which is nonsense, isn't it? more...
"""
-- http://codespeak.net/pypy/dist/pypy/doc/news.html
As Martijn Faassen said, it's not surprising that people
have the impression that pypy is all about speed.
I think part of the problem is that people understand
the word "fast". What that means is obvious. It's like
python, only it runs faster!
"Flexible" doesn't mean anything to me. Python is
already flexible, so what does that mean? Well, you've
got these different backends. Maybe that's what it
means. And the people who made stackless and psyco
and green threads are on the team, so maybe it's
about those things. Who knows? The site doesn't say
so if we want to figure out the status of those
things, we have to think about it.
> PyPy is a lot about flexibility to produce custom implementations
> of Python for use in particular environments. Regarding persistence,
Persistence. What does that mean? Is that like Squeak, where
you can save the state of the whole interpreter as a single
image? If so, that's pretty neat! It ought to be right up front
on the site.
> security (e.g. sandboxing)
Also neat. So another benefit is that you can make programs
that run other programs safely? I know some guys from twisted
like that stuff, because they want to make games where people
can run their own scripts.
> and deployment
I don't know what this means at all.
> there is a lot that we can possiblly do with PyPy implementations. I
> am sure that such possibilities will become clearer next year.
Cool. I guess I was thinking more about what you
could do to make money *now*, given the current
state of the codebase... Sounds like one big part
of that would be telling people more about the
potential so they can say "I want that! I'll pay
to make it happen!" :)
Another thing I suspect is part of pypy but isn't really
right up front is the whole continuations thing. Yes,
CPS dos make an appearance int he top news article on the
news page, but that'll just get buried as you post more
news.
Basically "flexible" is a feature, and not a very
well defined one. Features don't sell well. What sells
are benefits, and "fast" is a benefit. So if it's not
the primary benefit, it's time to fix your message. :)
> > Another option is that you could use your
> > technology created in pypy to create new
> > *frontends* for pypy, and sell the service
> > of taking legacy code in other languages,
> > and translating that into call trees, and
> > turning it magically into python or lisp or c...
> > This seems like it could be a much more
> > lucrative service, but it's a whole new
> > research project and it takes you away
> > from your core focus on python. (On the
> > other hand, a company that did this would
> > have a massive incentive to sponsor pypy
> > development... Maybe there's a company that
> > already does this kind of thing with some
> > other technology... Like, say, people just
> > rewriting things by hand?
>
> A build tool is part of the current EU project
> and of our plans.
I don't understand. What I'm saying is that since
you can translate python->lisp or python->python,
then maybe you can use the same technology to
translate cobol->python or cobol->java or whatever
using the cool internal technology that pypy has.
This would be a major research project and well
outside the bounds of the pypy project. However, if
I recall, there are already companies that do this
kind of thing and pypy's internals might be of use
to them and their clients. That's all I was saying.
I'm not sure what build tools has to do with that. ;)
> > Another idea has to do with the sprints.
> > I already told Holger this a while back,
> > but I think you guys have one of the most
> > impressive project management styles around,
> > and the sprint idea seems like a great
> > amount of fun.
> >
> > What if you capitalized on *that*?
> >
> > A week in europe to work on an open source
> > project? That would be an awesome vacation!
> > And to get to learn about compilers and python
> > along the way?
>
> We are doing this regularly :-)
You have sprints regularly, but are you marketing
them to companies as a reward or training for
top employees?
Last I heard, at least some of the sprints were
limited to experienced PyPy developers, right?
Obviously you don't want 500 newbies running
around, but... <shrug>
> > Anyway, it might be a crazy idea, but if you
> > could get it working, it would capitalize
> > on what you're already doing rather than
> > force you to come up with some other devlepoment
> > project off to the side...
>
> There are many possibilities but only so much
> time and focus to pursue them. Bea also reported
> quite some interest from other projects and entities
> in the EU context. We got invitations to Afrika and
> other places and i guess we pursue them :-)
Well, now that I hear the talk that there are other
benefits than speed, I'd say you'd have a much better
chance of making money if you capitalized on that.
Also, all of this is about the top line, or revenue
revenue. What about the bottom line? The bottom
line is your profit: income minus expenses.
PyPy development is very expensive.
As I said, I love the idea of the sprints. I think
they're great. They're also expensive. I don't know
for sure that they're expensive to host, but they're
certainly expensive to attend - especially for people
who live on another continent.
Lowering the cost of participating in pypy won't
put any money in your pockets, but if the goal of
the money is to have more man hours put into developing
pypy (and I don't know what the goal is, but that is
my guess) then there are many other ways you can get
more smart people working on it.
For example, I clicked on "issues" on the pypy site.
Turns out these are not just issues, but also a sort
of "to-do" list. Are any of these things that a newbie
could do without going to a sprint?
Maybe with some guidance. For example, to take an issue
at random...
#118 : "pickling of ll flowgraphs"
I'm sure to you guys, pickling of ll flowgraphs makes
a lot of sense. But to me as an outsider, I'm not sure
what it means. Does ll mean llvm or low level? And what
prevents you from pickling it? Can you write a test case
that would pass if pickling ll flowgraphs worked?
To an outsider like me, PyPy works by genius-level
black magic. So if I wanted to help out and get
ll flowgraph pickles working, I'd have a huge
learning curve. I also don't know if it's really
important or not.
So basically if I want to help out with some code
over the weekend, I look at the task here and I see
a huge learning curve and then after all that work,
I don't know if the task is really important or not.
So what I'm saying is that it's difficult for people
to pick up pypy. The impression is that you have to
wait for a sprint and then go to europe if you want
to help out. So I imagine that recruiting help is
very expensive in terms of time.
The point, then, is that one way to reach your goals
without needing people to give you more money is to
make it easier for people to give you their *time*.
I'm working on a similar problem for pirate and
at my own company, and I'd be willing to help
with making the to-do list more approachable to
newbies if you guys are interested.
Sincerely,
Michal J Wallace
Sabren Enterprises, Inc.
-------------------------------------
contact: [EMAIL PROTECTED]
hosting: http://www.cornerhost.com/
my site: http://www.withoutane.com/
-------------------------------------
_______________________________________________
[email protected]
http://codespeak.net/mailman/listinfo/pypy-dev