These third-party services that we use offer many benefits but too often we forget that they are not necessarily built for for longevity. Importantly it’s not necessarily their responsibility either. So long as there is a way for SFO Museum to export the things that it posts on a service we can and should take on some of the burden of preserving those efforts for posterity. That is, after all, the business of museums and libraries and archives.
Aside from solving an immediate technical problem we are excited about how this approach might be applied to future projects and we hope you will be too.
The goal of the “Accession Numbers” project is to compile a catalog of machine-readable patterns for identifying and extracting accession numbers in arbitrary bodies of text for as many museums and cultural heritage organizations as possible.
The recently opened Mills Field and the San Francisco Airport exhibition in the SkyTerrace observation deck in Terminal 2 includes an interactive map installation that allows visitors to view the history of SFO by browsing over three dozen aerial maps from 1930 to 2021. Orginally designed as a touch-based interactive application, designed to work entirely offline, it was updated earlier this year to allow visitors to control the map using their personal mobile devices.
While this particular instantiation of the geotagging application is scoped to the physical boundaries of SFO the code itself is not specific to SFO Museum. It can be used, in combination with custom databases of map tiles and geographic data, with any image on your computer. This code will continue to be the common infrastructure that we build a SFO Museum application, specific to our needs, on top of.
The bad news is that, when you look closely, there really are that many moving pieces when it comes to something like geotagging photos. The good news is that nearly all of those moving pieces, from the underlying data to the tools to operate on those data, are within the reach of cultural heritage as low-cost and open-source alternatives to the commercial offerings. We may still need to stitch those pieces together to meet the needs of a specific institution but at least they are within reach now.
When I save an image of this view of the runways at SFO, from 2017, the newly created image’s EXIF data contains not only the date and the permanent URL for the map but also the latitude and longitude coordinates for the map’s center point.
One question that’s been raised about the camera/save button in zoomable images is whether or not the new image contains, or preserves, existing EXIF metadata information stored in the original file. The answer yesterday was: No. The answer today is: Not yet, but only because we haven’t enabled it and we will do that soon.
Have you ever wanted to be able to reverse-geocode a point not just in space but also in time? Have you ever wanted to do that date-filtering with fuzzy or imprecise dates, encoded using the Extended DateTime Format (EDTF) ? Have you ever wanted to do both of these things with an arbitrary subset of location records? Have you ever wanted to be able expose these things as a web application and an API that doesn’t need to talk to a remote database? Have you ever wanted to be able to deploy those applications both locally and as serverless applications running on a cloud-provider’s infrastructure? Now you can.
The EDTF specification does all the work of defining the rules and semantics for encoding complex and ambiguous dates in to well-defined and structured strings and the go-edtf packages do the work of decomposing those strings in to values and flags that can be manipulated by computers.
It may be too soon to imagine that we can make everything easy but maybe we can start to make more things at least possible.
NFC Clock is not meant to answer the question ‘How should my museum use HCE?’ but only to answer the question ‘Where do I even get started with HCE?’
It fosters a practice of actively requesting backups of our activity on these services, as opposed to relying on a mysterious automated system running in the background. I also like that it mirrors our own practice of building services and functionality, like the Mills Field website, from the same open data that we publish for other people to use.
We’ve updated the user interface elements that control how a static image can be made “zoomable” making them easier to use and more portable across a number of different settings.
In that spirit this blog post is about four small command-line utilities we’ve written to do our work and are sharing with the wider cultural heritage sector. These tools aren’t specific to SFO Museum and might be useful or helpful to other organizations using a similar infrastructure as ours.
In the same way that we can wrap a traditional web application in a Go program, can we wrap that Go program in a native macOS application? Each platform has its own unique affordances and tolerances. A larger goal for the museum is recognizing the possibilities that each platform affords so that we might be able to treat them as a kind of “kit of parts” to be reconfigured as needed for future projects.
This post is about the go-www-geotag-sfomuseum application. It adds support for authenticating users and publishing data to any service that supports the OAuth2 standard. For the purposes of this post we’re using GitHub to demonstrate our work because we already publish all our open data on GitHub so it is useful for our geotagging application to be able to write directory to their API. In the future we might update our geotagging application to talk to SFO Museum’s own OAuth2 and API endpoints.
What’s become clear as we work through geotagging photos in the SFO Museum collection is that it’s very useful to be able to geotag things using a map from, or near to, the same year that a photo was taken. The facts on the ground change often and fast enough at SFO that it can be hard to make sense of an old photo using a contemporary map.
In order to support SFO Museum’s use case we would need to bundle all of the code required to implement the steps described above with the go-www-geotag application. That’s a lot of functionality that which not germane to another user of the application. It’s also, potentially, a lot of code that SFO Museum may not want or be able to share publicly. It’s a scenario that would have to be repeated for every custom writer adding unnecessary complexity and size to the final geotagging application.
So far, we’ve got a map and a camera, a global search endpoint, a simple way to query for and display images and enough information to display already geotagged images correctly. Importantly none of these things are specific to our museum or any other institution. In fact there’s nothing about go-www-geotag that is specific to the cultural heritage sector at all. You could use this tool to geotag any set of images. But what about saving the geotagging information that the Leaflet.GeotagPhoto extension produces?
If the go-www-geotag application is designed to be agnotic to the details of any one user’s data sources how does it know where to find and load the images it’s meant to geotag? Isn’t this exactly the problem I described in the first post in this series, a scenario where the go-www-geotag application is required to know about an infinite number of image sources? Rather than trying to support a potentially infinite list of image sources we’ve decided to require the use of the oEmbed standard as the means by which images are identified and loaded in to the application.
But what if you want to center the map on a different place and don’t already know its latitude and longitude coordinates? What if you need to jump around to a bunch of different places all over the world?
I call this the “building with two-by-fours” stage of development to highlight the importance of not just building things quickly but equally being able to disassemble and rearrange them just as easily. Sometimes this happens at the expense of elegance and finish but that doesn’t diminish their importance or a commitment to address those things.
In the end we may deploy this application for staff as a hosted website on the internet but we would like to have the ability and the flexibility for staff to also run the application locally, from their desktop. The majority of museum staff are not developers and won’t know how or be able, or want, to install the external dependencies that might be necessary for an application written in another programming language to run.
This is the first of multi-part blog post (11 in all!) about geotagging photos in the SFO Museum collection. It’s also a blog post about how we’re doing that work and why we’re taking a longer road than we might otherwise to get there. Over the course of the next couple weeks we’ll post one short blog post a day focused on a specific step, or area of concern, in that process. This first blog post will set the stage and outline some of our motivations for seeing geotagging photos in our collection as a chance to address larger issues in the cultural heritage sector.
A healthy slice of the permanent collection of the SFO Aviation Museum and Library is now available for browsing on the Mills Field website. This includes a little more than 23,000 object records of which 18,000 have images. This is still only a small part of the museum’s total holdings and we hope to get all, or most, of the remaining objects online shortly. Like all the images on the Mills Field website, every image from the permanent collection is “zoomable”.
Today we’re happy to announce the availability of historical flight data in and out of SFO for the years 2006 through 2018. That brings the total number of flights published to just under 4.9 million!
In the future we’ll do another more technical blog post about how the image tiling works but today’s post is about celebrating the ability to “wander around” an image, to get up close and enjoy its details.
These data aren’t necessarily interesting in the moment. These data become interesting over time when there are a lot of them to corral in to unexpected patterns and the proverbial shape of the elephant. Their value comes from being able to look back and see things the then-present never imagined. The challenge when you want to look back at past data is often that no one thought it worthwhile to collect at the time or to give a safe and patient home where the future might find it in the…well, future.
We’ve updated the historical aerial maps section of the Mills Field website to include imagery from 2019. We’ve also made some user interface and user experience changes to the map to improve its use on small and mobile sized devices.
Longer-term, and importantly, it also means the workflows we develop aren’t inextricably bound to Amazon services. Knowing that we don’t have to use AWS and knowing that there is an alternative avenue for accomplishing the same work in the future, should we ever need it, goes a long way towards making it easier for us to want to use AWS in the present.
I am happy to announce that go-iiif version 2.0 has been released. The biggest change in this release is that go-iiif no longer requires the libvips image processing library, by default. As of version 2.0 go-iiif can do all its image processing using native (Go) code. The absence of external dependencies means that go-iiif tools can be compiled in to standalone applications that can be run even if Go isn’t installed on the same computer.
Wandering around the airport at high zoom levels, seeing the “shape” of airport in its details, is so much fun we’ve added a handy 📷 button to the map that will allow you to create an image of whatever you happen to be looking at.
This is a long and technical blog post. The short version is: It is now easy, possible and inexpensive to install and operate a “coarse” geocoding service, with global coverage, support for multiple languages and stable permanent identifiers using openly licensed data, both locally and in ☁️ the cloud ☁️. We’ve made some additional tools to complement this reality and waded through some of the muck of modern software development so you don’t have to.
If you had told me that a little over two weeks of data would have yielded almost 1,400 unique airplanes I would have been surprised. I am surprised.
As legend has it according to O’Neill’s own account, his eureka moment shortly following the vest’s creation took place at San Francisco International Airport. After boarding a DC-3 for Los Angeles he looked down at the floor noticing a thin padding of black rubber sticking out from under the edge of the carpet. The material, a synthetic rubber invented by DuPont and named neoprene, helped insulate the heated passenger cabin from the frigid spaces below deck. It was smooth sealed, closed cell, flexible, quite strong, and proved fairly impervious to saltwater. Soon the era of the wetsuit was fueling the allure of surfing for the masses.
It is important to recognize that Bao’s work is not simply “non-institutional contextualization of digitized collection objects” but an important contribution, one that is central to the museum’s mission. Darren’s comments, though, served to highlight the fact that we haven’t done a great job of “capturing” or “archiving” any of it. Until now!
As you may have noticed from our last blog post “People Looking at Art at SFO (1982 - 2019)” we are in the thick of processing the back catalog of installation photos for all the exhibitions SFO Museum has done since 1980. I am already thinking about a second “People Taking Pictures of Art at SFO” blog post but in the meantime we’ve made a couple additions and few changes, improvements hopefully, to the Mills Field website itself.
A selection of photos of people looking at the many exhibitions put on by SFO Museum, since 1982, throughout the terminals and the airport’s always-changing architecture. There is a lot more to say on the subject but this time we’ll let the pictures do the talking.
At the end of that first blog post about go-iiif we wrote “An ideal scenario is one where a museum could upload a set of full-sized images to a AWS S3 bucket, wait for Amazon’s computers to process each image … and then find a new set of images to download (along with a reasonable bill for services rendered) in a different S3 bucket.” Today, that is possible.
This is historical data compiled by harvesting flight data throughout the day, aggregating it overnight and finally publishing atomic records for every flight that graces our runways. That’s interesting enough on the face of it but what we think is even more exciting is that every record contains pointers back to things already in the SFO Museum collection. … With only a few exceptions all of the airlines and gates and airports that comprise any given flight, on any given day, all have a pre-existing relationship with the objects in our collection.
We’ve updated the location data for gates to make the primary location, for each gate, the doorway between the terminal and jetway (rather than the jetway and an airplane).
Starting today there are pictures on the Mills Field website! Not all the images but approximately 1,500 photographs of exhibitions on display in the terminals and another 1,500 photos of airports and aircraft related to the SFO Museum collection, taken by Flickr users (and published under a Creative Commons license) … As I write this there are another 30 years worth of exhibition photos to process and another 100,000 Flickr photos to review so this is just the beginning but we’re excited to finally share the work we’ve already done so far.
…like all the other datasets we’ve published we’ve modeled “enterprises” as Who’s On First documents. Which, let’s be clear, is not really what Who’s On First was designed for. This is SFO Museum piggy-backing on an existing project and then starting to push it in new directions to suit our needs.
Dancing around over the spinning shapes and colors was the happiest 20 minutes in my son’s life. He smiled non-stop - hopped and skipped with joy. Your art spoke to him on a level that I’ve never seen before and built a bridge from our world to his.
This is a technical blog post about map tiles, caching, third-party services, so-called “serverless” computing and sustainability. It’s also about improvements to open-source software for managing all of that stuff.
There are between 4,000 to 5,000 medium to large airports in the world, in 2018. As of this writing about 300 are relevant – are “holding hands” – with the SFO Museum collection. As of today those airports and the countries they belong to have a home on the Mills Field website.
Since 1980 SFO Museum has produced 1,318 exhibitions (an average of 34 per year) and today we are publishing them all on our website and as an openly-licensed dataset.
All of these many SFOs are important because they help to contextualize things (like the photo of Rotunda A) in the moment but also to demonstrate how that context has changed over the years.
Today, we are happy to announce the first release of historical building footprints and interior spaces, including galleries and public art, at the San Francisco International Airport (SFO) as an openly licensed dataset. The data spans the years 1954 through 2018 and is published under the Linux Foundation’s Community Data License Agreement - Permissive 1.0 (CDLA).
This website is named in honor of the original “Air Port” at the site of what is now San Francisco International Airport.
Did you notice the aerial overlay of the airport in final image in our last blog post about maps? That’s what this blog post is about.
Maybe these maps are simply a fail-safe and only used when nothing else works. Their value then comes from giving us the confidence to try a more sophisticated approach while still having a way to get home safely, so to speak.
This is a technical blog post about image processing. The short non-technical summary is that not only were we able to use open source software to simplify our image processing workflow (and reduce costs) but we contributed our improvements back to the project so that hopefully others in the museum sector may benefit from our work. Yay!
Sometimes people say to us “I’m at the airport… where is the museum?” The answer is that the museum is everywhere inside the airport. That in many ways the airport is the museum.