Hi,
is it possible somewhere to find an overview of how to work with geographical data in Julia (i.e. the JuliaGeo organisation and allies), and what functionality is implemented? I cannot seem to find any documentation, but the group running it is so strong I’d expect this to be quite progressed
Thanks a bunch!
The current state of libraries (that I’m aware of) is listed at https://github.com/JuliaGeo/meta/wiki/Existing-Libraries.
When the organization first started, there was a general consensus for development of wrappers around core C libraries to have priority in the beginning. However, it remains unclear what’s the best way to work with geospatial data in julia, and we’ve decided to leave it up to developers to experiment and build up their own packages (if they know how to work with the corresponding C-libraries). Based on my current understanding of the volunteer efforts of Chris, Sean, Martijn, Fabian and others, I foresee this as the slower but more sustainable way for the community forward.
Next Steps
Now that the core wrappers are in place, it is perhaps worth revisiting the priorities of the organization, to provide a better end-user experience. In my opinion, this will benefit from
- a clear/concrete vision of what that means,
- a new set of developmental goals to get us there, and
- a willingness from volunteers to contribute.
I have some ideas in mind on how this might pan out (see e.g. maptimeboston-julia slides), but they’re not fully fleshed out and are subject to changes, so they’ve been confined to experimental packages (e.g. ArchGDAL.jl, GeoDataFrames.jl, and SQLQuery.jl). The main idea is to provide a way of working towards abstractions that are backend agnostic (so that you can use the same code to work with e.g. both a sqlite+spatialite, and a postgres+postgis setup).
Development, however, has stalled in part because
- (i) there isn’t yet a clear geometry model/interface to work with (see e.g. [1] and [2]), and
- (ii) the tabular interface for relational data is still being worked on (see e.g. [3] and [4]).
Moreover, I don’t have the bandwidth to both experiment and get packages to a state where they’re friendly enough for other users yet. So in the meantime, it’s probably best to acknowledge that the state of the packages aren’t usable enough, and for developers to rely on the wrappers for the core set of C-libraries (around which the JuliaGeo community has invested much effort).
Thanks, this is an extremely useful overview – I had some idea of this (e.g. I remember seeing the slides from your Boston talk) and so what I really wanted was to check in with the current state of the development and be able to follow the progress going forward (to see when I could start transitioning ). It is absolutely clear I wouldn’t expect this to work on a large scale before the DataFrames format has stabilised.
As much of the new development is in packages outside of JuliaGeo, the links you provide here are extremely useful.
BTW I love the idea of backend-agnostic abstractions.