Category archives: Snaking

Discussions of programming, particularly of programming Python

RSS feed of Snaking

Think that's enough for today (Dispatcher-based code mostly working)


Next step is to hook up the simple SVG diagraming code to generate a real-time graph of current status so I can be sure what I'm seeing really is what it appears to be. I've got the core part of the operations "graph" (sort of a cross between a state diagram and a flow chart) ...

Continue reading

Think that's enough for today (Dispatcher-based code mostly working)


Next step is to hook up the simple SVG diagraming code to generate a real-time graph of current status so I can be sure what I'm seeing really is what it appears to be. I've got the core part of the operations "graph" (sort of a cross between a state diagram and a flow chart) ...

Continue reading

OO versus nested_scopes in Twisted code (OO wins (not to spoil the suspense or anything))


So, I've been figuratively staving in my skull with tracking down the weird hanging cases that have been showing up in the ping scanning mechanism. For the most part, I've been storing the state in either explicitly passed arguments, or using nested scopes.

Having reached a point where the whole darn thing was just a ...

Continue reading

OO versus nested_scopes in Twisted code (OO wins (not to spoil the suspense or anything))


So, I've been figuratively staving in my skull with tracking down the weird hanging cases that have been showing up in the ping scanning mechanism. For the most part, I've been storing the state in either explicitly passed arguments, or using nested scopes.

Having reached a point where the whole darn thing was just a ...

Continue reading

Gack this is slow (So many methods, so little progress)


Still working on the "randomised" ping mechanism. Spent close to an hour with the darn thing hanging because of a logic error where something that was originally synchronous was converted to being asynch, but I forgot to alter the client code in one place, so it would just sit about re-scheduling itself every 30 seconds ...

Continue reading

Gack this is slow (So many methods, so little progress)


Still working on the "randomised" ping mechanism. Spent close to an hour with the darn thing hanging because of a logic error where something that was originally synchronous was converted to being asynch, but I forgot to alter the client code in one place, so it would just sit about re-scheduling itself every 30 seconds ...

Continue reading

Standard test fixture specifying database records? (Frustrating writing these things ad hoc all the time)


Trying to be a good little Agile/Extreme programmer, I've been writing a test suite as I work on the ping scanner. The "Virtual Plant" stuff is nice for modelling the whole network-level plant, that is, it makes the SNMP queries all seem to find modems and that kind of useful thing, but it doesn't help ...

Continue reading

Simon's party tomorrow (After rebuilding JoAnne's machine...)


Simon is a neat chap I met at PyGTA and UU, rather fun to talk to all-in-all. He runs a little company, has a couple of neat technologies he's trying to market, and is rather active politically. He shares my love of throwing parties, so tomorrow I get to go out of the house ...

Continue reading

Think I should sleep... (Goes much faster when you're not spending all your time on stupid errors)


Well, that was markedly less frustrating. Got the next few boxes on the map worked out, though I haven't figured out an elegant (and efficient) way to make the hierarchy update. I'm actually considering using a single query for each node in the hierarchy so that the group-watcher will reload its own children every X ...

Continue reading

Heisenberg's revenge (Crude measurements mess up the test suite)


So, for the past 8 hours I've been debugging an error that just makes no sense. I commit changes to a record to the database (using the background thread, as required by twisted), and the record isn't committed a few seconds later. Ages spent assuring that the commit actually occurs, that a refresh is done ...

Continue reading