Introducing Accessible Continuous Integration

Continuous Integration is often sold as overall process improvement through continued learning. It serves to end error-prone manual processes and achieve the long-standing DevOps goal of consistency and automation.

“Don’t solve the same problem more than once.”

The practice of Continuous Integration has already yielded technical breakthroughs, and can be summarized by the moniker “don’t solve the same problem more than once”. Tools like Jenkins provide a common platform for development teams to create commands to automate their deployments, run code quality checking, facilitate security scans, or analyze the performance of systems. Free and open source tools are being shared through tools like GitHub to build community, create robust tools, and evolve the entire DevOps movement. Innovations in collaborative problem solving make Continuous Integration a reality for any development team.

But, this innovation is often only accessible by technical audiences to solve technical problems. There still is a significant missing piece to this practice. So, what’s next?

It’s time to evolve Continuous Integration beyond technical problem solving into a practice based on serving those we build the tools for. Continuous Integration is ready to undergo the transformation needed for broader adoption, that it may reach its full potential.

Accessible Continuous Integration

“Accessible” is the process of creating products that are usable by people with the widest possible range of abilities, operating within the widest possible range of situations.

What exactly do we mean when we talk about “Accessible Continuous Integration?” It is the adoption of any tool, innovation, or practice that eliminates silos between teams and knocks down barriers to entry.

We believe (Accessible) Continuous Integration can be for everyone — and we’d like to see a mind shift in how this practice is promoted and pursued. Bridges must not only be built between the systems we use, but also between technical and non-technical team members. We need to study this problem space, standardize conventions, and help communities recognize the influence of Accessible Continuous Integration. Technology must mature to a point where it is capable of serving a broad population in order to become truly powerful and effective.

There is evidence that these ideas are catching on in the wild. Conceptually, Accessible Continuous Integration seems to be exemplified by the following tenets:

  1. Simple – There is an emphasis on making tools and practices streamlined and unencumbered.
  2. Useful – Problems identified are solved comprehensively and inclusively with consideration for the needs of all parties.
  3. Flexible – Tools have robust sets of features, integrate easily with other adopted tools, and are configurable for many use cases now and in the future.
  4. Transparent – Concise communication is pursued to promote broad visibility by the ongoing operations of the continuous integration practice.

Some of today’s most innovative tools are models of Accessible Continuous Integration case studies. They demonstrate some or all of the aforementioned tenets.

  1. Slack – Messaging platform used to reduce barriers between technical and non-technical collaborators with a wide variety of plugins and extendable behaviors for integrating other systems and processes (GitHub, Jenkins, JIRA, etc.)
  2. GitHub – Development tool used to foster technical collaboration between developers with a set of available plugins for integrating continuous integration tools
  3. Pantheon – Cloud-based hosting framework with an on-demand container-based environment that lowers the barrier of entry for non-technical staff to test development work in a fluid manner, in addition to APIs that allow developers to extend hosting operations
  4. Trello – An easy-to-use and customizable backlog management tool that has integrations for Slack, GitHub, and many other systems

This conversation of Accessible Continuous Learning is just getting started. These tools and practices, among others, have the potential for tremendous growth in this space. At CivicActions, we’re committed to exploring Accessible Continuous Integration to its furthest possibilities. It resonates with who we are and our vision of giving back to our open source roots, strengthening our non-technical stakeholders, and delivering quality solutions.

The idea was recently presented at the 2016 Stanford Drupal Camp. The recording can be found here.

We want to jump-start this discussion and drive toward elegant and lasting solutions. Our clients deserve the best we can offer. Accessible Continuous Integration is a significant step toward our vision of digital empowerment for all.

Image by Libby Levi  for opensource.com

2017-03-31T06:19:54+00:00 Categories: Development, DevOps, User Experience|Tags: |

About the Author:

Adam joined CivicActions as Associate Director of Engineering in 2015, bringing experience in technical architecture and a passion for helping people work together at top-notch productivity. A mentor and team player to the core, Adam participates in the open source Drupal community and views projects as opportunities for teams to grow and shine.

Adam has led development efforts rebranding a national telecommunication company website, integrating the systems of a financial services firm into a modern web solution, and implementing a headless content management system for an international retailer’s e-commerce system. He led development efforts on the redesign of Penn State’s World Campus website, promoting online educational offerings that improve access for non-traditional learners like single parents and members of the military. At CivicActions, he is currently working on a website rebranding project for a government agency.

Adam comes to CivicActions from Acquia, where he served as a Technical Architect. He spent many years in higher education at Penn State University, where he served as a team lead, developer, faculty member, researcher, and graduate student. He advocates for the trifecta: thoughtfully crafted technology, people-focused solutions, and the power of ongoing learning.

Adam has been researching Drupal 8 and gives back to the community through porting of contributed modules, like Taxonomy Menu and Password Policy. His book-in-progress, “Problem Solving in Drupal 8,” is intended to introduce Drupal 8 strategies to those familiar with conventional web problems. Additionally, he is researching and developing a tool to oversee DevOps for Drupal projects. He loves speaking about what he has learned and can often be found presenting at Drupal Camps and DrupalCons. Adam serves on the IT Board of Juniata College.

Adam holds a masters degree in Computer Science / Information Security from Penn State University and a bachelor degree in Computer Science from Juniata College. He lives in a small town in Pennsylvania where he enjoys seeking out great food and drink, especially craft beer. His life is enriched by his wife, two daughters, and a dog.