-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Define relation between / and roles of elements in the Add-on ecosystem #114
Comments
I think I have a model that covers all elements relevant to provide add-ons. (It is somewhat complex so far, but helps me tell stories how different aspects relate.) @brampitoyo Especially in the developer area I struggle to understand what the optimum should be. I looked at your simplified developer journeys and tried to take what I can from there. Questions I have:
Any feedback welcome. I am sure this is not complete yet. |
I noticed a couple of gaps we can streamline (this is an ideal state, not present day):
Ideally, I’d like more integration: one place to get all your resources. While the Developer Hub isn’t equipped to perform all documentation or communication functions, one thing we can do is syndicate them or at least link to them. At the end of the day, we should be able to answer this question: “What are the places developers can go to learn and build add-ons?”, and the list of those places should be as short as possible.
Themes are largely built using a wizard, so I suspect that the learning process will be minimal. Seen this way, theme developers may not go through a lot of documentation, and since we always plan on supporting themes, news is irrelevant to them. Complete themes are somewhat different. The process that they go through are a lot more similar to add-ons.
There are two ways to test add-ons:
Item 1 is already covered by your diagram. In fact, it’s easy enough to do if you use the “Install Add-on From File…” option. The problem is, your add-on may work on your own computer running Nightly for one session, but this tells you nothing about the real world: how will it run on your user’s machine that’s running Release, after it’s been installed for a while? Currently, you can do this with a workaround: submit it to AMO as unlisted, download the file, distribute the result. But you can’t just say “Hey, I just updated my files a minute ago. Here’s the add-on. Have everybody on the QA team install it and check it out.” In the future, I believe we are using Unbranded builds to solve this problem. So this should be a part of your diagram, too. |
We work on many parts of the Add-on ecosystem currently, and are planing to re-define bigger parts of it. (like AMO) To understand what functions each part of the system should fulfill it might help to draw a complete picture of a system we envision. (And to compare it what we currently have, to see where and how we can have the biggest impact.)
This exploration of the system started when I outlined the life-cycle of an add-on to understand how different projects we already worked on relate to each other and how to priorities those.
Since then many more dimensions of that system opened up in different projects and that picture grew. This will be an attempt to show that system from different angles to help understand relationships and roles in the system.
https://www.lucidchart.com/documents/view/1a0c645e-4475-46e8-9aed-98828f7b7dda
┆Issue is synchronized with this Jira Task
The text was updated successfully, but these errors were encountered: