-promotes visibility & transparency.
-is efficient in terms of cost & time to setup.
The biggest drawback is that it does not leave space (mental, sound & time kind of space) for flow to happen easily. Hence you will see productive programming start in late afternoon or lots of head phones. This is less so in shared rooms than in Open space.
Personally I prefer silence during work and have worked in startups with Cubicles, Office(great view of Mt. Rainier), Shared rooms & Open space and would rate individual offices as worse of the lot due to the walls, real and virtual.
Use Charlie Munger‘s “Mental models” method as another approach, they are covered in this pdf http://www.focusinvestor.
Find out & use
-details of python REPL including dir & help command
-the Python coding standards, PEP 8 & Python API documentation standard, PEP 257.
-Code to write: Runtime object alteration, even if you do not use it latter. Write an iterator.
-the Python standard library including string, date, persistence, regex, etc.
-create a python package & upload to pypi.
-write some unit tests with unittest\PyUnit\nose, http://docs.python.org/li
If you prefer a book, go through “Building the real time user experience” by Ted Roden
For Ruby I have also seen references to orbited & juggernaut.