How Far We Got
December 18th, 2008
There’s a quote (attributed to various people—I’d welcome a pointer to the original) to the effect that if you show me your code, I don’t know what you’re doing, but if you show me your data structures, I’ll understand. To figure out just how far our students got rebuilding DrProject on top of Django this term, I asked one of them to generate a schema diagram for the database tables. The result, included below, was created by running the following commands in a virtual environment:
$ svn checkout http://django-command-extensions.googlecode.com/svn/trunk/ django-extensions $ cd django-extensions $ python setup.py install $ django graph_models -ag > schema.dot $ dot -o schema.png -Tpng schema.dot
(Note: I moved the three tables floating in the bottom middle from the upper right corner to make it more printable.)
“Show me your flowcharts and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won’t usually need your flowcharts; they’ll be obvious.”
— Fred Brooks in “The Mythical Man-Month”
I believe that the original one is by Frederick Brooks in The Mythical Man Month:
“Show me your flow charts and conceal your tables and I shall continue to be mystified, show me your tables and I won’t usually need your flow charts; they’ll be obvious.”