Project
References

Your requirements identification for the project will be largely driven by the overall goals, along with the reading of some background papers. See below for an annotated list of the reading.

    General

  1. All About Redistricting. Contains a state-by-state listing of party in control and approach to redistricting.
  2. US Supreme Court Blog for Louisiana v. Callais. Contains links to many documents of interest in the project.
  3. Data Formats

  4. Shapefile - https://en.wikipedia.org/wiki/Shapefile - geospatial vector data format developed and regulated by ESRI
  5. GeoJSON - https://en.wikipedia.org/wiki/GeoJSON
  6. Coordinate systems - You can search for information on specific coordinate systems in epsg.io.

    Sources of Data

  7. MGGG (Metric Geometry and Gerrymandering Group) - Contains lots of relevant data.
  8. DATA-USA contains government data, including political data.
  9. The Open Elections Project
  10. US Census Bureau
  11. IPUMS - A source for worldwide census data that includes US Census data.
  12. Voting Districts - US Census description of US voting districts
  13. Data.gov is a US Government resource that provides access to lots of useful data, including boundary data for Congressional districts.
  14. The National Historical GIS (NHGIS) contains summary statistics and GIS files for U.S. censuses and other nationwide surveys from 1790 through the present. It also contains state boundary data.
  15. UML

  16. Alan Holub's UML Quick Reference.
  17. An excellent collaborative tool for UML modeling is Lucidchart.
  18. UML editor - Visual Paradigm (Community Edition). Visual Paradigm is available as a free download. You can also download a PDF of the VPUML documentation.
  19. UML diagram examples - class and sequence diagrams.
  20. Coding Support

  21. Google JavaScript Style Guide
  22. Analysis/Libraries/Tools

  23. You might consider developing your Web GUI using a tool such as Bootstrap.
  24. QGIS - Free and Open Source Geographic Information System
  25. Fiona - Python library for reading and writing geographic files.
  26. Shapely - Python library for geometric calculations
  27. GeoPandas - an open source project to make working with geospatial data in Python easier
  28. PYSAL - Python Spatial Analysis Library
  29. PROJ -  a generic coordinate transformation software that transforms geospatial coordinates from one coordinate reference system to another. The Python interface to PROJ is pyproj.
  30. JTS Topology Suite - an excellent Java library that can be used for geographic calculations and manipulations.
  31. Leaflet mapping library
  32. You may find the 21 day free trial to ArcGIS Pro useful.
  33. Mapshaper - video describing a useful tool for correcting data in geometric files (e.g., non-adjacent boundary data).
  34. Algorithms

  35. When Boundaries Collide: Constructing a National Database of Demographic and Voting Statistics, Brian Amos, Michael McDonald, and Russell Watkins, Public Opinion Quarterly, Vol. 81, Special Issue, 2017, pp. 385-400. The paper provides a clear description of the issues involved in mapping census data to precincts.