Showing posts with label open source. Show all posts
Showing posts with label open source. Show all posts

Monday, 14 January 2019

How we developed the OASIS web application with open collaboration in mind


By Sebastian Palucha, Strategy Technology Leader in Library and Archives. 

Recently York University Library and Archives celebrated Open Access week. During this time we highlighted York open access research outputs. However, openness has various forms and shapes, as we reflect in this blogpost. Here in the Digital York Technology Team, we support the development of research inspired web applications. In our day to day work we use an open source solution as well as adopting open development processes. What follows are some thoughts about our open development process, and how that has helped us to successfully collaborate with researchers over the development of two iterations of the OASIS web application.

Copyright: University of York

The Open Accessible Summaries in Language Studies (OASIS) initiative is an exciting project, sharing Open Access research papers. It is establishing a culture of systematic production and dissemination of non-technical, open summaries, making research available and accessible not only physically, but also conceptually to people outside academia. This is important because 1) research shows these findings do not reach stakeholders easily; and 2) research shows that academic publications are increasingly more difficult to read and understand for people outside the field. The summaries are one-page descriptions of research articles that have been published in peer-reviewed journals on the Social Science Citation Index. The summaries written in non-technical language provide information about the study’s goals, how it was conducted, and what was found. All  summaries have been approved, and are often (co-)written, by the author(s) of the original journal article.

Before explaining our open development process adopted for the OASIS project, I would like to reflect on our initial meeting with the OASIS academics. At that time I was the new manager of the Technology Team, with little knowledge of the team’s earlier development of the IRIS web application, OASIS older sister, and supported research domain. I was  frustrated with our ability to communicate effectively on technical challenges such as the long-term sustainability of research web applications. I was also challenged by  understanding all the specific research concepts and vocabularies in the research field of language learning and teaching which were required for this project. More importantly, the team were not clear about what researchers were asking us to develop. We had to work to some quickly approaching deadlines, as the first iteration of the application was expected to be presented at a conference 2 months after the start of the project. I felt that we were  sleepwalking to some unsatisfactory outcomes.

In retrospect, those frustrations in our early meetings helped us to realise our different underlying goals. On the one side, the Digital York Technology Team was preoccupied with the long-term maintenance of research web application such as OASIS. These issues are not seen by our users as they are deeply hidden beneath the application web interfaces. However, if not addressed early in the development process, the availability and long-term presence of open digital content could  be endangered. On the other side, the OASIS researchers were expecting the development process of the OASIS app to be swift, due to  repurposing source code from the IRIS web application. Sadly this was not a viable option.

Once we all realised that we are not able to deliver all the required features on time, we had to develop an efficient process that would allow us to prioritise developed work as well as to support quality of the end product. The development of this process was in parallel to our strategic decision on what our underlying digital library technology will be based on. Fortunately, the Digital York Technology Team is a partner for the vibrant Samvera community that develops open source solutions for digital libraries. We made a decision to use the Hyrax open source product for the OASIS web application. The list of full Hyrax characteristics is available at http://hyr.ax/. However, we had to carefully explain to researchers how the Hyrax functionality could be incorporated into the OASIS web application overall vision.

In our development processes we adopted open agile development practices. The OASIS source code is hosted on the GitHub (GH) service which allows for collaborative software development. We encouraged our research colleagues to use GH issues functionality to facilitate our detailed discussion on the specification and implementation of OASIS required features. During the first development sprint e.g. a short 6-week development effort guided by researchers, we prioritised our work in milestones. We introduced the demo site where all early implemented features could be tested by researchers and accepted once the required quality was achieved. We introduced labels to clearly state the importance and type of an issue as well as its status in the development process.

Based on our first sprint we have learned how important is to provide clear time estimates e.g. how long it will take to develop some required features. However inaccurate these estimates are, it helps to focus future development work based on the research priorities within the available developer resource time. During our second implementation sprint we matured the process and we introduced a GH project board which allowed us to see all required work in a single space and indicate status and action required (for example quality assurance testing) per workpiece. As we are preparing for the third and final sprint our communication was fully trusted and based on understanding mid-term goals (for example opening the OASIS service for the broader international research deposit as facilitated by research journal publishers). We are also learning the true cost of sustaining research web application development. This knowledge will help to cost similar work in future research grant applications.

The success of this work would not have been possible without the exceptional support and patient from OASIS researchers Emma Marsden, Rowena Kasprowich, Inge Alferink, Sophie Thompson and Volha Arhipenka as well as the Digital York Technology Team, particularly Yankui (Frank) Feng the OASIS lead developer.

Tuesday, 15 March 2016

A chance to develop your skills with Google Summer of Code

Google Summer of Code offers you an opportunity to hone your software development skills - and get paid for it. Gavin Atkinson explains more...





Google Summer of Code is an innovative program dedicated to getting university students from around the world involved with open source software development.

Google offer a $5,500 stipend to students in exchange for them working on open source software over the Summer. Running every year since 2005, nearly 11,000 projects have been accepted from students in over 100 countries by over 500 organisations, and several students from the University of York have participated in the past. This year 180 organisations are involved, in such diverse areas as compilers to operating systems, web applications to virtual reality, FPGAs to games, databases to genetic research. There are projects written with Python, Ruby, Java, C, assembly, JavaScript, and everything in between. Whatever your areas of interest, experience and knowledge, there is likely to be a project that fits your skill set. Students submit proposals to participating organisations to work on projects suggested either by themselves or by the organisations, and if selected they are paired up with a mentor from that organisation to help them throughout their twelve week project. Summer of Code is a fantastic way to spend your summer earning money writing and releasing open source code for the benefit of all.

Two organisations in particular participating in Google Summer of Code this year have a special connection with IT Services. Arthur Clune is involved with The Honeynet Project, a security research organisation dedicated to learning the tools, tactics and motives involved in computer and network attacks, and developing open source security tools to improve Internet security, with a focus on honeypots and threat analysis. I am part of The FreeBSD Project, an advanced operating system for modern server, desktop and embedded platforms which can be found powering everything from the PlayStation 4 to huge Juniper routers. It's at the core of Apple's OSX and powers the servers Netflix use to stream movies worldwide.

Even if neither of those projects interest you, do take a look through the full list of organisations, available at:


The closing date for applications is Friday 25 March.


Useful links: