Open AgTech – a prelude

Murrumbidgee river at Scottsdale – closest to an AgTech image I have!

I recently attended to a workshop on AgTech innovation, hosted by the Canberra Innovation Network and the US Embassy. It was a fun and really useful day out – hearing stories about what drives the agriculture sector, what they see as innovative, and how niches in the sector are filled by innovators literally ‘on the ground’ and also tech people with ideas coming in from the outside.

I’m not a rural person. Over my life I’ve had a few snapshots of life outside the city – and gleaned from those was that people form communities. Communities of practice, communities of support, communities of innovation. People on the land have done this forever.

In the workshop, this basic concept was validated – forming communities was a huge theme!

A second huge theme was ‘farmers are busy running their business’; and don’t have IT support teams in the field. The biggest competitor to tech widgetry was ‘we’ve done it this way for 130 years…’. The next biggest competitor was lack of local support; and/or really bad user interface design, driven by almost-nonexistent interoperability. Many widgets just don’t talk to each other, which is a giant pain in the grass.

Pulling out a third theme, people who make their living farming don’t like salespeople. To wrap that into tech parlance, there’s heavy skepticism that some new platform or widget is going to make their life better – innovation needs to be proven, it needs to be understood, it needs grassroots input and adoption.

Interestingly, some research was presented about crop farming being fast to take up new technology but slow to actually exploit it – whereas animal-based farming was slow to take on new tech; but quick to exploit it when they did.

All of this is seasoned by a liberal sprinkling of agronomists, startups, and big old companies all trying to make a buck. Apparently AgTech is going to be worth astronomical amounts in the future (yes, we’ve all read those kind of reports…).

…excuse my skepticism. Merging technology and agriculture actually go hand in hand – they’ve always done so (recall that we only gained agriculture due to our ability to develop and share technology)!

What surprised me most about everything there, though, was a lack of understanding of open systems – despite ten thousand years of sharing ideas in order to make agriculture happen, grow, and create how we live today. The sale of Red Hat to IBM was cast as ‘hey, you can make money with open source things’.

…but we all know that. Myriad businesses thrive on open systems (see Planetlabs, for a media-worthy example). Entire organisations are built on the construction and promulgation of open standards (the Open Geospatial Consortium, for example). Huge communities of practice have emerged around open software (see the Open Source Geospatial Foundation). And importantly, these communities emerge – in some cases almost spontaneously! Grassroots adoption counts for everything.

I’ve been woolgathering (pardon the pun) about this question ever since:

What is the real power of open systems in the context of agtech?

The open source business model seems antithetical to the whole startup/venture ecosystem – you mean to give away all the IP? Of course!

…but resonates extremely well with the small window I have into the agricultural community. Open systems allow communities to grow. Open systems allow and encourage ‘field innovation’, which the agricultural sector is famous for! Open systems work to engage and build local communities of practice. Open systems lower financial barriers to implementing or creating bleeding-edge tech solutions. Open systems disrupt vendor lock in, and power interoperable systems from the ground up (not as a bolt-on afterthought!)

This works for knitting, welding and cake baking. It can work for technology too! We know this. It’s proven in geospatial business. It’s proven in high performance computing (that famous recent sale I mentioned earlier). Open source software underpins the entire internet! Unlike Chook Coin, it’s really no joke.

I will boldy contend that the future of AgTech is open. To meet long-term planetary challenges requiring rapid change in how we think about food production, supply, open standards and open systems are the only way to generate the scale of innovation; and harness the diversity of thinking required to construct a sustainable future. The challenge for the AgTech industry is how to break down models which worked well for so long, but won’t soon.  Of course, the big stick of risk management and liability looms over everything.

However – it’s a known challenge, we can see the size and scope of it, we can mitigate.

The wicked problems – the unknown unknowns ahead are far more important and difficult. These require exactly systems which allow for as many collaborators and innovators as possible to engage, and work out myriad solutions without needing to wait for a vendor update cycle. One of those wicked problems is an open approach itself! How can a community developing serious tech be managed effectively? It’s an issue even in long-standing communities.

I’m really looking forward to AgTech Innovation workshop 2.0, the conversations which happen between now and then, and the conversations to come.

Of course, I’d love to talk to you more about building an open AgTech future. While right now now I’m a tech guy blowing smoke – and writing is easy – I have a hunch. I think the key phrases ‘open standards’, ‘open systems’, ‘open source’ are coming to the AgTech conversation. In order to achieve the incredible dreams of the agricultural community and keep innovators in the fields, they need to. And of course, you can do whatever you like with them.

Finally – stay tuned, there’s an incredible (we think) open source AgTech project in the brewing… nothing talks like a proven concept, right?

FOSS4G 2018: wait, what?

In late August I went to FOSS4G2018, held in conjunction with the HOTOSM summit in Dar Es Salaam, Tanzania. I’ve been privileged to attend three of these events in a row now, and this one is incredibly difficult to wrap up neatly and put a bow around.

Why is this so?

Phew. The first question is where to even start? To begin with, it was held in the city of Dar Es Salaam, on the east coast of Africa. Flying in on my comfortable 777-300 I literally had no idea what to expect – it was my first visit to the cradle of humanity.

And wow. Straight off the plane, Africa launched itself with an exuberance I was completely unprepared for.

…which set the scene for the week ahead. I’d arrived early, because I was presenting a workshop about PDAL on the first day of the week. This was a story in itself, with my co-presenter blocked from travel literally at the last minute!

I’m digressing. Back to linear time storytelling. I felt completely overwhelmed by Africa to start with, and then – that state continued. So let’s wrap some boundaries around it using days.

I had Sunday to get my bearings both in Dar Es Salaam and the PDAL workshop. It’s the first time I’ve given it, so the usual nerves were well and truly entrenched. I set off toward the conference centre from my hotel; and was greeted by a jovial rastafarian who named himself Picasso. I wandered around with him for more than an hour, learning about Dar, about Tanzania, about how people live. He was joined by a friend of his, and at some point, I knew it was going to turn into a transaction.

Sure enough, some paintings appeared and it was time to do business. I bought one – it seemed really good value, we’d had a great chat about all kinds of things. My Australian conservativeness says ‘ah you were hustled good!’; but my human inner core says ‘well, that was meant to be – you learned a lot in that time, and connected with other humans from someplace completely foreign, and you helped each other out in ways which are both immediate and not so immediate’.

Hakuna matata, says the universe.

So I returned to my wandering, found the conference centre then went back to prepare my workshop.

…which went well, making sure everything mostly worked right up until the post-Geochicas icebreaker event, which happened late-ish at night in a rooftop bar – the to-become-infamous High Spirits lounge. First, I urge you to read this article about the importance of the Geochicas women’s meetup. Next, to the men who turned up – please note how it felt to take that step and respond to the invitation. Often, by default, tech and other events are ‘male focussed’ – so if we felt somewhat overwhelmed, remember it. It’s a reminder of how minority groups can feel all the time.

So I stayed up too late (of course) meeting the Geochicas and friends.

The workshop

Monday bought the PDAL workshop. With 20 people in the room I was terrified I’d do the material no justice at all – especially given a last minute halving of the facilitating team. But we made stuff, people learned things, I have a lot of feedback to work with, and can help improve future editions of the workshop material and my own workshop presentation skills.

One of the awesome things about running workshops is that the room is filled with people who have different problems to the ones I work on all the time. It’s an amazing exercise to both deliver information which is hopefully useful; and also come across challenges ‘in flight’ to try and work with. I was incredibly flattered to see people applying their new knowledge more or less straight away!

If you’ve ever considered a workshop and thought ‘well, I’m not ready yet..’ – then do it! Your use case is your own, you use tools in a way few if any other people do, and your experience is extremely valuable to the community. You’ll also learn new tricks in the process.

The rest of my day was spent in an OpenDroneMap workshop; and later that evening, checking out the Badminton society for an informal social dinner.

This was an experience in itself – it actually was a badminton club! But we could sit out in a courtyard and order local beers with incredible indian food. The night passed, conversations were had, walking buses took people home. #community

Tuesday. A day off.. or not.

Tuesday – I had planned a day off but went to see a HOTOSM discussion about issues faced by women mapping in Africa. It was a fantastic discussion, great to sit in and listen to. As I wrote notes, I realised many of the issues faced by women in Africa also occur in Australia. However, for African women the threat of physical violence is far more real; with fewer support mechanisms – especially further from cities.

I learned about women mapping for basic infrastructure – for example where safe places are; or where people can go for help. These essential services, things which create a civil society; are being built at a grassroots level. Amazing stuff! To repeat a link, I urge you to read this article, which recaps a lot of the discussion – what can we do to better support female mappers. I think these can apply in any country!

Afterward, a small crew of tall white people descended on the Kariakoo markets. It was intense! A bustling street market precinct full of life and people and everything. I bought a coconut (nearly a ritual by now.. the daily coconut) before we escaped, completely overwhelmed.

This was followed by an icebreaker function at … the Badminton society. So more curry and beer and amazing conversations. Late. Into. The. Night… and walking buses for whoever needed them.

Wednesday – and the conference proper!
By this point I was much relieved, my job done and now time to settle in and listen, learn, and talk to people. I was also feeling OK about walking around Dar Es Salaam – I’d opted to travel by foot every day, roughly 20 minutes walk through the city centre. On foot, the city is quite incredible – it opens gently like a flower in the morning, hums madly all day, and gently settles into a long evening.. with people out on the streets talking, mixing, eating until well into the night. An interesting hustle, but in a rhythm; and a purposeful pace.

So the conference. A most amazing opening address from the Tanzanian minister responsible for the Environment, January Makemba. Pushing heavily into the ‘why’ of mapping; and who we are as an open source community. We do it to make the world better, and we are socially conscious. I agree! I hope you do as well!

For the rest of the day, Eric Lemoine educated me about managing point clouds in Postgres-pointcloud and the LOPoCS/itowns stack; then Steven Feldman provided an insightful reflection on open communities and how we can (always) strive for better. Next, Peiro Toffanin and Dakota Benjamin showed their amazing work on OpenDroneMap and sharing results to OpenAerialMap. I finished the day with another OpenDroneMap presentation – Tomas Holderness deploying ODM on an AWS stack using a simple Python SDK.

At a break, I went out and bought a coconut to drink.

My mind thoroughly overwhelmed, the conference dinner was up next. And then, there was more mind blowingness. We were herded into buses, and whisked off to the dinner venue with a police escort! Once there, we talked, saw some incredible dance and drumming performances, Astrid Emde won a Sol Katz award and then we danced.

Gala dinner views

…finally, we were bussed back to Dar Es Salaam, and kicked back with beer and conversations. Late. Into. The. Night.

Thursday – peak overwhelm. Peak what? You can’t peak yet…
Thursday started with the OSGeo AGM – introducing the first Oceania-based FOSS4G event since 2009!

…then a ‘pub quiz’ – which actually let us explore some of our biases about the world and how it is represented.

I chaired a session with some talks I would never have prioritised – which is always a fantastic exercise in serendipity. The talks were excellent – reconstruction of historical buildings in their geospatial context; open source routing engines; gRPC and protocol buffers for geospatial service building; and machine learning for image recognition.

Then back to the plenary room for a keynote delivering an overview of the Zanzibar Mapping Initiative – which you should definitely check out.

And of course, a daily coconut.

B2B rooftop bar moar dancing and networking.. Late. Into. The. Night.

Friday… getting there…
I saw Tom Van Tillburg create city scale models from PostGIS and PDAL; and peer-to-peer pointcloud sharing systems from Thibault Mutabazi. I learned about an application for ‘cycling mentors’;  the application of open source geospatial software in the World Food Program’s data infrastructure; and how the Copernicus program is integrating open source software in it’s infrastructure. Finishing the day, and the event, were two thoughtful and powerful keynote talks on what diversity, inclusion and community mean from Angela Oduor Lungati of Ushahidi, and Maria Arias de Reyna –  OSGeo president.

Sometime that day, I found a coconut seller and bought a coconut.

And once more, a bit of dancing then discussions Late. Into. The. Night.

*boom*. By now, my mind was properly blown. Time for a holiday?

Zanzibar and recovery/unpacking/days off.

Dhows in the distance.. from the Stonetown patio

…to Zanzibar. the perfect place for a well earned rest, right?

Yep. but nope.

My plan for three days of no internet, yoga, and deep relaxation on Zanzibar were broken. They started as they meant to continue with a quick trip to the OSgeo code sprint and a mad dash to the ferry by tuktuk, ably assisted by Nils Hempelmann. I’d also invited part of the ODM team to stay at the airBnB while they needed to. So we talked shop, ate, drank coffee, drank spiced tea, ate more curries, went to the night markets, concocted more ideas, thought about dancing, slept for more hours than the past three days combined, went to a beach, swam in the ocean, drank beer, talked more shop, became locals at a seafront café with amazing masala tea, went on a spice tour, talked shop some more, tried to organise helping out some drone workshop folks with accomodation, danced, drank more beer, and finally, finally, finally squelched off to the Zanzibar airport and the way home.

I don’t really apologise for the density of that text block – that’s exactly what it felt like.

In fact describing the whole week would have fit way better with a massive blob of unpunctuated text! Like a firehose of consciousness, being directly injected…

By now – my train was thoroughly wrecked and even ten hours in Dubai airport working on the FOSS4G SotM Oceania conference seemed sane.

Do not do this – do not spend ten hours in an airport working. It is a batshit crazy idea! 

Be clever and book your flights more carefully.

In conclusion
I have probably left you with an impression that FOSS4G conferences are pretty insane, and so are the people that go to them (mea culpa).

What I hoped to transmit is that this event is actually an incredible week of learning and communication. For a geospatial practitioner, or researcher, or coder, or even anyone just interested it is an amazing cornucopia of knowledge and experience.

There is intense technical discussion, there is intense reflection on the community and it’s makeup and actions.

It is also intensely social. I am the wrong person to comment on inclusivity and social happenings at these events, because I see through an extremely privileged lens. I can say that I do highly appreciate the difference between, say, socialising at FOSS4G and socialising at, say, any other tech focussed event. There is a tangible difference between your average industry spatial thing and FOSS4G, which January Makamba  summed up well in his introduction:

look at this room – it’s beautiful!

…to a room full of vibrant colours, genders, cultures and ideas. The Dar Es Salaam committee worked on the mission ‘leave no one behind’ – and they did an amazing job!

It is not a perfect community – however, it is prepared to reflect on itself; and act on those reflections. There is support and respect, people who go out of their way to make walking buses so others feel safe to get to their accomodation, people who volunteer their time and energy to create a better world. FOSS4G is a week – one week in the year – where you get to catch up on half conversations that go on all year, to find new connections and strengthen old ones. To learn, to give, to receive, to grow. As a professional and as a human. It’s undeniably an incredible privilege.

FOSS4G in 2018 stood out because of how far it went to encapsulate all of these things.

…and it’s not over yet. You can see slides from presentations; and session videos where available – opening and closing sessions at the time I am writing this. I hope these collections grow!

Asante Sana, Dar Es Salaam; and all the people who make this community; and all the wonderful people I spent hours discussing ideas far beyond geospatial software with.

Finally, a massive thanks to Synthesis Technologies for letting me spend a large chunk of a small travel budget to get there!

Here’s hoping I can make it to Romania for the 2019 edition…

When one door closes, another opens

I’ve wrapped up full time work for Synthesis Technologies – we had a fundamental disagreement about my role in the company. Which is OK – this happens in any job.

After 12 months, we had a good idea of where we worked together well and where we didn’t. It became obvious that a long term relationship was never going to be viable, and we nutted out a solution before any vesting arrangements fell into place.

I’ve got some reflection to do on whether my own ego got in the way of a good thing; and hopefully team Synth have some reflection on how they engage with future domain specialists.

I’m subcontracting back to the company to complete a current project, so as the Synth door closes, another opens – I’m available for consulting work via Spatialised, and would love to hear of any projects you need a hand with. More news about other background projects will also come soon…

All the best, team Synth Techno – and thanks for the experience!

Business penguins

I’ve been to Antarctica four times, and seen a lot of penguins. I’ve also worked in various places for more than a couple of decades now, and seen a lot of penguins. I am also trained in behavioural psychology – so I observe things about behaviour and see patterns. I can’t not!


One of the most amusing types of Antarctic penguins is the Adélie.

It has some really interesting characteristics. They travel in packs. When they pop out on the sea ice they are the boss of everything. Roaming around in packs like they own the place; all dressed up and no place to go.

This struck me as exactly parallel to, say, walking around the centre of Sydney (or Melbourne) on a Friday night just after 5; or cruising an airport business lounge.

That isn’t the whole story either. As well as their besuited swagger, Adélie penguins have another really interesting characteristic. In 2008 and 2009 I went to Davis Station, and assisted with station resupply along with a bunch of other stuff. I got to watch a lot of penguins coming in from the ocean to breed.

On the undisturbed fast ice, the penguins rule the place. However, when the mobs of Adélies got to a new feature – for example a line of snow piled up along the sea ice, after a snowplow had cleared a path – they all stopped.

Even though the penguins could easily have jumped or slid across over this new barrier and carried on, they stopped.

They walked up and down along the line.

They discussed the matter internally.

Eventually, after many meetings, one penguin would dramatically cross the barrier.

This led to a most fantastic observation. Every other penguin would take the cue and cross the barrier – but not where they stood. They would all go as close as possible to where the innovative penguin crossed, and cross the barrier there.

Even if it’s much farther to walk, or ends up going someplace less than ideal for the penguin mob. Every penguin sticks to the program.

Having observed behaviour of people in work environments for a long time, it completely struck me that this same pattern is played out across the business world. We faff around and try as hard as we can to do anything but cross some menial but unusual barrier; then when one innovator makes the leap, we all follow!

Here are some real Adélie penguins, pretending to own my surveying equipment:

Penguins, trying to work out what on earth this strange three legged creature is..

Visual language and penguin innovation patterns
I want to draw a parallel here to the work of foundational cognitive researchers who proposed that our cognitive world is constrained by the language we use about our world. In other words, if we limit the number of ways we can express an idea as language, we limit the possible number of ideas we can have. I first came across this concept (neurolinguistic relativity) studying linguistics a long time ago. This review seems like a good way to learn about the idea. It specifically also calls out perception – as if the way we frame language also interacts with the way we are able to perceive things.

Without any reference to actual research, I want to extend this to visual language. In business, we still hear about ways to dress; ways to express a visual lexicon of what is a ‘business like’ appearance in dress, styling of offices, everything. Countless business articles talk about what to wear, all ending with more or less the same pattern (here, here ). We also make up science about it without considering the fact that, well, all our cultural messaging says that we should be penguins. Even if we don’t impose ’suits’, we make recommendations to homogenise our visual language around roles.

I’m proposing here that we limit how we can do business by restricting our visual language around what we think appears business-like. In particular the uniformity of business ‘dress’. In effect, we design a limit around how we can think about problems. So we end up solving our own issues in the same way that Adélie penguins do.

In the familiar, we strut around like the boss of everything.

Faced with a new obstacle, even though seemingly simple, we look it up and down, have endless meetings, and create a lot of extra work for ourselves.

When someone finally makes the leap, we all go to the same point and follow.

…which once more ties the analogy neatly to penguins! Even movie studios agree – if you’ve ever seen Happy Feet, it’s an entire film about this premise.

So diversify!
By designing a restrictive visual language; and a restrictive set of social mores around how to dress for business, we limit our ability to do business well. So we should do something different! Sure, the usual roles of social engagement apply – as in ‘turn up to a workplace in clothes that are clean and relatively fresh’ – but really, we’re all grown ups. We can work out what works for us and what doesn’t.

I turn up usually in a t-shirt and my faithful cactus pants. Because my identity is strongly tied to outdoor activities, I generally work and feel best in stuff which works for me. I’m ready to work, I’m comfortable, confident and don’t feel like I need to get home to get this goddamn tie off!

…and then I have a supply of outdoor gear when my kit gets one too many coffee spills for work (which also has sustainability implications – I buy vastly fewer things and use them more).

But there’s more. Before this is dismissed as a smackdown on suits (which it is… c’mon) – it applies equally to anyplace where visual and cultural homogeneity in an organisation is dominant. It might not be suits, it might be ‘oh you need to only drink red organic IPA made from hops fertilized specifically with cowshit which magic mushrooms grow on’. Or ‘you can wear what you like but we’re gonna judge your selection if it’s not brand Y’ – Which brings up the next section.

Wider implications – diversity of appearance, diversity of thinking, diversity of life
In the ten years I’ve been meaning to write out this janky anecdote, I’ve realised that a fun little dump on the concept of ‘dressing for business’ (I mean sheesh, who puts a noose around themselves then heads off to work. Symbolism much?) is just a side note to the main story.

Penguins are programmed by millennia of evolution to operate the way they do in order to survive. Their actions at a pile of snow reflect their actions at an ice floe edge – a test subject is sent into the water, if they’re not eaten by a leopard seal then everyone else goes in near the same (presumably still safe) spot.

Humans don’t need to act that way – but we have designed our society to do so. It seems completely crazy that we design a visual language which limits our ability to create; to innovate; and to feel comfortable and confident – in the name of a really limited view of appearance. Sure, you don’t want people turning up to meetings in their underpants; but it’s not a black and white scenario.

Even as an extremely privileged as a white man I’ve been judged on appearance for work over my lifetime. Now, as an extremely privileged white man with 20 years experience and a PhD, I don’t want to or need to work for you if you think my apparel is what makes me employable.

Women, people-of-colour, non-binary-gender folk all have a much harder time. And often don’t get to have that choice – so spend entire lives trying to squish themselves into some boxed up ideal of appearance. I can’t speak to how that affects people, since I don’t have that lived experience. It’s not something I would ever willingly submit to given a choice.

I can, however, fall back to science and say ‘hey, letting people express themselves by way of how they turn up to work will make your business buzz!’. And also ‘it’s totally nuts to correlate performance with a particular way of dressing. It’s time, as a society to drop the pretence of ‘business dress’. I mean it’s just stuff you put on your body – not a metric for judgement. Or a magic performance enhancer.

We don’t need to be penguins, we have an alternative.

Sugata Mitra expresses the idea well in this TED talk. To paraphrase – our entire system of education and business has not been updated since the Victorian era.

“…continuously producing identical people for a machine which no longer exists”

This is a problem – it leads down all kinds of roads. And as Sugata Mitra points out – what’s next? Why are we sticking with this model, now that it no longer applies?

But what about…
There is always a case for meaningful dress in meaningful circumstances. For example, a paramedic absolutely needs to be identifiable instantly as a paramedic from far away in a messy post crash scene. A tree feller needs protective equipment, which comes only in certain styles and therefore restricts how they can look on the job. Hell, when I was observing penguins I was wearing standard issue Antarctic field equipment – not my personal choice of awesome outdoor gear.

…but an office worker, a secretary, a brand manager, even a CEO – has no such practical need.

We make a lot of excuses up around why we should all look the same in a business context – ‘perceived risk’; ‘impression counts’; yadda yadda. This actually reinforces the point of this little tale – if we increasingly narrow the scope of how we can express ourselves visually and cognitively in a business context, we narrow the scope of how we are able to solve problems.

In reality, we all work better when we feel comfortable about how we appear, and we all work better when we have some agency about how we go about our work.

Wrapping up – the alternative
For most occupations, we can diversify our visual language around how we look. In this scenario we move from something as simple as clothing from being a rigid bond to a particular way of looking and thinking. Instead, we can alter our visual language and open up new, unforeseen avenues to a diverse, fulfilling, relaxed and creative working life; where innovation happens freely because people feel valued and have agency over even one small thing – their favoured appearance.

We organise our labour along lines which benefit the organisation most. In the technical industry, we use prescribed processes and methods and ways of interaction. In customer service, we need predictable hours and have prescribed ways of going about our job. In science? the same.

In a place where required processes dominate, using how we dress as a tool for diversifying our visual language is a small but vital freedom of expression.

Try it. I think you’ll like it.

A final cheeky validation segue
Let me segue to another story here. Some time ago a senior scientist confided that they were not looking forward to visiting Canberra and having to talk to a roomful of people in suits. I said ‘visualise them all as penguins’ – which immediately turned a frown upside down. And offered a glimmer of validation for the wild idea being discussed here.

I hope that next time you walk into your boardroom, or staff meeting, or office cafeteria, you see something that breaks that analogy.

If not, I hope you have to catch a sly giggle as you take your seat.

Ice floe interactive visualisation, take 1

I recently spoke at POLAR2018 about using aerial photography for observing the properties of snow on sea ice. I’d really hoped to present some new work I’d been trying out on estimating local curvature, roughness and other properties from high resolution 3D models of sea ice topography.

Unfortunately I didn’t get all the way there. Firstly, I reprocessed a bunch  of data and the results were worse than work I’d done in the past. So back to the drawing board, and the fallback position of explaining a bunch of work we’ve done over the past decade. A PDF of my slides is available via researchgate, but preferentially wait for the interactive web version to finish – it’ll be more up to date, have better links and side notes!

I did, however, put together the beginning of a 3D visualisation for sea ice from the surface (using photogrammetric reconstruction) and below (from upward looking sonar). Click and drag below to move/zoom around; and expand the hamburger menu at top left to expose more navigation tools, measuring tools and styling options. Or, click here to open a full page view.

Many thanks to the Antarctic Climate and Ecosystems Cooperative Research Centre for funding the work behind this; and for getting me to Davos.

Software carpentry – achievement unlocked

Last week I became a certified Carpentries instructor. This means that I have done some training, and demonstrated some skill in, teaching grownups how to write programs and wrangle data.

It also means I’ve joined a worldwide community of people who are dedicated to helping other people avoid mistakes they’ve made. Which is an excellent goal! If you’re a scientist, analyst of any sort, or even someone needing to wrestle with excel spreadsheets which are getting out of hand, I’d urge you to check the materials out. There are streams for Software Carpentry and Data Carpentry , more or less explained here.

I’m excited! Perhaps I’ll see you at a workshop someplace – or even organise one for you!

16 bit to 8 bit RGB colours with PDAL and Python

Sometimes LAS files have RGB values stored as 16 bit colours. This currently upsets the Potree viewer, and maybe some other things. The following recipe using Python and PDAL ‘eightbitifies’ colours. It also compresses incoming LAS files to LAZ.

PDAL has a neat filters.python option, which passes every incoming point into a python function. Flexible huh?

First, a Python function to scale colours:

import numpy as np

def eightbitify(colour):
    notzero = np.where(colour > 0)
    colour[notzero] = (colour[notzero]/255) - 1
    return colour

def scale_colour(ins,outs):
    outs['Red'] = eightbitify(ins['Red'])
    outs['Green'] = eightbitify(ins['Green'])
    outs['Blue'] = eightbitify(ins['Blue'])
    return True

ins is a numpy array of incoming points from PDALs reader. PDAL dimensions define what’s in there – so here I’ve asked filters.python to read Red, Green, and Blue into numpy arrays to work on. The entire set of data will be loaded up, making python array operations useful and fast (if you have the memory). PDAL’s —stream operator isn’t enabled for filters.python –  if you are memory constrained, think about filters.splitter to make manageable chunks first.  This actually makes sense – PDAL has no way of knowing what you’re going to write into your python function!

Next, construct a JSON pipeline to run the conversion:


    "pipeline": [
            "type" : "readers.las",
            "filename" : "file.las"
            "type" : "filters.python",
            "script": "/opt/data/",
            "function": "scale_colour",
            "module": "scalecolour"
            "type" : "writers.las",
            "filename" : "outfile.laz"


…and finally invoke PDAL to make it go. Here it’s wrapped in a shell script to process a bunch of data. Highlighted lines show the actual PDAL invocation. I’ll replace the shell script to loop over files with a python function once it’s written.

for f in lasfiles/*.las;
    #echo $f
    fileout=$(basename $f ".las")
    #echo $fileout
    docker run -it -v /set/your/working/path:/opt/data \
                    pdal/pdal pdal \
                    pipeline /opt/data/scale_colour.json \
                    --readers.las.filename=/opt/data/${f} \



I ran this using the pdal/pdal:latest docker image:

docker pull pdal/pdal


A geospatial tinkerer’s feast: FOSS4G 2017

A random Boston photo – city skyline with a public fireplace. Awesome!

Between 11 and 19 August 2017 I was in Boston (USA) for the OSGeo foundation’s FOSS4G conference. To write a one sentence summary of the event? It’s like a cornucopia of open source geospatial ideas, applications and inspirations! Variously the event has been compared to disneyland, summer camp, and a few other things. It’s my second round of FOSS4G and I have only this to add: Most of my working life right now is defined by things I learned at FOSS4G 2016 – and my experience this year has compounded/grown/inspired even wilder ideas to implement. It’s going to absolutely consume my waking/working hours.
The event really is that good!

My attendance is funded by my employer (Australia’s National Computational Infrastructure), on the basis of a talk on point cloud data services using open standards. This makes my life hard because NCI has fingers in many geospatial pies, and as one human I need to cover my own domain expertise, plus things-of-wider-organisational-interest. However, it’s OK and I am very grateful to be able to travel across the world to talk shop. I hope I do a reasonable job of representing my workplace as well!

The beauty of going to the conference is that I can look at the program and try to find people to talk to face to face, or representatives from their organisations. I also get to survey the scene and figure out which talks I really need to watch later. Talks are all recorded, and made freely available later (I’m waiting eagerly for this year’s crop to arrive).

So let’s dive into what floated my boat. Please bear in mind that in general, the standard of idea presented at FOSS4G is really high! So don’t be disappointed if you didn’t make this list – it was really hard to filter what to see, and my list of catchup videos to watch is long.

Things I got really excited about


I played with fundamental spatial algorithms in Python, I was comforted in my old age using GDAL on the command line, bash scripts and awk; my mind was blown using  geonotebooks and geopyspark,  and I got to play with Digitalglobe’s GBDX tools for an afternoon. Unfortunately this conflicted with LIDAR processing in GRASS, and I will definitely step through that one when I can. I really also wanted to do one on cartography, but that’s too far out of my day job for work to pay for.

In short, the workshops were amazing, educational, and delivered by people with deep expertise. My own workshop proposal did not get up, but hey – I am an OSgeo minnow compared to the leviathans I got to go and learn from.

So workshops – yes – do. As many as you can! These are all awesome.

Talks and talks and more talks

Here’s where things got really hard – I made a list of every talk I went to, what I took away, and what I could equally have gone to for work.  It’s five pages long, I’m not going to repeat it. Here is the highlight reel – what sticks in my head a week after the fact, in no particular order:

Paul Ramsey’s keynote on the economies of free and open source software. I really liked it, because I could some new ways of thinking about how I interact with the OSgeo ecosystem in a productive way. I’m a trader in the attention economy, and dive a bit into the giving economy – and I’m feeling a lot less guilty about not being able to write c++ or contribute financially. However – the cash part is still important – while software is given away, it is totally fair to not be taken advantage of.

Maria Aria de Reyna on diversity in tech – this is really important and applies to all our lives. The more we talk about diversity the harder it is for bigotry to take root. Everywhere. In tech, walking down the street free of harassment, going shopping without raising eyebrows, even taking a piss in the toilet that is right for you – many of these things are taken for granted by some of us, but needlessly difficult for others. Even though the FOSS4G community could do better, I contrast it with an AWS summit I went to recently, and… well… that community has more work to do than the OSgeo ecosystem.

Connor Manning on majicking with point clouds. Seriously. Majicking. There is no other word for it. In this same ecosystem, talks on PDAL by Brad Chambers and Michael Smith were also very clear, digestible and useful in my daily life. I have a long list of things to try…

Planetlabs – I went to see two of their talks – amazing to see so much done with relatively simple tools – GDAL, python, stuff literally glued together as they go. And it works! Their successful operational model is a massive, massive  thumbs up to the OSgeo ecosystem.

Matt Lammers on visualising weather in CesiumJS. This was really awesome – I tracked Matt down to talk shop, since NCI have similar data and we are always after ways to make it engaging. I have an even longer list of stuff to try…

Helena Mitasova on viewsheds, vsual complexity and other higher order products using the GRASS GIS ecosystem. I really liked how her group is working at the type of ideas that marketers or social scientists think about – I’m always way too far down in the weeds, and this talk filled me with ideas.

Claire Porter on the ArcticDEM project. I appreciated her really down to earth presentation style and obviously deep knowledge – and it’s also an amazing project!

To finish the week off,  Maria Aria de Reyna on cats. or was it metadata? metacats? But yes – the point: making data infrastructure useful for everybody. I’m on this bandwagon a lot, but nowhere near as succinctly, expertly or cat-ly. Why do all this OSgeo stuff in the first place if we can’t find and use data, right?

…and more. Tom Holderness on PetaBencana, Dan Joseph on DIY drone mapping, Hoard Butler on the epic and seminal Proj.4, and .. well .. almost everything. At a high risk of repeating myself I’m really waiting for the videos to turn up – and go through my review list – there were many talks I could not get to in person!

Also, at some point I’ll go through and add links to all the talks. When all the videos turn up…

A comment on diversity

Since I am really not an expert on diversity, and it came up in the conference with a bathroom queue tweet, I asked Claire Trenham for her two cents on diversity in tech. She was formerly my boss, and we talked a lot about basically the importance of not being an asshat. Her comments reflected a lot about existing efforts within the OSgeo community and and how changing the world can be non-obvious. To sum up her thoughts:

Code of conduct, and code of conduct again. Her worst experiences were at conference dinners – which doesn’t mean we should ban alcohol, just reinforce the code of conduct, and again. She rated the FOSS4G code of conduct highly – and had the following thought to digest on it’s application (I quote):

But, realistically, could you be sure that if the proportion of gender and racial minorities rose, they would get equal speaking time during questions? Could you be sure that none of the guys that currently seem like great guys wouldn’t subconsciously switch to mansplaining if there were more women in the room, so it goes from being a room of equals to a room containing people who need to be ‘taught’ and ‘enabled’

This is really important. From my point of view I didn’t see this happening at FOSS4G – and wonder – as an OSgeo community member and FOSS4G attendee would I be able to call any such behaviour out in a way which was respectful? Do I fall into those patterns myself? How can I do better next time? What are my internal biases, how do they manifest, how can I expose them and break them down?

Remote attendance –  some amazing potential contributors skipped just because they can’t get there, or don’t feel comfortable in a conference environment. FOSS4G does an amazing job of making content accessible. Is properly interactive remote attendance a possibility? (conference organisers, please educate here! I’m sure it’s been investigated…)

Equity of access – for people who can make the conference, what barriers exist? cost? (for example is the travel grant enough to get people from, say Africa, to the US?) childcare? would offering *good* childcare be an enabler for parents who may or may not have immediate family to help out?

Stuff to think about going forward. Having never been a conference organiser, the second two points may be really hard to implement and at some point a compromise is needed, but could we do it as a community? I’d love to hear your thoughts.

…and I really, really hope to make it to Dar Es Salaam – do I want to hear about solving African and global issues, African style? oh hell yeah I do!

Sea ice and beer

A while ago I mentioned that I would write something about sea ice. The context was a talk I gave at the 2017 Pint of Science festival in Canberra. It was really quite fun, despite being totally terrified and full of the ‘what ifs’… ten minutes before stepping in. Thanks to some great tips from a Canberra Innovation Network science communication workshop I managed to get it done.

Anyway, The aim of that talk was to give a brief sea ice overview and then show what it’s like as a scientist working in the field – how we think, how we try to solve problems and potential new techniques we see which can help.

The audience was quite impressive – they grasped the material with two hands and had insightful, interesting questions. It was heartwarming.

…but none of that is about sea ice at all. That was all about a talk! So go and read it yourself here and learn more: – it uses Reveal.js – so you can use your arrow keys to move around it either linearly (down, then right, then down) or go around how you please. Press ‘s’ to see speaker notes, I’ll finish those in the next week while I’m travelling to FOSS4G.

Most importantly, it explains the sea ice/beer cycle. This is really an under-studied earth system component and needs massive grant funding and more fieldwork. I mean it! Seriously! Without detailed knowledge of sea ice thickness gained by combining many instruments and rigorous field surveys, we will always be nervous that our beer is at risk.

You can also see a deeper dive ( a PhD thesis in 20 or so slides) here – also in Reveal.js: .

I hope those slide decks are digestible and leave you with something you didn’t know before – the sea ice/beer cycle for one; but also how sea ice gets measured and just a few of the issues surrounding how to make a realistic assessment about how much sea ice exists on the southern ocean. It’s super-complex! It’s also about the most mind blowing place I’ve ever been – we don’t need to go to Mars.. the pack ice zone is much closer and still a totally foreign world.

What a planet we live on…

Browsing MH370

Last week Geoscience Australia released a vast bathymetric survey dataset from phase one of an intensive search for the missing aircraft, flight MH370. Read the full story here.

I’ve been ruminating on the idea of treating bathymetric datasets in the same way I handle LiDAR surveys – as massive point clouds. So this dataset presented an opportunity to try some things out.

I used the Python library Siphon to extract data from NCI’s THREDDS catalogue – ending up with roughly 100gb of ASCII files on my working machinery. It was easy to see what these files contained – but they’re no good for my use case as lines of text. I had in mind dumping them all into a postgres-pointcloud database – but then, I got excited by the idea of visualising it all.

So I did.

The first step was to clean up the data. I needed to convert very nice descriptive headers into something that described the data in a less verbose way.

sed -i took care of that task. It also handled removing leading 0’s from two number longitudes. I still had ASCII data, but now I can do something with it!

Enter the Point Data Abstraction Library (PDAL). My new ASCII headers describe PDAL dimensions. My cleaned numbers left no doubt about what an extra 0 means. With a quick pipeline I turned all my data into LAS files, reprojected from lat/long to metres in EPSG:3577 – GDA94 / Australian Albers. I used this because it was the only cartesian projection which could feasibly swallow the whole region without any weirdness (for example writing out things that are in UTM44 as if they were in UTM48).

But wait – what? Why LAS?

…because it can be read by PotreeConverter. You can likely see where I’m headed now. After some wrangling to get PotreeConverter working on CentOS, I burned a bunch of RAM and CPU time to generate octree indexes of all 4ish billion bathymetry points. With some scaling fun and experimenting with just how much data I could throw in at once, I eventually rendered out and glued together visualisation. A screenshot is below. The interactive visualisation is no longer live, I’m working on a new hosting site and a better version – and will update this post when done!

It’s not perfect by any stretch, but you can browse the entire dataset in 3D in your (Chrome or Firefox) web browser. It is a Potree 1.5 viewer, and doesn’t like Safari  (yet). Given the number of individual indexes being loaded, it also sometimes overwhelms the capacity of a browser to open connection sockets. Ideally I’d have a nice basemap and some more context in there as well, but as a proof-of-concept it isn’t bad!

The whole thing is built with a mix of pretty simple freely available tools – from linux built-ins to cutting-edge webGL.

Why did I do all this, and could it be better?

I’m grateful to my employer for the time I get to spend on side projects like this, but there is a real purpose to it. When data get massive, it makes sense to shift big processing off of desktops and onto dedicated high performance compute hardware. Point cloud data are on the cusp of being workable – data as a service in the raster domain has been around for a while.

Point clouds have some special considerations, the primary one being lack of data topology. Creating visualisations like this demonstrates one way of organising data, and makes light of the traditionally difficult task of investigating entire surveys. It also makes us ask hard questions about how to store the data on disk, and how to generate products from the original datasets on demand – without storing derivatives.

For this project, it would have been great to skip the LAS creation part and render straight from an underlying binary data source to the octree used for visualisation. And then, run an on-demand product delivery (rasterisation/gridding, analytical products) from the same data store. In it’s current form this is not possible. As-is, the data are designed for users to make their own copies and then do stuff – which is limited by the size of local compute, or the size of your public cloud account budget.

What next?

Prepare for testing with a point cloud data delivery service I’m working on. Tune in to FOSS4G (August, Boston) to hear about that.

In the meantime, play with it yourself! You can obtain the data shown here for free – it is at: I used the data in ‘bathymetry processed -> clean point clouds’ (direct link). The data are also held on AWS (see the Geoscience Australia data description) if that’s easier for you. Tinker with it, have look at the viewer, see what you can come up with!

Oh, and let me know if you spot anything unusual. WebGL lets all kinds of things happen in the ocean deeps


Thanks to Geoscience Australia for releasing the dataset to the public! And thanks to the National Computational Infrastructure (NCI) for my time and the hardware used to develop this technology demonstration.

The MH370 dataset is hosted on NCI hardware. However – I used the same methods for data access anyone in the general public would (my download stats were a big blip for a while..)