Author archives: Mike

RSS feed of Mike

PyCon Dress Rehearsal in 1 week!

The PyCon Dress Rehearsal on the 16th at PyGTA is now slightly less than 1 week away.  3 presenters.  Listen, give feedback, enjoy, rinse, repeat, rinse, repeat, chat.

[Update] Unfortunately, Greg Wilson had to cancel, but that means more time for the other two!

Best pattern for "captive" servers in testing?

So I'm wondering what other people do in this scenario:

  • You have an executable that provides a (networked) service
  • You want to test against the executable's service
  • You want to be able to start/stop the executable during the tests
  • You want to be able to run multiple executables between test suites (i.e. with different configs ...

Continue reading

ab is a cruel mistress

Got started on testing performance tonight for ChatTrack.  Wow.  Nowhere *near* where it needs to be, not even on basic page rendering... seeing something like 14.5rps sustained on 1000 requests with 100 concurrency, and there's significant numbers of requests taking more than 4s to reply (eep!).  And that's on the laptop, the poor little ...

Continue reading

Specs can really suck the life out of you...

Just spent hours tracking down the "DOCSIS TLV" config-file format and implementing it.  This is one of those things where the project spec says "do what that spec says to do", pointing you at a deprecated version of the big spec, then the updated version of that spec says "do what this other spec says ...

Continue reading

Quicky testing TFTP Client (and server) with tftpy

To run a server (easy_install tftpy first):
from tftpy.TftpServer import TftpServer
TftpServer( 'tftp' ).listen( 'localhost', 8069 )

Which serves up the files in the 'tftp' directory on port 8069 (69 is the standard tftp port).  To download an existing file from the server:

from tftpy.TftpClient import TftpClient
TftpClient( 'localhost',8069).download( 'exists', 'downloaded.txt' )
which should download ...

Continue reading

Two Weeks to PyCon Dress Rehearsal @ PyGTA

Mark your calendars.  Mark your icals. Mark your minds.  3 PyCon presenters will present at the regular Greater Toronto Area Python User's Group (PyGTA).  Real-time feedback tools, a chance to chat with the presenters and give feedback after the talks, and a rollicking good time for all.  7pm -> ~11pm Tuesday the 16th.  Be there, ...

Continue reading

Linux is kinda fun...

You're on a Linux box.  You want to set up an unprivileged user (yourself, maybe) to be able to run on port 80... how do you do it?  There's actually quite a few ways, some that use permissions in security-focused versions of linux, some that have root run the process then shed privileges (the traditional ...

Continue reading

Didn't even think to enable epoll in Twisted+TG

Enabling the epoll reactor in Twisted is a two-line change:

from twisted.internet import epollreactor
epollreactor.install()
from twisted.internet import reactor

From there on the app is unchanged.  I didn't have time to really test that today (paying work and all), but I don't really expect to see much of a change.  EPoll is about scaling up, ...

Continue reading

Testing and Compressing and Timing, Oh My!

Finally got a URL set up for the little chatting application.  And actually sat down and played with it for a while with the 3 browsers I have handy (Firefox 3.5, Chromium and IE 8).  Good news is that (after having to fix a known jquery-on-ie bug), it all seems to pretty much work.  Bad ...

Continue reading

PyCon 2010 Schedule is Up

How did I miss the announcement?  Looks like I'm the last talk on Saturday afternoon.  Greg's talking at the same time on Basie, Ned on Testing.  Hrm, maybe don't need to worry about my server melting.  Anyway, the schedule is up, now we can all start planning which sessions we have to give ...

Continue reading