kube-academy / backlog

Repository for tracking curriculum creation and maintenance for https://kube.academy/
https://kube.academy/
1 stars 0 forks source link

approach for product specific content in Kube Academy #69

Open djschny opened 3 years ago

djschny commented 3 years ago

Overview

The majority of content on KubeAcademy is generic Kubernetes and Container related. This also matches the mission statement of the site:

The About page of KubeAcademy says:

KubeAcademy is a free, product-agnostic Kubernetes and cloud native technology education program built by a team of expert instructors.

There have been requests for product specific content to be added to KubeAcademy. While initially it is easy to just say yes and welcome the content as a course it most likely is not in the best interest of the audience consuming the content on KubeAcademy.

Considerations

  1. TDC vs KA - The Tanzu Development Center states that it provides you with everything you need to build, run & deploy modern apps. Therefore application/developer focused technologies and tools are better suited to be on TDC. Technologies that are primarily developer focused should be focused on that site.

  2. Official Docs/Training - The majority of technologies that will request for content on KA will have their own official documentation and training. Providing conceptual overviews and then allowing the majority of the training for those technologies to be done with the official docuemntation/training provides a nice balance and does not burden the KA team with having to maintain content for all those different technologies.

  3. Concepts vs Implementation - Classic situation in education is to learn the concepts and then you put into practice that concept with a particular implementatation. For example CI/CD is the concept and implementations are Jenkins, Concourse, etc. KA can stand out by providing the conceptual courses and then briefly touch upon the various implementations for those concepts with each of the technologies and solving a particular consistent problem.

  4. Learner Experience - A person coming to KA gets to see a product agnostic experience which will be unique compared to other places. For free they get quality educational material that focuses on teaching the concepts and giving an overview of the popular tools in the space.

Proposed Approach

Focus on Concepts

We can identify generic areas that make sure for current content and inbound content where the products/technologies exist. For example:

We can then choose whether to make the content be organized at the learning path or the course level. For example consider the following two options:

  1. Learning Path - YAML Management
    • Course - YAML Management Concepts
    • Course - Helm
    • Course - YTT
  2. Course - YAML Management
    • Introduction
    • The Need for Yaml Management
    • Approach # 1
    • Helm
    • YTT
    • Approach # 2
    • Helm
    • YTT
    • Conclusion

There are pros and cons to each approach:

Consistent Problem to Solve

Regardless of the above approach the most important part that should be done is choosing a specific technology solution/stack that is used across both the technology specific content and the conceptual content. For example this was done in the Kubernetes Core Concepts learning path leveraging the gowebapp.

We can provide the application/code/stack setup and then each technology specific content can implement solving that problem with their specific solution. For example:

Summary

This issue to help provide an approach that allows KA to accept content from multiple products while at the same time providing a product agnostic approach. The KA learner also gets a unique experience compared to other alternatives.