Half-Elf on Tech

Thoughts From a Professional Lesbian

Tag: FAIR

  • FAIR: Successes, Lessons, and What’s Next

    FAIR: Successes, Lessons, and What’s Next

    Yesterday we released FAIR 1.3.

    Today we had to announce two of the top faces for the project were stepping back.

    It’s been a rollercoaster, y’all!

    FAIR IS NOT OVER

    We understand and respect Joost and Karim’s decision. The challenges they faced: the reluctance of large ecosystem players to invest in neutral infrastructure, the misaligned incentives–these are real. We won’t pretend otherwise. But those challenges don’t define the entirety of what FAIR is or where it’s headed.

    This means, right now, we keep going.

    So what the hell, ammiright?

    First and foremost, FAIR WORKS. As a drop in replacement for running all your updates from wordpress.org you can now use AspireCloud instead. What does that mean? We proved you absolutely can de-centralize WordPress. You can undo all the Gravatar and phoning home stuff, and just get code.

    What we wanted to do was make it so we could add in more and more ‘sources’ (like, say, your own self-hosted one!) and give the world the ability to distribute and share. All you have to do is add in a repo.

    Beyond that, I have dreams of layering in tools like security checks, reviews, ‘grades’ (how ‘good’ or safe is a plugin/theme) and more.

    But you see, you need money to be able to build and host all that kind of thing. Our plan was to get some big players on board so they could control their own code flow. This sadly became a chicken and egg conundrum that did not result in oyakudon (one of my fav dishes, we call it “mother and child reunion” because we’re twisted people).

    Someone had to be first. Some big company had to be first.

    None were willing to take the risk.

    What Risk?

    Let’s not sugar coat.

    By now, if you’re reading this blog, you know about the feud between Automattic and WP Engine. Frankly it’s a whole lot more drama than any of us needed in our lives. But the reality is that the feud put people, including major companies, on edge. They fear retaliation. I get it.

    Did Matt Mullenweg have a point that people (meaning big companies) need to kick in more to this project they’re basing their companies on? Hell yes. I don’t disagree with the issue he raised, I disagree strongly with his methodology.

    Fighting takes us away from our goals and honestly, who has the time?

    Gif of a woman saying "Ain't nobody got time for that!"

    Instead of jumping into a fight, why not make a better path available. Why not reinvent Five for the Future into something like adopt-a-highway. HostingCompanyA adopts the support forums, because their customers use it. They donate time/people or straight up money. BigPluginCompanyB helps plugins the same way. They sponsor someone who doesn’t work for them to chip in.

    To do that, everything has to be public, though. That means the WordPress Foundation has to tell us what they need with actual fact sheets and budgets, so we know where to help and with what.

    Who Helps the Helpers?

    There’s also a flip side to Matt’s argument. The Big Companies who make a living on WP absolutely should be helping more. But the millions of volunteers should be helped more.

    The majority of my contributions to WordPress were unsponsored

    Okay? We’re talking the 11 years as the plugin rep, and the six years before that. Most of that was on my own, free time. Most of it was unfunded, not sponsored by my employers, and done because I strongly believe that people working together make things better.

    And I’m not the only one. The folks behind PHPcs, ImageMagick, and more have all faced issues with funding.

    I remain proud as hell over my contributions, the work I did, the ecosystem I helped create. It helped me get my last 3 jobs (that’s including this one).

    But I’m sure as shit nowhere near “Post Economic.” And that’s actually okay by me. I did what I could, when and where I could, because I believe in the power of people. I took some massive mental hits from the work, which trickled down into physical.

    As I’ve said about why I left plugins: I needed to take care of my mental health. Plugins was killing me. I needed to step away from WordPress as a whole for the sake of my life.

    Gif from The Sandlot: You're killing me, Smalls (used ironically here)

    People who work on a certain edge of the tech world have seen shit no one should see, and deal with assholes no one should deal with.

    For me, FAIR has been a healing project, as it feels like we’re ushering in a new era of hosting and sharing.

    What’s Next?

    Well, as my co-chair Ryan put it, we keep going.

    So we don’t have a ton of money. Okay, we can keep going. We’ll do it slower, and we’ll step out of ‘just’ WordPress but y’all, that was the plan in the first place!

    We always planned to make this bigger. We designed the systems to be agnostic on purpose. We’re just jumping to that a little differently than I’d hoped with TYPO3.

    As for me, I keep going for now. I never planned on being a TSC Chair. I’ve never sought out accolades or power. That’s just not me. I’ve been handed it enough times to know that there will be a time for me to step away and let the next generation, as it were, carry on and keep paving the way to a better future.

    But that’s not today. It’s not even tomorrow.

    Today and tomorrow and for a while yet, I’m here to help make distributed deployment of code a bigger and better reality. I’m here to help shepherd in the freedom of owning your code from egg to chicken (see I brought it back to oyakudon).

    One Day at a Time Gif of Lupe saying "Keep up the great work"

    If tomorrow, I get a phone call that WordPress.org wants to distribute the load to lower costs and help bring the world ready for the EU’s Cyber Resilience Act next year? Hell to the yes.

    I’m here for a better tomorrow. I hope you are too.

  • We Should Free All WordPress Plugins and Themes

    We Should Free All WordPress Plugins and Themes

    No, I don’t mean give them away for free. But put a pin in that, because this idea begins and ends with FAIR.

    If you haven’t yet heard about the FAIR Package Manager, the idea is to rethink how software is distributed and managed in the world of open web publishing. FAIR focuses on decentralization, transparency, and giving users more control.

    And yes, I’m one of the first Technical Steering Committee’s Co-Chairs.

    When I say we should free the plugins and the themes, I mean something I asked myself almost a decade ago…

    The (Initial) Question

    I remember being on an airplane flying to Japan when I first asked myself this question:

    What would the WP world be like if we democratized the extension ecosystem?

    Mika Epstein circa 2015

    Believe it or not, that note moved to a document, which grew over time, collected all the risks and rewards I could think up. I had logical trains of thought that ended with a failure. But I kept at it. I kept scribbling notes and refining the ideas, until I felt like I had a solid frame.

    Sometime in the spring or summer of 2024, I sat and wrote it as a proposal that I had planned to present to folks on the Meta team as a future path for WordPress.org to stop hosting all the world’s plugins and themes, and instead make it a hell of a lot easier for people outside the wordpress.org services to host their own while still remaining findable.

    The World Before

    20 years ago, the world was a different place with regards to the internet.

    Remember, in 2003 Mike and Matt forked b/2 to make WP, and in 2004 MovableType decided to change their license, and in 2005 Git was invented.

    So let’s set the table remembering that when WordPress came out with Plugins and Themes it was 2004 and back then it was pretty rare for people to host other people’s stuff. That was actually the problem .org was fixing! Don’t have your own SVN setup? Only have $8 a year hosting (those were the days)? Don’t have a way to save all your versions?

    Welcome to the WordPress extension system!

    The (Current) Problem

    While WP solved the problem of 2004, 20 years passed and everything changed. Everyone’s computer has SVN and GIT now (more or less…), and everyone can host code on GitHub or GitLab or even roll their own pretty easily.

    It’s almost like WordPress paved a road for self hosting being spread across the developer landscape. Not only can creators of content host their own websites, devs can host and manage their own updates.

    And WordPress created a new issue of their own making: a gate. There are rules about what you can and cannot host, how you can behave, and frankly … I say this as one who was the Gatekeeper for too many years, that gate is a necessary evil.

    By hosting code and content from other people, WordPress.org places itself in harms’ way. They became responsible for how everything was portrayed and published on the plugin/theme search pages, and that gate had to have rules to protect itself and ensure its continued existence. Like trademarks. You have to be vigilant because places like Facebook will try and shut the whole directory down if they decide it’s infringing.

    That gate has become a hinderance to the democratized usage of WordPress.

    To get around the rules of the gate, people host their own code now. Sure there are a couple options (EDD Updater, GitHub updater, there’s a plugin self-updater out there as well). But because of that gate, they aren’t findable. This hurts WordPress. It stifles growth, it makes it harder for people to make their living on WP, and that is a net loss for everyone.

    My (Then) Proposed Solution

    WordPress.org should stop hosting non-official Plugins and Themes (including Akismet) and instead host the following:

    • Example Plugins (hello dolly)
    • Core Plugins (Classic Editor, Classic Menus, HealthCheck)
    • Core Themes (twenty-*)
    • A directory of other plugin and theme directories

    That last one is the crux of the whole matter. We give hosting back to the developers (just like we gave hosting to the content creators) and then we welcome in their content without liability.

    The thing was, I knew damn well this is something that WordPress.org would fight me over. Stop hosting? Make that radical of a change to completely rewrite how we access code? Distribute everything and own nothing?

    An uphill battle to say the least.

    So, like I did every time I opened that doc, I re-read it, made some tweaks, ran it though and AI on a whim and cleaned it up even more, and I closed it.

    The FAIR Future

    This brings me back to FAIR.

    Sounds like it was made for this proposal, huh?

    I cannot take credit. It’s lightning striking the same place twice. But that makes sense, doesn’t it? No, I’m not talking about how WordPress and I share a birthday, I’m talking about how I absolutely couldn’t be the only human on the planet with this idea in their head.

    Naturally I dove in. I helped writing the docs, translating High Geek explanations into Corporate Lingo, pitching and refining ideas, collecting information from the developers who were far better at these things than I am, learning about AtProto.

    When I was nominated to be on the TSC, I sat with my wife to discuss the implications and risks of accepting. There was a very real possibility this could destroy my career, and I’m a developer looking at 50 while being female. Finding another job, if this went badly, could become impossible.

    But I have a poster. “Flynn Lives.” For years it hung on the wall across from my desk, and I would look up at it and remember the line. “I fight for the users.”

    I started helping in the WP forums to help the users. I joined plugins for the same thing. I ran plugins with the dual view of fighting to make things easier for users and developers. And I failed, trying to do that. But I’ve learned and grown and changed.

    In order for WordPress to move from being that joke to “just a blog” CMS that ‘real’ developers mock, to grow the ecosystem and help everyone make money, to get even bigger while still giving back to everyone, distribution is key.

    Democratize Distribution

    FAIR is at step one of the plan.

    Today, the plugin can disconnect you from WordPress.org for updates (which has the added benefit of more data privacy). There’s only one distribution source right now (thank you AspirePress! none of this is possible without you) but it proves you can do this. It’s got some work left to do and we welcome everyone’s eyes and hands to help. It is very much an MVP release (something I stressed over and over during the dev cycle, to keep folks out of the weeds).

    Next is the part where we build out the system to hand the keys to the developers. No more AppStore and rules. Push what you think is right to push.

    Will some people abuse that? Of course. Someone will push weekly updates so you’re always being notified. Someone will cover the admin panel with ads. Those things happen today, and the plugin review team cannot keep up because there are more devs than reviewers.

    But there are things we can and will do to help and protect users, to empower developers, and assist the hosting companies and more. Everyone benefits from this future.

    We have a plan, and we hope you come with us.

    Other people collaborating with FAIR have blogged as well: