Thanks!
jeff elkner
Seems like we both are in the same boat (PyKata development) :)
You should checkout http://code.google.com/p/pykata/source/browse/trunk/pykata/urls.py
That is were we define url to functions in the views.py
Right now PyKata is based on djago+app engine, and in a way django
does the url to controller magic
as seen in main.py -
# Run the WSGI CGI handler with that application.
util.run_wsgi_app(application)
Whereas when we write a normal appengine app, most of the times we
already have the url mappings in say index.py itself just below the
class that extends webapp framework.
These days people recommend to use http://bitbucket.org/wkornewald/djangoappengine/
which is under active development, while what we use right now dates
back to April 2008.
There have been discussions on porting it to web2py, if we're able to
do that then it would be really easy for anyone to join in and start
contribute in minutes. This would also help us attract new developers
to PyKata in future as the friction between getting familiar and
committing their first patch would be reduced greatly :D
Hope that helps you proceed.
regards,
Abhishek
Google has a developer's kit (SDK) that your students can download and
run a local app engine server on their own desktop. This will allow
them to experiment with our code base without actually uploading changes
to the public server. If they get something that looks good, they can
submit it for integration into our running code base. From what little
testing I've done, this seems to work very well, even on things I didn't
expect, like uploading to the datastore. I've also kept the old PyWhip
site alive, in case we need to experiment with an actual public server.
Our issues tracker has some current problems to work on, but don't let
that limit your imagination. Your students will probably have some good
ideas on things we haven't thought of. You might also have them work
on creating some more content, putting some of the problems from your
book into proper format for upload, and generally debugging the whole
process that authors will go through in contributing content to PyKata.
Even if we end up with a different format later, we will be able to
translate current exercises into the new format using the
download/upload scripts we are now working on. That is one advantage of
having our own scripts for this purpose.
If you don't have a copy of "Programming Google App Engine" by Dan
Sanderson, I highly recommend getting one for your students. It reads
well, and is more thorough than the online documentation. It even has
a chapter on Django (although we may be switching soon to Web2py).
-- Dave
It is quite likely we will get two students this summer. We need to
think about how to organize the work so they don't get in each others
way.
Rather than have two students pursue alternative proposals for
implementing the website, we could have one work primarily on building
up our content in time for the fall semester.
Building up content is NOT a coding activity. I mentioned this before on this list I believe: the "C" in GSoC stands for Code; the student is expected to upload the code he or she produced to a repository.While I totally agree that creating such content as you suggest would be a most worthwhile activity, I don't believe it would respect the spirit of GSoC.
Excellent!! Put the problems in http://code.google.com/p/pykata/wiki/UploadFormat, and we will be able to upload them to a future version of PyKata also.
If these are translations of JavaBat problems, we need to be careful. Nick Parlante has generously allow us to use a few of his problems, but he doesn't want wholesale copying.
If you can do it with Zelle's graphics module, that will make the whole thing very transparent, and easy for students to look "under the hood". On the other hand, if you need high-speed, high-resolution graphics, pygame is excellent. I used it to generate my Mandelbrot images.
It occurs to me that we do need another provision in problems: files to import that are not in the standard distribution. For instance, the Algebra II/Python class I am teaching now in a local HS involves developing a Rational class, used in linear functions and polynomials, and the polynomials and Rationals are used in the rational functions. In an organized lesson/exercise sequence, I want to be able to use earlier modules from my curriculum.
Though it got me thinking about extra pachkages, I do not understand the reference to Zelle's graphics (which I use every semester) in relation to pyKata. Zelles graphics runs in local applications via TKinter. In Crunchy they went to great lengths to develop a simple graphics package that works through Javascript, I believe, in the browser.
...I do not understand the reference to Zelle's graphics (which I use every semester) in relation to pyKata. Zelles graphics runs in local applications via TKinter. ...
The challenge is to replicate the essence of Gridworld in Python so we
have something directly comparable to the same problem in Java. Most
of the simplification will come from Python's simpler syntax, simpler
classes, and simpler ways of doing the exact equivalent of what is
done in Java.
Things get a little trickier when you start changing the design of the
problem from the "Java way" to a "Pythonic way".
I would stick with the simple convention that a single leading
_underscore means private, and not get into any half-baked attempts to
enforce privacy.