Category archives: Snaking

Discussions of programming, particularly of programming Python

RSS feed of Snaking

Templated PyDoc-ish Tool?

So I'm once again trying to fix the PyOpenGL/OpenGLContext pydoc stuff.  They've been using a hacked up version of pydoc for years (with a brief excursion into epydoc with extensions) and somewhere along the way the changes to the structure of the libraries means that the output is now basically useless.  The key here is ...

Continue reading

Shader Tutorial Cleanup

Beginning work on cleaning up the introductory shader tutorials.  Basically separating out the various component calculations into reusable functions and making it possible to use generic scenegraph objects for the geometry to be displayed.  Working on that because it really seems that beyond a certain point there's diminishing returns in working on the shadow tutorials ...

Continue reading

Cleaning up Shadow Tutorial Code

Grabbed some time this evening to clean up the shadow tutorial code.  It's now refactored into reasonably small methods, supports N lights, uses the cache to store textures/fbos, and generally is a lot less messy.  I'm currently debating what the next step in the tutorial should be.  My current thinking is to use shaders to ...

Continue reading

Adding user-authentication to your Twisted web-site (Another HowTo for undocumented features...)

Following along from the recent post describing how to make your Twisted web-server use SSL sockets, a slightly more involved HowTo describing how to setup HTTP authentication and Twisted's cred module. First, before you say anything, yes, this (using Nevow to guard regular twisted.web) is the "right" way according to the Nevow developers (Nevow is ...

Continue reading

Minimal example of using twisted.manhole (Since it took me so long to get it working...)

Okay, so you want to take a Twisted server and provide a way to execute arbitrary Python code within it while it is running. A few moments of googling gives you the information you need, namely that you want to use the twisted.manhole package. A few minutes more and you come across what seems ...

Continue reading

HowTo: Create an SSL web-server in Twisted (Crude approach, but it works...)



The Twisted web howto doesn't mention the fairly common task of creating an SSL-secured communications channel for a web server. The process of doing so is fairly simple, but it requires tracking down a few pieces of information, so I've collected them here:

First things first, to create an SSL server, you need a private ...

Continue reading

Framebuffer Object shadows

I also added a FrameBufferObject implementation to the "special effects" tutorial path for OpenGLContext. This uses the convenience wrapper for frame buffer objects which I just added to PyOpenGL. The convenience wrapper just makes the ARB and EXT variants of the entry points available via alternates and provides a checkFramebufferStatus function which implements the ARB ...

Continue reading

Research in Action

The other event of the day yesterday was University of Toronto's Research in Action show. This is a booth-based presentation of various research, whether formal or informal, being done at the University. My interest is primarily in figuring out how to:

  • Use Open Source to make it easier for researchers to make their work relevant ...

Continue reading

Code-dojo seemed to work well

We decided to use the 21-line spell checker as a sample case for playing with Cython last night. We immediately ran into a few uses of not-yet-supported features (at least, in the default Ubuntu version of Cython), things like lambdas, generator comprehensions, etceteras). We spent a while playing with moving code about in modules to ...

Continue reading

Code-dojo on Cython @ PyGTA on Tuesday

PyGTA this month is going to try a code-dojo with the goal of speeding up some Python package up using a Cython extension module. We'll decide which module to speed up at the meeting, but if you have suggestions, would like to hear them. Should be a (pure) Python module which could benefit from C/Cython ...

Continue reading