As we work on the next big Fedora strategy, I wanted to pull a relevant section from my keynote at Nest with Fedora this year into non-video form. The video is on YouTube if you want to watch the whole thing:
but here are the relevant points. I decided to illustrate these with MidJourney AI because it’s very good at making mystical, weird-looking things. It likes to make people staring into the distance, which seems appropriate. Many of the slides reproduced below have an image generated with its headline as the prompt.
Let’s start with some context. The “Fedora.next” strategy started with proposals at Flock to Fedora in 2013. Its goal was to plan the second decade of the Fedora Project. One of the key features was a switch from “Fedora Linux is everything!” to deliverables focused on specific use cases. We started with three Editions: Workstation, Server, and Cloud.
The idea behind Editions was to reduce user confusion. Instead of a single ISO that you had to customize at install time, users could pick an opinionated, curated experience. (Of course, if you love customizing your package set, that’s still an option.) This has been incredibly successful, and I think it’s a big part of the improved reputation and technical quality we’ve enjoyed. And the fact that we’ve added IoT and CoreOS as Editions proves that this works.
But that was a five-year plan that we started eight-ish years ago. As we prepare to enter the third decade of Fedora, how do we build on the success of Fedora.next?
I talked about this a little bit last year, and kind of started on “where we’re going”, and I called it Fedora.next.next. That is a terrible name. Please help me come up with a better name for this, because if we don’t, it’s going to stick. It’s a bad name.
- Kicked off with my State of Fedora
- Threads on Fedora Discussion (see #council topics in particular)
- Covid makes this hard.
- Finally, Marie, Ben, and I sat down with the ideas from the discussion threads and came up with a skeleton
- Now, it’s time to fill that out
We kicked this off at Nest with Fedora last year, and we’ve been working on it since. We’ve had some threads and some conversation on Fedora Discussion already. But COVID made the next steps really hard.
In the past, the Fedora Council has worked on our strategy and direction by getting together in a room several times a year. Usually we have a meeting that is just the Council in one physical location for a few days. We also got together around DevConf.CZ and Flock. With those meetings, we have higher bandwidth conversations, which really help with this kind of deep thought work. We’ve tried to do that virtually, and it just isn’t the same as getting people in the room together, so this has been a way slower than I’d have liked.
Marie, Ben, and I were able to get together for a few days over the summer. We took ideas from the discussion so far, and put together a skeleton for what we think we’re kind of coming together on collectively for this strategy.
We think these ideas are the direction we’re going. If you think I’m missing something, join the discussion and make sure that that gets included. If you think something’s the wrong direction, this is the time to say something.
In five years, double the number of Fedora Project contributors actively involved every week.
So here’s the guiding idea!: In five years, I want to have twice as many people who are working actively every week in Fedora as there are today. Right now that number is around 300 or so. I’d like to see that number be 600 or 700 people who are active and really involved every week.
That’s going to be the key tracking metric for this. I know we also want user growth, and the number of systems going up in my charts, but the really big thing is we want to see the project feel really healthy and vibrant. So that’s the headline thing. Besides, user and contributor growth feed each other. A vibrant and welcoming community produces a better product, which grows the user base. When you have more users, that’s a bigger pool of potential contributors.
But how are we going to take this guiding idea and make it into reality?
We think these things will help us grow — but not just that.
We think they’re necessary.
Accessibility for Everyone
Innovation and leadership in the Linux distro space
Grow from “3 Editions” to “multi-project”
We came with three big topics: the overall goals, the main areas, the focus areas. They are: accessibility for everybody, innovation and leadership in the Linux distro space, and growing from the five Editions to being a “multi-project”…um…project (in a big-umbrella kind of way).
Practical a11y — improve our software
b. Docs (the content)
c. The Fedora Linux OS
d. Fedora Project tooling
Remove other limits
a. More preinstalled systems
b. Improve help and docs
c. Better support our global communities
We’ve had a number of people who are blind or who have other accessibility issues come to us and tell us we’re doing a terrible job. We hear that, and we can do better. We should do better. It goes directly to our vision. How can everyone benefit from free and open source software if they can’t use it?
To start off, there’s the practical accessibility — what you probably think of when someone says “accessibility” (or a11y). We need to improve our software, our website could be better (Discourse is really good for this — it uses modern web standards and accessibility tags, while some of our older sites don’t), improve the content of our documentation to be more inclusive for people using our software in different ways. We want to improve the OS itself — for example, to make sure that the installer works with text-to-speech.
And it can’t just be the software and OS — we have our own tooling for packaging, docs, design, and more, and we need all of those project tools to be inclusive as well. This will be a lot of work!
One nice thing is Red Hat has hired someone to work on the desktop team for some of this stuff. That’s a step, but it’s going to require work from all of us to make it really happen.
But accessibility is about more than that. It’s also about availability. We want to make sure that we have Fedora Linux and the Fedora Project available to everybody in the world. This is part of our Fedora Vision overall — that we are making a better world for everybody, building open source software together as communities. We want to share that vision.
There are some simple things we can do, like making it easier to get Fedora Linux pre-installed from hardware vendors. I think that’s part of making it available for everyone. This goes for IoT devices as well.
We want to make sure that our help is better — that people are able to get the support they need, and that it is friendly — that when they get into IRC, they don’t get chewed up by not understanding the norms of the channel. We want people to have a friendly experience in getting support. We need better documentation — again, a continuing theme.
And we want to make sure that we are supporting people in Fedora communities around the world. We need more people sharing Fedora and spreading it in their local communities — both local meetups & conferences and localization & translations kind of work. We want to make sure that that is really getting the support that it needs. I think that we used to be better about this in the past, and we have kind of fallen. We need to build it back up again.
… in Community
b. More work on DEI and positive community norms
c. Measurable community health
Next up: innovation and leadership in the distro space. For this one, I had to break it into two slides. (Aside: it’s impressive to me that Midjourney somehow found a consistent — and even Fedora-friendly! color scheme throughout these.)
First, we want to focus on leadership in the practice of community and how we run our project.
One of the big themes here is mentorship — we have the idea that everyone in Fedora should both be a mentor and have a mentor. Vipul, Jona and other folks worked on a Mentor Summit last year, and that was a huge success. I want to expand that.
There are a whole number of reasons we want to do this.
First, it will make the onboarding experience better.
Second, we want to help people already in the project grow. Being a mentor to someone else is one of the best ways to learn new things yourself.
Finally, we want to ensure that we have continuity. We want to make sure you’re not just sharing your knowledge, but also making sure that what you’re doing will survive even when you win the billion-dollar lottery and go off to build an alpaca farm somewhere. You can be sure that what you’re working on is going to continue. We need to move from the pride of “I’m the person who does this one thing” to the pride of “I’m part of this team and I’ve helped this team be successful in doing something I really care about.”
To do this. we need to build connections — particularly, from the non-engineernig or “mindshare” parts of the project. In open source, there’s often the assumption that contributing is all about coding. While that’s important, for any project needs more than that to be successful. We need all of these different skills. And we need connections between people working these things and those doing engineering. Mentoring doesn’t need to be just focused on the deep technical work you may be doing.
Fedora also needs to work more on diversity and inclusion, and on positive community norms. This is a big focus, and an area where Fedora has already shown leadership. A lot of communities have codes of conduct inspired by or based on our work in this area. And we have practical experience in this area from doing this for a long time. We really wanted to believe that “be excellent to one another” was a sufficient code of conduct, but we learned that there’s got to be more, that there has to be standardization around it — and, our leadership around this also needs to show that it’s not just about hard rules — it’s about how we all treat each other.
… in Technology
a. Beyond RPM!
- Direct to Flatpak
- Direct to containers
- Native language stacks
b. Containerize all the things
- Ship containerized services
- podman systemd
- Consider CentOS and UBI as part of 2 Fast 2 Slow solution?
Much to my surprise, I talked about this the least in my keynote. That’s not because it’s unimportant, I think it’s just self-evident. Advancing the state of the Linux distribution is sort of what we do around here, you know? It’s embedded in our “First” and “Features” foundations.
Some people think distros don’t matter anymore, that it’s just the language stack. And, sure, Linux distros have become reliable so that people don’t have to think about them as much these days. But distros still matter! Curated repositories are very important for reliable and secure development. And there’s still plenty of room for improving the user experience.
We can make Fedora Linux safer and easier to use. Part of this will involve expanding and improving our rpm-ostree variants — this model is the future of the OS. But it also includes other technical changes, some of which I can’t suggest because they haven’t been invented yet.
Fedora.next worked. It made our offerings more clear and gave folks something to come together around. So now we have the opportunity to build on that momentum.
Spins, remixes, and downstreams
a. Build more connections to CentOS, RHEL, Alma, Rocky, Amazon Linux, etc, etc.
b. Smaller projects too!
Curated areas that aren’t boot media
a. Astronomy, design, comp-neuro, gaming…
b. Preserve team identities where things are working!
You shouldn’t need to build a distro to showcase your awesome idea or new technology. We have one of those already. Fedora should be the place where you can build your cool thing on top of a great distro. Even if your big new idea is a change in how distros are built, Fedora should be the place for you.
We have to make Spins, remixes, and downstreams easier to build and distribute. I want these sorts of things to be done inside the project whenever possible, but downstreams and remixes should be easy if that’s what you need. We want to encourage and empower people to experiment.
In addition to that, we need to move beyond the idea of creating new ISO images. A lot of our deliverables are currently designed around boot media. We want to be able to present those curated software sets, like for graphic design or astronomy, in ways that are easy to get without having to make dedicated ISOs.
Forum discussions! (Please participate!)
Logic model all of the things!
This is the part where I have homework! In the next month or so, there will be more Discussion threads on each of the areas here I covered today. Look for these upcoming topics in the council tag. We’re going to build a Logic Model bringing these high-level ideas down to practical steps.
As you know, we don’t do top-down dictation in Fedora. The Council’s job is to find where the community wants to go and build consensus around that. The only way this works is if you participate. I look forward to seeing what you have to say and working with you to build a strategy for the future of Fedora.