I asked a question on this forum back in April and two users were incredibly helpful (giles and another kind fellow). I implemented your suggestions and my 'script' has been accomplishing what I intended it to. However, as I look to expand my knowledge/skill set of OOPL's and Python I wish to add more robust functionality to my program. I had written a test case for the Selenium RC web driving framework and the majority of this code resided under a single function. Now, after adding more capability this one function has gotten quite long and with multi-tiered branching indentations to boot. For instance, I am thinking of having a function called 'untilTable()' that has the code which refreshes a resource page [.aspx] until an event triggers a table to be generated on the page. Then, upon that condition being satisfied the script is to call another function named 'rowCount()'. 'rowCount()' gets and stores the amount of rows in the table. Without going on too much further, does anyone have any general guidelines as to when one should start or end a function? I.e. How much should you try to accomplish within one function before calling another function? Any help will be appreciated, thank you.