Maintainable, adaptive Systems must be modular in nature. Hence OSGi, the open industry standard for modularity, provides the ideal foundations upon which the next generation of lightweight, adaptive public and private Cloud platforms and hosted applications can be built.
The talk will explore some of the current OSGi Alliance activities with respect to distributed computing, Cloud runtimes and the extension of OSGi concepts to more traditional software artifacts; specifically dynamic resolution, requirements and capabilities, remote services and semantic versioning.
Consideration will be given to the Operational benefits that can be derived from from adopting a modular approach to Cloud rather than the typical virtual machine based solutions that do nothing to address the complexity and technical debt that has been accrued over the years.
The talk will conclude with a demonstration of the Service Fabric, the industries first distributed OSGi cloud runtime, where the above concepts will be demonstrated.
Bios:
Richard Nicholson
In 2004, Richard, as Founder and CEO of Paremus, set the goal of building a truly adaptive & robust "Cloud runtime". Focussing on modularity and dynamic assembly as fundamental requirements, OSGi was adopted and the Paremus Service Fabric was the result. Richard, a Physicist by training, maintains keen interest in a number of research areas including Complexity and Complexity Adaptive Systems and Recovery Oriented techniques and their implications for the design of distributed self-maintaining systems.
Prior to founding Paremus in 2001, Richard headed the European Engineering function for Salomon Smith Barney/Citigroup, and was responsible for the delivery of the IT infrastructure for the Citigroup Canary Wharf facility. Richard graduated from Manchester University with Honors in Physics and went on to gain an Astrophysics doctorate from the Royal Greenwich Observatory.
Tim Ward
Tim is a Senior Consulting Engineer and Trainer at Paremus, a co-author of Enterprise OSGi in Action, and has been actively working with OSGi for over six years. Tim has been a regular participant in the OSGi Core Platform and Enterprise Expert Groups, and led the development of several specifications, including OSGi Promises and Asynchronous Services. Tim is also an active Open Source committer and a PMC member in the Apache Aries project, which provides a container for enterprise OSGi applications.
Tim is a regular conference speaker, and can often be found at JavaOne, Devoxx, OSGi DevCon, OSGi Community Event, EclipseCon, Jazoon and JAX London
Subsystems is an OSGi Alliance specification that standardizes the development and deployment of bundle collections. The specification was motivated by the need for bundle collections exhibited by many existing products & projects, including: Apache Karaf, Apache Aries, Eclipse Virgo, WebSphere Application Server, etc.
Three different types of collections are defined in the specification: feature, composite & application, each having different rules covering sharing of packages and services, and each being designed with different use cases in mind. Subsystems was first introduced in OSGi Enterprise R5 and since then work has continued on further enhancements. This talk will introduce the Subsystems specification, describe some practical use cases, provide demonstrations based on the Apache Aries Reference Implementation, and finally talk a bit about what's coming in the next version.
Bio:
Graham Charters is a Senior Technical Staff Member in the IBM WebSphere Application Server development organization. He is responsible for the OSGi Applications feature of the Application Server and a committer and PMC member of the Apache Aries OSGi programming model project. He is also the IBM technical lead in the OSGi Alliance Enterprise Expert Group.
Best Practices for (Enterprise) OSGi applications - Tim Wardmfrancis
OSGi DevCon 2012
Since the first release of the OSGi Enterprise specification in March 2010 the use of OSGi in the enterprise has increased dramatically. Moving traditional Java EE applications to an OSGi stack is intentionally as easy as possible, however there are a number of common mistakes that can make it feel very hard. This session will describe some best practices for developing Enterprise OSGi applications and OSGi bundles, allowing developers to utilise the power of OSGi in a painless way.
Whilst this session is primarily aimed at enterprise developers new to OSGi, much of the content is equally applicable to OSGi development in general, and is definitely recommended to anyone looking to brush up on their OSGi principles!
OSGi Best Practices – Learn how to prevent common mistakes and build robust, ...mfrancis
This document outlines best practices for developing modular applications using OSGi technology. It covers practices for the module layer such as compiling against minimum class libraries and properly specifying imports. Lifecycle layer practices include avoiding start ordering dependencies and handling service dynamism. Service layer practices include using the whiteboard and extender patterns. General practices include avoiding OSGi framework API coupling and ensuring thread safety. The document provides examples of problems that can occur when these practices are not followed and recommends solutions.
DevOps Patterns to Enable Success in MicroservicesRich Mills
Migrating to a microservices architecture isn't the easy utopia we hoped for. Success requires a combination of technical architecture, automation, and development methodology that all relate closely to Agile and DevOps. This presentation discusses patterns for team structure, CI/CD pipelines, and test automation that will help you successfully deliver solutions using microservices.
Presented at AgileDC, Sept 2019
This document discusses open source software and the Apache Software Foundation (ASF). It provides an overview of the history of open source development including key events and projects. It then describes how individuals and organizations can contribute to Apache projects, the benefits of contributing, and the processes used within the ASF community. The document also explains how FuseSource works with Apache projects, including how FuseSource employees contribute to Apache and how FuseSource packages certified distributions of Apache projects.
DevOps Patterns to Enable Success in MicroservicesRich Mills
Migrating to a microservices architecture isn't the easy utopia we hoped for. Success requires a combination of technical architecture, automation, and development methodology that all relate closely to Agile and DevOps. This presentation discusses patterns for team structure, CI/CD pipelines, and test automation that will help you successfully deliver solutions using microservices.
Presented at Agile 2019 (DC), Aug 2019
Subsystems is an OSGi Alliance specification that standardizes the development and deployment of bundle collections. The specification was motivated by the need for bundle collections exhibited by many existing products & projects, including: Apache Karaf, Apache Aries, Eclipse Virgo, WebSphere Application Server, etc.
Three different types of collections are defined in the specification: feature, composite & application, each having different rules covering sharing of packages and services, and each being designed with different use cases in mind. Subsystems was first introduced in OSGi Enterprise R5 and since then work has continued on further enhancements. This talk will introduce the Subsystems specification, describe some practical use cases, provide demonstrations based on the Apache Aries Reference Implementation, and finally talk a bit about what's coming in the next version.
Bio:
Graham Charters is a Senior Technical Staff Member in the IBM WebSphere Application Server development organization. He is responsible for the OSGi Applications feature of the Application Server and a committer and PMC member of the Apache Aries OSGi programming model project. He is also the IBM technical lead in the OSGi Alliance Enterprise Expert Group.
Best Practices for (Enterprise) OSGi applications - Tim Wardmfrancis
OSGi DevCon 2012
Since the first release of the OSGi Enterprise specification in March 2010 the use of OSGi in the enterprise has increased dramatically. Moving traditional Java EE applications to an OSGi stack is intentionally as easy as possible, however there are a number of common mistakes that can make it feel very hard. This session will describe some best practices for developing Enterprise OSGi applications and OSGi bundles, allowing developers to utilise the power of OSGi in a painless way.
Whilst this session is primarily aimed at enterprise developers new to OSGi, much of the content is equally applicable to OSGi development in general, and is definitely recommended to anyone looking to brush up on their OSGi principles!
OSGi Best Practices – Learn how to prevent common mistakes and build robust, ...mfrancis
This document outlines best practices for developing modular applications using OSGi technology. It covers practices for the module layer such as compiling against minimum class libraries and properly specifying imports. Lifecycle layer practices include avoiding start ordering dependencies and handling service dynamism. Service layer practices include using the whiteboard and extender patterns. General practices include avoiding OSGi framework API coupling and ensuring thread safety. The document provides examples of problems that can occur when these practices are not followed and recommends solutions.
DevOps Patterns to Enable Success in MicroservicesRich Mills
Migrating to a microservices architecture isn't the easy utopia we hoped for. Success requires a combination of technical architecture, automation, and development methodology that all relate closely to Agile and DevOps. This presentation discusses patterns for team structure, CI/CD pipelines, and test automation that will help you successfully deliver solutions using microservices.
Presented at AgileDC, Sept 2019
This document discusses open source software and the Apache Software Foundation (ASF). It provides an overview of the history of open source development including key events and projects. It then describes how individuals and organizations can contribute to Apache projects, the benefits of contributing, and the processes used within the ASF community. The document also explains how FuseSource works with Apache projects, including how FuseSource employees contribute to Apache and how FuseSource packages certified distributions of Apache projects.
DevOps Patterns to Enable Success in MicroservicesRich Mills
Migrating to a microservices architecture isn't the easy utopia we hoped for. Success requires a combination of technical architecture, automation, and development methodology that all relate closely to Agile and DevOps. This presentation discusses patterns for team structure, CI/CD pipelines, and test automation that will help you successfully deliver solutions using microservices.
Presented at Agile 2019 (DC), Aug 2019
Presentation on OSGi Cloud Ecosystems as presented during EclipseCon Europe 2012 (http://www.eclipsecon.org/europe2012/sessions/osgi-and-cloud-computing)
Lessons learned from a large scale OSGii web app - P Bakker & J de Vreedemfrancis
Building a large scale, cloud hosted, multi device product that changes the way students are taught in high schools, turns out to be not entirely trivial. We have been building PulseOn for the last two years. We faced many technical challenges, and have tried many different technologies. Some ideas turned out to be extremely helpful, some other ideas that looked promising turned out to be bad practices. In this talk we will discuss what we have learned about building modular, scalable web applications. We will go into different areas of the technology stack, from storage and (nosql) databases to a modular RESTful backend and a multi device HTML5 based frontend. We will also go into the cloud, and discuss topics such as auto scaling and failover. We will discuss what works and what doesn’t, and hopefully help other to make the right decisions.
Some topics that we will touch upon:
- Modular architecture with OSGi
- Failing at linked data and semantic databases
- Using MongoDB from OSGi
- Release process and semantic versioning
- Continuous deployment
- JavaScript frameworks
Bios:
Paul Bakker
Paul is a software architect for Luminis Technologies and the author of “Building Modular Cloud Apps With OSGi”. He believes that modularity and the cloud are the two main challenges we have to deal with to bring technology to the next level, and is working on making this possible for mainstream software development. Today he is working on educational software focussed on personalised learning for high school students in the Netherlands. Paul is an active contributor on open source projects such as Amdatu, Apache ACE and BndTools.
He has a background as a trainer on Java related technology and is a regular speaker on conferences such as JavaOne, Devoxx and JFokus.
Jago de Vreede
Jago is a software engineer at Luminis Technologies, as a software engineer he has seen a broad-spectrum of projects and he has been working on a large OSGi project for the last year. His work is not exclusive to java development but also does front-end development, and the integration between these. Performance tuning and optimizations are also part of his work.
Cloud & OSGi - The Dawn of Composite Clouds (Now with demo videos)mfrancis
Presentation by Richard Nicholson (Paremus) from OSGi DevCon / EclipseCon 2011.
Now with demo videos.
Despite the element of novelty and fashion, there is little doubt that Cloud Computing will have a fundamental and long lasting influence on the technology landscape. Yet virtual machine based Cloud Compute offerings, which attempt to maximise resource utilisation and minimise operational management of those resources, have nothing to say about the dominant contributor to an organisations IT OPEX. Application maintainability accounts for approximately 70% of an applications TCO. To increase application maintainability, one must modularise and preferably modularise using an industry standard. Hence, for organisations with large in-house development teams, it is predicted that OSGi will have equivalent or greater impact than Cloud Computing! This presentation will look at the intersect of Cloud Computing and OSGi based Composite Applications. Areas explored will include the importance of dynamic dependency management, the anatomy of cloud enabled composite applications and the role of the PaaS in an OSGi enabled Cloud. Relevant OSGi standards will be reviewed along with how these may be used to address the configuration and management of distributed Cloud hosted composite applications. The presentation will conclude by demonstrating a distributed Cloud / OSGi runtime that demonstrates the concepts discussed
Creating an all-purpose REST API for Cloud services using OSGi and Sling - C ...mfrancis
OSGi Community Event 2014
Abstract:
Let's say you need to provide an internet service to your users. Chances are that your service should be available via REST. Let's say your service should both provide data to users as well as accept data posted by users, and possibly some logic. Now let's assume your service turns out to become incredibly popular, with lots and lots of users. Sounds like you need Sling and OSGi in the cloud.
In this talk Carsten and David will go through the OSGi and Sling architecture to achieve this. The talk outlines how the OSGi Cloud Ecosystems RFC is used in combination with Apache jclouds to achieve vendor independence. It also discusses how automatic scaling depending on measured load is achieved to ensure responsiveness. The resulting system is a dynamic cloud application handling any REST API, which can scale up and down depending on the need.
Speaker Bios:
David Bosschaert
David Bosschaert works for Adobe Research and Development. He spends the much of his time on technology relating to OSGi in Apache and other open source projects. He is also co-chair of the OSGi Enterprise Expert Group and an active participant in the OSGi Cloud efforts.
Before joining Adobe, David worked for Red Hat/JBoss and IONA Technologies in Dublin, Ireland.
Carsten Ziegeler
Carsten Ziegeler is senior developer at Adobe Research Switzerland and spends most of his time on architectural and infrastructure topics. Working for over 25 years in open source projects, Carsten is a member of the Apache Software Foundation and heavily participates in several Apache communities including Sling, Felix and ACE. He is a frequent speaker on technology and open source conferences and participates in the OSGi Core Platform and Enterprise expert groups.
Robust collaboration services with OSGi - Satya Maheshwarimfrancis
The document discusses how Adobe Connect, Adobe's web conferencing platform, uses the OSGi framework to create a modular architecture. This allows individual components like audio conferencing to be updated independently without disrupting the entire application. It also avoids single points of failure by distributing components across multiple OSGi bundles. The speaker describes how audio conferencing is implemented using different OSGi bundles for the telephony manager, adaptors for each conferencing service, and asynchronous communication between bundles using event handlers.
The document discusses moving from distributed OSGi to pervasive OSGi. It describes how OSGi supports software modularity through modules called bundles that can export and import packages. Distributed OSGi allows bundles to access remote services by using proxies. Approaches like R-OSGi and Eclipse Communication Framework implement distributed OSGi. The document argues that software modularity through bundles can help address challenges in building distributed and cloud applications.
Using OSGi as a Cloud Platform - Jan Rellermeyermfrancis
This document discusses using OSGi as a platform for cloud computing. It addresses challenges like lack of elasticity in traditional software stacks and dependence on external platforms for computation. OSGi's modularity features like loose coupling, encapsulation and substitutability help address these issues by allowing independent scaling of components. The document proposes building on existing OSGi standards like ConfigAdmin and Remote Service Admin to provide services like state management and service discovery in distributed deployments. It outlines a potential REST API and architecture for managing OSGi framework instances in the cloud.
Cloud and OSGi at eBay - OSGi Cloud Workshop March 2012mfrancis
PaaS stands for Platform as a Service and provides an orchestration layer between front end applications and backend services. It allows for software deployment, application monitoring, topology provisioning, and SLA management. PaaS leverages IaaS resources and provides a standardized way to build, deploy, and manage applications independently of underlying infrastructure.
This document discusses OSGi and private clouds. It provides an overview of cloud computing today and the benefits of private clouds over public clouds in terms of data ownership and control. The document then discusses how OSGi, with its modularity and dynamic features, is well-suited for cloud platforms and provides benefits like customization, dynamism, and lightweight architectures. It acknowledges challenges with OSGi and cloud integration like complexity, classloading issues, and metadata handling. The document describes an OSGi-based cloud platform called Nimble and Service Fabric that provides repositories, provisioning, and management features. It concludes with a demonstration of deploying an OSGi application to a single VM and scaling it using this platform.
OSGi PaaS+ building a modular and secure cloud platform with OSGi - A Grzesikmfrancis
This talks gives an introduction to our open PaaS+ Cloud Platform for modular OSGi applications based on OpenShift [1]. Extending OpenShift by an OSGi service framework results in a modular and scalable Java PaaS (Platform as a Service) that features a modular build and deployment mechanism and helps to speed up application development while also making it more robust. The platform comes with a build in Apache Karaf server runtime enhanced by OSGi enabled base services such as Authentication, Rules Engine, Business Process Engine, Polyglot Persistence, Search and Indexing and an integrated OBR. These services are available through a consistent API and are orchestrated by the integrated OSGi framework.
We will show how the OSGi PaaS+ platform supports application developers in the complete application lifecycle from development to production to achieve a faster time to market. It will also cover an example of a domain specific API in the healthcare sector, where special requirements on data security during storage and transfer will be met to secure sensitive data in the cloud. With sight on the healthcare and other sectors handling sensitive data, the cloud is challenged with special requirements on data security during storage and transfer. Thus leading to the need to address customer concerns respecting privacy in much more detail than in other areas. We will also describe how to extend the platform for other domains.
The OSGi PaaS+ platform is based on research results from the TRESOR - Trusted Ecosystem for Standardized and Open cloud-based Resources – project to provide an open ecosystem for cloud applications for the health care sector [2]. TRESOR is part of the Trusted Cloud initiative [3], funded by the German Federal Ministry of Economics and Technology.
Bio:
Alexander is the head of development of medisite Systemhaus GmbH and responsible for the development of the the PaaS+ cloud platform the clinical information system m.life and software architect for the TRESOR Project.
He has 15 years of work experience in medical Software development as team leader and software architect.
Expert for Software Architecture, OSGi, Java and Java EE.
Alexander has been a speaker at several conferences including EclipseCon Europe and the OpenShift Community Day.
Better WebApp Development using OSGi - Raymond Augemfrancis
OSGi Community Event 2015
Webapp development still proliferates the software industry and is becoming more complex every day. This talk will look at modern Webapp programming practices made possible by OSGi specifications to empower developers while simplifying things.
Java EE 6 is an awesome platform, but how do you design a system that can evolve for many years in production? And how do we run this stuff in the cloud?
Designing a system that can evolve without creating a maintenance nightmare is far from trivial. A service oriented, modular architecture will help a lot to replace parts of a system without breaking others. The only mature modularity approach for Java is OSGi - a framework that enables low-level modularity and services, but you still need APIs to create web applications, use transactions, access data sources etc. Without these APIs you will have a hard time building applications. Unfortunately OSGi and Java EE did not interoperate well in the past; But what if we want modularity in our architecture but also the ease-of-use of Java EE 6?
In this university you will:
1. Understand the benefits of a modular code base
2. Learn how to mix OSGi and Java EE
3. Manage modular cloud deployments using Apache ACE
..and of course there will be lots of live coding!
The document discusses complexity, components, and clouds as they relate to distributed systems. It defines complexity and discusses accidental versus necessary complexity. Components are described as a way to abstract and isolate complexity through modularity. Several characteristics of clouds are outlined, including elasticity, abstraction, robustness through agility and lack of single points of failure, understanding composite systems, multi-tenancy, and architectural invisibility. The Paremus Service Fabric is introduced as a model-driven runtime that can deploy systems according to models and monitor them.
Modular JavaScript in an OSGi World - S Makmfrancis
What percentage of your web-app is written in JavaScript? Don’t be surprised if it’s more than half of your codebase. With the advent of HTML5 and single-page-applications driven by RESTful backends, the amount of JavaScript keeps growing. On the Java side, OSGi allows us to create modular, flexible applications. But how does this translate to the client-side? Isn’t a ‘single-page-application’ fundamentally at odds with modularity?
In this session we take a look at the currently available tools for modularity in JavaScript. There are several ways you can combine existing JavaScript module systems with OSGi-based development on the backend. We discuss tradeoffs between these different approaches based on real-world experience with large JavaScript front-ends and OSGi back-ends. In particular an example combining OSGi, RequireJS and AngularJS is presented. Along with practical advice based on current technology, we also look forward at relevant upcoming standards such as Web Components. After this session you’ll have a solid grasp of modular JavaScript development in an OSGi world.
Bio:
After getting his master's degree in Software Technology, Sander became a software developer/architect. Currently he works as Senior Software Engineer for Luminis Technologies, specializing in modular Java and JavaScript development. Additionally, data analysis and machine learning are part of his ever growing list of interests. Sander loves sharing knowledge, for example through his blog (at http://branchandbound.net) and by writing for the Dutch Java Magazine. He speaks regularly at various international developer conferences (including JavaOne, J-Fall, JEEConf), sharing his passion for Java, alternative JVM languages and related technologies.
Modern applications and software solutions increasingly center around loosely coupled and extensible architectures. Component or Service orientation is applied in almost all areas of application development including distributed systems, ubiquitous computing, embedded systems, and client-side applications.
The Java based OSGi framework specification lends itself well as a platform for loosely coupled and extensible applications and is rapidly gaining ground as the de-facto plugin solution for Java based applications. It allows for lightweight implementations that limit themselves to the CDC profile and are ideally suited as embedded plugin frameworks.
One of the main drawbacks of dynamically extensible applications, however, are the potential security issues that arise due to executing untrusted code without appropriated safety-measures in place. Secure sandboxes and their restrictions are difficult to get right and often hard to deal with in the development of applications. The OSGi specifications have an extensive and very powerful security model that eases this difficult task.
This presentation focuses on embedding various OSGi framework implementations namely, Eclipse Equinox and Apache Felix, into applications as a means of plugin mechanism while taking advantage of the often overlooked benefits of this solution: security.
Deploying Heterogeneous Artifacts to the Cloud with OSGi - Neil Bartlettmfrancis
OSGi DevCon 2013
OSGi is a wonderful platform for cloud deployment... but modern software stacks are increasingly heterogeneous in nature. This means that alongside our OSGi bundles we must be able to deploy non-OSGi artifacts such as monolithic Java applications or even native libraries and executables. Furthermore the platforms onto which we deploy may be heterogeneous, i.e. having different operating systems, processors, memory, GPU etc.
Nevertheless we would still like to enjoy the benefits of OSGi's lifecycle model, its resolver, strong version support, configuration system, and service publication. Can we get the best of both worlds?
In this talk we will demonstrate how arbitrary artifacts can be deployed and managed across a cloud environment using Paremus Packager and the latest OSGi specifications. The demo will start from a simple blog application developed as pure OSGi bundles, then proceed to mix in a choice of databases (MongoDB or Apache Derby), a messaging server (Mosquitto or RabbitMQ), and a web UI (Ruby on Rails). All these artifacts are resolved automatically from an OSGi R5 repository, provisioned onto the correct node according to platform requirements, and configured from a single operations-friendly source. Once running they discover and connect to each other without intervention.
The talk concludes with a brief overview of how the artifact packaging works, and how an arbitrary artifact can be wrapped for use with OSGi.
server to cloud: converting a legacy platform to an open source paasTodd Fritz
This session discusses the process to move legacy applications "into the cloud". It is intended for a diverse audience including developers, architects, and managers. We will discuss techniques, methodologies, and thought processes used to analyze, design, and execute a migration strategy and implementation plan -- from planning through rollout and operational.
An important aspect of this is the necessity for technical staff to effectively communicate to mid-level management how these design decisions and strategies translate into cost, complexity and schedule.
Commonly used migration strategies, cloud technologies, architecture options, and low level technologies will be discussed.
The case will be made that investing in strategic refactoring and decomposition during the migration will reap the benefits of a modern, decoupled and simplified system.
The end game being alignment and adoption of current best practices around PaaS, Saas, SOA, event-driven architectures, and message-oriented middleware, at scale in the cloud, to provide quantifiable business value.
This talk will focus more on the big picture, at times delving into technical architectures and discussion of certain technologies and service providers.
Use of Containers (Docker) is evangelized for decoupling and decomposing legacy systems.
Accelerating breakthrough business technologies in atlanta, tag featured spea...Melanie Brandt
The document discusses emerging technologies including the internet of things, augmented reality, bitcoin, and autonomous systems. It presents examples of applications in transportation like traffic analytics from video cameras, healthcare like non-contact patient monitoring, and payments through accepting bitcoin. The document argues we are entering a fifth wave of technology driven by intelligent systems and autonomous agents that can plan, observe, and execute actions through continuous monitoring and updating of plans.
Presentation on OSGi Cloud Ecosystems as presented during EclipseCon Europe 2012 (http://www.eclipsecon.org/europe2012/sessions/osgi-and-cloud-computing)
Lessons learned from a large scale OSGii web app - P Bakker & J de Vreedemfrancis
Building a large scale, cloud hosted, multi device product that changes the way students are taught in high schools, turns out to be not entirely trivial. We have been building PulseOn for the last two years. We faced many technical challenges, and have tried many different technologies. Some ideas turned out to be extremely helpful, some other ideas that looked promising turned out to be bad practices. In this talk we will discuss what we have learned about building modular, scalable web applications. We will go into different areas of the technology stack, from storage and (nosql) databases to a modular RESTful backend and a multi device HTML5 based frontend. We will also go into the cloud, and discuss topics such as auto scaling and failover. We will discuss what works and what doesn’t, and hopefully help other to make the right decisions.
Some topics that we will touch upon:
- Modular architecture with OSGi
- Failing at linked data and semantic databases
- Using MongoDB from OSGi
- Release process and semantic versioning
- Continuous deployment
- JavaScript frameworks
Bios:
Paul Bakker
Paul is a software architect for Luminis Technologies and the author of “Building Modular Cloud Apps With OSGi”. He believes that modularity and the cloud are the two main challenges we have to deal with to bring technology to the next level, and is working on making this possible for mainstream software development. Today he is working on educational software focussed on personalised learning for high school students in the Netherlands. Paul is an active contributor on open source projects such as Amdatu, Apache ACE and BndTools.
He has a background as a trainer on Java related technology and is a regular speaker on conferences such as JavaOne, Devoxx and JFokus.
Jago de Vreede
Jago is a software engineer at Luminis Technologies, as a software engineer he has seen a broad-spectrum of projects and he has been working on a large OSGi project for the last year. His work is not exclusive to java development but also does front-end development, and the integration between these. Performance tuning and optimizations are also part of his work.
Cloud & OSGi - The Dawn of Composite Clouds (Now with demo videos)mfrancis
Presentation by Richard Nicholson (Paremus) from OSGi DevCon / EclipseCon 2011.
Now with demo videos.
Despite the element of novelty and fashion, there is little doubt that Cloud Computing will have a fundamental and long lasting influence on the technology landscape. Yet virtual machine based Cloud Compute offerings, which attempt to maximise resource utilisation and minimise operational management of those resources, have nothing to say about the dominant contributor to an organisations IT OPEX. Application maintainability accounts for approximately 70% of an applications TCO. To increase application maintainability, one must modularise and preferably modularise using an industry standard. Hence, for organisations with large in-house development teams, it is predicted that OSGi will have equivalent or greater impact than Cloud Computing! This presentation will look at the intersect of Cloud Computing and OSGi based Composite Applications. Areas explored will include the importance of dynamic dependency management, the anatomy of cloud enabled composite applications and the role of the PaaS in an OSGi enabled Cloud. Relevant OSGi standards will be reviewed along with how these may be used to address the configuration and management of distributed Cloud hosted composite applications. The presentation will conclude by demonstrating a distributed Cloud / OSGi runtime that demonstrates the concepts discussed
Creating an all-purpose REST API for Cloud services using OSGi and Sling - C ...mfrancis
OSGi Community Event 2014
Abstract:
Let's say you need to provide an internet service to your users. Chances are that your service should be available via REST. Let's say your service should both provide data to users as well as accept data posted by users, and possibly some logic. Now let's assume your service turns out to become incredibly popular, with lots and lots of users. Sounds like you need Sling and OSGi in the cloud.
In this talk Carsten and David will go through the OSGi and Sling architecture to achieve this. The talk outlines how the OSGi Cloud Ecosystems RFC is used in combination with Apache jclouds to achieve vendor independence. It also discusses how automatic scaling depending on measured load is achieved to ensure responsiveness. The resulting system is a dynamic cloud application handling any REST API, which can scale up and down depending on the need.
Speaker Bios:
David Bosschaert
David Bosschaert works for Adobe Research and Development. He spends the much of his time on technology relating to OSGi in Apache and other open source projects. He is also co-chair of the OSGi Enterprise Expert Group and an active participant in the OSGi Cloud efforts.
Before joining Adobe, David worked for Red Hat/JBoss and IONA Technologies in Dublin, Ireland.
Carsten Ziegeler
Carsten Ziegeler is senior developer at Adobe Research Switzerland and spends most of his time on architectural and infrastructure topics. Working for over 25 years in open source projects, Carsten is a member of the Apache Software Foundation and heavily participates in several Apache communities including Sling, Felix and ACE. He is a frequent speaker on technology and open source conferences and participates in the OSGi Core Platform and Enterprise expert groups.
Robust collaboration services with OSGi - Satya Maheshwarimfrancis
The document discusses how Adobe Connect, Adobe's web conferencing platform, uses the OSGi framework to create a modular architecture. This allows individual components like audio conferencing to be updated independently without disrupting the entire application. It also avoids single points of failure by distributing components across multiple OSGi bundles. The speaker describes how audio conferencing is implemented using different OSGi bundles for the telephony manager, adaptors for each conferencing service, and asynchronous communication between bundles using event handlers.
The document discusses moving from distributed OSGi to pervasive OSGi. It describes how OSGi supports software modularity through modules called bundles that can export and import packages. Distributed OSGi allows bundles to access remote services by using proxies. Approaches like R-OSGi and Eclipse Communication Framework implement distributed OSGi. The document argues that software modularity through bundles can help address challenges in building distributed and cloud applications.
Using OSGi as a Cloud Platform - Jan Rellermeyermfrancis
This document discusses using OSGi as a platform for cloud computing. It addresses challenges like lack of elasticity in traditional software stacks and dependence on external platforms for computation. OSGi's modularity features like loose coupling, encapsulation and substitutability help address these issues by allowing independent scaling of components. The document proposes building on existing OSGi standards like ConfigAdmin and Remote Service Admin to provide services like state management and service discovery in distributed deployments. It outlines a potential REST API and architecture for managing OSGi framework instances in the cloud.
Cloud and OSGi at eBay - OSGi Cloud Workshop March 2012mfrancis
PaaS stands for Platform as a Service and provides an orchestration layer between front end applications and backend services. It allows for software deployment, application monitoring, topology provisioning, and SLA management. PaaS leverages IaaS resources and provides a standardized way to build, deploy, and manage applications independently of underlying infrastructure.
This document discusses OSGi and private clouds. It provides an overview of cloud computing today and the benefits of private clouds over public clouds in terms of data ownership and control. The document then discusses how OSGi, with its modularity and dynamic features, is well-suited for cloud platforms and provides benefits like customization, dynamism, and lightweight architectures. It acknowledges challenges with OSGi and cloud integration like complexity, classloading issues, and metadata handling. The document describes an OSGi-based cloud platform called Nimble and Service Fabric that provides repositories, provisioning, and management features. It concludes with a demonstration of deploying an OSGi application to a single VM and scaling it using this platform.
OSGi PaaS+ building a modular and secure cloud platform with OSGi - A Grzesikmfrancis
This talks gives an introduction to our open PaaS+ Cloud Platform for modular OSGi applications based on OpenShift [1]. Extending OpenShift by an OSGi service framework results in a modular and scalable Java PaaS (Platform as a Service) that features a modular build and deployment mechanism and helps to speed up application development while also making it more robust. The platform comes with a build in Apache Karaf server runtime enhanced by OSGi enabled base services such as Authentication, Rules Engine, Business Process Engine, Polyglot Persistence, Search and Indexing and an integrated OBR. These services are available through a consistent API and are orchestrated by the integrated OSGi framework.
We will show how the OSGi PaaS+ platform supports application developers in the complete application lifecycle from development to production to achieve a faster time to market. It will also cover an example of a domain specific API in the healthcare sector, where special requirements on data security during storage and transfer will be met to secure sensitive data in the cloud. With sight on the healthcare and other sectors handling sensitive data, the cloud is challenged with special requirements on data security during storage and transfer. Thus leading to the need to address customer concerns respecting privacy in much more detail than in other areas. We will also describe how to extend the platform for other domains.
The OSGi PaaS+ platform is based on research results from the TRESOR - Trusted Ecosystem for Standardized and Open cloud-based Resources – project to provide an open ecosystem for cloud applications for the health care sector [2]. TRESOR is part of the Trusted Cloud initiative [3], funded by the German Federal Ministry of Economics and Technology.
Bio:
Alexander is the head of development of medisite Systemhaus GmbH and responsible for the development of the the PaaS+ cloud platform the clinical information system m.life and software architect for the TRESOR Project.
He has 15 years of work experience in medical Software development as team leader and software architect.
Expert for Software Architecture, OSGi, Java and Java EE.
Alexander has been a speaker at several conferences including EclipseCon Europe and the OpenShift Community Day.
Better WebApp Development using OSGi - Raymond Augemfrancis
OSGi Community Event 2015
Webapp development still proliferates the software industry and is becoming more complex every day. This talk will look at modern Webapp programming practices made possible by OSGi specifications to empower developers while simplifying things.
Java EE 6 is an awesome platform, but how do you design a system that can evolve for many years in production? And how do we run this stuff in the cloud?
Designing a system that can evolve without creating a maintenance nightmare is far from trivial. A service oriented, modular architecture will help a lot to replace parts of a system without breaking others. The only mature modularity approach for Java is OSGi - a framework that enables low-level modularity and services, but you still need APIs to create web applications, use transactions, access data sources etc. Without these APIs you will have a hard time building applications. Unfortunately OSGi and Java EE did not interoperate well in the past; But what if we want modularity in our architecture but also the ease-of-use of Java EE 6?
In this university you will:
1. Understand the benefits of a modular code base
2. Learn how to mix OSGi and Java EE
3. Manage modular cloud deployments using Apache ACE
..and of course there will be lots of live coding!
The document discusses complexity, components, and clouds as they relate to distributed systems. It defines complexity and discusses accidental versus necessary complexity. Components are described as a way to abstract and isolate complexity through modularity. Several characteristics of clouds are outlined, including elasticity, abstraction, robustness through agility and lack of single points of failure, understanding composite systems, multi-tenancy, and architectural invisibility. The Paremus Service Fabric is introduced as a model-driven runtime that can deploy systems according to models and monitor them.
Modular JavaScript in an OSGi World - S Makmfrancis
What percentage of your web-app is written in JavaScript? Don’t be surprised if it’s more than half of your codebase. With the advent of HTML5 and single-page-applications driven by RESTful backends, the amount of JavaScript keeps growing. On the Java side, OSGi allows us to create modular, flexible applications. But how does this translate to the client-side? Isn’t a ‘single-page-application’ fundamentally at odds with modularity?
In this session we take a look at the currently available tools for modularity in JavaScript. There are several ways you can combine existing JavaScript module systems with OSGi-based development on the backend. We discuss tradeoffs between these different approaches based on real-world experience with large JavaScript front-ends and OSGi back-ends. In particular an example combining OSGi, RequireJS and AngularJS is presented. Along with practical advice based on current technology, we also look forward at relevant upcoming standards such as Web Components. After this session you’ll have a solid grasp of modular JavaScript development in an OSGi world.
Bio:
After getting his master's degree in Software Technology, Sander became a software developer/architect. Currently he works as Senior Software Engineer for Luminis Technologies, specializing in modular Java and JavaScript development. Additionally, data analysis and machine learning are part of his ever growing list of interests. Sander loves sharing knowledge, for example through his blog (at http://branchandbound.net) and by writing for the Dutch Java Magazine. He speaks regularly at various international developer conferences (including JavaOne, J-Fall, JEEConf), sharing his passion for Java, alternative JVM languages and related technologies.
Modern applications and software solutions increasingly center around loosely coupled and extensible architectures. Component or Service orientation is applied in almost all areas of application development including distributed systems, ubiquitous computing, embedded systems, and client-side applications.
The Java based OSGi framework specification lends itself well as a platform for loosely coupled and extensible applications and is rapidly gaining ground as the de-facto plugin solution for Java based applications. It allows for lightweight implementations that limit themselves to the CDC profile and are ideally suited as embedded plugin frameworks.
One of the main drawbacks of dynamically extensible applications, however, are the potential security issues that arise due to executing untrusted code without appropriated safety-measures in place. Secure sandboxes and their restrictions are difficult to get right and often hard to deal with in the development of applications. The OSGi specifications have an extensive and very powerful security model that eases this difficult task.
This presentation focuses on embedding various OSGi framework implementations namely, Eclipse Equinox and Apache Felix, into applications as a means of plugin mechanism while taking advantage of the often overlooked benefits of this solution: security.
Deploying Heterogeneous Artifacts to the Cloud with OSGi - Neil Bartlettmfrancis
OSGi DevCon 2013
OSGi is a wonderful platform for cloud deployment... but modern software stacks are increasingly heterogeneous in nature. This means that alongside our OSGi bundles we must be able to deploy non-OSGi artifacts such as monolithic Java applications or even native libraries and executables. Furthermore the platforms onto which we deploy may be heterogeneous, i.e. having different operating systems, processors, memory, GPU etc.
Nevertheless we would still like to enjoy the benefits of OSGi's lifecycle model, its resolver, strong version support, configuration system, and service publication. Can we get the best of both worlds?
In this talk we will demonstrate how arbitrary artifacts can be deployed and managed across a cloud environment using Paremus Packager and the latest OSGi specifications. The demo will start from a simple blog application developed as pure OSGi bundles, then proceed to mix in a choice of databases (MongoDB or Apache Derby), a messaging server (Mosquitto or RabbitMQ), and a web UI (Ruby on Rails). All these artifacts are resolved automatically from an OSGi R5 repository, provisioned onto the correct node according to platform requirements, and configured from a single operations-friendly source. Once running they discover and connect to each other without intervention.
The talk concludes with a brief overview of how the artifact packaging works, and how an arbitrary artifact can be wrapped for use with OSGi.
server to cloud: converting a legacy platform to an open source paasTodd Fritz
This session discusses the process to move legacy applications "into the cloud". It is intended for a diverse audience including developers, architects, and managers. We will discuss techniques, methodologies, and thought processes used to analyze, design, and execute a migration strategy and implementation plan -- from planning through rollout and operational.
An important aspect of this is the necessity for technical staff to effectively communicate to mid-level management how these design decisions and strategies translate into cost, complexity and schedule.
Commonly used migration strategies, cloud technologies, architecture options, and low level technologies will be discussed.
The case will be made that investing in strategic refactoring and decomposition during the migration will reap the benefits of a modern, decoupled and simplified system.
The end game being alignment and adoption of current best practices around PaaS, Saas, SOA, event-driven architectures, and message-oriented middleware, at scale in the cloud, to provide quantifiable business value.
This talk will focus more on the big picture, at times delving into technical architectures and discussion of certain technologies and service providers.
Use of Containers (Docker) is evangelized for decoupling and decomposing legacy systems.
Accelerating breakthrough business technologies in atlanta, tag featured spea...Melanie Brandt
The document discusses emerging technologies including the internet of things, augmented reality, bitcoin, and autonomous systems. It presents examples of applications in transportation like traffic analytics from video cameras, healthcare like non-contact patient monitoring, and payments through accepting bitcoin. The document argues we are entering a fifth wave of technology driven by intelligent systems and autonomous agents that can plan, observe, and execute actions through continuous monitoring and updating of plans.
Talk held at the IEEE GLOBECOM 2014 Industry Workshop on the Internet of Things and Services about how the Web of Things (WoT) and Semantic Technologies add interoperability to the Internet of Things (IoT)
FARO and LFM Software, a Winning Combination for Project Execution in the Ind...Melissa Tiffany
The document discusses a workflow for creating laser scan project deliverables using FARO laser scanning hardware and LFM Software. It involves registering scans in FARO Scene, saving copies and importing them into LFM Gateway to generate an LFM file deliverable. This provides a first class laser scanning hardware solution from FARO combined with LFM's end-user software tools to work efficiently with laser scan data.
Become Cloud-ready!
In this AE Foyer presentation we first focus on the pitfalls, trends and the consequences of increasingly virtualized infrastructure environments. Next we share how an infrastructure optimization project is defined, and which elements will contribute to the ROI.
Finally we discuss the different stages of such a transformation project, from virtualized to hybrid cloud infrastructures. Key message: Be cloud-ready before you go the cloud.
The presentation is based on real project experiences. You get a solid understanding of how an infrastructure transformation project can be delivered successfully.
How can collaboration be fostered in a highly distributed development like the automotive industry. New mega trends, convergence of domains and interoparable tools are the key factors.
Extreme Automation: Software Quality for the Next Generation EnterpriseTechWell
Software runs the business. The modern testing organization aspires to be a change agent and an inspiration for quality throughout the entire lifecycle. To be a change agent, the testing organization must have the right people and skill sets, the right processes in place to ensure proper governance, and the right technology to aid in the delivery of software in support of the business line. Traditionally, testing organizations have focused on the people and process aspect of solving quality issues. With the ever-increasing complexity of the software needed to run the enterprise, testing professionals must adopt technology to help solve some of the most challenging quality issues ever. In short, testing organizations must make the move to extreme automation and become proficient with modern tooling and its benefits. Theresa Lanowitz focuses on new and emerging technologies—proven and successful—to add to the workbench of the test professional.
DevOps Will Save The World! : Public Safety, Public Policy, and DevOps In Context
Joshua Corman, CTO, Sonatype
Link to video: https://www.youtube.com/watch?v=K-hskShNyoo
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipVMware Tanzu
With businesses built around software now disrupting multiple industries that appeared to have stable leaders, the need has emerged for enterprises to create "software factories" built around the following principles:
Streaming customer feedback directly into rapid, iterative cycles of application development
Horizontally scaling applications to meet user demand
Compatibility with an enormous diversity of clients, with mobility (smartphones, tablets, etc.) taking the lead
Continuous delivery of value, shrinking the cycle time from concept to cash
Infrastructure has taken the lead in adapting to meet these needs with the move to the cloud, and Platform as a Service (PaaS) has raised the level of abstraction to a focus on an ecosystem of applications and services. However, most applications are still developed as if we're living in the previous generation of both business and infrastructure: the monolithic application. Microservices - small, loosely coupled applications that follow the Unix philosophy of "doing one thing well" - represent the application development side of enabling rapid, iterative development, horizontal scale, polyglot clients, and continuous delivery. They also enable us to scale application development and eliminate long term commitments to a single technology stack.
While microservices are simple, they are certainly not easy. It's recently been said that "microservices are not a free lunch". Interestingly enough, if you look at the concerns expressed here about microservices, you'll find that they are exactly the challenges that a PaaS is intended to address. So while microservices do not necessarily imply cloud (and vice versa), there is in fact a symbiotic relationship between the two, with each approach somehow compensating for the limitations of the other, much like the practices of eXtreme Programming.
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipMatt Stine
As delivered to the Cloud Foundry Summit 2014 in San Francisco, CA:
With businesses built around software now disrupting multiple industries that appeared to have stable leaders, the need has emerged for enterprises to create "software factories" built around the following principles:
* Streaming customer feedback directly into rapid, iterative cycles of application development
* Horizontally scaling applications to meet user demand
* Compatibility with an enormous diversity of clients, with mobility (smartphones, tablets, etc.) taking the lead
* Continuous delivery of value, shrinking the cycle time from concept to cash
Infrastructure has taken the lead in adapting to meet these needs with the move to the cloud, and Platform as a Service (PaaS) has raised the level of abstraction to a focus on an ecosystem of applications and services. However, most applications are still developed as if we're living in the previous generation of both business and infrastructure: the monolithic application. Microservices - small, loosely coupled applications that follow the Unix philosophy of "doing one thing well" - represent the application development side of enabling rapid, iterative development, horizontal scale, polyglot clients, and continuous delivery. They also enable us to scale application development and eliminate long term commitments to a single technology stack.
While microservices are simple, they are certainly not easy. It's recently been said that "microservices are not a free lunch". Interestingly enough, if you look at the concerns expressed here about microservices, you'll find that they are exactly the challenges that a PaaS is intended to address. So while microservices do not necessarily imply cloud (and vice versa), there is in fact a symbiotic relationship between the two, with each approach somehow compensating for the limitations of the other, much like the practices of eXtreme Programming.
My Personal DevOps Journey: From Pipelines to PlatformsVMware Tanzu
The document outlines Jan Svoboda's personal journey in DevOps. It discusses his career experience with Pivotal, IBM, and HP working on projects involving Cloud Foundry, Spring, automation, CI/CD, and ALM tools. The document then covers Jan's understanding of DevOps as involving people, process, and technology. It identifies challenges with overly complex management layers, automation that requires too much work, and inflexible infrastructure. It concludes by recommending embracing change, continuous learning, and starting small to implement platforms.
The document discusses emerging trends in testing in an agile and cloud environment. It covers how testing is moving towards more virtualized and cloud-based infrastructure with an emphasis on speed. Testing teams are adopting DevOps practices and focusing on continuous delivery through automation and integration. The document also examines trends in areas like mobile testing and the evolution of testing delivery models to be more dynamic and consumption-based.
Bringing Your Web Apps to IBM Digital ExperienceJohn Head
Presented at IBM Connect 2016. For too long, WebSphere portal has been seen as the realm of the back end developer with specialized Java skills. This has been a barrier to entry to the IBM Domino community. IBM has transformed the product to the IBM Digital Experience platform – and it’s not just a name change! With the inclusion of the Script Portlet & IBM Portal on Cloud option, it’s time to look again. We will show you how to integrate your XPages applications, Bluemix and even Microsoft SharePoint. We will show content re-purpose without migration. If you are looking for a single point of integration for all your apps, this session is for you!
This document discusses key aspects of cloud native applications and platforms. It notes there is consensus around cloud native traits like containers, microservices, platform independence, and automation. Cloud Foundry is presented as a platform that can deploy and manage cloud native applications by providing automated scaling, routing, service integration, and other capabilities through declarative configuration. The platform handles tasks like detecting application frameworks, linking to services, self-service deployment, routing, versioning, upgrades, scaling, and more through simple commands. This allows developers to focus on their code while the platform manages the complex runtime environment.
Just about all of my current technical content in one 364 slide mega-deck. Source files at https://github.com/adrianco/slides
Sections on:
Scene Setting
State of the Cloud
What Changes?
Product Processes
Microservices
State of the Art
Segmentation
What’s Missing?
Monitoring
Challenges
Migration
Response Times
Serverless
Lock-In
Teraservices
Wrap-Up
IBM Digital Experience 2015 - APPLICATION MODERNIZATION IN THE DIGITAL EXPERI...John Head
Application Modernization is the hottest buzzword in the IT world today. For many, it means the migration and
transformation of an old application to a modern platform and emerging technologies. With Digital Experience solutions, means much more. Application Modernization is about taking what consumers expect from cutting edge mobile experiences, websites and applications – Slick User Experience, Modern Workflow, Mobile Support, Social and Cloud, and applying it to the enterprise space. This session will look at these five areas and apply them to WebSphere Portal and the
IBM Digital Experience solutions. Examples will highlight how and why focusing each of these areas can have a positive impact and upside inside your organization and recommendations on how to apply Application Modernization.
Mobile Trends and Innovations - Upgrade Your Insight, presented by Marta Rauch @martarauch at QConSF 2014. Trends include wearable technology, Internet of Things (IoT), augmented reality, location, geofencing, beacons, sensors, biometrics, voice, and REST APIs
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...mfrancis
OSGi Community Event 2018 Presentation by Mark Hoffmann (Data In Motion)
Abstract: This talk will show you how the EMF framework can be used in pure OSGi environments other than Equinox. We will introduce you into free configurable ResourceSets and the principle of a ResourceSetFactory. This enables your application to have multiple tenants with different model visibillity. The profit of OSGi services provides a behavior where even models can come and go all the time.
We will also give you look inside, how easy it is to extend the default code generation process of EMF to generate OSGi service component that handle the model registration in an OSGi way.
OSGi Community Event 2018 Presentation by BJ Hargrave (IBM)
Abstract: Java 9 introduced the Java Platform Module System (JPMS) as a way to modularize the Java platform and it can be also be used by developers to modularize their own applications, although JPMS lack a number of important features for software running on the Java platform.
As people look to support the latest versions of the Java platform, changes introduced in Java 9 related to JPMS led to the needs for some features in the OSGi Core specification. OSGi framework implementations like Eclipse Equinox and Apache Felix and tools like Bnd were updated to support these new features.
This session will explore the Java 9+ support added to OSGi Core R7 and Bnd and help you learn how to navigate the world of Java 9+ and OSGi.
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)mfrancis
This document discusses simplifying web UX using OSGi modularity. It mentions coding tasks becoming quicker and easier using OSGi and controlling OSGi DS component instances. It provides links to GitHub pages for the Open Security Controller project and a blog post about controlling OSGi components. It concludes by thanking the audience and reminding them they are being watched.
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruumfrancis
This document discusses connecting the OSGi framework to Kubernetes for managing applications in container-based environments. It raises questions about building systems that can update while running and whether years spent on this have been wasted. It also briefly mentions a demo of OSGi and Kubernetes integration and asks why a load balancer wouldn't work instead. The document calls for feedback on sessions and ideas about OSGi, Kubernetes, immutable vs mutable systems, and J2EE versus OSGi.
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...mfrancis
OSGi Community Event 2018 Presentation by Tim Verbelen (imec) & Jan S. Rellermeyer (TU Delft)
Abstract: With the proliferation of cloud computing and more recently mobile and edge computing, there is a increasing demand to build flexible and robust distributed applications. The OSGi service and module technology is a key enabler for such deployment. Recent additions to the OSGi standards provide a set of services that provide interfaces for managing distributed instances of OSGi frameworks. The REST Service (added in R6 compendium) offers an easy and language-independent way to manage bundes and introspect services from outside the network. The Cluster Information specifications (added in R7 compendium) provide means for applications to manage and monitor the deployment intrinsically, building on top of the Remote Service specifications. In the Eclipse Concierge project, we have provided the reference implementations of both specifications. In this talk, we will show how the services can be used to build distributed applications that benefit from the OSGi modularity.
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...mfrancis
OSGi Community Event 2018 Presentation by Udo Hafermann (Software AG)
Abstract: In this talk we will share our experiences in developing a tool chain from classes, to bundles, to containers, to systems.
OSGi and Docker come together in a compelling way where the former provides modularity "in the small" and the latter "modularity in the large". We discover how the unique characteristics of OSGi enable a smooth transition from small to large.
The resulting environment enables developers to grow distributed systems on their local machine and test them with plain JUnit at all levels of granularity - classes to systems. During development OSGi enables the tool chain to update the system without container rebuilds.
While an increase in productivity is one benefit of such an environment, an arguably more important benefit is the way it empowers developers to gain new insights.
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...mfrancis
OSGi Community Event 2018 Presentation by Jurgen Albert (Data In Motion Consulting GmbH)
Abstract: OSGi is often conceived as a tool to write efficient Java Applications for resource limited Devices or If resources are a real issue in complex applications. On the other hand Microservices became the buzzword of the cloud and is often implemented using Spring or other Programming languages. OSGi carries the concept of microservices in its core and is therefore much better suited to the task then most other approaches. This talk will show you how a service can be built with a real-worldish use case, leveraging the power of OSGi R7. It will show the combined usage of PushsStreams, the JaxRS Whiteboard, the configurator, remote deployment and a lot of the other cool things OSGi has to offer.
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)mfrancis
OSGi Community Event 2018 Presentation by David Bosschaert (Adobe)
Abstract: OSGi lends itself well to develop extensible applications assembled from reusable modules, where a set of bundles together with a set of configurations deployed to a provisioned OSGi framework is the application.
While this works very well for the originally intended use-cases, maintaining and building large applications developed by multiple teams often requires to assemble multiple larger components for which there is limited support in OSGi as of today. This is especially true in cases where multiple groups of bundles, configuration, metadata, and other artifacts need to be combined.
In this talk we will introduce you to OSGi RFP-188, named OSGi Features, which defines the requirements on providing a solution. We'll establish a shared understanding of the problem space and how it relates to already available mechanisms in OSGi (like e.g. subsystems, deploymentadmin, startlevels, etc.) and will subsequently, review it in the context of some of the current (open source) solutions like Apache Karaf Features and Apache Sling Features and Bnd.
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...mfrancis
OSGi Community Event 2018 Presentation by Amit Kumar Mondal (Deutsche Telekom AG) & Jochen Hiller (Deutsche Telekom AG)
Abstract: QIVICON is an Eclipse SmartHome based solution from Deutsche Telekom AG. It utilises OSGi to provide a modular Java runtime.
Since the beginning, QIVICON leveraged Eclipse PDE with Maven & Eclipse Tycho as its build technology but over the time, the complexity increased. It became hard to get an overview and manage the runtime and build dependencies. Especially maintaining target configurations for IDE and CI/CD build, having different embedded gateways for installation increased complexity significantly.
Bndtools is the 'swiss army knife' in the context of OSGi development since it takes the nitty-gritty pains and loads off the developer's chest. And that's why we decided to avail the benefits of Bndtools.
But, many other OSGi-based projects still cannot avail the benefits as they are very tightly coupled with Eclipse PDE. Want to make a switch from your existing PDE source base to Bndtools? This talk would give you an overview to proceed towards this.
We would like to further demonstrate in this talk how to set up a Bndtools workspace from an existing PDE workspace, convert all current projects to Bnd projects and embrace the OSGi-way of developing bundles.
Since QIVICON containing more than 350 projects utilised this solution to move to a higher modularity maturity level, this talk would, therefore, outline the pros, cons and the learnings using Bndtools in such a big OSGi project for embedded development.
OSGi CDI Integration Specification - Ray Augé (Liferay)mfrancis
OSGi Community Event 2018 Presentation by Ray Augé (Liferay)
Abstract: This talk discusses the upcoming OSGi CDI Integration Specification and demonstrates common usage patterns and its component model that brings OSGi dynamics; like services and configuration, to CDI and provides for an ecosystem of CDI portable extentions.
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...mfrancis
SMA is an energy equipment supplier that was seeking a solution for cross-sector energy management. They evaluated OSGi and decided to develop their own framework based on OSGi. They encountered several problems initially but overcame them by improving API design, avoiding dependencies, and using helper classes. They have now successfully applied OSGi in their products and find that it defines clean module deployment and versioning while supporting dynamic updates.
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...mfrancis
OSGi Community Event 2018 Presentation by Lukasz Dywicki (Code-House)
Abstract: During this short presentation I will revisit existing mechanisms and approach towards OSGi and JEE development. I will show how many manual steps can be avoided and how to maintain project in effective manner. I will try to find a balance between execution environment requirements and programmer happines at same time.
I believe that OSGi and Eclipse ecosystem experience troubles gaining people from outside for few reasons. Beside overall impression of OSGi complexity there is equally old and invalid complain about quaility of developer tooling. Since invention of BND development experience can be really pleasant and independent of text editor/IDE preferences. Sadly lots of people still rely on former experiences spreading black/bad PR. I would like to clarify their point.
After this presentation attendees will learn:
How to use Maven to build OSGi projects (without Tycho).
How to automate manual tasks.
How to build custom software distributions with Maven artifacts and run it with Apache Karaf.
That OSGi development doesn't differ much from regular day-to-day usage of application servers or microservice runtimes.
This talk is intended for people who know basics of OSGi as it will show few basic technics towards better developer productivity.
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...mfrancis
OSGi Community Event 2018 Presentation by Christer Larsson (Makewave)
Abstract: OSGi was originally designed for Smart Homes and Residential Gateways almost 20 years ago.
This talk will present how the OSGi specifications have evolved over the years, and how you today, in 2018, design an OSGi based Smart Home System.
A real world use case of a Swedish Smart Home start-up company will be used to illustrate different design principles and how OSGi remains as relevant today as it was when it started.
Popular patterns revisited on OSGi - Christian Schneider (Adobe)mfrancis
This document discusses how various software design patterns can be applied within the OSGi runtime environment. It describes patterns like Observer/Listener, OSGi Whiteboard, Dependency Injection, Circuit Breaker, and Domain-Driven Design and how they differ or are adapted when used with OSGi. For example, the OSGi Whiteboard pattern allows services and listeners to be loosely coupled without direct dependencies, and OSGi's declarative services specification provides a way to perform dependency injection and manage component lifecycles. The document argues that applying patterns like having microservices per bounded context can help match the original ideas of microservices while minimizing remote communication when using OSGi.
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)mfrancis
OSGi Community Event 2018 Presentation by BJ Hargrave (IBM)
Abstract: OSGi Compendium R7 provides a major update to the OSGi LogService specification. A new logging API is added which supports logging levels and dynamic logging administration. A new Push Stream-based means of receiving log entries is also added. But it is quite often the case you need to use other code such as open source projects which are using slf4j for their logging API. This session will explore the new OSGi LogService changes and how you can integrate code using both slf4j logging and OSGi LogService logging.
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)mfrancis
OSGi Community Event 2018 Presentation by Tim Verbelen (imec)
Abstract: Nowadays AI is reaching new heights on the hype cycle, especially due to recent advances in deep learning techniques. A lot of deep learning frameworks exist for creating and training deep neural networks, the most popular ones being PyTorch and TensorFlow. However, how to integrate, deploy and manage these neural networks in complex software systems is often overlooked. In this talk we show how OSGi can be used as a modular runtime for deep learning models. We embed those models inside OSGi bundles, and use the extender pattern to make these available as OSGi services. You can then use your favorite OSGi specs such as DS and PushStreams to integrate these into your application.
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...mfrancis
OSGi Community Event 2018 Presentation by Tony Walsh (ESA) & Hristo Indzhov (Telespazio Vega)
Abstract: The European Space Operations Centre (ESOC) is the main operations center for the European Space Agency (ESA), operating a number of earth observation and scientific missions. Monitoring and control functions needed by spacecraft operators are provided by software systems which are reused across missions, but tailored and extended for mission specific needs. The current generation of monitoring and control systems are becoming obsolete and a European wide initiative called the European Ground Systems Common Core (EGS-CC) (http://www.egscc.esa.int) has been started to develop the next generation.
This talk will explain why OSGi was chosen and how it is used in the development of next generation of monitoring and control software. It will describe how OSGi provides the necessary framework that enables the software to be extended for the different space systems it is expected to support. The overall software architecture will be discussed, some of the challenges faced and the benefits gained by using OSGi. The first target mission for the system is JUICE (http://sci.esa.int/juice) which will explore the moons of Jupiter and which is scheduled for launch in 2022.
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)mfrancis
OSGi Community Event 2018 Presentation by Ray Augé (Liferay)
Abstract: The craze is fully on. The past couple of years have seem micro services grow from next _flava_ to fully consuming of the software industry. The Eclipse micorprofile.io project is tackling the issue putting common usage patterns together over a foundation of CDI. What better assembly driver is there than OSGi to put it all together. This talk will demonstrate building your own MicroProfile using OSGi and the OSGi enRoute packaging model.
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...mfrancis
OSGi Community Event 2018 Presentation by Bruce Jackson (Myriad)
Abstract: Node-RED is often used as a protyping tool for IoT systems. However, there are also a large number of OSGi components that have already been built to interface to devices, sensors and systems. In this talk I will show how two completely different runtime environments (OSGi and Node-RED) can be combined into a single platform for prototyping (and more) combining the strengths of both languages and systems.
Being able to quickly and simply prototype IoT application is extremely useful, and to this end many people have adopted Node-Red, a Node.js based runtime with extensive support for plugins to interface to various IoT hardware and protocols. However, this requires these services/protocols to be developed in Javascript, and there is already a significant body of code developed in Java/OSGi that it would be desirable to re-use.
The talk will explain how it is possible to:
Create and manage a Node-Red runtime from within an OSGi bundle
Share OSGi components and object into the Node-Red runtime
Interact and build Node-Red flows that exchange data and call methods between Node.js and OSGi
This is obviously useful for the original purpose: prototyping IoT systems, but also demonstrates some interesting techniques for bridging between different languages and runtimes.
How to connect your OSGi application - Dirk Fauth (Bosch)mfrancis
OSGi Community Event 2018 Presentation by Dirk Fauth (Bosch)
Abstract: In todays connected world the requirement to connect applications across network boundaries has become a common requirement. With OSGi there are several ways to accomplish this, as there are different specifications to achieve this. In this talk we will look at some of these specifications to show what options there are and which might fit your requirements. Starting from an architecture that makes use of the HTTP Whiteboard pattern, over Remote Services to finally showing the usage of the JAX-RS Whiteboard specification introduced with R7. We will show the general usage of these specifications and explaining the advantages and disadvantages of each solution.
Best 20 SEO Techniques To Improve Website Visibility In SERPPixlogix Infotech
Boost your website's visibility with proven SEO techniques! Our latest blog dives into essential strategies to enhance your online presence, increase traffic, and rank higher on search engines. From keyword optimization to quality content creation, learn how to make your site stand out in the crowded digital landscape. Discover actionable tips and expert insights to elevate your SEO game.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Taking AI to the Next Level in Manufacturing.pdfssuserfac0301
Read Taking AI to the Next Level in Manufacturing to gain insights on AI adoption in the manufacturing industry, such as:
1. How quickly AI is being implemented in manufacturing.
2. Which barriers stand in the way of AI adoption.
3. How data quality and governance form the backbone of AI.
4. Organizational processes and structures that may inhibit effective AI adoption.
6. Ideas and approaches to help build your organization's AI strategy.
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Fueling AI with Great Data with Airbyte WebinarZilliz
This talk will focus on how to collect data from a variety of sources, leveraging this data for RAG and other GenAI use cases, and finally charting your course to productionalization.
Webinar: Designing a schema for a Data WarehouseFederico Razzoli
Are you new to data warehouses (DWH)? Do you need to check whether your data warehouse follows the best practices for a good design? In both cases, this webinar is for you.
A data warehouse is a central relational database that contains all measurements about a business or an organisation. This data comes from a variety of heterogeneous data sources, which includes databases of any type that back the applications used by the company, data files exported by some applications, or APIs provided by internal or external services.
But designing a data warehouse correctly is a hard task, which requires gathering information about the business processes that need to be analysed in the first place. These processes must be translated into so-called star schemas, which means, denormalised databases where each table represents a dimension or facts.
We will discuss these topics:
- How to gather information about a business;
- Understanding dictionaries and how to identify business entities;
- Dimensions and facts;
- Setting a table granularity;
- Types of facts;
- Types of dimensions;
- Snowflakes and how to avoid them;
- Expanding existing dimensions and facts.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
Digital Marketing Trends in 2024 | Guide for Staying AheadWask
https://www.wask.co/ebooks/digital-marketing-trends-in-2024
Feeling lost in the digital marketing whirlwind of 2024? Technology is changing, consumer habits are evolving, and staying ahead of the curve feels like a never-ending pursuit. This e-book is your compass. Dive into actionable insights to handle the complexities of modern marketing. From hyper-personalization to the power of user-generated content, learn how to build long-term relationships with your audience and unlock the secrets to success in the ever-shifting digital landscape.
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-und-domino-lizenzkostenreduzierung-in-der-welt-von-dlau/
DLAU und die Lizenzen nach dem CCB- und CCX-Modell sind für viele in der HCL-Community seit letztem Jahr ein heißes Thema. Als Notes- oder Domino-Kunde haben Sie vielleicht mit unerwartet hohen Benutzerzahlen und Lizenzgebühren zu kämpfen. Sie fragen sich vielleicht, wie diese neue Art der Lizenzierung funktioniert und welchen Nutzen sie Ihnen bringt. Vor allem wollen Sie sicherlich Ihr Budget einhalten und Kosten sparen, wo immer möglich. Das verstehen wir und wir möchten Ihnen dabei helfen!
Wir erklären Ihnen, wie Sie häufige Konfigurationsprobleme lösen können, die dazu führen können, dass mehr Benutzer gezählt werden als nötig, und wie Sie überflüssige oder ungenutzte Konten identifizieren und entfernen können, um Geld zu sparen. Es gibt auch einige Ansätze, die zu unnötigen Ausgaben führen können, z. B. wenn ein Personendokument anstelle eines Mail-Ins für geteilte Mailboxen verwendet wird. Wir zeigen Ihnen solche Fälle und deren Lösungen. Und natürlich erklären wir Ihnen das neue Lizenzmodell.
Nehmen Sie an diesem Webinar teil, bei dem HCL-Ambassador Marc Thomas und Gastredner Franz Walder Ihnen diese neue Welt näherbringen. Es vermittelt Ihnen die Tools und das Know-how, um den Überblick zu bewahren. Sie werden in der Lage sein, Ihre Kosten durch eine optimierte Domino-Konfiguration zu reduzieren und auch in Zukunft gering zu halten.
Diese Themen werden behandelt
- Reduzierung der Lizenzkosten durch Auffinden und Beheben von Fehlkonfigurationen und überflüssigen Konten
- Wie funktionieren CCB- und CCX-Lizenzen wirklich?
- Verstehen des DLAU-Tools und wie man es am besten nutzt
- Tipps für häufige Problembereiche, wie z. B. Team-Postfächer, Funktions-/Testbenutzer usw.
- Praxisbeispiele und Best Practices zum sofortigen Umsetzen
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
Monitoring and Managing Anomaly Detection on OpenShift.pdfTosin Akinosho
Monitoring and Managing Anomaly Detection on OpenShift
Overview
Dive into the world of anomaly detection on edge devices with our comprehensive hands-on tutorial. This SlideShare presentation will guide you through the entire process, from data collection and model training to edge deployment and real-time monitoring. Perfect for those looking to implement robust anomaly detection systems on resource-constrained IoT/edge devices.
Key Topics Covered
1. Introduction to Anomaly Detection
- Understand the fundamentals of anomaly detection and its importance in identifying unusual behavior or failures in systems.
2. Understanding Edge (IoT)
- Learn about edge computing and IoT, and how they enable real-time data processing and decision-making at the source.
3. What is ArgoCD?
- Discover ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes, and its role in deploying applications on edge devices.
4. Deployment Using ArgoCD for Edge Devices
- Step-by-step guide on deploying anomaly detection models on edge devices using ArgoCD.
5. Introduction to Apache Kafka and S3
- Explore Apache Kafka for real-time data streaming and Amazon S3 for scalable storage solutions.
6. Viewing Kafka Messages in the Data Lake
- Learn how to view and analyze Kafka messages stored in a data lake for better insights.
7. What is Prometheus?
- Get to know Prometheus, an open-source monitoring and alerting toolkit, and its application in monitoring edge devices.
8. Monitoring Application Metrics with Prometheus
- Detailed instructions on setting up Prometheus to monitor the performance and health of your anomaly detection system.
9. What is Camel K?
- Introduction to Camel K, a lightweight integration framework built on Apache Camel, designed for Kubernetes.
10. Configuring Camel K Integrations for Data Pipelines
- Learn how to configure Camel K for seamless data pipeline integrations in your anomaly detection workflow.
11. What is a Jupyter Notebook?
- Overview of Jupyter Notebooks, an open-source web application for creating and sharing documents with live code, equations, visualizations, and narrative text.
12. Jupyter Notebooks with Code Examples
- Hands-on examples and code snippets in Jupyter Notebooks to help you implement and test anomaly detection models.
Project Management Semester Long Project - Acuityjpupo2018
Acuity is an innovative learning app designed to transform the way you engage with knowledge. Powered by AI technology, Acuity takes complex topics and distills them into concise, interactive summaries that are easy to read & understand. Whether you're exploring the depths of quantum mechanics or seeking insight into historical events, Acuity provides the key information you need without the burden of lengthy texts.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
OpenID AuthZEN Interop Read Out - AuthorizationDavid Brossard
During Identiverse 2024 and EIC 2024, members of the OpenID AuthZEN WG got together and demoed their authorization endpoints conforming to the AuthZEN API