The document discusses OSGi and plugins, providing an overview of OSGi concepts and best practices for developing OSGi bundles. It recommends developers carefully manage bundle manifests to control dependencies and classloading, leverage the Felix web console for debugging, and understand what capabilities host applications provide.
Apache Tuscany is an open source project that simplifies the development, deployment and management of distributed applications built as compositions of service components. It is based on the Service Component Architecture specifications being defined by the OASIS Open SCA Collaboration. This presentation describe the experience to OSGi enable the Tuscany SCA runtime.
Maven, Eclipse and OSGi Working Together - Carlos Sanchezmfrancis
OSGi DevCon 2008
With the growing popularity of Apache Maven, Eclipse, and OSGi, the most frequently-asked questions are: "Can they work together?" and, "Do they fight for the same space?" This tutorial will cover the strengths and weaknesses of each, explains where they overlap, and how they complement each other so you can get maximum productivity. It pays special attention to the build process, dependency management, collaboration, repository management, and available tools, as well as the future direction of the technologies. The solutions proposed will be based on the work done in the Apache Maven and Apache Felix projects, along with several Eclipse Foundation projects like Eclipse PDE and Eclipse Buckminster.
OSGi has gained popularity over the last two years. The platform has some very interesting features like versioning, dynamic updates and it's service oriented nature. These characteristics however come with a price. A firm understanding of how and why OSGi works how it works, is a necessity if you plan on getting into OSGi.
This talk will start with some basic principals on the java platform and will gradually move towards the OSGi infrastructure explaining the OSGi fundamentals. The following topics will be covered:
* Classloading in OSGi
* Lifecycle management of OSGi bundles
* OSGi Service, the service registry and service composition models
Afterwards, we will explain the generally accepted best practices and OSGi design patterns.
Learn how to use Continuous Delivery for Puppet Enterprise (CD4PE) in an interactive workshop with hands-on labs. What's CD4PE? CD4PE is the continuous delivery add-on to Puppet Enterprise, aimed at accelerating the speed at which you can get Puppet code changes deployed into production safely. CD4PE facilitates code collaboration across teams, and dramatically improves the release management process for teams that own & maintain individual Puppet modules. CD4PE integrates with both Puppet Enterprise as well as your version control system of choice.
After completing the workshop, you will be able to use CD4PE to perform common code management tasks on your Puppet control repo and modules.
Apache Tuscany is an open source project that simplifies the development, deployment and management of distributed applications built as compositions of service components. It is based on the Service Component Architecture specifications being defined by the OASIS Open SCA Collaboration. This presentation describe the experience to OSGi enable the Tuscany SCA runtime.
Maven, Eclipse and OSGi Working Together - Carlos Sanchezmfrancis
OSGi DevCon 2008
With the growing popularity of Apache Maven, Eclipse, and OSGi, the most frequently-asked questions are: "Can they work together?" and, "Do they fight for the same space?" This tutorial will cover the strengths and weaknesses of each, explains where they overlap, and how they complement each other so you can get maximum productivity. It pays special attention to the build process, dependency management, collaboration, repository management, and available tools, as well as the future direction of the technologies. The solutions proposed will be based on the work done in the Apache Maven and Apache Felix projects, along with several Eclipse Foundation projects like Eclipse PDE and Eclipse Buckminster.
OSGi has gained popularity over the last two years. The platform has some very interesting features like versioning, dynamic updates and it's service oriented nature. These characteristics however come with a price. A firm understanding of how and why OSGi works how it works, is a necessity if you plan on getting into OSGi.
This talk will start with some basic principals on the java platform and will gradually move towards the OSGi infrastructure explaining the OSGi fundamentals. The following topics will be covered:
* Classloading in OSGi
* Lifecycle management of OSGi bundles
* OSGi Service, the service registry and service composition models
Afterwards, we will explain the generally accepted best practices and OSGi design patterns.
Learn how to use Continuous Delivery for Puppet Enterprise (CD4PE) in an interactive workshop with hands-on labs. What's CD4PE? CD4PE is the continuous delivery add-on to Puppet Enterprise, aimed at accelerating the speed at which you can get Puppet code changes deployed into production safely. CD4PE facilitates code collaboration across teams, and dramatically improves the release management process for teams that own & maintain individual Puppet modules. CD4PE integrates with both Puppet Enterprise as well as your version control system of choice.
After completing the workshop, you will be able to use CD4PE to perform common code management tasks on your Puppet control repo and modules.
Easily Manage Patching and Application Updates with Chocolatey + Puppet - Apr...Puppet
Automate your Windows environment faster with Puppet + Chocolatey. Together, Puppet and Chocolatey bring faster and more secure deployments to your Windows environments. By using Chocolatey for package management and Puppet to automate and guarantee the desired state of your Windows infrastructure, your teams can securely deploy applications faster than ever.
Virtual Bolt workshop
Learn how to use Bolt in an interactive virtual workshop.
Join us for an interactive virtual Bolt workshop on Wednesday, 11 March 2020. You’ll learn how to install and configure common Bolt activities and leave with your laptops Puppet-ready, with Bolt + PDK + Puppet Agent + VS Code. Plus, you’ll get to speak with experts from Puppet and the community.
What's Bolt? Bolt is an open source, agentless multi-platform automation tool that reduces your time to automation and makes it easier to get started with DevOps. Bolt makes automation much more accessible without requiring any Puppet knowledge, agents, or master. It uses SSH or WinRM to communicate and execute tasks on remote systems.
Your teams can perform various tasks like starting and stopping services, rebooting remote systems, and gathering packages and systems facts from your workstation or laptop on any platform (Linux and Windows).
The talk is introduction to OSGi specification and its implementations. It summarizes corner stones of OSGi (bundles, services, components) and describes a technical background of OSGi implementations on a simple example.
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.
Are you interested into getting deep insight into the new features that Project Jigsaw offers in Java 9 ?
Project Jigsaw is one of the biggest changes introduced in Java since the launch of the Java programming language back in 1995. It has a great impact on the way we architect and develop Java applications.
Project Jigsaw represents a brand new modular system that brings lots of features and empowers developers to build modular applications using Java 9.
In this presentation you will see how the entire JDK was divided into modules and how the source code was reorganized around them.
You will learn all what you need to know in order to start developing reliable, secure and maintainable modular Java applications with Project Jigsaw.
You will see how to define modules and how to compile, package and run a Java application using Jigsaw.
You’ll learn how to take advantage of the new module path and how to create modular run-time images that represent smaller and compacter JREs that consist only of the modules you need.
Having a Java 7 or 8 application and you are intending to migrate it to Java 9? In this talk you’ll learn how to do it using top-down migration and bottom-up migration.
Are you afraid that your application code will break when switching to Java 9? No problem, you’ll see what you should do in order to make your application suitable for Java 9.
Uyuni, the solution to manage your IT infrastructure Pau Garcia Quiles
Uyuni is a software-defined infrastructure and configuration management solution. It bootstraps physical servers, creates VMs for virtualization and cloud, deploys and updates packages -even with content lifecycle management features-, builds container images, and tracks what runs on your Kubernetes clusters. All using Salt under the hood.
This presentation at the openSUSE Virtual Summit 2020 discusses what is Uyuni, where we are, what's next and opportunities for the community.
Open Services Gateway Initiative (OSGI)Peter R. Egli
OSGi is a component-based technology and was developed to provide a software platform that allows modularization and dynamic linking of application components.
OSGi components are called bundles and can be exported and imported by application bundles.
OSGi implementations like Apache Felix or Eclipse Equinox provide a runtime container which controls the lifecycle of bundles.
Even though OSGi is hardware independent, it is based on the Java Virtual Machine and as such extends the concepts of the underlying Java language.
An OSGi bundle's capabilities and properties are defined in a manifest file that is packed together with the bundle's Java class files. The manifest file allows compatibility checks by the OSGi runtime between the exporting bundle and the importing bundle.
This export and import mechanism allows highly flexible and dynamic application environments where applications and components are installed, linked and started at runtime without the need to restart the entire system.
Manage your Windows Infrastructure with Puppet Bolt - August 26 - 2020Puppet
This two-hour workshop will focus on the following:
Improving operational efficiency for managing Windows infrastructure
Applying configuration baselines to Windows Server and IIS web servers
Utilizing PowerShell and Bolt to automate day to day management tasks
What's Bolt? Puppet Bolt is the easiest way to get started with DevOps and does not require Puppet knowledge. During this workshop you will utilize WinRM or SSH to communicate with your server environments.
You will leave this workshop with a working knowledge of Bolt, and your laptop equipped to start tackling automation challenges across your organization.
Easily Manage Patching and Application Updates with Chocolatey + Puppet - Apr...Puppet
Automate your Windows environment faster with Puppet + Chocolatey. Together, Puppet and Chocolatey bring faster and more secure deployments to your Windows environments. By using Chocolatey for package management and Puppet to automate and guarantee the desired state of your Windows infrastructure, your teams can securely deploy applications faster than ever.
Virtual Bolt workshop
Learn how to use Bolt in an interactive virtual workshop.
Join us for an interactive virtual Bolt workshop on Wednesday, 11 March 2020. You’ll learn how to install and configure common Bolt activities and leave with your laptops Puppet-ready, with Bolt + PDK + Puppet Agent + VS Code. Plus, you’ll get to speak with experts from Puppet and the community.
What's Bolt? Bolt is an open source, agentless multi-platform automation tool that reduces your time to automation and makes it easier to get started with DevOps. Bolt makes automation much more accessible without requiring any Puppet knowledge, agents, or master. It uses SSH or WinRM to communicate and execute tasks on remote systems.
Your teams can perform various tasks like starting and stopping services, rebooting remote systems, and gathering packages and systems facts from your workstation or laptop on any platform (Linux and Windows).
The talk is introduction to OSGi specification and its implementations. It summarizes corner stones of OSGi (bundles, services, components) and describes a technical background of OSGi implementations on a simple example.
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.
Are you interested into getting deep insight into the new features that Project Jigsaw offers in Java 9 ?
Project Jigsaw is one of the biggest changes introduced in Java since the launch of the Java programming language back in 1995. It has a great impact on the way we architect and develop Java applications.
Project Jigsaw represents a brand new modular system that brings lots of features and empowers developers to build modular applications using Java 9.
In this presentation you will see how the entire JDK was divided into modules and how the source code was reorganized around them.
You will learn all what you need to know in order to start developing reliable, secure and maintainable modular Java applications with Project Jigsaw.
You will see how to define modules and how to compile, package and run a Java application using Jigsaw.
You’ll learn how to take advantage of the new module path and how to create modular run-time images that represent smaller and compacter JREs that consist only of the modules you need.
Having a Java 7 or 8 application and you are intending to migrate it to Java 9? In this talk you’ll learn how to do it using top-down migration and bottom-up migration.
Are you afraid that your application code will break when switching to Java 9? No problem, you’ll see what you should do in order to make your application suitable for Java 9.
Uyuni, the solution to manage your IT infrastructure Pau Garcia Quiles
Uyuni is a software-defined infrastructure and configuration management solution. It bootstraps physical servers, creates VMs for virtualization and cloud, deploys and updates packages -even with content lifecycle management features-, builds container images, and tracks what runs on your Kubernetes clusters. All using Salt under the hood.
This presentation at the openSUSE Virtual Summit 2020 discusses what is Uyuni, where we are, what's next and opportunities for the community.
Open Services Gateway Initiative (OSGI)Peter R. Egli
OSGi is a component-based technology and was developed to provide a software platform that allows modularization and dynamic linking of application components.
OSGi components are called bundles and can be exported and imported by application bundles.
OSGi implementations like Apache Felix or Eclipse Equinox provide a runtime container which controls the lifecycle of bundles.
Even though OSGi is hardware independent, it is based on the Java Virtual Machine and as such extends the concepts of the underlying Java language.
An OSGi bundle's capabilities and properties are defined in a manifest file that is packed together with the bundle's Java class files. The manifest file allows compatibility checks by the OSGi runtime between the exporting bundle and the importing bundle.
This export and import mechanism allows highly flexible and dynamic application environments where applications and components are installed, linked and started at runtime without the need to restart the entire system.
Manage your Windows Infrastructure with Puppet Bolt - August 26 - 2020Puppet
This two-hour workshop will focus on the following:
Improving operational efficiency for managing Windows infrastructure
Applying configuration baselines to Windows Server and IIS web servers
Utilizing PowerShell and Bolt to automate day to day management tasks
What's Bolt? Puppet Bolt is the easiest way to get started with DevOps and does not require Puppet knowledge. During this workshop you will utilize WinRM or SSH to communicate with your server environments.
You will leave this workshop with a working knowledge of Bolt, and your laptop equipped to start tackling automation challenges across your organization.
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
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...Martin Bergljung
In this talk you will learn how to set up an Alfresco SDK 3.0 multi module project that could be used in a larger consulting project context. Extension modules will be standalone and versioned and released independently in the Nexus 3 Repository Manager. The talk also includes a look at defining a Parent POM and an Aggregator POM for your SDK 3 project solution.
Opendaylight is a project which promotes the Software Defined Networking.
Officially started on April -8th-2013.
The linux foundation planned an pivotal role in it, but it’s a consortium and multiple tech companies are partnered to led the SDN.
Its based on Eclipse Public License – v 1.0 (EPL).
------------------
Software defined networking is a research area which let a network to program, It also output network control applications, and those applications are to control the network
Example :
A network formed by the openflow enabled switch.
Controller Platform provides the OPEN APIs to program the network.
Controller Applications control the network based on the needs
This presentation was given at the Boston Django meetup on November 16, and surveyed several leading PaaS providers including Stackato, Dotcloud, OpenShift and Heroku.
For each PaaS provider, I documented the steps necessary to deploy Mezzanine, a popular Django-based CMS and blogging platform.
At the end of the presentation, I do a wrap-up of the different providers and provide a comparison matrix showing which providers have which features. This matrix is likely to go out-of-date quickly because these providers are adding new features all the time.
Slack Bot: upload NUGET package to ArtifactorySergey Dzyuban
What it Jenkins CI automation to upload file to Artifactory failed? And users need some quick and safe mechanism do do upload manually ? Slack Bot will help to archive user experience and will add a bit of automation.
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.
In the last two years, we presented our experimental work that enables developers to precompile scripts to allow them to build Sling applications that are compiled ahead-of-time.
Our saga continues: since the last adaptTo() we made several improvements to make this idea a reality, including:
* Support for any Sling-supported Script Engine
* Support for precompiled units in the JSP Script Engine
* Support for both versioned and non-versioned resource types
* Support for servlet resolution based on the current resource and path, so that language-specific features like data-sly-include and sling:call work just as before
We actively worked on reducing the migration efforts required to take advantage of the Apache Sling Scripting Bundle Tracker, allowing it to work in existing projects.
In this talk, we will show our progress and demonstrate how you can adapt your existing projects with minimal effort. As an example, we have converted the Sling Starter application, including the Composum content browser, to perform rendering with precompiled scripts.
Finally, we will provide an outlook on how this paves the way for a future natively compiled Sling, that will help make applications more cloud-friendly.
For more details head over to https://adapt.to/2020/en/schedule/paving-the-way-to-a-native-sling.html.
We aim to celebrate women every day, but we’re taking today to give special recognition to womxn at Atlassian continue who inspire and lead.
For #InternationalWomensDay, we asked Atlassians to nominate and recognize amazing womxn at Atlassian who inspire them, challenge them, and truly represent Atlassian values.
Ever wondered what Atlassian engineers do in their 20% time? Join Forge engineering lead Tim Pettersen on a lightning tour of how Forge is being used inside Atlassian. Attendees will get a rare view into some of the apps, tools, and tweaks we’ve built internally on top of Forge in the spirit of dogfooding and innovation. Come along and be inspired with some great ideas for improving and automating your own teams' workflows!
Let's Build an Editor Macro with Forge UIAtlassian
Race out of the gate with Forge UI: a new way of building UI extensions for Atlassian products. In this session, Forge UI Developer Experience lead Peter Gleeson will demonstrate how build an Editor macro from scratch! Attendees will learn about Forge foundational concepts such as the FaaS dev loop, Forge CLI, and how to construct UIs from Forge UI components.
This session provides a great introduction to the Forge platform for any developer looking to get productive with editor apps and Forge UI.
In the words of Jeff Atwood: “JavaScript is the lingua franca of the web”. It’s also the first language we’ve chosen to support in Forge. In this session, Forge engineer Shorya Raj will walk through the Node.js isolate based runtime you’ll be using to write apps for Forge.
Attendees will learn about the unique features of the Forge JavaScript Runtime, such as automatic authentication and tenant context management. Shorya will also cover the differences between the Runtime, conventional browser, and Node.js APIs.
Developers or attendees with some programming experience will get the most out of this session.
Forge UI: A New Way to Customize the Atlassian User ExperienceAtlassian
UI extensibility is an integral part of Atlassian's ecosystem story. In cloud, traditionally this has been accomplished with the humble iframe. In this session you will learn about Forge UI, an additional and innovative way to build visual apps for Atlassian products.
Join Product Manager Simon Kubica and Senior Developer Michael Oates from the Forge team in exploring the underlying concepts and technology powering Forge UI, and learn how it will unlock exciting new opportunities in our ecosystem.
The Forge platform contains some powerful primitives for binding functions to Atlassian events and webhooks emitted by third-party SaaS systems. Join Platform Services Engineer Tomek Sroka as he gets hands-on with Forge Product Triggers and Web Triggers to build a powerful integration with surprisingly little code.
Attendees will walk away with a good understanding of the Forge dev loop and some tips and tricks for improving their own team’s workflows.
Observability and Troubleshooting in ForgeAtlassian
Observability is a critical component of any Cloud development platform, and we have some exciting logging, monitoring, and debugging features planned for the Forge toolchain.
In this lightning talk, Senior Developer James Hazelwood from Forge infrastructure team will give an overview of Forge logging and tunnelling features, explain how different environment types effect observability, and share some expert tips and tricks for detecting and troubleshooting issues in your Forge apps.
Trusted by Default: The Forge Security & Privacy ModelAtlassian
Security and trust have become increasingly important requirements for our customers in Cloud. We’re working to make it easier for you to build and maintain secure apps for Atlassian products.
In this session, Engineering Team Lead Dugald Morrow and Principal Product Manager Joël Kalmanowicz will explain how security and trust have been baked into the Forge framework and the benefits the platform can offer you and your users. Learn how much less work it can be to build trusted apps customers will love on Forge by going deep on the safeguards we’re putting in place.
Developers or attendees with some software security experience will get the most out of this session.
Designing Forge UI: A Story of Designing an App UI SystemAtlassian
Creating apps with Forge and its UI frontend components is now easier than ever. Join Senior Designer Allard van Helbergen and Product Manager Josephine Lee as they walk through the story of designing Forge UI.
What is a declarative UI and why did we choose this paradigm? What are all the considerations that go into defining the set of components to build apps with? And how do you make ‘creating apps’ simple? Walk away understanding the foundations of Forge, how all the different components work together, and where Forge UI is headed in the future.
After a day of learning about the exciting features of Forge, get ready for a peek under the hood to discover how it’s all implemented. Join Forge Architect Patrick Streule as he goes deep on topics such as Forge FaaS infrastructure, the internal workings of tenant isolation, and automatic authentication.
Attendees will also get a glimpse of some features we’re looking at building into the future of Forge, such as a serverless data store for apps and more!
Access to User Activities - Activity Platform APIsAtlassian
How do you stay on top of your work when it is scattered across multiple Atlassian products?
"If only there was a single place where I could see all my activity..." - sounds familiar?
We are going to provide you an insight into what lead to the creation of a new Activity API. Following last year’s Atlas Camp announcement from our CTO Sri Viswanath, Atlassian is moving onto GraphQL - new Activity API is one the first pieces of the GraphQL Atlassian Platform and is the technology behind start.atlassian.com.
Join Sergey Meshkov, Senior Developer, who will provide you a sneak peek of the new GraphQL Activity API as it will soon be available to our vendors.
Design Your Next App with the Atlassian Vendor Sketch PluginAtlassian
Our designers work 3x quicker with the Atlassian Vendor Sketch Plugin — and now we’re unleashing these superpowers to the Atlassian Ecosystem. If you mockup screens for code or marketing, we’ll help you drag and drop your way to an Atlaskit design in less than 10 minutes. And if you’re a designer, you’ll want to hear about our pixel-perfect component library and suite of seamless Sketch integrations.
Join Atlassian’s resident Sketch aficionado, Huw Evans, to learn about:
Sketch Components: If it’s in Atlaskit, it’s now in Sketch. And introducing the Symbol Palette, the quickest way to find the right component for the job.
Product Templates: Spark inspiration by building your designs inside realistic screens from Jira & Confluence — or craft hero images for your Marketplace listing!
Color and Text Styles: Heard of N75? H400? If those mean nothing to you, we’ll run through how to make your users feel at home by using Atlassian colors & typography, right inside Sketch.
Data Suppliers: Say goodbye to Lorem Ipsum. Learn how to use Sketch Data Suppliers to generate realistic copy using live data from Jira, Confluence and Bitbucket. Bonus: How we used AI to create people who don’t exist!
♀️ It's All Open Source: How we made it really easy to customise the Atlassian Vendor Sketch Plugin for your team's needs.
Tear Up Your Roadmap and Get Out of the BuildingAtlassian
You’d never knowingly ship something to your customers that didn’t deliver value, would you? Would you still stand your ground if you were under pressure to get a team of developers working on something?
You probably know that one of Atlassian’s most well-known values is “Don’t f*** the customer”, so learn what happened when a lean product team decided to tear up the roadmap because they were brave enough to admit they didn’t understand their customers well enough.
Join Janel Blattler, as she shares how her team used research to unveil a new plan in just a few weeks. You’ll be able to practice some techniques and walk away with a bucket load of inspiration.
Come along if you’d like to run research, but worry that you don’t have enough time or lack the skills to do so – you don’t need to be a researcher on your team. This session is for you if you’re looking for ways to drive customer empathy closer in the team, or you’d like to up your game and discover some new techniques for delivering lean research with actionable insights.
Nailing Measurement: a Framework for Measuring Metrics that MatterAtlassian
When it comes to designing apps and new features, we just can't get enough of metrics. In an age where we can collect data from almost anything, how can we cut through the noise and focus on the right metrics to measure the success and failures of the apps that we’re building?
Join Atlassian Product Manager Josephine Lee as she delves through what exactly makes a good metric. Throughout the talk, we’ll walk through real Atlassian examples of good and bad metrics. By exploring a framework for measurement, we’ll cover detailed features that showcase how best to measure and choose the right set of success, supportive, and counter metrics.
You'll walk away with tips and learnings from Atlassian’s approach to measuring success, and learn how to use data and metrics to inspire action in your apps.
Building Apps With Color Blind Users in MindAtlassian
Color-blind people are using your apps. 1 in 12 men is color blind. And for women, this is 1 in 200.
Building apps that work well for color blind people is not difficult. Some simple techniques help us with the design of our interface. And some tools help us see what color blind people see.
In this talk, Maarten Arts of Avisi will look at common varieties of color blindness. We will look at apps through the eyes of a color-blind person. And we will discover what color-blind people struggle with.
Regardless of whether you're a designer or developer, this talk will equip you with the skills and the tools you need to make sure that your app works for color-blind people.
Creating Inclusive Experiences: Balancing Personality and Accessibility in UX...Atlassian
The words we choose have the power to include or alienate our users. The reality is that for many, English is spoken as a second language. And unless you're going to localize your product for those major non-English speaking markets, you'll need to thoughtfully create content that is accessible to a larger audience.
But how do we create products that maintain a sense of personality without isolating a wide audience of non-native speakers?
Join Atlassian Content Designer, Roana Bilia, as she walks you through why thoughtful, inclusive content, is key to creating well-designed user experiences. You'll walk away with foundational principles for good UX copy when optimizing your product UI, a few quick wins that you as creators and developers can incorporate into your next products, as well as a set of mistakes to avoid that companies—including Atlassian—have made, which prioritized native speakers but isolated non-native speakers.
Beyond Diversity: A Guide to Building Balanced TeamsAtlassian
We hear it all the time, and we get it. Diversity and inclusion are important! But isn't it an HR problem? HR may be able to help with diversity but inclusion or creating an inclusive environment is everyone's responsibility. So how do we create an inclusive environment that celebrates diversity and engages and supports everyone? Isabel Nyo will be sharing best practices and lessons she has learned along the way. She will also be sharing her experience as a minority, a female technical leader, in the technology industry.
The Road(map) to Las Vegas - The Story of an Emerging Self-Managed TeamAtlassian
In September 2018, K15t took its mission to go self-managed to the next-level when the entire company worked together to decide on the Next Big Thing™ to build for Atlassian users and present it at Summit in Las Vegas.
In this session, Anshuman Dash, an intern turned software engineer, turned product manager, shares his journey of professional self-discovery. In under five months, he joins a freshly assembled, self-managed team in building a new Atlassian Marketplace app.
Dash will give a quick intro to what it means for a team to be self-managed. Then, he'll share his observations and experiences on the team, as well as the best-practices, patterns, and processes K15t has discovered along the way.
Whether you are a new team with a kick-ass product idea or a big company figuring out ways to scale, this talk will provide you with practical tips and ideas your team can try out!
Designing for the enterprise comes with a unique set of challenges; ensuring readability and accessibility at scale, meeting the needs of multi-layered organizations, and building a trust when your software - used by dozens of thousands of employees - is considered mission-critical.
At Atlassian, we've spent countless hours digging deep into our enterprise customer's needs and we've gathered a vast repository of insights.
In this talk, Pawel Wodkowski, a senior designer on Jira Server, will share all that we've learned from our research (while not being shy about busting some of those wild admin myths!). You'll get a crash course in what it means to design for scale the Atlassian way.
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.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
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.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
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.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
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.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
2. Plugins 2 and OSGi Gotchas
Or: How I learned to stop worrying and love Apache Felix
John Kodumal
Atlassian Developer
2
2
3. Agenda
• Background
• OSGi Primer
• Protips
1. Be the master of your manifest
2. Manage your dependencies
3. Earn a brown belt in OSGi classloading
4. Buddy up with the Felix web console
5. Know what the applications provide
3
3
6. Migrate to Plugins 2.0
• Convert plugin to plugins 2
• http://confluence.atlassian.com/x/bwLvCw
• Convert plugin project to SDK
• http://confluence.atlassian.com/x/wRyyCg
6
6
7. OSGi as a black box?
The Atlassian Plugin Framework 2 tries to hide the complexity of OSGi as
much as possible...
If you are familiar with OSGi and want to provide an OSGi bundle directly in
order to leverage all its features, you are free to do so.
http://confluence.atlassian.com/x/DIBiCg
7
7
8. OSGi as a black box?
OSGi
Knowledge
crazy plugins
(dashboards)
simple plugins
(gadgets)
sweet spot
Plugin
Complexity
8
8
9. Agenda
• Background
• OSGi Primer
• Protips
1. Be the master of your manifest
2. Manage your dependencies
3. Earn a brown belt in OSGi classloading
4. Buddy up with the Felix web console
5. Know what the applications provide
9
9
12. How Bundles Interact
your plugin google collections 1.0
com.google.collect v1.0
Wire
12
12
13. Agenda
• Background
• Overview of OSGi
• Protips
1. Be the master of your manifest
2. Manage your dependencies
3. Earn a brown belt in OSGi classloading
4. Buddy up with the Felix web console
5. Know what the applications provide
13
13
14. #1 Be the master of your manifest
Manifest-Version: 1.0
Created-By: 1.5.0_19 (Apple Inc.)
Bundle-Name: gdata-service-plugin
Bundle-SymbolicName: com.atlassian.agmp.gdata-service-plugin
Bundle-Description: This is the com.atlassian.agmp:gdata-service-plugin plugin for Atlassian Refapp.
Bundle-ClassPath: .,META-INF/lib/commons-lang-2.4.jar,META-INF/lib/joda-time-1.6.jar
Import-Package: com.atlassian.agmp.integration.common;version="0.0.0",
com.atlassian.templaterenderer.annotations;version="0.0.0",com.atlassian.templaterenderer.velocity.one.six;version="0.0.0",c
om.google.common.base;version="0.0.0",com.google.gdata.client;version="1.40.1",com.google.gdata.client.authn.oauth;versi
on="1.40.1",com.google.gdata.client.calendar;version="1.40.1",com.google.gdata.client.docs;version="1.40.1",com.google.gd
Bundle-Name: gdata-service-plugin
ata.client.media;version="1.40.1",com.google.gdata.data;version="1.40.1",com.google.gdata.data.calendar;version="1.40.1",c
Bundle-SymbolicName: com.atlassian.agmp.gdata-service-plugin
om.google.gdata.data.docs;version="1.40.1",com.google.gdata.data.media;version="1.40.1",com.google.gdata.util;version="1
.40.1",com.google.gdata.util.common.base;version="1.40.1",com.google.gdata.util.common.xml;version="1.40.1",javax.servlet
Bundle-Description: This is the com.atlassian.agmp:gdata-service-plugin plugin for Atlassian Refapp.
;version="0.0.0",javax.servlet.http;version="0.0.0",org.apache.commons.io;version="1.3",org.apache.log4j;version="0.0.0",org.
springframework.beans.factory.annotation;version="0.0.0"
Export-Package: com.atlassian.agmp.gdata;uses:="com.google.gdata.util";version="1.1.4.SNAPSHOT"
Bundle-Version: 1.1.4.SNAPSHOT
Bundle-DocURL: http://www.atlassian.com/
Bundle-Vendor: Atlassian
Bundle-ManifestVersion: 2
Tool: Bnd-0.0.311
14
14
15. #1 Be the master of your manifest
Manifest-Version: 1.0
Created-By: 1.5.0_19 (Apple Inc.)
Bundle-Name: gdata-service-plugin
Bundle-SymbolicName: com.atlassian.agmp.gdata-service-plugin
Bundle-Description: This is the com.atlassian.agmp:gdata-service-plugin plugin for Atlassian Refapp.
Bundle-ClassPath: .,META-INF/lib/commons-lang-2.4.jar,META-INF/lib/joda-time-1.6.jar
Import-Package: com.atlassian.agmp.integration.common;version="0.0.0",
com.atlassian.templaterenderer.annotations;version="0.0.0",com.atlassian.templaterenderer.velocity.one.six;version="0.0.0",c
om.google.common.base;version="0.0.0",com.google.gdata.client;version="1.40.1",com.google.gdata.client.authn.oauth;versi
on="1.40.1",com.google.gdata.client.calendar;version="1.40.1",com.google.gdata.client.docs;version="1.40.1",com.google.gd
Bundle-ClassPath: .,META-INF/lib/commons-lang-2.4.jar,META-INF/lib/joda-time-1.6.jar
ata.client.media;version="1.40.1",com.google.gdata.data;version="1.40.1",com.google.gdata.data.calendar;version="1.40.1",c
om.google.gdata.data.docs;version="1.40.1",com.google.gdata.data.media;version="1.40.1",com.google.gdata.util;version="1
.40.1",com.google.gdata.util.common.base;version="1.40.1",com.google.gdata.util.common.xml;version="1.40.1",javax.servlet
;version="0.0.0",javax.servlet.http;version="0.0.0",org.apache.commons.io;version="1.3",org.apache.log4j;version="0.0.0",org.
springframework.beans.factory.annotation;version="0.0.0"
Export-Package: com.atlassian.agmp.gdata;uses:="com.google.gdata.util";version="1.1.4.SNAPSHOT"
Bundle-Version: 1.1.4.SNAPSHOT
Bundle-DocURL: http://www.atlassian.com/
Bundle-Vendor: Atlassian
Bundle-ManifestVersion: 2
Tool: Bnd-0.0.311
15
15
16. #1 Be the master of your manifest
Manifest-Version: 1.0
Created-By: 1.5.0_19 (Apple Inc.)
Bundle-Name: gdata-service-plugin
Bundle-SymbolicName: com.atlassian.agmp.gdata-service-plugin
Import-Package: Bundle-Description: This is the com.atlassian.agmp:gdata-service-plugin plugin for Atlassian Refapp.
com.atlassian.agmp.integration.common;version="0.0.0",
Bundle-ClassPath: .,META-INF/lib/commons-lang-2.4.jar,META-INF/lib/joda-time-1.6.jar
com.atlassian.templaterenderer.annotations;version="0.0.0",com.atlassian.templaterenderer.velocity.
Import-Package: com.atlassian.agmp.integration.common;version="0.0.0",
one.six;version="0.0.0",com.google.common.base;version="0.0.0",com.google.gdata.client;version="
com.atlassian.templaterenderer.annotations;version="0.0.0",com.atlassian.templaterenderer.velocity.one.six;version="0.0.0",c
om.google.common.base;version="0.0.0",com.google.gdata.client;version="1.40.1",com.google.gdata.client.authn.oauth;versi
1.40.1",com.google.gdata.client.authn.oauth;version="1.40.1",com.google.gdata.client.calendar;versi
on="1.40.1",com.google.gdata.client.calendar;version="1.40.1",com.google.gdata.client.docs;version="1.40.1",com.google.gd
ata.client.media;version="1.40.1",com.google.gdata.data;version="1.40.1",com.google.gdata.data.calendar;version="1.40.1",c
on="1.40.1",com.google.gdata.client.docs;version="1.40.1",com.google.gdata.client.media;version="
om.google.gdata.data.docs;version="1.40.1",com.google.gdata.data.media;version="1.40.1",com.google.gdata.util;version="1
1.40.1",com.google.gdata.data;version="1.40.1",com.google.gdata.data.calendar;version="1.40.1",co
.40.1",com.google.gdata.util.common.base;version="1.40.1",com.google.gdata.util.common.xml;version="1.40.1",javax.servlet
;version="0.0.0",javax.servlet.http;version="0.0.0",org.apache.commons.io;version="1.3",org.apache.log4j;version="0.0.0",org.
m.google.gdata.data.docs;version="1.40.1",com.google.gdata.data.media;version="1.40.1",com.goo
springframework.beans.factory.annotation;version="0.0.0"
Export-Package: com.atlassian.agmp.gdata;uses:="com.google.gdata.util";version="1.1.4.SNAPSHOT"
gle.gdata.util;version="1.40.1",com.google.gdata.util.common.base;version="1.40.1",com.google.gda
Bundle-Version: 1.1.4.SNAPSHOT
ta.util.common.xml;version="1.40.1",javax.servlet;version="0.0.0",javax.servlet.http;version="0.0.0",o
Bundle-DocURL: http://www.atlassian.com/
Bundle-Vendor: Atlassian
rg.apache.commons.io;version="1.3",org.apache.log4j;version="0.0.0",org.springframework.beans.fa
Bundle-ManifestVersion: 2
Tool: Bnd-0.0.311
ctory.annotation;version="0.0.0"
16
16
17. #1 Be the master of your manifest
Manifest-Version: 1.0
Created-By: 1.5.0_19 (Apple Inc.)
Bundle-Name: gdata-service-plugin
Bundle-SymbolicName: com.atlassian.agmp.gdata-service-plugin
Bundle-Description: This is the com.atlassian.agmp:gdata-service-plugin plugin for Atlassian Refapp.
Bundle-ClassPath: .,META-INF/lib/commons-lang-2.4.jar,META-INF/lib/joda-time-1.6.jar
Import-Package: com.atlassian.agmp.integration.common;version="0.0.0",
com.atlassian.templaterenderer.annotations;version="0.0.0",com.atlassian.templaterenderer.velocity.one.six;version="0.0.0",c
om.google.common.base;version="0.0.0",com.google.gdata.client;version="1.40.1",com.google.gdata.client.authn.oauth;versi
on="1.40.1",com.google.gdata.client.calendar;version="1.40.1",com.google.gdata.client.docs;version="1.40.1",com.google.gd
Export-Package: com.atlassian.agmp.gdata;uses:="com.google.gdata.util";version="1.1.4.SNAPSHOT"
ata.client.media;version="1.40.1",com.google.gdata.data;version="1.40.1",com.google.gdata.data.calendar;version="1.40.1",c
om.google.gdata.data.docs;version="1.40.1",com.google.gdata.data.media;version="1.40.1",com.google.gdata.util;version="1
.40.1",com.google.gdata.util.common.base;version="1.40.1",com.google.gdata.util.common.xml;version="1.40.1",javax.servlet
;version="0.0.0",javax.servlet.http;version="0.0.0",org.apache.commons.io;version="1.3",org.apache.log4j;version="0.0.0",org.
springframework.beans.factory.annotation;version="0.0.0"
Export-Package: com.atlassian.agmp.gdata;uses:="com.google.gdata.util";version="1.1.4.SNAPSHOT"
Bundle-Version: 1.1.4.SNAPSHOT
Bundle-DocURL: http://www.atlassian.com/
Bundle-Vendor: Atlassian
Bundle-ManifestVersion: 2
Tool: Bnd-0.0.311
17
17
19. #2 Manage your dependencies
• Prefer Import-Package dependencies over Require-Bundle
vs.
Import-Package Require-Bundle
19
19
20. #2 Manage your dependencies
• Prefer Import-Package dependencies over Bundle-Classpath
vs.
Import-Package Bundle-Classpath
20
20
21. #2 Manage your dependencies
• Always specify package versions for imports and exports
• Versions are specified in <major>.<minor>.<micro>.<qualifier> form
• Bundle constraints use interval range notation
• e.g. “[1.0.0, 2.0.0 )”
• A missing upper bound denotes infinity
• So version=“1.0.0” really means version >= “1.0.0”
• version=“0.0.0” means “any version”
• Thatʼs right! OSGi has redefined equals to mean greater than. Top notch!
• Put version constraints in quotes
21
21
22. #2 Manage your dependencies
• Run mvn:dependency-tree and scan your dependencies manually
• Use the maven dependency tracker plugin if youʼre paranoid
• https://labs.atlassian.com/browse/MAP
•
22
22
23. #3 Earn a brown belt in OSGi classloading
Start
Delegate to parent found?
java.*?
classloader
boot Delegate to parent found?
classloader
package- found?
import? Delegate to wire exporter
bundle found?
classpath?
23
23
24. #3 Earn a brown belt in OSGi classloading
• Boot delegated packages cannot be overridden
• Even with packages in your bundle classpath!
• Plugins 2.x boot delegates several packages
• Packages for profiling tools (e.g. com.yourkit)
• And xerces
24
24
25. #4 Buddy up with the Felix web console
• http://${baseURL}/plugins/servlet/system/console
• username : admin
• password : admin
25
25
26. #4 Or try the OSGi Explorer plugin
https://plugins.atlassian.com/plugin/details/23455
26
26
27. #5 Know what the applications provide
ion
aseURL}/admin/p luginexports.act
http://${b
27
27
28. #5 Know what the applications provide
• http://${ baseURL}/plugins/servlet/system/console
• username : admin
• password : admin
28
28
29. Recap
• Background
• OSGi Primer
• Protips
1. Be the master of your manifest
2. Manage your dependencies
3. Earn a brown belt in OSGi classloading
4. Buddy up with the Felix web console
5. Know what the applications provide
29
29
30. Resources
• Convert plugin to plugins 2
• http://confluence.atlassian.com/x/bwLvCw
• Convert plugin project to SDK
• http://confluence.atlassian.com/x/wRyyCg
• Felix web console
• http://${baseURL}/plugins/servlet/system/console
• Confluence exported beans
• http://${baseURL}/admin/pluginexports.action
30
30