Sage-Bionetworks / sage-monorepo

Where OpenChallenges, Schematic, and other Sage open source apps are built
https://sage-bionetworks.github.io/sage-monorepo/
Apache License 2.0
21 stars 12 forks source link

[Docs] Enable external developers to contributes to Sage Monorepo #2080

Closed tschaffter closed 10 months ago

tschaffter commented 10 months ago

What product(s) is this documentation issue for?

Sage Monorepo

Documentation issue

Description

Sage is expected to hire (GenUI) software engineers to contribute to Agora and Schematic. The goal of this ticket is to explore how to enable these engineers to contribute to projects in Sage Monorepo with the best DX that Sage can offer.

Developing remotely on an EC2 or Codespace provides the following DX benefits.

See Sage Monorepo - Uniformizing Developer Experience for more benefits

Questions:

Ccs:

@milen-sage @sagely1 @brucehoff @jay-hodgson

Is there a specific documentation page you are reporting?

No response

Anything else?

No response

Code of Conduct

brucehoff commented 10 months ago

Can Sage provide external engineers with an EC2 instance created with Sage Service Catalog?

Service Catalog is intended to be a place for scientists (Sage workers and external collaborators) to do data analysis on sensitive data securely. I think a better solution for providing compute for software developers is to use GitHub runners, either supplied by GitHub or (if those runners are not sufficient) to provision our own runners and connect them to GitHub.

Also, I would expect any contracted software developer to provide their own development resources. It's not clear to me why Sage would provide cloud compute resources for a contracted developer to work.

tschaffter commented 10 months ago

Update

I gave additional context to Bruce about why the OC team members are developing on EC2 instance.

Technically it's possible to give external collaborators access to the Sage Service Catalog, though the UX has not been designed for them. E.g. they would be asked to specify cost center code, which they would not know about unless specifically told.

The Sage team responsible for the project that hires the contractor would also be responsible for providing IT support to the contractor regarding the EC2 instance, which should be factored when thinking about using the service.

Bruce and I agree that a contractor should be responsible for having access to sufficient compute resources, including the internet connection.

Other insights from Bruce:

About custom GitHub runners: