Differences between revisions 8 and 9
Revision 8 as of 2005-06-01 15:56:54
Size: 3738
Editor: 66
Comment: noted that google maps idea won't work
Revision 9 as of 2005-06-02 13:14:04
Size: 3865
Editor: 66
Comment: added recording WSGI middleware
Deletions are marked like this. Additions are marked like this.
Line 18: Line 18:
 * Code that records and plays back WSGI interactions, so you can record a test session and replay it against an application.

Introduction

The idea has to be substantive enough to be... well, to be sufficiently substantive. Not all of these ideas are so substantive, so a proposal might use one of these as a starting point, or might be a combination of several ideas. Also see Python WebProgramming (there's a lot!).

If you have questions you can contact web-sig@python.org ([http://www.python.org/sigs/web-sig/ Web-SIG]), or one of the potential advisors listed at the end of this page. (But if you aren't willing to do some homework on these projects, that obviously won't look good... ask smart questions!)

See also ../WebServiceStack

The Web-Server Gateway Interface

[http://www.python.org/peps/pep-0333.html WSGI] is mostly an aspect of the implementation; many kinds of frameworks and tools could fit into that framework.

  • A WSGI file-serving application. This application should understand all the relevant conditionals (If-Modified-Since, etc), gzipped encoding, etc.
  • A proxy WSGI application (i.e., a WSGI application that echos another HTTP server).
  • A forking backend to [http://twistedmatrix.com Twisted], so that non-threadsafe/non-asynchronous applications could be run under Twisted.

  • A web-based debugger. Given an exception or breakpoint, the user could inspect local variables in different frames (different levels of the stack), evaluate expressions in those frames, etc. This would be a great place to use Ajax.
  • A Zope WSGI Server, making it possible to run WSGI applications under Zope.
  • WSGI scheme for Python's urllib(2), so WSGI applications can be accessed like remote sites.
  • A library/framework/WSGI application for a WebDAV server.
  • Code that records and plays back WSGI interactions, so you can record a test session and replay it against an application.

Spyce

[http://spyce.sourceforge.net Spyce] is a web application environment similar to [http://asp.net ASP.NET] or [http://jakarta.apache.org/tapestry/ Tapestry], in that all these frameworks allow you to create reusable components containing model, view, and controller. Spyce provides the convenience of [http://spyce.sourceforge.net/docs/doc-lang_handlers.html active handlers] without imposing a leaky event model on your application. Spyce could use help with

Other ideas

  • Fixing/improving the Python-XPCOM bindings for Mozilla (that allow you to script Mozilla in Python). The code is there, but maybe needs some loving.
  • A generic Python library for doing things with Google Maps. (For the record, there's the beginning of libgmaps.py here: [http://cvs.sourceforge.net/viewcvs.py/libgmail/gmaps/].) -- turns out [http://groups-beta.google.com/group/summer-discuss/browse_thread/thread/21789da7c473e478 Google can't sponsor this one]

  • A system to comment on pages; specifically one that is applicable to the Python standard reference. Simple commenting (PHP.net-style) would be a start; annotation would be even better. Another Ajax opportunity; though of course the server-side implementation should be in Python.

Advisors

  • Most of my own interests center around WSGI middleware, or [http://pythonpaste.org Paste] (which in practice is nearly the same thing). WSGI just about implementation really; nearly any kind of web programming infrastructure or application can fit into that. You can come up with something yourself or ask me; either way, I'm open to advising. -- IanBicking

  • I would be happy to advise anyone interested in Spyce. -- Jonathan Ellis (jonathan at utahpython dot org)

(other people who may be willing to advise should add a note here)

CodingProjectIdeas/PythonWebProgrammingIdeas (last edited 2009-01-02 20:53:17 by ool-18bbbb1c)

Unable to edit the page? See the FrontPage for instructions.