Friday, July 27, 2012

2012-07-27: Digital Preservation 2012 Trip Report

Digital Preservation 2012 was held July 24-25 at the Sheraton Pentagon City in Arlington, Virginia. Previously the NDSA/NDIIPP (@ndsa2/@ndiipp) Partner Meetup (see our trip report from 2011), this year's theme was "access to digital content under stewardship". A wide range of presentations were given on the full range of digital preservation topics. Four representatives from the ODU Web Sciences and Digital Libraries group attended to present their research and recent work in one of various realms within the field.

WS-DL's Contributions to Digital Preservation 2012

Mat Kelly (@machawk1) presented a demo of a Google Chrome extension he developed called WARCreate, as a further extension to the initial poster/demo presented at WS-DL's trip to JCDL this past June. WARCreate allows a user to create a Web ARChive (WARC) file from any viewable webpage. Mat's main focus was on preserving content behind authentication, namely, social media content that is currently not be preserved by institutions like Internet Archive.



Hany SalahEldeen (@hanysalaheldeen) presented his poster "The Revolution Will Not Be Archived" showing that nearly 11% of a sample of shared social media content was lost within a year of the 2012 Egyptian Revolution. By sampling other culturally important events, Hany was able to confirm similar rates of loss. Further information about Hany's methods and findings are detailed in a blog post he did about the study.



Also in attendance to represent ODU were Dr. Michael L. Nelson (@phonedude_mln) and Dr. Michele C. Weigle (@weiglemc), who advised Hany and Mat on their endeavors to date.

Presenters

Anil DashMuch like last year, Martha Anderson (@MarthaBunton), the director of program management for the National Digital Information Infrastructure and Preservation Program (NDIIPP), stated that this was the largest ever meeting for NDIIP at about 260 registrants. "Currently, NDSA has 128 members", she said, "with 3 more in the process of being admitted." This chimes in harmony to her welcoming remark at least year's meetup of, "We are growing!". She emphasize that NDSA, being an initiative of NDIIPP, promotes leadership, generosity and commitment. Other goals of the organization she mentioned were stewardship, collaboration, inclusiveness and exchange. Martha then passed the mic to emcee to Bill LeFurgy (@blefurgy).

Anil Dash Anil Dash (@anildash), co-founder of ThinkUp, an open source app that allows creators to keep track of activity in social media, performed his presentation entitled, "Make a Copy". He brought a unique perspective of an entrepreneur and an activist and described himself as being "a geek interested in the social impact of tech on culture, government and others.

"Good tools impact culture in a positive way", he said, "Simply recording the conversation in social media would change the nature of the dialog taking place."  On the screen he put an image with the writing, "The wholesale destruction of your wedding photos" then asked the audience if they would be offended if there was a "Secret Ivy League" conspiracy that was to commit the fact. Emphasizing the point, he says that this is exactly what is happening with Facebook, blatantly hints at the website's origins as being Harvard-only and cites the terms of service about the service's right to remove any content at will.

"Often", he alludes, " a service's Terms of Service Trump the constitution." But we are locked into these services. Oftentimes, the social and career cost that would come about for a user to opt out of these services is unfeasible.
"There's a war raging against the open web", Anil stated, admitting the hyperbole.
"The majority of time spent on the web is spent within an application experience, not web pages...They are gaslighting the web", he said after explaining the metaphor and further expounded that though his app has authenticated, because he is not a large service like the Washington Post, his app is given a "warning" message when users try to utilize it.

Moving on, Anil said, "Our tools for archiving our culture suck." "Silent movies", referencing that the archival of the most popular video format comes in the form of animated GIFs, which usually is preserved without all frames intact.

Proprietary formats win if they have more users", he said, emphasizing that popularity is the force that drives the formats utilized by the masses. "We are losing metadata like crazy. You can't find an Instagram photo on the web. We have a billion photos that have no web presence", he went on.

Continuing, "In the best case, if some young Facebook engineer came along and integrated the ability to tag metadata on Instagram photos, we would get the same level of metadata as flickr has today, so we will have lost 5 years of sharing - essentially a billion photos lost."

Anil stated that it will be illegal to copy your own data off of your own device once everyone has moved to smartphones. "I can't copy my own data without breaking DRM rules", he said. "Device obsolescence is getting faster. Even with open formats, data will be lost."

Anil changed the subject slightly with, "The way the web works is by making copies ... If we can encourage things to be on the web, we start to win."

Anil mentioned Timehop, a service that will e-mail what you were doing according to your subscribed services (e.g. Twitter, foursquare) a year ago. "How do we mine our personal archives and gain meaning/insight about it?", he said, affirming that Timehop provides some indirect degree of temporally-displaced preservation.


"People revere name, 'Library of Congress'", he said to a crowd made up with quite a few members of LoC. "There has been careful stewardship of the institution for a long time, people respect a loc.gov e-mail address." 
Anil stated that there was an instance where Facebook enforced a 24-hour limit on its social graph system, which the government utilized to show those that had interacted with the White House. When the White House's policies required the graphs to be preserved for longer than Facebook allowed, the Facebook TOS's were in the process of reforming these restrictions for all. Conveniently, the White House was a good use case as to why this content should not have such limitations. "PR trumps Terms of Service", Anil said, saying that if Facebook were to stand firm with their policy, they would have a lot to lose.

He finished by sharing that he is currently unable to buy Michael Jackson "making of" Thriller from Sony, yet it can easily be found on YouTube. "Uploaders want to be our allies", he stated while referencing the backlack by various websites and Internet users on the recently rejected SOPA and PIPA legislation. As a final note on the topic, Anil said, in reference to the masses' unbeknownst actions toward preservation: "They want to be advocates for you." 

David Weinberger (@dweinberger) of the Berkman Center at Harvard University followed Anil with his presentation, "Big Data, Really Big Data" starting off with the original notion that the only way to manage data initially was by eliminating it. "The original strategy", David stated, "of wisdom, knowledge, information, data" can now be inverted."





David went on to talk about the merits of knowledge by stating:
  • Knowledge was a matter of filtering out to get to the nuggets.
  • Knowledge drives out difference
  • Knowledge is a series of stopping points
He went on to talk about finding stopping points when acquiring knowledge by reducing it to, "Find an expert, get knowledge, move on", "We don't have to redo the experience. We can build on what is known", and "Books are stopping points."

Regarding books and specifically what should be the writers' task, "When writing, put everything in it that the reader reads." Referencing the Ancient Greeks and the accessibility of knowledge, David said, "The web of knowledge only has value if there is disagreement." David then showed a quote from Senator Patrick Moynihan stating, "Everyone is entitled to his own opinion. Not his own facts."
"We want to believe that though we disagree, if we sat down long enough, we could come together over the facts.... From the web, we learn that we don't agree", David made the crowd of a long hidden truth.
"We have come up with ways that we can benefit from disgreement" David said and proceeded to show a platypus and the opposition to its existence because it was ill-fit for the time's Linnaean nomenclature.
Regarding knowledge, David said, "Among software developers, we have the best rapid learning development humans have ever had in the Internet." Here, he went on to show examples of programming related website like stackoverflow.com (related: Proposed Digital Preservation StackExchange).
David showed, as learned from these sort of websites, that we can learn from developers in this environment who exhibited humility and generosity in assisting others with nothing tangible to gain. David showed the already greater than 3 billion questions that had been asked on StackOverflow.com and emphasized that "iteration is an incredible tool at scale."
"The act of education itself should be public. There is social benefit in that", he said. In reference to the initial effort like these, David concluded with the need for messiness:
"Messiness is how you scale meaning. If you want these objects to be rich, saturated with meaning, then you have to allow messiness. Ultimately, it is disagreement that scales knowledge."
After David, the room was dismissed for a short break to be greeted by Michael Carroll upon returning.
Michael Carroll of the Program on Information Justice and Intellectual Property at American University Washington College of Law, present his slides on "Digital Preservation and Copyright: The Role of Open Licenses".

Michael started off by alluding electronic resource depletion to environmental depletion, stating that the analogy is a good correlative fit. "The links to the data are part of what makes it meaningful. Some resources are allocated to metadata collection but should be re-shifted to preservation efforts. ", Michael said. "Intellectual copyrights are intangible things that we attach to things. The rights can be looked at as a thing as well, even though they're intangible", Michael continued.
Michael went on to say that everything before March 1, 1989 without a © symbol is public domain. "We now live in a world with automatic copyright", he updated the crowd. "

There are risks in the environment about what you can and can't do. The legal environment of copyright is not stable, it's dynamic." Many copyright holders let their copyrights expire. Michael, describing the holders' reasoning, "It's a natural response to have no long-term copyright intention." Michael then explained the Orphan Works issue wherein a work's author is not known.

Because of this, the resource cannot be reused by others, including libraries, for fear of being sued if the copyright owner ever takes claim of the work. "Orphan works gets in the way of digital publication projects", Michael said. Michael then provided his opinion on fair use for preservation:
"Making copies for purpose of preserving them is a social beneficial use that is unlikely to have any market harm to the copyright owner. I think it is a presumption that making a copy itself, storing it, is fair use unless there is an active market for that kind of activity. The storing is not something that you should be deterred by."
Fair use has an active role to play in the digital preservation field. "Grab it, store it, figure out how to work with the copyright", Michael said. He then shifted focus with, "Because copyright attaches automatically, Creative Commons wanted a way to opt out of it and opt into a more sharing environment."

He then went on to list the 6 variations of Creative Commons licensing. Michael further emphasized that a CC license is not limited to digital works and that any work can say that it's under the license by simply providing the generic CC URL. He closed by rhetorically asking the question of, "What can Preservation community do to assist in preservation and access to preserved websites?"

He recommended that the first step is to mark the digital public domain (things that are already there) so people can be aware of what's in copyright and what is not. Further, people can encourage the use of open licenses at the time of publication or consider using a "springing" open licenses that grants CC right based on some contingency. Doing so will remedy the Orphan Works. Lastly, he said that even if the work is under full copyright, at least mark it as such. Questionable copyright is the source of many issues he described.

Lightning Talks
A session of short-length various topic lightning talks followed.
Christie Moffatt of the National Library of Medicine is developing a “Health and Medicine Blogs” collection at the U.S. National Library of Medicine. She is archiving blogs of medical professionals and patients and thus far has "been able to capture select blogs fairly well". She proposed the question, "What does it mean to completely capture a blog and how far should you go to preserve content?"

Test crawls she performed were helpful in finding problems relating to crawl frequency, quality, etc. She then asked, "How much of the blogs' content needs to be about medicine to be a medical blog (e.g. doctor's that quilt)." but left this question open-ended.

Terry Plum of Simmons GSLIS presented, "Teaching Digital Preservation in a Digital Curriculum Laboratory". He worked with efforts to setup labs to pull in students and faculty to perform preservation procedures. The labs consisted of a wide range of preservation software including dspace, fedora, espace with his intention to bring out any open source apps that relate to archives.

He turned students loose in the apps to see what they can do with broad guidelines. He also provided preservation exercises consisting of step-by-step instructions to execute preservation procedures like ingesting and encapsulation with all exercises having a focus on preservation.

Kelcy Shepherd of Amherst College presented "Our Collective Task: Digital Preservation at the Five Colleges", which described the logistics of the efforts of five colleges at best utilizing their resources for preservation. She found that is was more cost efficient to collaborate five schools, as less personnel was required.

"Now", she said, "is the right time for collaboration. Each college is taking responsibility or creating a need for digital stewardship". Initial assessment was done to evaluate each school's rediness with each school having developed its own digital preservation policy. Some key questions she concluded with were "Should we be doing this within the five colleges, forging a larger collaborated effort, or join a larger effort in the region?"

Jefferson Bailey (@jefferson_bail) of Library of Congress presented "Personal Digital Archiving at the Library of Congress" with the intention of putting emphasis on the value of personal digital archiving. Martha Ballard, from 1785-1815, record events of her life. This analog recording was passed down through her family until it was discovered in 1980s. A followup book called "Midwife's Tale" based on these records.  

Jefferson noted that though this collection was able to sit on a shelf for over 200 years until it was discovered, other objects are not so lucky. LoC wants to be supportive toward community efforts of digital archiving. He also noted recent activities supported by LoC including a Personal Archiving table at National Book Festival (the giant floppy disk, he said, is always a big hit), presence at ALA Preservation week and representation at many conference. LoC also now has a downloadable Personal Digital Archiving Day kit.

"The mission and goal of program", Jefferson stated, "is to work collaboratively with the community to deliver basic, practical tips and guidance to assist individuals seeking to preserve personal digital objects."

Carol Minton Morris (@mintonmorris) of DuraSpace was up next with "Painting Crowdsourced Microfinance Platforms and Projects Into the Big Digital" to investigate NDSA initiatives to leverage platforms like KickStarter (Yancy Strickler spoke about this in the 2011 Meetup) for funding. She looked to determine if there was public interest in crowd sourced microfinancing and how effective it would be in overcoming funding issues.
"We've seen an NDSA effect in curating projects related to NDSA goals", she continued, "and Kickstarter has matched backers. However, Kickstarter Projects are mostly about the arts. Tech and publishing projects are the outliers. We might want to think about changing that."


Carol mentioned financing means outside of KickStarter as well like IndieGogo. Unlike KickStarter, IndieGogo allows all funds raised to be kept by the party doing the raising. However, also unlike KickStarter, IndieGogo's fees are higher. She encouraged everyone to think about microfinancing. "If you can split off parts and pieces into small chewable components", she said, "you may be able to find a way to fund things in small bites."

"The way we needed to think of this was in long-term scenarios." she said. "We just funded a grant for the Hibani state archives that proved to be a success story. After funding, the archives began to poll for additional external funding."  She continued, "I am here today to get a response from all of you that are constantly looking at programs to make sure that the program fits the needs of scenarios and addresses the emerging challenge in appropriate ways. "Reach a little beyond but not too far.  I think we (her colleagues) need to collaborate collectively in our own program."

Joel Wurl of the National Endowment for the Humanities spoke next stating, "Best practices are always plural and, perhaps, always will be. Solutions in one domain may not ever transfer to another. ... I suggest that there will always be a need to be fulfilled and tasks to accomplishment, and thus a need for funders." He followed with other quotables like, "Digital Preservation and Fixity do not go together neatly" and "Is it preservation or is it rendering? YES!" with little comprehensible segue.


"There are serious gaps to be filled in workforce expertise", he continued, "These gaps can be seen at all professionals levels and sizes of institutions." He reiterated early talks about a need for a paradigm shift from project to program. and that the need to really think about this is institutionalized activity."

Describing current projects, he said, "Digital Preservation is also something we have highlighted in our education and training program. We have had very successful projects in recent years", giving the example of University of Michigan having a "virtual lab" in the works.  He finished by saying that they can and are willing to work with smaller institutions and are using the tactic of offering money for staff attendance at workshop so to engage these institutions.

During lunch, the NDSA Innovation Awards were presented. The winners for this year were:
  • The Future Steward award went to (WS-DL's own) Mat Kelly from Old Dominion University for his work on a Google Chrome extension WARCreate.
  • The Institution award went to the State Library and State Archives of North Carolina for their work on educating state emloyees on digital preservation through their website.
  • The Project award went to the AIMS Project for developing a framework for stewarding digital-born content.
  • The Individual award went to Peter Krogh (@peterkrogh) for his work on The DAM Book, dpBestflow and for advising the Shutha project.
  • A second Individual award went to Dr. Anthony Cocciolo (@acocciolo) for his approaches to teaching digital preservation practices.
Each award winner spoke for a few moments about their respective contributions.
After lunch, the crowd was split into breakout sessions. Documented here are the sessions the WS-DL group chose to attend. From Concurrent Session 1, we attended the Tools Demo #1 regarding "Access". Demoed here were Viewshare and Neatline. Other sessions that we did not attend were:
  • "Bridging the Gap through Digital Stewardship Training and Education" with presenters from Library of Congress, George Coulbourne, Kris Nelson and Jefferson Bailey.
  • Sustaining the UDFR with Stephen Abrams of the UC Curation Center at California Digital Library
  • Planning Digital Preservation at Different Scales for Smaller Institutions with presenters Jessica Branco Colati of Northeast Document Conservation Center, Jennifer Gunter Kind of Hampshire College and Deborah J. Rossum from SCOLA.
  • Auto ID Tools Demo with presenters Mark A. Matienzo of Yale University Library presenting Digital Forensics Tools and Andrea Goethals of Harvard University presenting File Information Tool Set (FITS).
From the first concurrent session, Trevor Owens of Library of Congress presented a demo of his open source tool Viewshare. Built upon open source tools itself, Viewshare is an easy way to visualize data. After a user signs up (and gets a confirmation of access in a couple days), they will have an account that allows them to upload data to utilize the tool or access data existing in the system to manipulate to ensure that their future uploaded data will be interpreted correct.

ViewShare utilizes Dublin Core data and possesses GeoNames integration to allow a user to aggregate various descriptor of a place to be return latitude/longitude coordinate. Trevor repeatedly emphasize that "We're not editing data, we are only augmenting data", ensuring the crowd that their data was safe. As Viewshare allows the manipulated data to be exported, this was important to point out to give those watching confidence in using the tool. Viewshare also contains user-cusomizable privacy options that will prevent embedding of the data and results and require the user to instead access a specific webpage to see the content, as controlled by the creator.
The second tool presentation of the session was from David McClure of University of Virginia's Scholar's Lab. He presented his creation, Neatline, which is a set of plugins for Omeka that allow for external integration and visualization of data. In manipulating the data, he stated that "everything is a record", including the annotations that a user can add to an image. The use case he demonstrated was of adding annotations to an pre-annotated Hotchkiss Map to make it interactive and more useable.

"Once you have this archival collection", he said, "it give you a way to expand on those materials and gives you an extra level of functionality and interactivity." Through converting these annotations to be more interactive, he is also able to provide extra metadata to the marks to provide relevance of the movement represented by the map's annotations. Further work was done in taking an informal map created by a confederate mapmaker in a letter to his daughter. In the letter he roughly sketched out a map on the bottom half of the third page of the letter. By using Neatline, he was able to overlay this on an authentic map of the area he was describing and display the other transcribed parts of the letter to give contextual relevance.

Neatline is capable to utilize geo-referenced from historical map from a GeoServer as well as a few other services (including Stamen map tiles). He also emphasize that Neatline puts a lot of focus in giving the user lots of control over the appearance of the map with customizable annotations. Further, images can be used as the waypoints and the options exist to allow annotations to phase on and off if a temporal aspect is added to aggregate annotations onto the map. Annnotations can also establish hierarchical relationships where the child settings of an annotation inherit the settings of the parent annotation.



After a short break, the second set of concurrent sessions began. As before, the WS-DL team was only able to experience one of these sessions. Those missed were as follows.
  • David Minor (@dhminor) of Chronopolis at UCSD Library, Jeremy York of HathiTrust and Amy Kirchhoff of Portico presented on the topic of "Experiences with TRAC: Chronopolis, HathiTrust and Portico".
  • Cal Lee of University of North Carolina at Chapel Hill, Jim Corridan of Indiana Commission on Public Records and Matt Veatch of Kansas State Historical Society presented on the topic of Preserving Electronic Records in the States.
  • Members of the NDSA Innovation Working Group presented "Defining Levels of Preservation"
  • Michele Kimpton and Andrew Woods of DuraSpace presented DuraCloud and Mark Evans and Mike Thuman of Tessella Inc presented Preservica in the third tools demo title, "Digital Preservation Systems and Cloud Services".
We were able to attend tools demo 4, as it pertained most to some of our research work. The first presentation of the session title "Web Archiving" was Lisa Gregory (@gregorylisa) of State Library of North Carolina who presented, "CINCH: Capture, INgest and CHecksum tool". The tool automates the transfer of online content to a repository using ingest technologies. Lisa asked, "How can we get those archive out of our repository and deposit them?"

The first steps in Cinch, a web-based tool, is for a user to login and upload a file consisting of a list of URLs that you would like the system to download. The URLs can be uploaded in CSV or a simple text format. To generate this list, users can utilize Archive-It, which outputs a PDF that Cinch is capable in taking as input.

Once Cinch locates the files at the URLs, it does a "duplicate check" to see if the system has downloaded it before or if you requested the file before. If the file is a duplicate or some other error occurs, Cinch writes the errors to a "problem files" folder and provides an audit trail that allows the user to correct the issue. Assuming success, once the file is on the destination file system, Cinch does a virus check, verifies and reset the last modified date, extracts the metadata, calculates the checksum (currently SHA-1 but it will support MD5 in the future) and again checks for a duplicate of the current download to see if there were any resultant checksum issues.

The final steps of the process are for the tool to package everything up in a zip file. Cinch currently allows files no greater than 0.5GB though if the result exceeds this, it will be split into multiple zips. Once the files in the user-specified list have been completely received and processed, Cinch e-mail the user with a URL to access the content.

The second presentation of the demo session was by Kris Carpenter Negulescu, of Internet Archive for the tool Heritrix, a web crawler created with preservation in mind. "Instead of just grabbing the text," she said, "we wanted to create a body of software that will grab only the data as defined by the user. The complexity of software is how it can be configured to collect a subset of a resource. For example, one video or one image."

Heritrix obeys the robots.txt file of a website and only downloads permitted content in its crawl. "Unless your are an institution that has a good reason to violate the robots file", Kris saidm "you ought to obey it." Heritrix also contains "revisit" records that allow the tool to bypass recording the payload of a resource that has not change and instead just records metadata on the subsequent crawl.

Speaking of Heritrix's interoperability, Kris said, "It's inherently designed to integrate with other capturing tools and services." Heritrix has many bells and whistles as well as many options that are intended to be applied to very large scale crawling.

For small crawls, however, it is overkill. "When you distribute a crawl, you can be very efficient with you collection." Kris reiterated. Heritrix's outputs WARC files though she emphasizes that this format is intended for storage and not access.

After another short break, the third set of concurrent sessions started. As before, we were only able to attend a limited number of sessions. Those that we could not were:
  • Funders Speed Dating, where conference attendees were able get face-to-face with some funders, receive advise and pitch ideas.
  • Panel Discussion on Assessing and Mitigating Bit-Level Preservation Risks, an NDSA Infrastructure Working Group with presentations by John Spencer of BMS/Chace LLC, Priscilla Caplan of Florida Virtual Campus, Andrea Goethals (@andreagoethals) of Harvard University and Micah Altman (@drmaltman) of MIT Libraries.
  • A sixth tools demo titled "Ingest Tools" with a presentations of CTS by Brendan Mannix (@b_mannix), Rosie Storey (@rosie_storey) and Kate Zwaard (@kzwa) of Library of Congress and Open Source Digitization Tools by Kate Murray, Courtney Egan and Jeff Reed of National Archives and Records Administration
  • A seventh tools demo titled, "Digital Preservation Systems" with presentations of Archivematica by Courtney C. Mumma of Artefactual Systems, Inc. and DAITSS by Priscilla Caplan of Florida Virtual Campus.
The session we did attend was Tools Demo #5 titled "Web Archiving" with a presentation of Archive-It by Lori Donovan of Internet Archive and WS-DL's own Mat Kelly presenting WARCreate. 

Mat went on first to present his Google Chrome extension that allows a user to create a WARC file from any browseable webpage. The process required a user to only browse to the webpage they want preserved and click a single button. "To overcome some of the limitations in Javascript and browser-instigated personal web archiving", Mat said, "I have also created a personal web archiving suite that not only makes up for browser extensions' capability but also provides additional tool to allow the user to leverage the web browser for personal web archiving."

He proceeded to show the conference's #digpres12 hash tag as well as no further work that must be done to make this preserved content replayable on a local Wayback instance. The suite provides an easy way for a user to utilize the WARCs generated from the tool through the included Wayback instance, configured for personal web archiving.

Lori Donovan of Internet Archive followed Mat with the presentation of Archive-IT, a hosted service that allows access and storage as well as collection specification of the resources at user-specified URLs. Archive-It allows users to specify crawl frequency among a plethora of other options for a completely customizable crawl to be executed. Lori proceeded to show example of collections including the K12 Collection as well as the Japan Earthquake collection. Archive-It allows the collecting of content of news as it unfolds and making sure that it's preserved. Archive-It also provides the facilities to initiate "Closure Crawls" to capture specific content that may have been missed with the initial crawl. There are also efforts by Archive-It to "capture content before it goes away", much like Archive Team. Archive-It provides a simple way to get a list of all of the collections as well as a UI to show which hosts the content was captured from and an Ajax-driven updated status of crawl, showing error, redirects, etc.

Lori then proceeded to go through the various sort of reports that a user can retrieve regarding their crawls including a seed source report, which shows for each seed how many URLs and documents were captured.  Multimedia like captured videos can have additional metadata attributed to it in Archive-It and allows a user to search the archive's metadata at the collection, seed and document level.
After finishing, an audience member asked what happens if a user is unable to continue to pay for the subscription to which Lori replied that the archive was retained and there were procedures in-place to allow the content to be hosted directly at Internet Archive.  After this last demo, Martha Anderson provided closing remarks to wrap up the conference.

— Mat Kelly

No comments:

Post a Comment