Resurrecting a django project in python 2.7 for 3.8

Pitfalls and euphoria updating my GeoDjango 1.11 PhD project to Django 3.0

Griffith S Rees

Django GEO and GIS Git Testing legacy-code

See in schedule


Describe the process I went though to return to and finish the code I wrote for my PhD modelling the geographic growth and decline of a Bulletin Board Systems (BBS) community called FidoNet. I had to leave the project for 2 major surgeries and finally returned to finish, validate the results and present a paper (accepted for the Sunbelt conference in Paris this summer… we’ll see if that still happens).


* 5 min - Introduction and background on the research topic and my health situation
* 5 min - Examples of reading and documenting and adding unit-tests to the code to understand what I wrote. In some cases I had meticulously docstring-ed and while others were almost incomprehensible. Stress the value of PEP-8.
* 10 min - Look up the advantages and disadvantages of upgrading from python 2.7 to 3.8 and the excitement I needed to have the energy to keep going
* 5 min - upgrading from Django 1.11 to 3.0, including backwards incompatibility and changes to GeoDjango (some reference to upgrading from PostGIS 2 to 3)
* 5 min - Considering the options of Futurize and Modernize and why I went with Futurize
* 10 min - Pitfalls and examples and how I managed git forks throughout
* 5 min - Conclusion, thoughts and suggestions

If accepted for a 30 min talk I would skip the python 2.7-3.8 differences and documentation details and focus on the Django/PostGIS stuff

Type: Poster session (45 mins); Python level: Intermediate; Domain level: Intermediate

Griffith S Rees

Sheffield Methods Institute, Sheffield University

Dr Griffith Rees is a Research Associate at the University of Sheffield, currently studying the network of board members of institutions funded by Arts Council England. A (still alpha) library for that project is currently on PyPI:

He has a DPhil in Sociology from Oxford University and was part of the Complex Agent-Based Dynamic Networks (CABDyN) research group. He hopes to research how people collaborate creatively.