Managing an OSGi Framework with Apache Felix Web ConsoleFelix Meschberger
Initially created to aid in the simple maintenance of the OSGi framework and the application during the early development of Apache Sling, the Web Console soon attracted interest from the OSGi community. Three years later, the Apache Felix Web Console 3.0 has just been released and provides an extensible console for Web based management of an OSGi framework. This talk will introduce the functionality of the core Web Console as well as some of its existing plugins and the extension points of the Web Console where developers might want to hook up to. To round it up a simple Web Console plugin will be developed and deployed.
The Apache Felix Web Console has been created out of a need to remotely administer an OSGi Framework. This administration includes maintenance of bundles, editing Configuration, and introspecting the system in terms of identifying services and Declarative Services components. In addition the Web Console offers a plugin-model for it to be easily extended.
Apache Sling is an innovative REST based Web Framework which has been developped from the ground up as an OSGi based server side application. After a short introduction to Sling itself I will also show why OSGi has been chosen as the basis for the application.
Monitoring OSGi Applications with the Web Console - Carsten Ziegelermfrancis
OSGi Community Event 2013 (http://www.osgi.org/CommunityEvent2013/Schedule)
ABSTRACT
This session introduces the latest version of the famous Apache Felix web console which allows to monitor and inspect OSGi web applications through the browser. The web console is based on a flexible plugin mechanism to add custom information and functionality. Learn how to write your own extensions and how to leverage the available functionality for monitoring and troubleshooting OSGi installations.
SPEAKER BIO
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.
Use Case: Building OSGi Enterprise Applications (QCon 14)Carsten Ziegeler
Use Case presentation from QCon 14. It presents the migration of Adobe's Experience Manager (formerly Communique) to OSGi. Common pitfalls and solutions are presented based on open source solutions from the Apache Software Foundation
What’s cool in the new and updated OSGi specs (DS, Cloud and more) - David Bo...mfrancis
OSGi Community Event 2013 (http://www.osgi.org/CommunityEvent2013/Schedule)
ABSTRACT
Carsten and David will look at new and updated OSGi specs that are in the works. Developing components has never been easier. Learn more about the new Prototype Service Factory, OSGi/CDI integration and the improved annotation support for Declarative Services.
Many people are realizing that OSGi is a great foundation technology for fluid cloud-computing architectures where the deployments change dynamically and applications don't simply scale by duplicating the entire VMs but by providing extra capacity exactly to those components that need it. Work is being done to create standards that facilitate such a portable OSGi cloud in ‘Cloud Ecosystems’ and the REST API specs. Learn more about these and other upcoming specs during this talk.
SPEAKER BIOS
David Bosschaert
David Bosschaert, Principal Software Engineer at Red Hat, spends the majority of his time on the JBoss OSGi framework, JBoss AS7, Apache Aries 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 JBoss/Red Hat in 2010, David worked for IONA Technologies and Progress Software 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.
Managing an OSGi Framework with Apache Felix Web ConsoleFelix Meschberger
Initially created to aid in the simple maintenance of the OSGi framework and the application during the early development of Apache Sling, the Web Console soon attracted interest from the OSGi community. Three years later, the Apache Felix Web Console 3.0 has just been released and provides an extensible console for Web based management of an OSGi framework. This talk will introduce the functionality of the core Web Console as well as some of its existing plugins and the extension points of the Web Console where developers might want to hook up to. To round it up a simple Web Console plugin will be developed and deployed.
The Apache Felix Web Console has been created out of a need to remotely administer an OSGi Framework. This administration includes maintenance of bundles, editing Configuration, and introspecting the system in terms of identifying services and Declarative Services components. In addition the Web Console offers a plugin-model for it to be easily extended.
Apache Sling is an innovative REST based Web Framework which has been developped from the ground up as an OSGi based server side application. After a short introduction to Sling itself I will also show why OSGi has been chosen as the basis for the application.
Monitoring OSGi Applications with the Web Console - Carsten Ziegelermfrancis
OSGi Community Event 2013 (http://www.osgi.org/CommunityEvent2013/Schedule)
ABSTRACT
This session introduces the latest version of the famous Apache Felix web console which allows to monitor and inspect OSGi web applications through the browser. The web console is based on a flexible plugin mechanism to add custom information and functionality. Learn how to write your own extensions and how to leverage the available functionality for monitoring and troubleshooting OSGi installations.
SPEAKER BIO
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.
Use Case: Building OSGi Enterprise Applications (QCon 14)Carsten Ziegeler
Use Case presentation from QCon 14. It presents the migration of Adobe's Experience Manager (formerly Communique) to OSGi. Common pitfalls and solutions are presented based on open source solutions from the Apache Software Foundation
What’s cool in the new and updated OSGi specs (DS, Cloud and more) - David Bo...mfrancis
OSGi Community Event 2013 (http://www.osgi.org/CommunityEvent2013/Schedule)
ABSTRACT
Carsten and David will look at new and updated OSGi specs that are in the works. Developing components has never been easier. Learn more about the new Prototype Service Factory, OSGi/CDI integration and the improved annotation support for Declarative Services.
Many people are realizing that OSGi is a great foundation technology for fluid cloud-computing architectures where the deployments change dynamically and applications don't simply scale by duplicating the entire VMs but by providing extra capacity exactly to those components that need it. Work is being done to create standards that facilitate such a portable OSGi cloud in ‘Cloud Ecosystems’ and the REST API specs. Learn more about these and other upcoming specs during this talk.
SPEAKER BIOS
David Bosschaert
David Bosschaert, Principal Software Engineer at Red Hat, spends the majority of his time on the JBoss OSGi framework, JBoss AS7, Apache Aries 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 JBoss/Red Hat in 2010, David worked for IONA Technologies and Progress Software 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.
Talk given at JavaOne 2009 discussing how to build web applications using OSGi. The source for the demo found at http://github.com/mrdon/jforum-plugins/tree/master
Session Abstract: Enterprise Web applications tend to grow like weeds in monolithic complexity. OSGi, although more often associated with Java™ technology-based clients and application servers, can bring a new level of modularity, uptime, and stability that is needed with today's always-on hosted Web applications. OSGi gets really interesting when the pretty architecture diagrams meet the real world, because it consists of various deployment platforms, development environments, and application architectures. This presentation, for Java 2 Platform, Enterprise Edition (J2EE™ platform)-savvy architects and senior developers, provides a practical guide to the Web on OSGi, from integration approach to bundle development, to real-world code you can use today.
The session discusses
• What benefits OSGi brings to the J2EE platform
• Three integration strategies
• How to use Spring DM and Maven to ease development
• Lessons learned from Atlassian's recent OSGi deployment
• A production-ready example to use immediately
A (very) quick introduction to OSGi for Java developers. These slides are meant to be a quick overview of the technology and make you understand how useful it can be.
Presentation was created after OSGi conference in Ludwigsburg : http://www.osgi.org/CommunityEvent2012/HomePage
Source code is available : https://stash-test.hybris.com/projects/PLAY/repos/osgi-presentation/browse
OSGi is on the core+ roadmap. This presentation introduces architecture, tools and design patterns used by OSGi.
It also shows the way how to refactor application to be really modular. Region cache will be example.
Discuss about java 9 with latest featuresNexSoftsys
The upcoming version of java will be transformational for the platform but developers can comfort that java 9 officially launch in 2017. In this presentation also discuss about latest features included in java 9.
From previously developed a simple web application (based on X-Files tv series) the aim will be to set both user authentication and authorization of web resources both for themselves and for the invocation of business components. It’ll be established a minimum security settings, which will be completed with more sophisticated mechanisms. All of these emphasizing the novelties of version 3.x of Spring Security as the use of SPEL, Annotations, Namespace, Java config, etc. Attendees will see many of the features that implements Spring Security to set security mechanisms within JEE applications. The tools to be used are Spring Tool Suite 3.4, Springframework 3.2, Maven 3 and Spring Tc Server 2.9.
Slides of my presentation at TransferSummit 2010, "Open innovation in software means Open Source", http://transfersummit.com/programme/60 . See accompanying article on the H online, http://x42.ch/03.10.01
Slides of my "Open Innovation in Software Means Open Source Software" talk, OSS Watch, Oxford Dec.12th, 2009 (http://www.oss-watch.ac.uk/events/2009-12-07_business/programme.xml). Also at http://transfersummit.com/programme/60 and accompanying article on the H online, http://x42.ch/03.10.01
Talk given at JavaOne 2009 discussing how to build web applications using OSGi. The source for the demo found at http://github.com/mrdon/jforum-plugins/tree/master
Session Abstract: Enterprise Web applications tend to grow like weeds in monolithic complexity. OSGi, although more often associated with Java™ technology-based clients and application servers, can bring a new level of modularity, uptime, and stability that is needed with today's always-on hosted Web applications. OSGi gets really interesting when the pretty architecture diagrams meet the real world, because it consists of various deployment platforms, development environments, and application architectures. This presentation, for Java 2 Platform, Enterprise Edition (J2EE™ platform)-savvy architects and senior developers, provides a practical guide to the Web on OSGi, from integration approach to bundle development, to real-world code you can use today.
The session discusses
• What benefits OSGi brings to the J2EE platform
• Three integration strategies
• How to use Spring DM and Maven to ease development
• Lessons learned from Atlassian's recent OSGi deployment
• A production-ready example to use immediately
A (very) quick introduction to OSGi for Java developers. These slides are meant to be a quick overview of the technology and make you understand how useful it can be.
Presentation was created after OSGi conference in Ludwigsburg : http://www.osgi.org/CommunityEvent2012/HomePage
Source code is available : https://stash-test.hybris.com/projects/PLAY/repos/osgi-presentation/browse
OSGi is on the core+ roadmap. This presentation introduces architecture, tools and design patterns used by OSGi.
It also shows the way how to refactor application to be really modular. Region cache will be example.
Discuss about java 9 with latest featuresNexSoftsys
The upcoming version of java will be transformational for the platform but developers can comfort that java 9 officially launch in 2017. In this presentation also discuss about latest features included in java 9.
From previously developed a simple web application (based on X-Files tv series) the aim will be to set both user authentication and authorization of web resources both for themselves and for the invocation of business components. It’ll be established a minimum security settings, which will be completed with more sophisticated mechanisms. All of these emphasizing the novelties of version 3.x of Spring Security as the use of SPEL, Annotations, Namespace, Java config, etc. Attendees will see many of the features that implements Spring Security to set security mechanisms within JEE applications. The tools to be used are Spring Tool Suite 3.4, Springframework 3.2, Maven 3 and Spring Tc Server 2.9.
Slides of my presentation at TransferSummit 2010, "Open innovation in software means Open Source", http://transfersummit.com/programme/60 . See accompanying article on the H online, http://x42.ch/03.10.01
Slides of my "Open Innovation in Software Means Open Source Software" talk, OSS Watch, Oxford Dec.12th, 2009 (http://www.oss-watch.ac.uk/events/2009-12-07_business/programme.xml). Also at http://transfersummit.com/programme/60 and accompanying article on the H online, http://x42.ch/03.10.01
An overview of the lessons i have learnt from my success and failures - both personal and professional and how others can avoid them.
For added inspiration and impact i draw lessons from the great movies of today and yesterday
Slides of my "Life in Open Source Communities" talk at ApacheCon US 2009, see also http://grep.codeconsult.ch/2009/10/30/life-in-open-source-communities-live-at-apachecon/
Open-Source Collaboration Tools are Good for You - 2009 editionBertrand Delacretaz
Slides of my "Open-Source Collaboration Tools are Good for You!" presentation at openexpo.ch Bern, April 2009. Video at http://www.youtube.com/watch?v=XdNyzNCRLd8 . Relooked and slightly expanded from previous versions, including "speaking in URLs" and "making mistakes in public".
This is slide show created based on a tutorial hosted by Geography World and created by Mr. Bowerman. All credit for images and information go to them. I created this for use in a 4/5 grade gifted social studies and math lesson.
original (better quality) on https://docs.google.com/presentation/d/1bnwj8CrFGo5KekONYSeIHySdkoXZiewJxkHcZjXnzkQ/
slides from OpenDaylight Summit Oct 2016 Seattle
OSGi & Java EE: A hybrid approach to Enterprise Java Application Development,...OpenBlend society
There's a considerable activity in the enterprise Java community about the use of OSGi in Java EE applications. We call such applications "hybrid applications." With hybrid applications, developers can continue to build standard and familiar enterprise application components, such as Java Servlets and EJBs, and take full advantage of:
* Features such as modularity/dependency management, service dynamism, and more provided by OSGi
* Infrastructure services such as transaction management, security, persistence, and more offered by Java EE
This session will present the current state of affairs, discuss the benefits of hybrid applications, and demonstrate development and deployment of such applications.
GlassFish will be used for demonstration.
With modularity coming to the core Java platform in Java 9, are all our modularity needs fulfilled, or does it still make sense to use something like OSGi? In this talk you will learn how Jigsaw helps modularity, and in what cases it might fall short.
Java 9 will provide a module-system, called Jigsaw. Besides modularising the JDK itself, Java developers can build more modular applications with Jigsaw. Modularity and Java go back way longer, though. OSGi, the de facto standard for modularity in Java has been around since 2000. Adoption is increasing in recent years.
A modular architecture has many advantages, such as increased decoupling resulting in more flexibility. In that sense, native support for Java modularity is very welcome. The big question now is: does Java 9 provide everything you need to build truly modular applications? Since Java 9 needs to maintain backwards compatibility, some compromises need to be made while enforcing module boundaries.
This talk discusses what you really need to build modular applications. We'll investigate which requirements are met (or not) by both module systems. You'll see that both Jigsaw and OSGi provided pieces of the modularity puzzle. Also, you'll learn whether having an additional modular runtime such as OSGi on top of Java 9 still makes sense.
Introduction to the Eclipse scripting tool Groovy Monkey. Groovy Monkey allows for you to engage in API exploration, Task Automation, Plugin prototyping and collaboration in a lightweight and simple way.
GlassFish architect Jerome Dochez presents the architecture (kernel, services, extensibility) and the status of GlassFish v3, a lightweight and modular application server based on OSGi and able to run both Java (EE) and scripting (Rails, Grails, PHP, etc...) applications. Fairly technical.
Escape the defaults - Configure Sling like AEM as a Cloud ServiceRobert Munteanu
AEM as a Cloud Service is using the same battle-tested core of Sling, Felix and Jackrabbit Oak that you are used to. Many of the large-scale architectural changes, such as container-based deployments, separation of code and content, horizontal and vertical scaling, etc, are made possible by a host of reimplementations of APIs exposed by the open-source projects that serve as the foundation of AEM.
In this talk we will explore a number of such extensions and their implications, such as Oak's principal-based authorization, getting up and running with the composite node store, or indexing in a separation of content and apps scenario.
After this talk participants will have a better understanding of various under-the-hood changes present in AEM as a Cloud Service and their practical implications for AEM development. They will also be able to set up their own tweaked Sling instance so they can experiment with such a setup.
IoT gateway dream team - Eclipse Kura and Apache CamelHenryk Konsek
Eclipse Kura is the well recognized field gateway for Internet Of Things applications. Apache Camel is the message routing engine and the library containing a gazillions of the various endpoint connectors. Are you interested in finding out how these two can be joined together to create a rocking IoT solution? Then tune in to this talk!
Moved to https://slidr.io/azzazzel/leveraging-osgi-to-create-extensible-plugi...Milen Dyankov
This slide deck will be removed from here in the future. It has been moved to : https://slidr.io/azzazzel/leveraging-osgi-to-create-extensible-plugins-for-liferay-6-2
Slides of my talk at Very Tech Trip 2023, Paris, on what the Web Platform is and how I think it makes JavaScript Web Frameworks obsolete in many cases.
Surviving large online communities with conciseness and clarity Bertrand Delacretaz
Slides of my FOSS Backstage 2022 (remote) talk, https://pretalx.com/foss-backstage-2022/talk/9S3PJE/ - how conciseness & clarity help communicate efficiently in large online communities.
Repoinit: a mini-language for content repository initializationBertrand Delacretaz
Slides of my adaptTo2021 talk on the Apache Sling Repoinit module, https://adapt.to/2021/en/schedule/repoinit-a-mini-language-for-content-repository-initialization.html
The Moving House Model, adhocracy and remote collaborationBertrand Delacretaz
Slides of my February 2021 talk at FOSS Backstage, https://foss-backstage.de
Moving house with the help of a group of friends is an interesting exercise in collective improvisation and coordination. Everybody can help with most of the jobs at hand, so the challenge is to keep people busy in a meaningful way, to make the best use of the physical and intellectual resources available, while keeping people happy and engaged.
Sounds familiar? The Moving House model does apply to other types of group projects, including software development. Adhocracy, Asynchronous Collaboration and a can-do attitude, as practiced in Open Source communities, are key elements that enable groups that have no formal structure to collaborate efficiently and smoothly - like when helping friends moving house.
GraphQL in Apache Sling - but isn't it the opposite of REST?Bertrand Delacretaz
Slides of my talk at ApacheCon @Home 2020 - code at https://github.com/apache/sling-org-apache-sling-graphql-core/ (look for the "sample website") - video recording at https://youtu.be/KTMObGt0YKU
Slides of my talk in the Community track of the ApacheCon @Home 2020 conference. The video will be available on the "TheApacheFoundation" channel on YouTube, https://www.youtube.com/channel/UCLDJ_V9KUOdOFSbDvPfGBxw
Ma présentation à https://www.blendwebmix.com/ 2019
Video: https://youtu.be/eE7YhQpPdcM?t=4560
Dans un monde qui se numérise toujours plus, les logiciels libres sont partout: dans votre téléphone, votre ascenseur, votre voiture, votre banque, etc… plus que jamais, l’Open Source est au coeur de notre monde numérique.
Au-delà de ces contributions très concrètes au bien-être de nos sociétés, les communautés Open Source ont aussi inventé et mis en pratique des techniques de collaboration innovantes, distribuées, asynchrones. Souvent sans chef clairement identifié, ni planification précise, ces groupes de travail informels produisent des logiciels de grande qualité, qui pour certains ont créé des marchés ou révolutionnés les pratiques numériques. Le succès de ces groupes est étonnant quand on le compare aux nombreux projets informatiques ratés dans des groupes beaucoup plus structurés, entreprises ou organismes d’Etat par exemple.
L’Open Source change le monde…vraiment? Tout en gardant les choses en perspective, nous présenterons plusieurs exemples concrets où cela se vérifie, par la création d’outils partagés, la découverte de talents, la diffusion des connaissances et la création de logiciels d’infrastructure qui sont devenus des standards de l’industrie.
Shared Neurons - the Secret Sauce of Open Source communities?Bertrand Delacretaz
Slides of my talk at ApacheCon EU 2019in Berlin, Germany: Shared Neurons - the Secret Sauce of Open Source communities? See also the video recording at https://www.youtube.com/watch?v=pWG-F3vW24w
Open Source communities sometimes speak of Shared Neurons when great ideas come together as if sparked by a giant collective brain. Can we take inspiration from them and foster such neuron sharing in our teams? We will describe the tools and techniques used by successful Open Source projects to "put their brains together", by communicating openly and often, exposing concrete ideas early in prototype code, collaborating asynchronously and deliberately slowing things down to take advantage of unexpected Eureka moments.
Based on years of experiences in multiple Open Source projects, this talk will help you better understand what makes our communities so powerful and how to transpose this in your own teams.
Slides of my "Sling and Serverless, Best Friends Forever?" presentation at adaptTo() 2019, Berlin. A video recording will be available later at https://adapt.to/2019/en/schedule/sling-and-serverless-best-friends-forever.html
They don't understand me! Tales from the multi-cultural trenchesBertrand Delacretaz
Slides from my FOSS Backstage 2018 talk on the difficulties of collaborating in multicultural environments.
A video recording should be available soon.
https://foss-backstage.de/session/they-dont-understand-me-tales-multi-cultural-trenches
Prise de Décisions Asynchrone, Devoxx France 2018 (avec vidéo)Bertrand Delacretaz
Vidéo: https://www.youtube.com/watch?v=xkC4zjtAyRc - c'est la version française de ma présentation sur la Prise de Décisions Asynchrone, enregistrée à Devoxx France 2018.
Slides of my "Asynchronous Decision Making - why and how?" talk at the http://fossbackstage.de/ micro-summit, November 2017
I also gave this talk at FOSDEM 2018, a video recording (with somewhat poor audio unfortunately) is available at https://fosdem.org/2018/schedule/event/community_decision_making_why_how/
There's also a video recording of the French speaking version at devoxx.fr 2018, https://www.youtube.com/watch?v=xkC4zjtAyRc
See also my opensource.com article on the same topic at https://opensource.com/article/17/12/asynchronous-decision-making and a slightly older blog post at https://blogs.apache.org/foundation/entry/success-at-apache-asynchronous-decision
Slides of my talk at the September 2017 adaptTo() conference, Berlin. https://adapt.to/2017/en/schedule/get-the-cattle-out--let-s-build-a-large-scale-sling-rendering-pr.html
Video of that talk at https://www.youtube.com/watch?v=8bH9envZXik
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Essentials of Automations: Optimizing FME Workflows with Parameters
Tales from the OSGi trenches
1. OSGi
Tales from the Trenches
Bertrand Delacretaz
Senior R&D Developer, Day Software, www.day.com
Apache Software Foundation Member and Director
bdelacretaz@apache.org
blog: http://grep.codeconsult.ch
twitter: @bdelacretaz
Special thanks to:
ApacheCon Europe 2009, Amsterdam Filippo Diotalevi (osgilook.com)
slides revision: 2009-03-25 and The Day R&D team
for additional input!
OSGi tales from the trenches
2. What?
Share our experience using Apache Felix at
Day, for a major rewrite of our content
management products.
More than two years working with OSGi, very
high impact on developers, customers, service
people, mostly in a positive way.
OSGi is no silver bullet either.
silve
r
OSGi tales from the trenches
3. Ok but what?
the
GOOD
the
BAD
the
UGLY
and the
FUTURE
symbols by ppdigital , o0o0xmods0o0oon and clarita, on morguefile.com
OSGi tales from the trenches
5. First a warning
is not an OSGi guru!
I’m just a poor lonesome user...
OSGi tales from the trenches
6. OSGi ?
OSGi™
The Dynamic Module System for Java™
http://www.osgi.org (see also Wikipedia)
Consortium founded 1999, 100 companies.
Initially meant for mobile devices.
Now moving to server-side, fast.
Eclipse, LinkedIn, GlassFish, WSO2,
WebSphere and many others.
@apache: Felix, ServiceMix, Sling, CXF,
Tuscany and more, growing.
OSGi tales from the trenches
7. Trenches?
family of content
management products,
R&D team of about 30
built on Apache Sling,
http://www.day.com/cq5
http://jackrabbit.apache.org
uses Apache Felix and
http://felix.apache.org
Jackrabbit
http://incubator.apache.org/sling
OSGi tales from the trenches
8. What we use from OSGi
Bundles (using Maven plugins)
Lifecycle, Service Tracker
Configurations and Felix Web Console
Declarative Services (using Maven plugins)
Sling’s jcrinstall module
(bundles and configs loaded from the JCR repository)
Log, HTTP, Event services
presented by Carsten at 10:30
OSGi tales from the trenches
10. Famous Quotes, #1
“Effectively, OSGi brings many of the
desirable aims of SOA into the JVM.quot;”
Paul Fremantle
http://pzf.fremantle.org/2009/02/wso2-carbon-
part-1.html
OSGi tales from the trenches
11. Famous Quotes, #2
“Each (OSGi) bundle can serve as a micro
application, having it's own lifecycle,
having it's own citizens and each bundle
can carefully decide which objects to
expose to the outside world”
Peter Rietzler
http://peterrietzler.blogspot.com/2008/12/is-osgi-going-
to-become-next-ejb-bubble.html
OSGi tales from the trenches
12. Famous Quotes, #3
“OSGi is great, but the tooling is not quite
there yet. Not every library is a bundle and
many JARs don’t have OSGi manifests”
Matt Raible in
http://blog.linkedin.com/2008/06/23/osgi-at-linkedin-
integrating-spring-dm-part-1/
OSGi tales from the trenches
13. Famous Quotes, #4
“The lifecycle model of OSGi makes life
complicated. Actually, tracking services
and managing all the aspects of what to
do when services come and go is nasty”
Peter Rietzler
http://peterrietzler.blogspot.com/2008/12/is-osgi-going-
to-become-next-ejb-bubble.html
OSGi tales from the trenches
14. Famous Quotes, #5
“The challenge for the coming year is to
make OSGi more in line with the
expectations of the average J2EE
programmer because we see that need”
Peter Kriens in a comment at
http://peterrietzler.blogspot.com/2008/12/is-osgi-going-
to-become-next-ejb-bubble.html
OSGi tales from the trenches
15. Famous Quotes, #6
“OSGi makes quot;impossiblequot; things easy:
hot deploy/upgrade, service discovery, ...
and trivial things hard: hibernate, tag
libraries, even deploying a simple war!”
But, for the first time in my
career, I see software reusability
that works: service reusability.
Filippo Diotalevi
OSGi tales from the trenches
18. Modularity
OSGi bundle
Classloading
distinct from Public packages
class visibility. Metadata
Bundles as Private packages
reusable
components.
At last!
Matchless picture: Alvimann on morguefile.com
OSGi tales from the trenches
19. Declarative Services
/**
* Excerpts from a Sling Servlet, processes *.query.json requests
* Uses Felix’s maven-scr-plugin annotations
* @scr.component immediate=quot;truequot;
* @scr.service interface=quot;javax.servlet.Servletquot;
* @scr.property name=quot;sling.servlet.resourceTypesquot; value=quot;sling/servlet/defaultquot;
* @scr.property name=quot;sling.servlet.extensionsquot; value=quot;jsonquot;
* @scr.property name=quot;sling.servlet.selectorsquot; value=quot;queryquot;
*/
public class JsonQueryServlet extends SlingSafeMethodsServlet {
/** @scr.reference (injected by framework) */
private SlingRepository repo;
// activate(ComponentContext) and deactivate(ComponentContext)
// methods are called by framework if present
Annotated Java class +
...
}
Maven plugins == OSGi service
OSGi tales from the trenches
20. Clean API
Just a few
basic examples...
OSGi tales from the trenches
21. Dynamic loading / unloading
Just copy bundle jar
to Sling’s JCR
repository (WebDAV)
Bundle activated
and started.
(using Sling’s jcrinstall module)
OSGi tales from the trenches
22. Plugins for everything
Content editors based on
Servlets JCR node properties
Mime-type based handlers
Debugging/monitoring tools
Content renderers and decorators
Legacy integration gateways
Mail and messaging services
etc, etc...
OSGi tales from the trenches
23. Plugins: ServiceTracker
// Enumerate currently available AuthenticationHandler
// services, and select the one to use
ServiceTracker st = new
ServiceTracker( bundleContext,
AuthenticationHandler.class.getName());
ServiceReference[] sr = st.getServiceReferences();
for (int i = 0; i < sr.length; i++) {
AuthenticationHandler h = (AuthenticationHandler)
authHandlerTracker.getService(services[i]);
// ...
OSGi tales from the trenches
24. Legacy/customer code
OSGi bundle
Ugly or
incompatible Public packages
code Metadata
segregated
via private
packages Private packages
OSGi tales from the trenches
25. Private / public packages
maven-bundle-plugin instructions:
<Export-Package>
sling.jcr.jackrabbit.server.security
</Export-Package>
<Private-Package>
sling.jcr.jackrabbit.server.impl.*
</Private-Package>
OSGi tales from the trenches
27. Granularity is a hard problem
How many bundles?
> 100 currently in cq5
How to handle “implementation details”
libraries.
Extra bundles or private packages?
Strict version management required.
Are we there yet?
OSGi tales from the trenches
28. Clean up those packages!
OSGi bundle
Clean
separation of Public packages
interface and Metadata
implementation
packages
required Private packages
but when done!
OSGi tales from the trenches
29. Integration testing required
V4.22 V4.5 V7.4
V1.03 V3.21
V3.22
V4.2
V5.11 V5.3 V2.13
V6.54
V1.05
In-system V1.11 V6.4
V1.03
testing? V3.4 V6.4
V3.2
V5.43
V3.2
V2.4
but when done!
V5.6
OSGi tales from the trenches
30. Is OSGi scary?
“OSGi is difficult to sell - it is adopted in
some really visible products,like
websphere, glassfish, eclipse, but people
don't know that.” (Filippo Diotalevi)
Why so many bundles?
Where’s my J2EE? Is the book ready?
Whaddyamean “provisioning”?
OSGi tales from the trenches
31. Is it too early?
me: Starting two years later might have
helped avoid initial pains and incomplete
implementations.
Felix Meschberger: If we would have done
that, we would be nowhere near where
we are now!
Server-side OSGi is still fairly new...
OSGi tales from the trenches
36. Testing?
Integration
JUnit
JUnit testing,
and mocks,
with OSGI OSGi, HTTP
no OSGi
Test the code Test bundles Test assemblies
Required. in realistic in realistic
Sufficient? conditions conditions
Many examples in Sling We don’t use this at this time. Sling launchpad and jcrinstall
OSGi tales from the trenches
37. JUnit testing w/mocks
JUnit Example, using jmock.org:
and mocks,
JsonReaderTest in Sling’s contentloader module.
no OSGi
@org.junit.Test public void testEmptyObject()
No OSGi needed,
throws Exception {
fast!
this.mockery.checking(new Expectations() {{
But what am I
allowing(creator).createNode(null, null, null);
testing exactly?
inSequence(mySequence);
Sometimes hard to
allowing(creator).finishNode();
follow or modify.
inSequence(mySequence);
}});
this.parse(quot;quot;); }
https://svn.eu.apache.org/repos/asf/incubator/sling/trunk/bundles/jcr/contentloader/src/test/java/org/apache/sling/jcr/contentloader/internal/JsonReaderTest.java
OSGi tales from the trenches
38. Integration tests, OSGi + HTTP
Bundles under test
cargo-maven2 plugin starts webapp
surefire-plugin runs tests
HTTP
HTTP Felix OSGi console
Felix OSGi framework
Sling app (cargo-maven2 plugin)
JUnit tests
Maven
Examples in Sling’s launchpad/testing
and jcrinstall modules.
OSGi tales from the trenches
42. OSGi @day, 2 years from now
Developers got used to it (and
read the book).
Frameworks and tools improved.
Distributed OSGi? Maybe.
Customers understand OSGi and like it..
Apache Sling paved the way.
OSGi tales from the trenches
43. Do we need more features?
Today we use:
Bundles (using Maven plugins)
Lifecycle, Service Tracker
Configurations and Felix Web Console
Declarative Services (using Maven plugins)
Sling’s jcrinstall module
Log, HTTP, Event services
Later:
Deployment packages. Security maybe.
More? Not really - tame what we use!
OSGi tales from the trenches
44. Conclusions
Good? Bad? Ugly?
OSGi tales from the trenches
45. Conclusions
OSGi is great for modularity
OSGi fosters better structured code
Dynamic services and plugins
Tooling needs to improve, but usable
OSGi skills need to improve!
Asynchronous startup can be problematic
if using declarative services
OSGi tales from the trenches