Progress with Schematronic has been moving right along, things are progressing nicely. Here’s a quick update:
* Trying out SQL Relay’s Python API, but haven’t gotten too far yet
* Using Beaker for sessions
* Psyco helps a little
* Added some thread locks to flow
Its also worth mentioning that the newer version of mod_wsgi is really nice. The ability to group processes is very cool.
Schematronic is moving along slowly and steadily. I’m glad I decided to keep it more Nexista-ish as opposed to Cocoon. I’m also leaning towards using the original libxml2 and libxslt libraries. They aren’t “pythonic” as they say, but I’m more familiar with the standard interfaces, such as those in the xml / xslt api’s for perl and php.
I still have a lot to learn when it comes to python, and I’m pleased to say that my work on Nexista and Aortica has really helped a ton, and it has already spurred new developments with schematronic. It took me about a week and a half to get Aortica “usable” (its still missing auth, and bunch of plugins, and a bunch of actions, but it works!), so I’m hoping to get an operational schematronic out in the next week or so. Today I’ve managed to get the xsl handler to transform flow, as well as get config to parse the config file.
Speaking of configuration, while Aortica is all about mod_perl2 and Nexista is all about PHP5 and mod_fcgid / fastCGI, Schematronic is all about python and wsgi. Therefore its going to have its own little configuration idiosyncrasies. Not a big deal, just some small decisions that will have to be made at some point.
Major to-dos:
* Database abstraction - pretty much decided on using adoDB, but I’d love it if I could find something simpler like DBI / MDB2
* Sitemap / Fence parsing and dispatching
I’m also checking out adoDB as a database abstraction layer in python. There is a PHP version of adoDB but I’ve never used it, mostly stuck with metabase / MDB2.
I’ve added two simple scripts to the code base to use as evaluation, so I should have some more experience to report soon.
I’m looking at SQL Alchemy as the first data source connector for schematronic. At first I thought it tried to do away with SQL statements, but it appears like it can work with them OK.
http://www.sqlalchemy.org/
I’ll investigate it some more and post my notes when they are ready.
Right now I’m definitely leaning towards simply porting Nexista to python in the form of Schematronic, instead of trying to blend nexista with cocoon, as I had originally planned.
I have a hard time understanding Cocoon because it is so big, complicated, and written in java, a language which I have very little experience with.
Furthermore, the author of pycoon, Andrey, seems to have a good understanding of python and cocoon, whereas I am learning python, but have a good understanding of nexista.
Once I’m done with Schematronic, I’ll be more familiar with python, and will then hopefully understand pycoon better. I should also have another look at popoon, as it is a PHP port of cocoon. I’ve looked at it before and unfortunately I got confused pretty quickly. Maybe this time around I’ll be able to understand it better as I’ve learned a little bit about cocoon while exploring pycoon.
Nexista
I installed mod_wsgi and really like it a lot. Its a lot like mod_fcgid in some ways, and is really helping me experiment with serving python-powered content. Cool!
When working on Nexista, I started to architect applications like PBooks so that each main part would have a separate entry point. For example, to login, you would access the auth.php script, and the various functions and resources could be accessed with keys, like auth.php?nid=login. Once you logged in to the application, you would interface with the pbooks.php entry gateway, and access its functions and resources in the same manner.
This jives very well with mod_wsgi and the plans I have for Schematronic. I’m still on the fence about how much I want Schematronic to be like Nexista or Cocoon / Pycoon, as I’m more familiar with Nexista, but Cocoon is bigger and has more support.
Schematronic is my first python application, not initially destined for production use, instead a paythway for learning python.
It uses CherryPy and a lot of ideas from pycoon and nexista.
Schematronic is bionic and you know you wanna tonic. YUM!
Latest Comments
RSSNo comments