Fedora Engineering Steering Council badge, awarded after Fedora Elections - read the Interviews to learn more about candidates

Fedora Engineering Steering Council badge

This is a part of the FESCo Elections Interviews series. Voting is open to all Fedora contributors. The voting period starts on Tuesday, August 8th and closes promptly at 23:59:59 UTC on Monday, August 14th. Please read the responses from candidates and make your choices carefully. Feel free to ask questions to the candidates here (preferred) or elsewhere!

Interview with Adam Miller (maxamillion)

Questions

What is your background in engineering?

I have a Bachelor of Science Degree in Computer Science and a Masters of Science Degree in Information Assurance and Security, both from Sam Houston State University. I have been either a Systems Engineer or a Software Engineer professionally for the past 11 years and am currently a Principal Software Engineer at Red Hat on the Fedora Engineering Team. I’ve been a Fedora Packager since Fedora 8, am a Red Hat Certified Engineer (cert #110-008-810), wrote and maintain the Red Hat Developer RPM Guide, have experience programming in C, C++, Java, Ruby, and Python (mostly the latter two in recent years), am a community contributor upstream to Ansible, the maintainer of the Ansible firewalld module, served on the Fedora Engineering Steering Committee since the Fedora 24 cycle with hopes of continuing to serve the community as a member of FESCo moving into the future. More detailed information can be found on my Wiki Page or Website.

Why do you want to be a member of FESCo?

I think this largely goes back to what FESCo does, “FESCo handles the process of accepting new features, the acceptance of new packaging sponsors, Special Interest Groups (SIGs) and SIG Oversight, the packaging process, handling and enforcement of maintainer issues and other technical matters related to the distribution and its construction.” which is a process I have enjoyed having the opportunity to contribute to in the past and hope to be able to continue to do so in the future. Fedora is something I care about and want to do whatever I can to make it better, if the community continues to feel this is a positive outlet for me to contribute to, then I would be honored to continue doing so.

Describe some of the important technical issues you foresee affecting the Fedora community. What insight do you bring to these issues?

I believe some of the largest challenges we are going to face in the next few years are around Fedora Modularity, Fedora Atomic Host,  Factory 2, Fedora CI, container technology, and how each of these works together to more rapidly deliver next generation system architectures. Each of these items are extremely exciting and will bring a lot of flexibility to Fedora and its users but it’s going to require a considerable amount of work and coordination across the community to be able to accomplish. The insight I believe I am able to bring comes from my background in the technology space. I’ve been working on container technology for over 5 years, starting with the original architecture of OpenShift which carried its own SELinux sandboxing+cgroups container technology before things like LXC were mature and before Docker existed. I’ve continued on in the container technology lineage now into the modern era of OpenShift based on Kubernetes. From there I’ve worked directly to implement Fedora’s Official Container Layered Image build system in koji to allow Fedora Contributors to maintain and deliver content as container images, this is also planned to be a method of delivery for Fedora Modules in the future. I’m currently also working on Fedora’s multi-architecture implementation of the Container Layered Image Build System so that we can support all hardware platforms with containers that we do with Fedora itself. Another initiative I’m leading is Release Engineering Automation  powered by Ansible with the goal of enabling Fedora to deliver faster and with more agility. This Automation effort is planned to integrate with the Fedora CI initiative as well. My hope is that the experience I’ve gained working in these areas will allow me to continue to provide guidance as a member of FESCo as we move forward.

What are three personal qualities that you feel would benefit FESCo if you are elected?

  1. I’m passionate about Fedora and Free Software, it’s part of why I wake up in the morning. I absolutely love this stuff.
  2. I’m objective in debates and respect opposing opinions, I have biases just like anyone but I pride myself on trying to remain objective and always learning more about another perspective or opinion on a topic.
  3. I’m a hard worker, I do not shy away from taking on tasks and getting work done. I don’t mind having to write code, docs, run meetings, test software, or anything else so long as it is productive towards achieving the goal at hand.

What is your strongest point as a candidate? What is your weakest point?

  • Strongest: I’m passionate, dedicated, I work hard, and I have what I believe to be a respectable level of knowledge and experience in Fedora world.
  • Weakest: I have knowledge gaps and there are going to be certain topics I will simply have to defer or spend time researching in order to provide guidance as a FESCo member. I think this is true of almost anyone, but it’s still something that I worry about as a candidate for the Committee that is meant to Steer the Fedora Project from a technical perspective.

Currently, how do you contribute to Fedora? How does that contribution benefit the community?

In “Fedora engineering” background, my time as an active contributor to the Fedora Project started during the Fedora 8 cycle when I both became a Fedora Packager and a member of the Fedora QA community.

I’ve been a little all over the place over the years as I learn new things and am able to contribute to new aspects of the project or newer technologies that Fedora is working on/with have become things I find interesting. Below is a list of things I’ve been involved in, including what I continue to participate with and what I’m less involved in these days.

Current activities in Fedora include:

  • Fedora Release Engineering Team Member
  • Fedora Atomic SIG Member
  • Fedora Packager
  • Fedora Proven Packager
  • Fedora Package Sponsor
  • Fedora EPEL SIG Member

Past activities or things I’m less involved in Fedora:

  • Fedora QA Community
  • Fedora QA Proven Tester
  • Fedora XFCE SIG
  • Fedora KDE SIG

Thing’s I’m currently working on for Fedora are largely around Release Engineering, Atomic, and Containers. I’m working with others in the community to clean up “technical debt” around the tools used to actually produce Fedora as well as help to create new ones that help modernize the build and compose pipeline in order to allow the creation of Fedora to be more agile at its core. The tools I am working on are aimed at catering to the Fedora Modularity efforts as well as containerized cloud technologies such as KubernetesOpenShift, and Project Atomic.

I’ve also been participating in an effort to establish an easier “on-ramp” to Fedora Release Engineering with hopes of making it more welcoming for new community members who take an interest in Release Engineering to join in the efforts and contribute. Much of this is happening in the Release Engineering Pagure git forge location.

Along with this, here are current or relatively recent Fedora Changes I am/have contributing/contributed to:

What objectives or goals should FESCo focus on to help keep Fedora on the cutting edge of open source development?

I think we’re currently on the right track as an over all project with the Fedora Modularity effort but that’s thus far kind of been an effort taking place off to the side and I would like to see it come more into the mainline of FESCo and the greater Fedora Community focus. This isn’t only on the shoulders of FESCo, but the concept of moving towards making the operating system more modular and catering to container technologies is something I’d definitely like to see be more in focus moving forward at the FESCo level.

From a community perspective I would like to see FESCo somehow get involved with Fedora Hubs because I think this will greatly lower the barrier of entry for people who want to get started and don’t necessarily know where to look for information and/or don’t know how to connect with the community. I think Hub’s potential ability to bridge the various sub-projects within Fedora would also be extremely powerful. I don’t know what the best approach for FESCo getting involved here would be but it’s something that I’d love to see discussed.

If a past member of FESCo, identify a negative factor you noticed while serving in FESCo. How would you propose to improve on that for the next cycle?

I’ve mentioned this before and I think it’s still true. I think our ability as FESCo to communicate outwardly the community and to have a feedback loop could be better. There have been steps to make it better by migrating from the old FedoraHosted to Pagure which has been great. However to really improve much beyond that I think it touches on my hopes for Fedora Hubs, once available I’d like to see FESCo taking advantage of that as an outlet for added communications to the community. My hope is that Hubs will become a reality and we can put a communications plan into action.

Do you believe the Modularity objective is important to Fedora’s success? Is there anything you wish to bring to the modularity efforts?

I believe the idea of making the operating system fundamentally more modular at its core is almost going to be a hard requirement moving into the future as containerized workloads become the norm even for what we consider “legacy” software and get to a place where users and developers expect to be able to decouple the lifecycle of their underlying operating system from their applications and services. The Fedora Modularity effort caters specifically to this view of the future and I think it would put Fedora in a position to handle the coming challenges more advantageously than alternative distributions. I hope to be able to bring the Release Engineering, build pipeline, and release automation tooling perspective to some of these efforts.

What is the air-speed velocity of an unladen swallow?

What do you mean? An African or European swallow?

Closing words

It has been an honor to serve on FESCo and I would be honored to continue to do so, but no matter who is elected I look forward to continuing to work on Fedora with all of you. Thank you for your consideration as a candidate.