From application to service development
Labrador, Hugo Gonzalez
ownCloud offers a great platform for developing applications that can integrate a variety of services, from document editing apps to image previews and more. After running the CERNBox service for the last 5 years, an ownCloud based cloud sync and share for CERN, we have identified that as more integrations are done in the ownCloud platform more knowledge is needed by the ownCloud operators to manage the platform. In CERNBox, we have introduced a distributed approach to split team responsibilities when developing service integrations. ownCloud offers a great platform for developing applications that can integrate a variety of services, from document editing apps to image previews and more. After running the CERNBox service for the last 5 years, an ownCloud based cloud sync and share for CERN, we have identified that as more integrations are done in the ownCloud platform more knowledge is needed by the ownCloud operators to manage the platform. In CERNBox, we have introduced a distributed approach to split team responsibilities when developing service integrations.
 Okay, this presentation changed a little bit of topic. So it's based on the experience of running an on-close service for the last five years and let's start with it. So how many of you that are running an on-close service, have you ever encountered a future request from some user asking you to integrate some application in order to manipulate markdown files or images or PDFs or LibreOffice documents or Office documents or root files, scientific files or Microsoft Visual files or Python notebooks or CAD designs or draw I.O. schemes or being able to edit HTML from the browser or edit Lattex files or opening videos from the web interface or inspecting the contents of a Thip or RaralCyfe, opening biological images, etc. And the list is growing. Every day users are demanding more and more integration. So how to deal with this? So the first is, okay, let's go to the on-close marketplace and see if we can find some application that fulfills this role. If we don't find it, let's try the other marketplace. Let's try to go to the next on-close marketplace. What happens if you don't find it in the next on-close marketplace? So you just develop it. So in Cermos, for example, we have developed some applications for viewing root files. So these are the scientific files used by the experiment. We have developed also viewers for the IPython notebooks. And we have also created an Office 365 integration to manipulate office files. So let's talk now about the application deployment and governance for this application. So usually you are an on-close administrator and you are running your on-close service. You will start adding applications that connect to other services. And usually, depending on the organization, you will have different teams that are responsible for different services. For example, you can have a team in your organization that is responsible for running the mail service, for running the Office 365 suite, for running images or video processing system, et cetera. And these teams have specific responsibilities. The problem is that as people demand more and more integrations, the connectors and the integration has to be done on an on-close application. So what this means is that the team responsible for running on-close will get more and more responsibilities for running services that are not under their scope, is not their domain. So this approach is easy because it's very easy to add application to the on-close platform. But it has this problem, that the team responsible for one domain now is an expert on different domains. So another approach that we are testing with CERNBOX is the following. So instead of developing applications, we develop services. And these services, now we push them to the provider. So these are companion services that can run alongside the service provider, like close to, for example, Office 365 or others. So basically, the on-close team responsible for running on-close, they can focus on having the platform up and running and patches, et cetera. But doesn't have to worry about the integration. Doesn't have to spend time learning about new integration, et cetera. And this, I imagine in some future that we can have something like this. So you can register a new service, for example, in on-close, where you say, okay, I want that for the MIME type application office, the viewing and manipulation of the files will be handled by this server. And this you can expand it to different MIME, like for imaging, videos, et cetera. So with this approach, the business domains are under the governance of the respective teams. And the thing that is running on the on-close service can focus specifically on making the platform better, rather than trying to maintain and integrate different applications. Of course, this doesn't fit everyone. This fit big deployment that run on-premise services. And this is just the beginning. So in the future from now, we will have not only views for editing files, et cetera, but we will have possibility, for example, for publishing from on-close, for example, for publishing scientific publication, for example, using a Zenodo service. We can also have a set of files that we want to preserve. So we can define it, for example, using the Rihanna service. We can also perform web analysis. So as soon as we have the S1 service to perform web analysis from the browser, so from S1 we can open files into the S1 and S1 will analyze the files. And at the end, the results of the analysis will be stored back on S1. So it's an integrated environment. Also we are also testing how we can integrate like a Shardix, Latex, editing functionality with Overlift. And also, for example, with Rocket Chat. So as you can see, the Sync and Share platforms are not Sync and Share platforms anymore. They are really collaborative halves. And they are already open source protocols, like for example, the WAPI protocol for manipulation and editing of files, for example. And currently, WAPI is used only for open office, like office documents and for collaborators trying also to test with it, but can be open for any type of collaboration. And we have in the last years seen a paradigm shift that we are focusing on human efficiency rather than on machine performance. So how many of you, for example, use GoToMeeting for web-based video calls? Or how many of you, for example, take notes in the Enclope platform? So I am one of them. And this is good because the time that takes to be productive is much more or less that you have to install dependencies in your laptop to start working. And in a physical environment, this can take two weeks to really understand what are the dependencies needed to run your analysis. And I will do a shameless plug here. So I invite you to assist to the CS3 conference. So this is the fifth edition that we will run in Rome, where it's about cloud services for synchronization and sharing. So if you don't want to wait for the next and great Enclope conference next year, I invite you to mark this date into your agenda. Thank you very much.
 Okay, this presentation changed a little bit of topic.  So it's based on the experience of running an on-close service for the last five years  and let's start with it.  So how many of you that are running an on-close service, have you ever encountered a future  request from some user asking you to integrate some application in order to manipulate markdown  files or images or PDFs or LibreOffice documents or Office documents or root files, scientific  files or Microsoft Visual files or Python notebooks or CAD designs or draw I.O. schemes  or being able to edit HTML from the browser or edit Lattex files or opening videos from  the web interface or inspecting the contents of a Thip or RaralCyfe, opening biological  images, etc.  And the list is growing.  Every day users are demanding more and more integration.  So how to deal with this?  So the first is, okay, let's go to the on-close marketplace and see if we can find some application  that fulfills this role.  If we don't find it, let's try the other marketplace.  Let's try to go to the next on-close marketplace.  What happens if you don't find it in the next on-close marketplace?  So you just develop it.  So in Cermos, for example, we have developed some applications for viewing root files.  So these are the scientific files used by the experiment.  We have developed also viewers for the IPython notebooks.  And we have also created an Office 365 integration to manipulate office files.  So let's talk now about the application deployment and governance for this application.  So usually you are an on-close administrator and you are running your on-close service.  You will start adding applications that connect to other services.  And usually, depending on the organization, you will have different teams that are responsible  for different services.  For example, you can have a team in your organization that is responsible for running the mail  service, for running the Office 365 suite, for running images or video processing system,  et cetera.  And these teams have specific responsibilities.  The problem is that as people demand more and more integrations, the connectors and the  integration has to be done on an on-close application.  So what this means is that the team responsible for running on-close will get more and more  responsibilities for running services that are not under their scope, is not their domain.  So this approach is easy because it's very easy to add application to the on-close platform.  But it has this problem, that the team responsible for one domain now is an expert on different  domains.  So another approach that we are testing with CERNBOX is the following.  So instead of developing applications, we develop services.  And these services, now we push them to the provider.  So these are companion services that can run alongside the service provider, like close  to, for example, Office 365 or others.  So basically, the on-close team responsible for running on-close, they can focus on having  the platform up and running and patches, et cetera.  But doesn't have to worry about the integration.  Doesn't have to spend time learning about new integration, et cetera.  And this, I imagine in some future that we can have something like this.  So you can register a new service, for example, in on-close, where you say, okay, I want that  for the MIME type application office, the viewing and manipulation of the files will  be handled by this server.  And this you can expand it to different MIME, like for imaging, videos, et cetera.  So with this approach, the business domains are under the governance of the respective  teams.  And the thing that is running on the on-close service can focus specifically on making the  platform better, rather than trying to maintain and integrate different applications.  Of course, this doesn't fit everyone.  This fit big deployment that run on-premise services.  And this is just the beginning.  So in the future from now, we will have not only views for editing files, et cetera, but  we will have possibility, for example, for publishing from on-close, for example, for  publishing scientific publication, for example, using a Zenodo service.  We can also have a set of files that we want to preserve.  So we can define it, for example, using the Rihanna service.  We can also perform web analysis.  So as soon as we have the S1 service to perform web analysis from the browser, so from S1  we can open files into the S1 and S1 will analyze the files.  And at the end, the results of the analysis will be stored back on S1.  So it's an integrated environment.  Also we are also testing how we can integrate like a Shardix, Latex, editing functionality  with Overlift.  And also, for example, with Rocket Chat.  So as you can see, the Sync and Share platforms are not Sync and Share platforms anymore.  They are really collaborative halves.  And they are already open source protocols, like for example, the WAPI protocol for manipulation  and editing of files, for example.  And currently, WAPI is used only for open office, like office documents and for collaborators  trying also to test with it, but can be open for any type of collaboration.  And we have in the last years seen a paradigm shift that we are focusing on human efficiency  rather than on machine performance.  So how many of you, for example, use GoToMeeting for web-based video calls?  Or how many of you, for example, take notes in the Enclope platform?  So I am one of them.  And this is good because the time that takes to be productive is much more or less that  you have to install dependencies in your laptop to start working.  And in a physical environment, this can take two weeks to really understand what are the  dependencies needed to run your analysis.  And I will do a shameless plug here.  So I invite you to assist to the CS3 conference.  So this is the fifth edition that we will run in Rome, where it's about cloud services  for synchronization and sharing.  So if you don't want to wait for the next and great Enclope conference next year, I  invite you to mark this date into your agenda.  Thank you very much.
ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_0_71.png ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_72_203.png ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_204_467.png ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_468_1811.png ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_1812_1955.png ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_1956_2159.png ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_2160_2255.png ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_2256_3875.png ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_3876_6107.png ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_6108_9839.png ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_9840_10499.png ownCloud_conference_2018_From_application_to_service_development_ID0cxk5w-8s_10500_10646.png
Okay, this presentation changed a little bit of topic. So it's based on the experience of running an on-close service for the last five years and let's start with it. So how many of you that are running an on-close service, have you ever encountered a future request from some user asking you to integrate some application in order to manipulate markdown files or images or PDFs or LibreOffice documents or Office documents or root files, scientific files or Microsoft Visual files or Python notebooks or CAD designs or draw I.O. schemes or being able to edit HTML from the browser or edit Lattex files or opening videos from the web interface or inspecting the contents of a Thip or RaralCyfe, opening biological images, etc. And the list is growing. Every day users are demanding more and more integration. So how to deal with this? So the first is, okay, let's go to the on-close marketplace and see if we can find some application that fulfills this role. If we don't find it, let's try the other marketplace. Let's try to go to the next on-close marketplace. What happens if you don't find it in the next on-close marketplace? So you just develop it. So in Cermos, for example, we have developed some applications for viewing root files. So these are the scientific files used by the experiment. We have developed also viewers for the IPython notebooks. And we have also created an Office 365 integration to manipulate office files. So let's talk now about the application deployment and governance for this application. So usually you are an on-close administrator and you are running your on-close service. You will start adding applications that connect to other services. And usually, depending on the organization, you will have different teams that are responsible for different services. For example, you can have a team in your organization that is responsible for running the mail service, for running the Office 365 suite, for running images or video processing system, et cetera. And these teams have specific responsibilities. The problem is that as people demand more and more integrations, the connectors and the integration has to be done on an on-close application. So what this means is that the team responsible for running on-close will get more and more responsibilities for running services that are not under their scope, is not their domain. So this approach is easy because it's very easy to add application to the on-close platform. But it has this problem, that the team responsible for one domain now is an expert on different domains. So another approach that we are testing with CERNBOX is the following. So instead of developing applications, we develop services. And these services, now we push them to the provider. So these are companion services that can run alongside the service provider, like close to, for example, Office 365 or others. So basically, the on-close team responsible for running on-close, they can focus on having the platform up and running and patches, et cetera. But doesn't have to worry about the integration. Doesn't have to spend time learning about new integration, et cetera. And this, I imagine in some future that we can have something like this. So you can register a new service, for example, in on-close, where you say, okay, I want that for the MIME type application office, the viewing and manipulation of the files will be handled by this server. And this you can expand it to different MIME, like for imaging, videos, et cetera. So with this approach, the business domains are under the governance of the respective teams. And the thing that is running on the on-close service can focus specifically on making the platform better, rather than trying to maintain and integrate different applications. Of course, this doesn't fit everyone. This fit big deployment that run on-premise services. And this is just the beginning. So in the future from now, we will have not only views for editing files, et cetera, but we will have possibility, for example, for publishing from on-close, for example, for publishing scientific publication, for example, using a Zenodo service. We can also have a set of files that we want to preserve. So we can define it, for example, using the Rihanna service. We can also perform web analysis. So as soon as we have the S1 service to perform web analysis from the browser, so from S1 we can open files into the S1 and S1 will analyze the files. And at the end, the results of the analysis will be stored back on S1. So it's an integrated environment. Also we are also testing how we can integrate like a Shardix, Latex, editing functionality with Overlift. And also, for example, with Rocket Chat. So as you can see, the Sync and Share platforms are not Sync and Share platforms anymore. They are really collaborative halves. And they are already open source protocols, like for example, the WAPI protocol for manipulation and editing of files, for example. And currently, WAPI is used only for open office, like office documents and for collaborators trying also to test with it, but can be open for any type of collaboration. And we have in the last years seen a paradigm shift that we are focusing on human efficiency rather than on machine performance. So how many of you, for example, use GoToMeeting for web-based video calls? Or how many of you, for example, take notes in the Enclope platform? So I am one of them. And this is good because the time that takes to be productive is much more or less that you have to install dependencies in your laptop to start working. And in a physical environment, this can take two weeks to really understand what are the dependencies needed to run your analysis. And I will do a shameless plug here. So I invite you to assist to the CS3 conference. So this is the fifth edition that we will run in Rome, where it's about cloud services for synchronization and sharing. So if you don't want to wait for the next and great Enclope conference next year, I invite you to mark this date into your agenda. Thank you very much.
an on-close service for the last five years and services. For example, you can have a team in responsibilities. The problem is that as people demand more and more integrations, the connectors and more responsibilities for running services instead of developing applications, we develop can focus specifically on making the platform publishing from on-close, for example, for Also we are also testing how we can integrate collaboration. And we have in the last years seen understand what are the dependencies needed to