Skip to content

Instantly share code, notes, and snippets.

@sgillies
Last active December 12, 2015 08:39
Show Gist options
  • Star 4 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sgillies/4745903 to your computer and use it in GitHub Desktop.
Save sgillies/4745903 to your computer and use it in GitHub Desktop.
Candidate talks for http://foss4g-na.org/call-for-presentations/. Comments and forks welcome. I'm also open to co-presenting.

GeoJSON is Spectacularly Wrong

Sean Gillies http://sgillies.net

This work is licensed under the Creative Commons Attribution 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.

Abstract Description

GeoJSON is not just wrong, it is spectacularly [1], 45-helium-weather-balloons-and-a-lawn-chair wrong. It invites coordinate order confusion. There is no language for defining schemata. It doesn't conform to ISO 191**. It is not even a real standard! And yet somehow people seem to find it good enough for everyday use, applying it to solve real problems without suffering major catastrophes. How can this be? How can something so wrong feel so right to developers?

GeoJSON is a success because it has low technical and social barriers to entry and because it is incomplete and imperfect. I will discuss these properties and their happy consequences along with the overall strengths and weaknesses of the format, and offer some new patterns for using the format.

Keywords

data, json, schema, schemaless, semantics, design, patterns, agreement, standards, web, irony, right, wrong, english, esperanto, bad, metaphors

Audience

People new to open source geospatial, Manager

Level

Intermediate

References

[1] https://twitter.com/simoncozens/status/260298891948347392

The Zen of Python GIS

Sean Gillies http://sgillies.net

This work is licensed under the Creative Commons Attribution 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.

Abstract Description

You are probably familiar with Tim Peter's "Zen of Python" [1]. I will discuss its 20 aphorisms in the context of geospatial Python programming and propose a few new ones coming out of my experience working on Shapely, Fiona, and friends.

pycon

>>> from fiona import this The Zen of Python Vector Data Processing, by Sean Gillies

Data files can just be files. Mappings are sometimes better than classes. Feature types aren't special enough to break the rules. Functional programming is a great idea -- let's do more of that!

I think the Zen of Python matters to geospatial programmers and will explain why it does and how to follow and use it for fun and profit.

Keywords

python, functional, programming, data, design, api, classes, types, simplicity, complexity, safety

Audience

Technical / Developer

Level

Intermediate

References

[1] http://www.python.org/dev/peps/pep-0020/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment