Skip to content
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

Updates to ecosystem.md do clarify community roles #34341

Closed
wants to merge 12 commits into from

Conversation

lunaleaps
Copy link
Contributor

@lunaleaps lunaleaps commented Aug 3, 2022

Changelog: [Internal] - Update Ecosystem.md to clarify community roles

@lunaleaps lunaleaps requested a review from hramos as a code owner August 3, 2022 18:57
@pull-bot
Copy link

pull-bot commented Aug 3, 2022

Warnings
⚠️ 📋 Missing Test Plan - Can you add a Test Plan? To do so, add a "## Test Plan" section to your PR description. A Test Plan lets us know how these changes were tested.
⚠️ 📋 Missing Summary - Can you add a Summary? To do so, add a "## Summary" section to your PR description. This is a good place to explain the motivation for making this change.

Generated by 🚫 dangerJS against a57bc09

@lunaleaps lunaleaps changed the title Updates to ecosystem.md [WIP] Updates to ecosystem.md Aug 3, 2022
@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Aug 3, 2022
@lunaleaps lunaleaps marked this pull request as draft August 3, 2022 19:00
@analysis-bot
Copy link

analysis-bot commented Aug 3, 2022

Platform Engine Arch Size (bytes) Diff
android hermes arm64-v8a 7,831,865 +221,576
android hermes armeabi-v7a 7,224,399 +198,395
android hermes x86 8,144,955 +234,795
android hermes x86_64 8,123,763 +240,324
android jsc arm64-v8a 9,706,854 +218,147
android jsc armeabi-v7a 8,461,516 +194,931
android jsc x86 9,657,413 +231,330
android jsc x86_64 10,255,885 +237,061

Base commit: 377aa7a
Branch: main

@analysis-bot
Copy link

analysis-bot commented Aug 3, 2022

Platform Engine Arch Size (bytes) Diff
ios - universal n/a --

Base commit: 377aa7a
Branch: main

@lunaleaps lunaleaps force-pushed the lunaleaps-ecosystem-updates branch from e88dceb to 202f94f Compare August 3, 2022 22:33
ECOSYSTEM.md Outdated Show resolved Hide resolved
ECOSYSTEM.md Outdated
Comment on lines 18 to 19
* Attending monthly meeting
* Contributing to the release process as a [release co-pilot](https://reactnative.dev/contributing/release-roles-responsibilities#release-role-2--release-copilot)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know how we want to deal with cases when partners don't fulfil this requirement but we could decide on this when such a thing happens. I definitely think it's a great first step to make these requirements clear.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yea, I'm not sure either but agree consensus on these responsibilities is a start and if a partner isn't able to meet this, we can have a discussion about why and I think that'll also be helpful

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the release co-pilot link anchor appears to be broken - i believe it should be updated to:

Suggested change
* Attending monthly meeting
* Contributing to the release process as a [release co-pilot](https://reactnative.dev/contributing/release-roles-responsibilities#release-role-2--release-copilot)
* Attending monthly meeting
* Contributing to the release process as a [community releaser](https://reactnative.dev/contributing/release-roles-responsibilities#release-role-2-community-releaser)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

expo can certainly help out as a community releaser/release co-pilot in the future, although i wonder if it is useful to require that every partner contribute in this particular way. for example, our role in recent releases has been to provide our feedback from integrating the new release into our tooling and also give technical release support in the form of pull requests and reviews for pull requests. @Kudo has been handling this.

ECOSYSTEM.md Outdated
Core contributor status is attained after consistently contributing and taking on the responsibilities outlined above and granted by other core contributors. Similarly, after a long period of inactivity, a core contributor may be removed.
Core contributor status is attained after consistently contributing and taking on the responsibilities outlined above and granted by other core contributors. Similarly, after a long period of inactivity (~6 months or more), a core contributor may be contacted to understand if they’re still interested in being part of the program.

You can use this form <MISSING_LINK_TODO> to either:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

really like the idea of having a form for people to become core contributors 👍

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@cortinico's idea!

ECOSYSTEM.md Outdated Show resolved Hide resolved
ECOSYSTEM.md Outdated Show resolved Hide resolved

* **[Callstack](https://callstack.com/):** Manages releases, maintains the [React Native CLI](https://github.com/react-native-community/react-native-cli) and organizes [React Native EU](https://react-native.eu/)
Baseline responsibilities of partners include:
Copy link
Contributor

@kelset kelset Aug 4, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

other potential options, just throwing there for brainstorming:

  • help maintain the website and showcase (example of this right now: Simek from Expo)
  • produce content/material/blogposts to showcase their usage of react-native on a consistent basis

that way it could be a situation of "commits to one of these" instead of doing the releases necessarily

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great suggestions! One thing to clarify -- I was under the impression we really need more community commitments for release co-pilot. My concern is that if we make the baseline responsibilities too broad, then we might end up here again. The responsibilities of partners should be meeting baseline and in-addition demonstrating ownership.

I think the points you listed fit well with demonstrating ownership-- we should also update Expo's list to include the website maintenance (cc @Simek if that's right by you)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Simek has been contributing to the website off-the-clock, but we'll discuss whether we want to possibly make this an official responsibility. i won't have an answer soon and we shouldn't hold up this doc on it

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah my point is basically related to what @brentvatne is saying in his other comment about ways of being involved:

expo can certainly help out as a community releaser/release co-pilot in the future, although i wonder if it is useful to require that every partner contribute in this particular way. for example, our role in recent releases has been to provide our feedback from integrating the new release into our tooling and also give technical release support in the form of pull requests and reviews for pull requests. @Kudo has been handling this.

But yes, we'd like to get a couple more people that can be part of the release crew from the community perspective. I'm just concerned that some companies might shy away from becoming a partner if we set that as an "hard requirement"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see, I defer then to you guys what you think is necessary to state as baseline requirements -- or if there should be any at all. My impression is that it is difficult to get consistent commitment from the community for release support and leveraging our partners (which of course they're already doing) could help.

We could make the baseline requirement still "support releases" but in a more broad definition as @brentvatne shared or get rid of it.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for this pass it may be appropriate to keep the definition broad, and we can refine that as we gain a better understanding of where different partners can contribute, and what we think should be a fair contribution level to balance the upsides of being a partner organization

Co-authored-by: Lorenzo Sciandra <lorenzo.sciandra@gmail.com>
ECOSYSTEM.md Outdated Show resolved Hide resolved
ECOSYSTEM.md Outdated
Comment on lines 18 to 19
* Attending monthly meeting
* Contributing to the release process as a [release co-pilot](https://reactnative.dev/contributing/release-roles-responsibilities#release-role-2--release-copilot)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the release co-pilot link anchor appears to be broken - i believe it should be updated to:

Suggested change
* Attending monthly meeting
* Contributing to the release process as a [release co-pilot](https://reactnative.dev/contributing/release-roles-responsibilities#release-role-2--release-copilot)
* Attending monthly meeting
* Contributing to the release process as a [community releaser](https://reactnative.dev/contributing/release-roles-responsibilities#release-role-2-community-releaser)

ECOSYSTEM.md Outdated

Our current partners and other areas of ownership:
* **[Coinbase](TODO ):** TODO
* **[Callstack](https://callstack.com/):** Maintains the [React Native CLI](https://github.com/react-native-community/react-native-cli) and organizes [React Native EU](https://react-native.eu/)
* **[Expo](https://expo.dev/):** Builds [expo](https://github.com/expo/expo) and [EAS](https://expo.dev/eas) on top of React Native to simplify app development
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* **[Expo](https://expo.dev/):** Builds [expo](https://github.com/expo/expo) and [EAS](https://expo.dev/eas) on top of React Native to simplify app development
* **[Expo](https://expo.dev/):** Builds [Expo Go and SDK](https://github.com/expo/expo), [Snack](https://snack.expo.dev/), and [Expo Application Services](https://expo.dev/eas). Maintains [React Native Directory](https://reactnative.directory/), stewards [React Navigation](https://reactnavigation.org/) along with other partners.

ECOSYSTEM.md Outdated
Comment on lines 18 to 19
* Attending monthly meeting
* Contributing to the release process as a [release co-pilot](https://reactnative.dev/contributing/release-roles-responsibilities#release-role-2--release-copilot)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

expo can certainly help out as a community releaser/release co-pilot in the future, although i wonder if it is useful to require that every partner contribute in this particular way. for example, our role in recent releases has been to provide our feedback from integrating the new release into our tooling and also give technical release support in the form of pull requests and reviews for pull requests. @Kudo has been handling this.

lunaleaps and others added 2 commits August 4, 2022 15:05
Co-authored-by: Brent Vatne <brentvatne@gmail.com>
Co-authored-by: Brent Vatne <brentvatne@gmail.com>
@kelset
Copy link
Contributor

kelset commented Aug 8, 2022

sidenote: I wonder if we should talk with Wix about if they want to be a partner: after all, they have been using RN for a really long time, and maintain quite a few key libraries in the ecosystem like detox and react native navigation

@asafkorem
Copy link
Contributor

asafkorem commented Aug 10, 2022

Hey, Asaf from Wix here (a maintainer of Detox),

I totally agree with @kelset, Wix is a great fit under the definition of "RN partners", we maintain "detox", "react-native-navigation", "react-native-calendars", "react-native-ui-lib" and more popular RN open sources.
You can check https://github.com/wix?q=react-native for more examples.

I'd also say that we are very connected to the RN community, our guys were always speaking at conferences and podcasts related to RN and mobile development, writing blog posts, etc.

ECOSYSTEM.md Outdated Show resolved Hide resolved
ECOSYSTEM.md Outdated
* Engage on the core contributor Discord

Our current partners and other areas of ownership:
* **[Coinbase](TODO ):** TODO
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is Coinbase going to continue to invest in this? I know at least some of their internal RN champions were laid off earlier this year.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yea that's my question as well. We can discuss this in our next meeting. I think if I don't hear word back, will remove them from this list

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👋 Hi team! Brent here from Coinbase. We're down, but not out 😄 .

We're ramping back up, and hopefully y'all have been seeing Bruno in the weekly RN release meetings.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, it's worth mentioning we are getting close to open-source some of our tooling around measuring React Native performance.

For now, we shared a bit of a tease in this recent article https://blog.coinbase.com/performance-vitals-a-unified-scoring-system-to-guide-performance-health-and-prioritization-127f80268ee4, and more to come soon 😁

Copy link

@capezzbr capezzbr Sep 12, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Additional work we are driving:

  • RN releases weekly sync
  • Helping out migrating @react-native-community/datetimepicker to be Fabric compatible (and possibly others modules in the upcoming months)
  • Investigating enabling the new architecture in our RN app, and will be happy to write a blogpost documenting the process and results once the project is completed
  • Can help out with RN releases

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great! @capezzbr can you add a draft suggestion of how you want this presented as well as providing a good link?
Thanks!

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @lunaleaps, here our suggestion:

Coinbase: Builds world class crypto apps in React Native. Publishes articles to advertise React Native development. Supports OSS libraries on their migration to the new architecture.

ECOSYSTEM.md Outdated Show resolved Hide resolved
Co-authored-by: Jamon Holmgren <jamon@infinite.red>
@github-actions
Copy link

github-actions bot commented Sep 8, 2022

Warnings
⚠️ 📋 Missing Test Plan - Can you add a Test Plan? To do so, add a "## Test Plan" section to your PR description. A Test Plan lets us know how these changes were tested.
⚠️ 📋 Missing Summary - Can you add a Summary? To do so, add a "## Summary" section to your PR description. This is a good place to explain the motivation for making this change.

Generated by 🚫 dangerJS against 9dcca77

Co-authored-by: Seph Soliman <seph@seph.dk>
@brentvatne
Copy link
Collaborator

pending the TODO that we'll resolve in the next sync, this looks shippable to me!

ECOSYSTEM.md Outdated Show resolved Hide resolved
Copy link
Contributor

@thymikee thymikee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree with other comments and the doc looks good to me in this shape :shipit:

Co-authored-by: Michał Pierzchała <thymikee@gmail.com>
Copy link
Contributor

@asafkorem asafkorem left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi there! Asaf from Wix here 🙂
Having joined Wix as a partner, we look forward to being listed here alongside our most popular (and maintained) React Native open sources:

Basically we have ~32 open source projects for react native, see on GitHub: https://github.com/orgs/wix/repositories?q=react-native

Co-authored-by: Asaf Korem <55082339+asafkorem@users.noreply.github.com>
@kelset
Copy link
Contributor

kelset commented Sep 20, 2022

Now that this conversation has been going on for a while, I wanted to check back on the partners' requirements aspect of this document; see this comment thread and this comment thread for prior conversations. (cc @brentvatne and @lunaleaps since we were having those conversations with them)

Here are some personal perspectives on this that I'd like to share and we can discuss if/what to integrate:

  • only a company can be a partner
    • and defines 2 "main points of contact" people
  • there should be some "hard" requirements; if a company doesn't live up to them, they are released from the partner role (become a "partner alumni" or something like that, if they have been for a while and then not)
  • I think the requirements should be "two-folds", one towards contributing ("inward") and one towards advocacy/community ("outward"). Partners should be both actively contributing to the ecosystem's progress and advocate/talk about it with the broader community.
    • in my head, this would look something like having two lists and to be a partner you need to satisfy one or more items per each list. Here are some examples of what I'm thinking about, feel free to suggest more:
    • contributing ("inward")
    • advocacy ("outward")
      • writes blogposts around react native, using react native (frequency TBD - at least once per quarter?)
      • has an active social media presence (ex. twitter account from their engineering) that talks about RN
      • contributes frequently to the reactnative.dev website and documentation
      • organises conferences/meetups
      • produces a podcast, newsletter, etc similar content
      • speaks at confs, podcasts (frequency TBD - at least once per quarter?)
  • being a partner unlocks a series of benefits:
    • attendance to the monthly meeting with the other partners + meta
      • expectation is that at least of of the two 2 "main points of contact" people will always attend
    • access to dedicated channels in the Discord server
    • prominence in the showcase (details TBC - I think we need a "lower limit" of apps from the partner before they have their own "row" https://reactnative.dev/showcase)

That's all that I can think of for now - again, this is just a personal perspective on this. Would love to discuss it further so that we can make this document progress forward. I think that the clarity around requirements will also make the process of becoming a partner more clear and help other companies also consider it as an option.

@lunaleaps
Copy link
Contributor Author

lunaleaps commented Sep 20, 2022

@kelset thanks for sharing your thoughts. Sorry for the lack of clarity here but my next step here was to figure out how a way to do intake for the Ecosystem form. I think the draft here is good as is and plan to put this into PR state once I get the workflow set up. I will be removing Tesla as they can't commit right now to the responsibilities we've highlighted.

I like the concrete list of ways to contribute and I think that's something we can add to this. I don't want it to seem like a checklist necessarily but as a guidance for companies who are considering becoming partners to see if they can commit.

ECOSYSTEM.md Outdated Show resolved Hide resolved
Co-authored-by: Asaf Korem <55082339+asafkorem@users.noreply.github.com>
@lunaleaps lunaleaps marked this pull request as ready for review September 20, 2022 18:49
@lunaleaps lunaleaps changed the title [WIP] Updates to ecosystem.md Updates to ecosystem.md do clarify community roles Sep 20, 2022
@facebook-github-bot
Copy link
Contributor

@lunaleaps has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@react-native-bot
Copy link
Collaborator

This pull request was successfully merged by @lunaleaps in 70d86e7.

When will my fix make it into a release? | Upcoming Releases

@react-native-bot react-native-bot added the Merged This PR has been merged. label Sep 26, 2022
OlimpiaZurek pushed a commit to OlimpiaZurek/react-native that referenced this pull request May 22, 2023
Summary:
Changelog: [Internal] - Update Ecosystem.md to clarify community roles

Pull Request resolved: facebook#34341

Reviewed By: cortinico

Differential Revision: D39774550

Pulled By: lunaleaps

fbshipit-source-id: 00f8f58e901f1e35be6f395053fccfb6d841ce55
@lunaleaps lunaleaps deleted the lunaleaps-ecosystem-updates branch January 19, 2024 22:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Merged This PR has been merged. p: Facebook Partner: Facebook Partner
Projects
None yet
Development

Successfully merging this pull request may close these issues.