-
Notifications
You must be signed in to change notification settings - Fork 64
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
CREATE: training-template repository #39
Comments
This one didn't get any bot automation, not sure if that is normal or something didn't work? So @stefwrite and team are ready for a training repository, but it's not entirely clear what is the best structure to take for that. One repository per course? One repo that is just the Lego-bucket of content? Or do this all in branches? I'll take this out to the mailing list for some input from others for the best method. |
Thanks for getting this conversation started, Karsten.
There is an advantage of having things in a common repository for the ease
of building content modularly.
However, our team creating training content would like to see automation
for certain builds, too. For example, when we build all the content for an
interactive community course (using Jupyter Book, markdown, etc.), we'd
like for changes committed/pushed to that content to trigger a CI process
that can build and publish the course to a target location on the website.
Ideas are welcome!
…-Stephanie
On Mon, Nov 15, 2021 at 9:59 AM Karsten Wade ***@***.***> wrote:
This one didn't get any bot automation, not sure if that is normal or
something didn't work?
So @stefwrite <https://github.com/stefwrite> and team are ready for a
training repository, but it's not entirely clear what is the best structure
to take for that. One repository per course? One repo that is just the
Lego-bucket of content? Or do this all in branches?
I'll take this out to the mailing list for some input from others for the
best method.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#39 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAYMZM4TBDFFG63ZTBJT5TUMEN3NANCNFSM5GWEBFBA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
|
I dropped a summary to the mailing list with an invite for folk to come to this discussion. Here is the email, and the body of my text:
|
I'm unfamiliar with this initiative so I'm looking for a bit of clarification here...
What is the training content composed of? If it's jupyterbook/notebooks/markdown, why do we need separate branches or repos? Why not one repo with a directory structure for organization of different course content? e.g. openshift-labs. Also why do we need another separate repo? Will these training modules be using content completely in isolation from our other documentation? Example like here? If so then I suppose a separate repository make sense. If there's overlap, then I'd argue this content should be in the same repository for maintainability. Otherwise we're just going to have duplication of content being written by different folks. Also...who are the target contributor demographic for these training modules? As an ops focused contributor, am I expected to take part here? If so I'd rather have this content alongside our other documentation under a separate training directory, so we have less repos to make PRs to when a procedure changes and it needs to be reflected in a 'how-to' style doc. |
I'll see if I can clear some things up for you and others who aren't
familiar with the project:
- My team is working with SRE teams at Red Hat that want to create some
custom training experiences for various SRE and prospective SRE audiences.
As training developers, our goal is to identify learning objectives ("On
completing this course, you should be able to...") and create engaging
content that addresses those objectives.
- Training content is not documentation and it doesn't seek to duplicate
or replace documentation. Instead, it provides an engaging way to learn a
specific objective. It should also cover where to find documentation and
other resources for ongoing reference. If those resources are complex, the
training may also cover how to use them.
- Instead of creating this content in a silo within our team to publish
later, our plan is to make the content part of the community and invite
community input. Thus, we are hoping to use Jupyter Book and/or notebooks
to lay out the content and make sure it's open for the community to
contribute over time.
- We envision a single unit of training as one Jupyter Book so that we
can automate building the book into HTML and publishing that HTML is a unit
(a single training course) within a catalog of training available from the
Operate First community.
NOTE: Later on, we may also copy that HTML and inject either xAPI or
SCORM code for use in a learning management system (something we currently
do for courses we produce with GitBook), allowing us to collect
learner data. Currently, though, that's not a community-facing priority.
- It's certainly possible to put everything into one repository
(including all the graphics and audio that we typically include). The
upside is that we can easily reference other content across the repository.
The downside is that each new course we add will grow that repository and
create for larger checkouts over time. At the moment, we're certain we'll
produce 10-15 courses from our team, and we hope others will follow the
model we set up to create even more.
I hope this helps clear up a few things about the project itself.
Right now, our immediate question is whether working out of a single
repository is even possible. Courses will be built and maintained as
separate units, each with its own life cycle. Thus, regardless of where the
source content lives, we should probably use separate build pipelines for
each course to avoid having to build an entire catalog just to fix a small
issue in one course. Can we have multiple build pipelines based on the same
repository's contents? Is that a good idea or something we should avoid?
…-Stephanie
On Mon, Nov 15, 2021 at 2:19 PM Humair ***@***.***> wrote:
I'm unfamiliar with this initiative so I'm looking for a bit of
clarification here...
So @stefwrite <https://github.com/stefwrite> and team are ready for a
training repository, but it's not entirely clear what is the best structure
to take for that. One repository per course? One repo that is just the
Lego-bucket of content? Or do this all in branches?
What is the training content composed of? If it's
jupyterbook/notebooks/markdown, why do we need separate branches or repos?
Why not one repo with a directory structure for organization of different
course content? e.g. openshift-labs
<https://github.com/openshift-labs/learn-katacoda>.
Also why do we need another separate repo?
Will these training modules be using content completely in isolation from
our other documentation? Example like here
<https://github.com/operate-first/apps/tree/master/docs>? If so then I
suppose a separate repository make sense. If there's overlap, then I'd
argue this content should be in the same repository for maintainability.
Otherwise we're just going to have duplication of content being written by
different folks.
Also...who are the target contributor demographic for these training
modules? As an ops focused contributor, am I expected to take part here? If
so I'd rather have this content alongside our other documentation under a
separate training directory, so we have less repos to make PRs to when a
procedure changes and it needs to be reflected in a 'how-to' style doc.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#39 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAYMZIHFOFNKB6H6IMKJRDUMFMNTANCNFSM5GWEBFBA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
|
@stefwrite Thank you @stefwrite that clears up a lot of things! Yeah if you're looking for 1 jupyterbook for 1 course, then in this case a repo per course is the easiest way to get started.
ATM I believe we have 1 repo -> 1 build pipeline. @tumido @harshad16 can verify. Though imho, having them all in one repo as part of the longer term roadmap makes a lot more sense to me. If for example, one link changes, having to make pr's to 10-15 repos sounds like a nightmare. And as you said, referencing across courses would be easier. |
One of the strange magics of git is how small a checkout is despite how large and old the repository is, right? So it's possible that 15 - 30 courses is not that large of an initial checkout. Wherever possible, git is only tracking the difference between different commits and across branches, so each commit and new branch is not very large. If you have a lot of large media assets (and especially if they are unique for each module), maybe there's some kind of lookaside cache that can be used, so the repo only holds pointers the actual asset in the cache? |
I confirmed with @harshad16 that it is actually possible to have multiple build pipelines associated with one repo, e.g. https://github.com/thoth-station/solver/blob/master/.aicoe-ci.yaml |
I suggest to start with one repo and see how complex it gets building multiple JupyterBooks. Is operate-first/training a good name? If so @HumairAK can you create the repo and setup bot automation for it? |
And for access I suggest to create a |
Yes, I think a united single repository should just be "training".
…On Wed, Nov 17, 2021 at 4:07 AM Marcel Hild ***@***.***> wrote:
I suggest to start with one repo and see how complex it gets building
multiple JupyterBooks.
Is operate-first/training a good name? If so @HumairAK
<https://github.com/HumairAK> can you create the repo and setup bot
automation for it?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#39 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAYMZJREIWC6OUENOCSK73UMNWGHANCNFSM5GWEBFBA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
Stephanie Watson, RHCE
she/her/hers | Program Manager, PnT Associate Experience
***@***.*** | M: 919-333-5050
*Subscribe to stay informed about the latest PnT training opportunities:
pntae-training-announce
<http://post-office.corp.redhat.com/mailman/listinfo/pntae-training-notifications>*
<https://red.ht/sig>
|
And an associated group of humans who meet regularly and drive progress transparently in the community, following whatever organizational structure we create in the coming weeks. |
Hey guys, I've added some docs on: Anyone willing to try to provision this repo themselves using these instructions, would also find the feedback on the docs useful, so we can improve them :) |
@coghlanRH and I are going to create this new repo |
- Closes issue operate-first#39 - As per the discussion in issue operate-first#39, we are going to start with one repo and have clearly named individual jupyter notebooks per course
New repo created, thanks for the PR @coghlanRH ! https://github.com/operate-first/training If you guys need admin access to this repo, you'll need to be in a GH team that has admin rights to the repo: |
Great, and thank you for the link to the docs! @stefwrite has volunteered to do the updated to the |
We have the repo we need, and the OWNERS file is up-to-date. Closing this out. |
New Repository
training-template
Repository description
This repository will serve as the template for our development spaces for training content that will live within Operate First.
Admin access
The same as the Operate First group admins + stefwrite (swatson@redhat.com)
Write access
The same as the Operate First group admins + stefwrite (swatson@redhat.com)
The text was updated successfully, but these errors were encountered: