Tuesday, February 26, 2008

Development work went much smoother today. I set aside installation of Apache and MovableType and decided I could do something easier at least for now. Believe it or not it was easier -- for me at least -- to implement a minimalist blog in Django, from the database on up to the display pages, than it was to install and hook together software.

I also wrote some of the core data model for the site using Django's standard model tools. It's a site that will improve the accessibility of health-related statistics (costs, health surveys, incidence registries and other epidemiological data) by offering good search and lookup and simple clean visualizations. So I started by creating data models for data sources, report names and conditions that are tracked, and hooking those data models primitively into the Web pages where I want them to show up.

Of course development involves writing new code, but that's not nearly all of it. Even when writing new code, part of development is debugging: when you know what you want to do and have chosen a way to do it, but it's not working. Another chunk of new development time is decision-making, e.g. deciding how objects will relate or how interfaces will look. It's interesting how fast this style of development goes from decision-making to debugging and back, without a lot of time spent writing new code.

Any quick pointers on
- unittesting Django sites?
- Integrating C libraries into Django projects?
- Departing from Django DB models -- when to create one's own tables and how?

1 comment:

Malcolm said...

(1) Unittesting Django: there's some documentation on this, as far as testing outside of the browser goes. That testing support is much better in the subversion code than the 0.96 release. If you want testing through the browser, people have had success using Selenium to write scripts to test things, just like a "normal" (whatever that means) web application.

(2) As far as integrating C libraries goes, this should be mostly orthogonal to Django. Since Django is just built on top of Python, you would just use normal Python support here. So if there's already a Python wrapper, import it and away you go. If not, you'll have to use ctypes or SWIG to create the wrapper and then import.

(3) Not quite sure what you're asking with regards to creating your own tables. What are you trying to do?

Blog Archive

Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 Unported License.