A presentation form Integration Stockholm where we shared our collected thoughts on how to implement Continuous Delivery in mainly Enterprise organisations. What has worked for us and what did not work and how to approach CI/CD and succeed...
The document discusses different layers of automated acceptance testing and compares different toolsets for each layer. The three layers are: 1) Acceptance Criteria Layer which defines test scenarios in a business-readable format, 2) Test Implementation Layer which implements tests against the system under test, and 3) Application Driver Layer which executes tests against the application. Popular tools like Cucumber, Concordion and FitNesse are compared across the layers in terms of their functionality and how each layer is addressed. The document also provides references and suggestions for further exploring related testing concepts.
Git and Git Workflow Models as Catalysts of Software DevelopmentLemi Orhan Ergin
This is the slides of my latest talk in DevFest Istanbul 2013 which is organized by Google Developers Group Istanbul. The content mainly has 3 sections. Git branching model in theory, creating a feature by git commands and git best practices.
Jenkins as the Test Reporting FrameworkNitin Sharma
Test Reporting Framework are the ultimate utilities reached by very few companies in the world likes of google & facebook.
It require significant investment in terms money and resources. To optimize on both we tried the approach of extending Jenkins for the same purpose.
We like to share our experiences with respect to this journey. We will talk about different cahllenges we faced in doing so and how we solved them.
We strongly believe that other startup can use our experience and get benefit from this immensely.
Story Testing Approach for Enterprise Applications using Selenium FrameworkOleksiy Rezchykov
Releasing a big software product frequently on the same high quality level could became an impossible task. Story Testing approach gives a possibility for many teams to work for a same product and release it without putting enormous efforts on testing. Approach is based on the BDD technique, Feature Flags and Selenium.
This document summarizes the release and dependency management processes used by a small development team. It describes their Git workflow for new features, including branching, peer review, and merging. It also covers versioning tools, testing on staging servers, production deployment, hotfixes and bugfixes. The document introduces the team's use of Jenkins for continuous integration and delivery. It describes how the team developed a shared "Core" package to organize common code and established version constraints to control dependencies.
deliver:agile - Enable your Agile Team with Continuous Delivery PipelinesEsteban Garcia
Continuous Delivery session from deliver:Agile
As your Agile team looks to shorten the cycle time from idea to production, it is important to give them the tools that will enable continuous feedback, collaboration with stakeholders, and most importantly, a way to get the product in front of the customer and enable a feedback loop.
This session will teach you how to create an effective release pipeline that incorporates Continuous Integration, automated testing, cloud deployment with Infrastructure as Code, Instrumentation, load testing, and more.
We will go from zero to Production in less than an hour and you will go back to work on Monday ready to deploy!
Learning Outcomes:
Continuous Integration
Continuous Deployment
Automation
Versioning strategy for a complex internal API (Konstantin Yakushev)Nordic APIs
This is a session given by Konstantin Yakushev at Nordic APIs 2016 Platform Summit on October 25th, in Stockholm Sweden.
Description:
API versioning is a very heated topic in API design world. Common approaches are passing version number explicitly (with a lot of fairly useless discussion on where exactly to put that number) or only introducing backwards-compatible changes.
When creating internal API for Badoo applications we found those approaches to be too limiting. Passing version number requires implementers to accommodate for all breaking changes when bumping version – even when it’s not required for business goals of that application at the time. Instead of driving value for business, application developers are in constant race to keep up with the API.
Never introducing incompatible changes is also not an option. After several feature redesigns (something that may happen at Badoo once every few weeks) protocol becomes bloated and half of the fields transmitted over the wire start being useless.
This talk is about our approach to versioning as part of client-server component negotiation. Client announces features and capabilities it supports and server replies with features status: whether they are enabled or disabled and whether they can be enabled by some user action (e. g. by buying some paid product).
Beside those componentized features, client also sends support flags such as SUPPORT_IMAGE_SIZE_VIA_URL which affects how API works. We use those flags where in typical API a version number bump would be required.
This approach allows both server and client to understand their current state and adjust their code accordingly – essentially, a tailor-made API for every client. Gathering data on feature and flag support among clients allows us to remove old code branches while continuing to evolve the API.
As a result, we are not afraid to change something when that change is required. Old clients continue to work while protocol rot is kept at low level.
In this talk I will give details on how exactly this versioning scheme work, how we test those changes, how and when we deprecate our old clients and note some stats and insights from using this scheme at Badoo for several years.
The document outlines a branching and merging strategy with the following key elements:
1. It defines a branching model with a single master branch containing stable code and separate branches for sprints, features, fixes, and releases.
2. It establishes naming conventions for branches based on the sprint, major/minor release, and feature number. POM versions will also follow this convention.
3. It describes workflows for creating branches from the appropriate source branches and merging code with pull requests and testing.
The document outlines Gavin Barton's role as Group Engineering Manager at BBC Future Media. It discusses the team's mission to deliver great software and products to wake and sustain audiences' natural curiosity through connected BBC content. The team is committed to collaborating, delivering with high quality and craft, and adopting great engineering practices like continuous delivery and delivery. The document also provides details on the team's software engineering process from developing features to releasing them live.
Are you sick of Merge Hell? Do your feature branches go rogue? Do you spend more time fiddling with your Version Control System than doing actual development work? Then Trunk Based Development might be for you. Facebook does it. Google does it. Instead of messing with multiple branches, just use your master branch. Always. In addition to giving you an overview about how Trunk Based Development works, where it shines and where the pitfalls are, this talk will also cover the necessary techniques to succeed with it, such as Branch By abstraction, Feature Toggles and backwards compatible Database Migrations.
Reusable Build Scripts for Managed Package Development (October 14, 2014)Salesforce Partners
The document discusses reusable build scripts called CumulusCI for automating managed package development workflows. It demonstrates setting up CumulusCI and configuring continuous integration with Codeship.io to automatically test a package called GrantLifecycleApp when code is pushed to GitHub. Key features of CumulusCI discussed include deploying to different orgs for different stages and allowing custom pre/post deployment hooks.
Practical Patterns for Developing a Cross-product Cross-version AppAtlassian
Victoria Skalrud leads the team responsible for developing and maintaining the Atlassian Support Troubleshooting tools app at Atlassian.
She’ll share the development patterns that her team has used to support compatibility across product versions whilst maintaining a high release velocity.
SpringOne Platform 2017
Marcin Grzejszczak, Pivotal; Cora Iberkleid, Pivotal
"“I have stopped counting how many times I’ve done this from scratch” - was one of the responses to the tweet about starting the project called Spring Cloud Pipelines. Every company sets up a pipeline to take code from your source control, through unit testing and integration testing, to production from scratch. Every company creates some sort of automation to deploy its applications to servers. Enough is enough - time to automate that and focus on delivering business value.
In this presentation we’ll go through the contents of the Spring Cloud Pipelines project. We’ll start a new project for which we’ll have a deployment pipeline set up in no time. We’ll deploy to Cloud Foundry and check if our application is backwards compatible so that we can roll it back on production."
Feature toggles allow companies to decouple development from deployment, reduce risks from merging code, and experiment with new features without impacting production. They provide an alternative to feature branches for releasing code incrementally. Companies like LinkedIn and Facebook use feature toggles extensively to enable continuous deployment and A/B testing in a safe manner. Frameworks exist for implementing feature toggles in various programming languages.
This document provides an overview of Apex triggers in Salesforce. It discusses what Apex triggers are, how they can be used to support record management and build process-driven logic. The document compares triggers to process builders and explains the order of execution. It also covers sandbox and developer environments, the developer console for debugging, and includes an Apex trigger demo.
The promise of DevOps is that we can push new ideas out to market faster while avoiding delivering serious defects into production. Andreas Grabner explains that testers are no longer measured by the number of defect reports they enter, nor are developers measured by the lines of code they write. As a team, you are measured by how fast you can deploy high quality functionality to the end user. Achieving this goal requires testers to increase their skills. It’s all about finding solutions—not just problems. Testers must transition from reporting “app crashes” to providing details such as “memory leak caused by bad cache implementation.” Instead of reporting “it’s slow,” testers must discover “wrong hibernate configuration causes too much traffic from the database.” Using three real-life examples, Andreas illustrates what it takes for testing teams to become part of the DevOps transformation—bringing more value to the entire organization.
This document discusses best practices for team development on the Salesforce platform. It recommends using version control, separate development environments for each developer, unit testing, and continuous integration. It describes two common development scenarios: non-package development using a shared repository and developer sandboxes, and package development using developer orgs connected to a shared repository. Key challenges include managing dependencies on managed packages and avoiding namespace prefix issues when deploying to multiple orgs. The Ant Migration Tool is recommended for automating deployments in continuous integration.
Continuous Deployment of your Application @SpringOneciberkleid
Spring Cloud Pipelines is an opinionated framework that automates the creation of structured continuous deployment pipelines.
In this presentation we’ll go through the contents of the Spring Cloud Pipelines project. We’ll start a new project for which we’ll have a deployment pipeline set up in no time. We’ll deploy to Cloud Foundry and check if our application is backwards compatible so that we can roll it back on production.
Releasing High Quality Packages - Longhorn PHP 2021Colin O'Dell
The document provides guidance on creating and maintaining high-quality PHP packages. It discusses defining quality standards, project structure, testing, documentation, releasing packages, and ongoing maintenance. Key aspects include using semantic versioning, writing automated tests, generating documentation, following best practices for code quality, and being responsive to issues and pull requests. The goal is to create packages that are easily installed, well-maintained, and meet community standards.
Putting Quality First through Continuous TestingTechWell
Capital One has a highly integrated environment, which creates many dependencies for its agile teams. Because these dependencies are often not completed until late in their sprints, Capital One faced prolonged integration and regression testing phases, and did not realize the expected improvements in quality or time to market. As technology leaders pushed for continuous delivery, testing needed to “shift left” and execute test in real time concurrently with development. Adam Auerbach shares Capital One’s experience implementing continuous testing. He explains the core principles of continuous testing, service virtualization, and the continuous integration/continuous delivery pipeline—and why testers need to understand and leverage these important concepts. Adam believes that testers need to learn basic development skills, including Ruby and Java, so they can take advantage of advanced automation practices. Because continuous testing is not easy and many companies have large populations of manual testers, Adam will provide a learning map to help you plan your personal and team’s transition.
The document discusses various ways to measure PHP code performance, including microtime, benchmarking libraries, application performance monitoring, load testing, and profiling. It emphasizes that you cannot optimize what you cannot measure and that measuring performance impacts performance. It recommends profiling code to understand how resources are consumed and compares profiles to identify optimizations.
This document summarizes a software company's migration from Mercurial to Git for source control and their new workflow using Git. They implemented Vincent Driessen's branching model with long-running branches for master, staging, and development. Developers work in their own forks, rebase regularly, and submit pull requests to integrators for review and merging into staging or development. This standardized process aims to reduce merge conflicts and enable predictable integration and deployment between branches.
The document discusses software development terminology related to continuous integration, delivery, and deployment. It defines these terms and diagrams the processes. Continuous integration means integrating code changes frequently through automated builds and tests. Continuous delivery means software can be released at any time through automated processes. Continuous deployment means all code changes that pass tests are automatically deployed to production. DevOps means development and operations teams work together using the same tools and methods.
Many know of the famous quote, "Premature optimization is the root of all evil," but most people do not know the full quote or understand the context in which optimization is considered evil. As with anything in programming optimization is evil, maybe. Stop using excuses for slow code, and start to think about the places and tools that you can use to optimize. Thankfully there are are many different tools like xhprof, Valgrind, and others to help us out and properly optimize our code for those times when we need to dig deep into our code.
Azure Integration DTAP Series, How to go from Development to Production – Par...BizTalk360
A series of sessions with focus on how to set up a Build & Release setup for Common integration parts with VSTS.
In these sessions all will be made hands on and focus will be on understanding the quirks and common tasks.
For Azure Functions we will Create Functions, check in the options we have to extract the code. Create a Build and Release setup inside VSTS to move/promote the API to next step/environment in the chain.
Azure Integration DTAP Series, How to go from Development to Production – Par...BizTalk360
A series of sessions with focus on how to set up a Build & Release setup for Common integration parts with VSTS.
In these sessions all will be made hands on and focus will be on understanding the quirks and common tasks.
For Azure Functions we will Create Functions, check in the options we have to extract the code. Create a Build and Release setup inside VSTS to move/promote the API to next step/environment in the chain.
The document outlines Gavin Barton's role as Group Engineering Manager at BBC Future Media. It discusses the team's mission to deliver great software and products to wake and sustain audiences' natural curiosity through connected BBC content. The team is committed to collaborating, delivering with high quality and craft, and adopting great engineering practices like continuous delivery and delivery. The document also provides details on the team's software engineering process from developing features to releasing them live.
Are you sick of Merge Hell? Do your feature branches go rogue? Do you spend more time fiddling with your Version Control System than doing actual development work? Then Trunk Based Development might be for you. Facebook does it. Google does it. Instead of messing with multiple branches, just use your master branch. Always. In addition to giving you an overview about how Trunk Based Development works, where it shines and where the pitfalls are, this talk will also cover the necessary techniques to succeed with it, such as Branch By abstraction, Feature Toggles and backwards compatible Database Migrations.
Reusable Build Scripts for Managed Package Development (October 14, 2014)Salesforce Partners
The document discusses reusable build scripts called CumulusCI for automating managed package development workflows. It demonstrates setting up CumulusCI and configuring continuous integration with Codeship.io to automatically test a package called GrantLifecycleApp when code is pushed to GitHub. Key features of CumulusCI discussed include deploying to different orgs for different stages and allowing custom pre/post deployment hooks.
Practical Patterns for Developing a Cross-product Cross-version AppAtlassian
Victoria Skalrud leads the team responsible for developing and maintaining the Atlassian Support Troubleshooting tools app at Atlassian.
She’ll share the development patterns that her team has used to support compatibility across product versions whilst maintaining a high release velocity.
SpringOne Platform 2017
Marcin Grzejszczak, Pivotal; Cora Iberkleid, Pivotal
"“I have stopped counting how many times I’ve done this from scratch” - was one of the responses to the tweet about starting the project called Spring Cloud Pipelines. Every company sets up a pipeline to take code from your source control, through unit testing and integration testing, to production from scratch. Every company creates some sort of automation to deploy its applications to servers. Enough is enough - time to automate that and focus on delivering business value.
In this presentation we’ll go through the contents of the Spring Cloud Pipelines project. We’ll start a new project for which we’ll have a deployment pipeline set up in no time. We’ll deploy to Cloud Foundry and check if our application is backwards compatible so that we can roll it back on production."
Feature toggles allow companies to decouple development from deployment, reduce risks from merging code, and experiment with new features without impacting production. They provide an alternative to feature branches for releasing code incrementally. Companies like LinkedIn and Facebook use feature toggles extensively to enable continuous deployment and A/B testing in a safe manner. Frameworks exist for implementing feature toggles in various programming languages.
This document provides an overview of Apex triggers in Salesforce. It discusses what Apex triggers are, how they can be used to support record management and build process-driven logic. The document compares triggers to process builders and explains the order of execution. It also covers sandbox and developer environments, the developer console for debugging, and includes an Apex trigger demo.
The promise of DevOps is that we can push new ideas out to market faster while avoiding delivering serious defects into production. Andreas Grabner explains that testers are no longer measured by the number of defect reports they enter, nor are developers measured by the lines of code they write. As a team, you are measured by how fast you can deploy high quality functionality to the end user. Achieving this goal requires testers to increase their skills. It’s all about finding solutions—not just problems. Testers must transition from reporting “app crashes” to providing details such as “memory leak caused by bad cache implementation.” Instead of reporting “it’s slow,” testers must discover “wrong hibernate configuration causes too much traffic from the database.” Using three real-life examples, Andreas illustrates what it takes for testing teams to become part of the DevOps transformation—bringing more value to the entire organization.
This document discusses best practices for team development on the Salesforce platform. It recommends using version control, separate development environments for each developer, unit testing, and continuous integration. It describes two common development scenarios: non-package development using a shared repository and developer sandboxes, and package development using developer orgs connected to a shared repository. Key challenges include managing dependencies on managed packages and avoiding namespace prefix issues when deploying to multiple orgs. The Ant Migration Tool is recommended for automating deployments in continuous integration.
Continuous Deployment of your Application @SpringOneciberkleid
Spring Cloud Pipelines is an opinionated framework that automates the creation of structured continuous deployment pipelines.
In this presentation we’ll go through the contents of the Spring Cloud Pipelines project. We’ll start a new project for which we’ll have a deployment pipeline set up in no time. We’ll deploy to Cloud Foundry and check if our application is backwards compatible so that we can roll it back on production.
Releasing High Quality Packages - Longhorn PHP 2021Colin O'Dell
The document provides guidance on creating and maintaining high-quality PHP packages. It discusses defining quality standards, project structure, testing, documentation, releasing packages, and ongoing maintenance. Key aspects include using semantic versioning, writing automated tests, generating documentation, following best practices for code quality, and being responsive to issues and pull requests. The goal is to create packages that are easily installed, well-maintained, and meet community standards.
Putting Quality First through Continuous TestingTechWell
Capital One has a highly integrated environment, which creates many dependencies for its agile teams. Because these dependencies are often not completed until late in their sprints, Capital One faced prolonged integration and regression testing phases, and did not realize the expected improvements in quality or time to market. As technology leaders pushed for continuous delivery, testing needed to “shift left” and execute test in real time concurrently with development. Adam Auerbach shares Capital One’s experience implementing continuous testing. He explains the core principles of continuous testing, service virtualization, and the continuous integration/continuous delivery pipeline—and why testers need to understand and leverage these important concepts. Adam believes that testers need to learn basic development skills, including Ruby and Java, so they can take advantage of advanced automation practices. Because continuous testing is not easy and many companies have large populations of manual testers, Adam will provide a learning map to help you plan your personal and team’s transition.
The document discusses various ways to measure PHP code performance, including microtime, benchmarking libraries, application performance monitoring, load testing, and profiling. It emphasizes that you cannot optimize what you cannot measure and that measuring performance impacts performance. It recommends profiling code to understand how resources are consumed and compares profiles to identify optimizations.
This document summarizes a software company's migration from Mercurial to Git for source control and their new workflow using Git. They implemented Vincent Driessen's branching model with long-running branches for master, staging, and development. Developers work in their own forks, rebase regularly, and submit pull requests to integrators for review and merging into staging or development. This standardized process aims to reduce merge conflicts and enable predictable integration and deployment between branches.
The document discusses software development terminology related to continuous integration, delivery, and deployment. It defines these terms and diagrams the processes. Continuous integration means integrating code changes frequently through automated builds and tests. Continuous delivery means software can be released at any time through automated processes. Continuous deployment means all code changes that pass tests are automatically deployed to production. DevOps means development and operations teams work together using the same tools and methods.
Many know of the famous quote, "Premature optimization is the root of all evil," but most people do not know the full quote or understand the context in which optimization is considered evil. As with anything in programming optimization is evil, maybe. Stop using excuses for slow code, and start to think about the places and tools that you can use to optimize. Thankfully there are are many different tools like xhprof, Valgrind, and others to help us out and properly optimize our code for those times when we need to dig deep into our code.
Azure Integration DTAP Series, How to go from Development to Production – Par...BizTalk360
A series of sessions with focus on how to set up a Build & Release setup for Common integration parts with VSTS.
In these sessions all will be made hands on and focus will be on understanding the quirks and common tasks.
For Azure Functions we will Create Functions, check in the options we have to extract the code. Create a Build and Release setup inside VSTS to move/promote the API to next step/environment in the chain.
Azure Integration DTAP Series, How to go from Development to Production – Par...BizTalk360
A series of sessions with focus on how to set up a Build & Release setup for Common integration parts with VSTS.
In these sessions all will be made hands on and focus will be on understanding the quirks and common tasks.
For Azure Functions we will Create Functions, check in the options we have to extract the code. Create a Build and Release setup inside VSTS to move/promote the API to next step/environment in the chain.
Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023Vadym Kazulkin
The document compares GitHub Copilot, Amazon CodeWhisperer, and ChatGPT for Java developers. It provides an overview of each tool, compares their programming language support, IDE support, and pricing. It demonstrates their abilities for general tasks, simple functions, more complex algorithms, JUnit testing, and Spring Boot web development. It concludes that while the tools provide helpful suggestions, developers are still needed to ensure correctness and efficiency. GitHub Copilot and ChatGPT benefit from OpenAI, while Amazon CodeWhisperer needs quality improvements for Java but may leverage AWS services.
This presentation has been prepared to share knowledge about JetBrains UpSource tool usage on HTML project for back-end developers. Also code review process description has been provided to share good/bad experience of code review procedure.
Ci of js and apex using jasmine, phantom js and drone io df14Kevin Poorman
This document discusses using continuous integration and continuous delivery for Salesforce development. It introduces the concepts of CI and CD and describes using Grunt, Drone.io, Jasmine, Istanbul and Ant together in an opinionated stack. Grunt is used to define tasks. Jasmine is used for JavaScript testing. Ant is used for Apex tests and deploying to orgs. Drone.io automates running builds and deploying code changes to development and QA orgs after code is committed.
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...WSPDC & FEDSPUG
This document summarizes new features in Visual Studio 2013, including improved debugging tools, better ASP.NET support that unifies Web Forms and MVC, and new capabilities for building and deploying SharePoint apps. It also outlines updates to .NET like asynchronous programming improvements and cloud-focused features, as well as how Visual Studio and Azure integration enhances development workflows.
WSO2Con US 2013 - Keynote: Developing Enterprise Apps In the CloudWSO2
This document discusses how to develop enterprise applications in the cloud using an agile and composable approach. It outlines the challenges of traditional agile development practices which can increase fragility. It then introduces Codenvy, a cloud integrated development environment (IDE) that aims to address these challenges by providing server-based tooling, automated workspaces, and policies to simplify administration and control intellectual property. Codenvy promotes extending devops practices from production back into development. The document also discusses how Codenvy can be used by enterprises, independent software vendors, and in collaboration with WSO2's application development platform.
Best practices for upgrading vb 6.0 projects to vb.netajmal_fuuast
The document discusses best practices for upgrading Visual Basic 6.0 projects to Visual Basic.NET. It covers understanding the upgrade roadmap, new features in Visual Basic.NET, and demonstrations of using the upgrade wizard, upgrading forms and COM interop, drag and drop, and upgrading Win32 API calls. The presentation aims to provide VB6 developers knowledge on how to upgrade existing VB6 applications or interoperate with VB.NET.
Simple tools to fight bigger quality battleAnand Ramdeo
This presentation was given in GTAC 2008 (Also available on www.TestingGeek.com) and discuss the approach of using SVN commit hooks and batch files as continuous integration system.
Applying DevOps to Databricks can be a daunting task. In this talk this will be broken down into bite size chunks. Common DevOps subject areas will be covered, including CI/CD (Continuous Integration/Continuous Deployment), IAC (Infrastructure as Code) and Build Agents.
We will explore how to apply DevOps to Databricks (in Azure), primarily using Azure DevOps tooling. As a lot of Spark/Databricks users are Python users, will will focus on the Databricks Rest API (using Python) to perform our tasks.
Continuous delivery is the process of automating the deployment of code changes to production. It involves building, testing, and deploying code changes through successive environments like integration, testing, and production. Continuous integration starts the process by automatically building and testing code changes. The release pipeline then automates deploying through environments. This finds issues early and allows for rapid deployment of code changes to production through automated testing and infrastructure provisioning.
This document provides an overview of a software factory's methodology, environments, and tools. It describes the factory's processes for requirements management, development, testing, quality control, and release management. The factory supports Java/Java EE, PHP, Android, iOS, and PhoneGap environments. It utilizes tools like Eclipse, Maven, Artifactory, Git, GitHub, Jenkins, Sonar, Selenium, Testlink, Jira, PHP Cake, PHP Unit, Ant, and Xcode across the development lifecycle.
John O'Keefe presented on VA Smalltalk 7.5 and beyond. He discussed new features in 7.5.2 including Windows Vista and Linux support. Future directions include porting Seaside, improving web services tools, consolidating IDE functionality, and enhancing installation and documentation. Statistics showed over 6000 downloads, 2200 active users, and hundreds of customer companies and support cases.
This document provides an overview of starting a webRTC project, including the different layers involved on both the client and server side. On the client side, it discusses web versus native applications and the APIs and browsers/plugins involved. On the server side, it outlines common components for signaling, ICE, media servers, load balancing, and back-end technologies. It also provides examples of popular webRTC solutions and frameworks that simplify building the different layers.
Software Engineering as the Next Level Up from Programming (Oracle Groundbrea...Lucas Jellema
The document discusses the differences between programming and software engineering. Programming focuses on writing code that works, while software engineering considers all the tools, processes, and practices used to build and maintain code over time. These practices help keep code valuable and sustainable as an organization's needs change. The key aspects of professional software discussed include testing, readability, maintainability, and managing technical debt. Teams are encouraged to adopt practices like peer review, refactoring, and monitoring deployments to transition code from working to professional quality.
Advanced Techniques for Initiating the DevOps JourneyCA Technologies
This document discusses how HSBC has used CA Endevor Software Change Manager and Field Development Product solutions to achieve continuous integration and advance their organizational goals of achieving DevOps on the mainframe. It provides an overview of DevOps concepts like continuous integration and continuous deployment. It then describes how HSBC uses CA Endevor SCM for source control and automated builds to enable continuous integration. It also explains how the tool supports continuous deployment through its environment mapping and change management integration.
Continuous Delivery is hot. As we all increasingly compete using software, the business always wants more change faster. However, change is seen as risky. How do we deliver quickly while not exposing the business to excessive risk? What does this imply for how we update our mission critical databases?
Successful continuous delivery efforts use quality as an enabler of rapid change. Rapid feedback on the quality of the application, and a disciplined, high quality process support frequent delivery of business value, rather than frequent outage.
IBM UrbanCode’s Eric Minick and DBmaestro’s Yaniv Yehuda present how to build safety in to your delivery process. We will look at database change in some detail while delivering generally applicable lessons.
IcingaCamp Berlin 2018 NSClient++ and friendsMichael Medin
The document discusses NSClient++, a tool for monitoring systems and services. It includes information on NSClient++'s website and links to the creator Michael Medin's email, website, Twitter, and LinkedIn profiles. It also contains a link to slides about NSClient++ on SlideShare. The document shows how NSClient++ can be used with Icinga to run external scripts and checks on systems and services and integrate with tools like NRPE, Elastic, and Graphite.
Extending NSClient++ with rest and pythonMichael Medin
The document describes a Python script that runs on startup and checks for new users. It uses cURL to query a web server for a list of users, compares them to the current users, and if any changes are detected it will send an event notification and update the current user list.
The technology of tomorrows integration plattformMichael Medin
A more technical appendix for the integration platform of tomorrow presentation we did at radar I2I. This is from the Integration Stockholm meetup. It details how the next generation enterprise integration platform is being built at many of our customers.
A presentation I held at Radar Groups I2I conference about how to build the next generation enterprise integration platform: The executive summary is: Simplicity
Automated monitoring with NSClient++ and IcingaMichael Medin
A brief guide on how to create scripts to automate configuration management in Icinga from NSClient++. Not only will we setup the host when NSClient++ is installed we will also setup relevant service monitoring as well depending on what is running on the machine.
The document appears to be notes or documentation related to NSClient++. It includes sections about core components, modules, settings, logging, checks, scripts, filtering logs, and syntax. The notes cover topics like the NRPE and NSCA servers and clients, checking system metrics and event logs, using scripts for checks, and advanced filtering and formatting of logs and alerts. Contact information is provided for the software and its creator.
Continuous delivery from the trenches Redhat Forum EditionMichael Medin
How we approached CI/CD in an enterprise settings from within. The talk describe the process on which we focused instead of tools. This is the same as the others but widescreen...
Continuous Delivery is easy in development projects and modern organisation who delivery services but how is it with all the enterprise customers? How do get continuous delivery when we work with "customized COTS"?
Slides from a Oracle SOA Suite 12c training I did for r2m.
The goal was to prepare for the 1z0-434 certification.
This is part 1 of 3 (co-workers will do other parts, but I will link them as they happen in over the next few weeks).
The labs and demo can be found here: https://github.com/mickem/soa-12c-assignments
What happens when a SOA success meets the cloud for the first time? And how to avoid the inevitable...
A presentation I did at radars i2i (Integrate 2 Innovate) conference in Stockholm.
Enabling Mobility through Continuous DeliveryMichael Medin
The document discusses enabling mobility through continuous delivery. It describes challenges with past integration projects due to lack of version control and dependencies. Continuous delivery is presented as enabling agility, reducing time to market, and increasing quality through automation of testing, deployment, and other processes. Continuous delivery is proposed as a way to prepare organizations for increasing mobile needs by saving time and money while improving quality.
The document discusses adding and writing batch and PowerShell scripts to be used for monitoring with NSClient++. It provides instructions for adding batch scripts using the command line or Notepad, adding wrapped PowerShell scripts, and modifying scripts to return additional data or limit output. Examples are given of creating a basic batch script to return memory usage and installing a Python script to display the top 3 CPU producers.
The document discusses various ways of filtering and setting boundaries for monitoring checks in NSClient++. It provides examples of using warn and crit expressions to define boundaries for check_cpu and explores filters that can be used with checks like check_pagefile and check_cpu. It also shows how to recreate the default parameters for check_eventlog and provides examples of running checks against remote computers.
This document summarizes various monitoring protocols including NRPE, NSCA, and REST. It provides configuration instructions for using each protocol to run checks and send notifications. Examples are given for configuring NRPE to run a memory check, NSCA to send CPU check results to a target server, and using REST to check memory and the difference the "show-all" parameter makes. Instructions include enabling the necessary services, configuring schedules and targets, and using curl commands to execute checks via REST.
This document provides instructions for installing NSClient++ using msiexec and specifying installation options. It describes running msiexec with the log and installation location parameters to install NSClient++ to C:\foo with logging. It also shows how to enable the web server and set the password when installing NSClient++ by passing the CONF_WEB and NSCLIENT_PWD parameters to msiexec.
Big Data Analytics Quick Research Guide by Arthur MorganArthur Morgan
This is a Quick Research Guide (QRG).
QRGs include the following:
- A brief, high-level overview of the QRG topic.
- A milestone timeline for the QRG topic.
- Links to various free online resource materials to provide a deeper dive into the QRG topic.
- Conclusion and a recommendation for at least two books available in the SJPL system on the QRG topic.
QRGs planned for the series:
- Artificial Intelligence QRG
- Quantum Computing QRG
- Big Data Analytics QRG
- Spacecraft Guidance, Navigation & Control QRG (coming 2026)
- UK Home Computing & The Birth of ARM QRG (coming 2027)
Any questions or comments?
- Please contact Arthur Morgan at [email protected].
100% human made.
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Impelsys Inc.
Impelsys provided a robust testing solution, leveraging a risk-based and requirement-mapped approach to validate ICU Connect and CritiXpert. A well-defined test suite was developed to assess data communication, clinical data collection, transformation, and visualization across integrated devices.
Procurement Insights Cost To Value Guide.pptxJon Hansen
Procurement Insights integrated Historic Procurement Industry Archives, serves as a powerful complement — not a competitor — to other procurement industry firms. It fills critical gaps in depth, agility, and contextual insight that most traditional analyst and association models overlook.
Learn more about this value- driven proprietary service offering here.
How Can I use the AI Hype in my Business Context?Daniel Lehner
𝙄𝙨 𝘼𝙄 𝙟𝙪𝙨𝙩 𝙝𝙮𝙥𝙚? 𝙊𝙧 𝙞𝙨 𝙞𝙩 𝙩𝙝𝙚 𝙜𝙖𝙢𝙚 𝙘𝙝𝙖𝙣𝙜𝙚𝙧 𝙮𝙤𝙪𝙧 𝙗𝙪𝙨𝙞𝙣𝙚𝙨𝙨 𝙣𝙚𝙚𝙙𝙨?
Everyone’s talking about AI but is anyone really using it to create real value?
Most companies want to leverage AI. Few know 𝗵𝗼𝘄.
✅ What exactly should you ask to find real AI opportunities?
✅ Which AI techniques actually fit your business?
✅ Is your data even ready for AI?
If you’re not sure, you’re not alone. This is a condensed version of the slides I presented at a Linkedin webinar for Tecnovy on 28.04.2025.
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc
Most consumers believe they’re making informed decisions about their personal data—adjusting privacy settings, blocking trackers, and opting out where they can. However, our new research reveals that while awareness is high, taking meaningful action is still lacking. On the corporate side, many organizations report strong policies for managing third-party data and consumer consent yet fall short when it comes to consistency, accountability and transparency.
This session will explore the research findings from TrustArc’s Privacy Pulse Survey, examining consumer attitudes toward personal data collection and practical suggestions for corporate practices around purchasing third-party data.
Attendees will learn:
- Consumer awareness around data brokers and what consumers are doing to limit data collection
- How businesses assess third-party vendors and their consent management operations
- Where business preparedness needs improvement
- What these trends mean for the future of privacy governance and public trust
This discussion is essential for privacy, risk, and compliance professionals who want to ground their strategies in current data and prepare for what’s next in the privacy landscape.
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul
Artificial intelligence is changing how businesses operate. Companies are using AI agents to automate tasks, reduce time spent on repetitive work, and focus more on high-value activities. Noah Loul, an AI strategist and entrepreneur, has helped dozens of companies streamline their operations using smart automation. He believes AI agents aren't just tools—they're workers that take on repeatable tasks so your human team can focus on what matters. If you want to reduce time waste and increase output, AI agents are the next move.
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxshyamraj55
We’re bringing the TDX energy to our community with 2 power-packed sessions:
🛠️ Workshop: MuleSoft for Agentforce
Explore the new version of our hands-on workshop featuring the latest Topic Center and API Catalog updates.
📄 Talk: Power Up Document Processing
Dive into smart automation with MuleSoft IDP, NLP, and Einstein AI for intelligent document workflows.
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxJustin Reock
Building 10x Organizations with Modern Productivity Metrics
10x developers may be a myth, but 10x organizations are very real, as proven by the influential study performed in the 1980s, ‘The Coding War Games.’
Right now, here in early 2025, we seem to be experiencing YAPP (Yet Another Productivity Philosophy), and that philosophy is converging on developer experience. It seems that with every new method we invent for the delivery of products, whether physical or virtual, we reinvent productivity philosophies to go alongside them.
But which of these approaches actually work? DORA? SPACE? DevEx? What should we invest in and create urgency behind today, so that we don’t find ourselves having the same discussion again in a decade?
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell
With expertise in data architecture, performance tracking, and revenue forecasting, Andrew Marnell plays a vital role in aligning business strategies with data insights. Andrew Marnell’s ability to lead cross-functional teams ensures businesses achieve sustainable growth and operational excellence.
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveScyllaDB
Want to learn practical tips for designing systems that can scale efficiently without compromising speed?
Join us for a workshop where we’ll address these challenges head-on and explore how to architect low-latency systems using Rust. During this free interactive workshop oriented for developers, engineers, and architects, we’ll cover how Rust’s unique language features and the Tokio async runtime enable high-performance application development.
As you explore key principles of designing low-latency systems with Rust, you will learn how to:
- Create and compile a real-world app with Rust
- Connect the application to ScyllaDB (NoSQL data store)
- Negotiate tradeoffs related to data modeling and querying
- Manage and monitor the database for consistently low latencies
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfSoftware Company
Explore the benefits and features of advanced logistics management software for businesses in Riyadh. This guide delves into the latest technologies, from real-time tracking and route optimization to warehouse management and inventory control, helping businesses streamline their logistics operations and reduce costs. Learn how implementing the right software solution can enhance efficiency, improve customer satisfaction, and provide a competitive edge in the growing logistics sector of Riyadh.
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Aqusag Technologies
In late April 2025, a significant portion of Europe, particularly Spain, Portugal, and parts of southern France, experienced widespread, rolling power outages that continue to affect millions of residents, businesses, and infrastructure systems.
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025BookNet Canada
Book industry standards are evolving rapidly. In the first part of this session, we’ll share an overview of key developments from 2024 and the early months of 2025. Then, BookNet’s resident standards expert, Tom Richardson, and CEO, Lauren Stewart, have a forward-looking conversation about what’s next.
Link to recording, transcript, and accompanying resource: https://bnctechforum.ca/sessions/standardsgoals-for-2025-standards-certification-roundup/
Presented by BookNet Canada on May 6, 2025 with support from the Department of Canadian Heritage.
82. ARTIFACTS
CONFIG
Release
Code
Update Config
Test CodeBuild CodeFrameworks
Generate Code
Create BOM
Edit Code
VERSION
CONTROL
Review Code
• Simple text files (Bill of Material)
• From comparing state (web)
• From development
• Describes state
• Goes back and forwards
83. ARTIFACTS
CONFIG
Release
Code
Update Config
Test CodeBuild CodeFrameworks
Generate Code
Create BOM
Create Ticket
Edit Code
VERSION
CONTROL
Review Code
• Work order
• Describes why and what
• When approved: done
• Contains logs
• Self service deploy