Page 125 - Building Digital Libraries
P. 125

CHAPTER 5


                                                   Mobile Application Development

                                                   Libraries have largely stayed out of the mobile development space, choos-
                                                   ing instead to purchase programs that can turn application websites into
                                                   stand-alone mobile applications. But we think that this space is too big
                                                   to ignore. As of the time of this writing, more people access the Internet
                                                   through their mobile devices than through a traditional desktop environ-
                                                   ment. And in developing countries, mobile services are the only method of
                                                   Internet access. As mobile systems continue the trend of creating increas-
                                                   ingly walled gardens for their users, cultural heritage organizations will be
                                                   forced to make decisions around mobile development. And this will be hard,
                                                   since the mobile development of services, at least in the current paradigm,
                                                   is very local.



                                                   Applications Continue to Become More Micro

                                                   By now, individuals in the digital library space should be very familiar with
                                                   the microservices development model. Since 2010, a number of papers and
                                                   services have been created utilizing these concepts, in an effort to reduce
                                                   an application’s complexity and footprint. We believe that this process will
                                                   continue, as library software developers shift away from developing domain-
                                                   specific solutions and move to leverage existing solutions created outside of
                                                   the library community in order to solve large problems. This development
                                                   model is illustrated in the Fedora 4.x development. Fedora 3.x was a large,
                                                   monolithic object store that was designed for the long-term preservation
                                                   of digital objects. When the community began development on Fedora 4.x,
                                                   the decision was made to shift much of the core architecture outside of the
                                                   library community. This meant that Fedora 4.x development would entail
                                                   the development of a framework and messaging system around other open
                                                   source projects and technologies to achieve the same goal as Fedora 3.x. The
                                                   benefit of this was that the cultural heritage community would no longer
                                                   need to maintain the entire application stack, but only those parts that were
                                                   unique to the Fedora application. This type of development carries with
                                                   it certain risks, since it makes tools dependent on a much wider array of
                                                   dependencies, but it also shares the larger cost of development.



                                                   Deeper Reliance on Interpreted Languages
                                                   and JavaScript

                                                   Digital library development has always been separated into two camps:
                                                   system work that was primarily coded in Java, and process work that was
                                                   created in a range of interpreted languages (such as PHP, Ruby, PERL,
                                                   or Python). This is still true for much of the core software used in digital
                                                   libraries, but it is coming to an end. The cultural heritage development
                                                   community has been slowly shifting away from using Java as a develop-
                                                   ment language. Some of this might be due to the change in ownership of

            110
   120   121   122   123   124   125   126   127   128   129   130