pygame-ce icon indicating copy to clipboard operation
pygame-ce copied to clipboard

Move tutorials out of main repo into their own repository

Open MyreMylar opened this issue 1 year ago • 9 comments
trafficstars

There has been some debate recently about slimming down the main repository into some smaller packages for various reasons. One area I think that could really benefit from this is the existing tutorials section of the docs.

We have some fairly old text based tutorials, mixed with a few more recent ones bundled awkwardly in our docs. We also have a couple of these tutorials translated into different languages and one current PR with another set of translations. The main docs have no way of cleanly switching the language, and never will because it would be impossible for a project with our resources to keep code documentation up to date with changes in multiple languages.

However, a separate tutorials repository with it's own sphinx build could do this: image

This repository could also potentially guide the modernising of the tutorials into the video era of the web (there was no such thing as youtube when many of the pygame tutorials were first written).

I added an issue on this topic to the website repository too as that's where the output from the proposed new tutorials repository would be hosted under the current 'tutorials' link from the main page:

image

MyreMylar avatar May 27 '24 07:05 MyreMylar

As a guy who has bugged you about this in private DMs:

  • I think we should have more example code
  • I think we should have fewer examples in the main repo
  • I think we should distinguish between "software architecture" (how to load levels and unit types from xml files), "feature demonstrations" (how to use flood fill) and "gameplay examples" (how to make your animations/game feel punchy)

robertpfeiffer avatar May 27 '24 11:05 robertpfeiffer

There has been some debate recently about slimming down the main repository into some smaller packages for various reasons. One area I think that could really benefit from this is the existing tutorials section of the docs.

We have some fairly old text based tutorials, mixed with a few more recent ones bundled awkwardly in our docs. We also have a couple of these tutorials translated into different languages and one current PR with another set of translations. The main docs have no way of cleanly switching the language, and never will because it would be impossible for a project with our resources to keep code documentation up to date with changes in multiple languages.

However, a separate tutorials repository with it's own sphinx build could do this: image

This repository could also potentially guide the modernising of the tutorials into the video era of the web (there was no such thing as youtube when many of the pygame tutorials were first written).

I added an issue on this topic to the website repository too as that's where the output from the proposed new tutorials repository would be hosted under the current 'tutorials' link from the main page:

image

Yes, much better!

Gabryel-lima avatar May 27 '24 12:05 Gabryel-lima

I'm skeptical of the benefit of moving them out into a separate repository.

If we have outdated tutorials rotting in the main repository, moving them into another repository just lets them rot in a different place? A place that's even less likely to have eyes on it?

RE examples, anybody can post examples on Github, there have been several projects. Like https://github.com/pygame-examples/pygame-examples

Starbuck5 avatar May 31 '24 06:05 Starbuck5

I'd say that we should make every example that's been well thought-out like aliens.py to be in their own separate repository such as https://github.com/pygame-community/pygame-aliens.git and remove smaller examples such as go_over_there.py

If we would like to take from example...

Monogame has separate repositories for their examples:

  • https://github.com/MonoGame/MonoGame
  • https://github.com/MonoGame/MonoGame.Samples

As well as Godot Engine:

  • https://github.com/godotengine/godot
  • https://github.com/godotengine/godot-demo-projects

As well as raylib:

  • https://github.com/raysan5/raylib
  • https://github.com/raysan5/raylib-games

But not heaps.io, the game engine powering Dead Cells

  • https://github.com/HeapsIO/heaps
  • https://github.com/HeapsIO/heaps/tree/master/samples

andrewhong04 avatar May 31 '24 13:05 andrewhong04

Looking at the crude webpage I made almost a year ago makes me uneasy.. lol

andrewhong04 avatar May 31 '24 13:05 andrewhong04

I'd say that we should make every example that's been well thought-out like aliens.py to be in their own separate repository such as https://github.com/pygame-community/pygame-aliens.git and remove smaller examples such as go_over_there.py

If we would like to take from example...

Monogame has separate repositories for their examples:

  • https://github.com/MonoGame/MonoGame
  • https://github.com/MonoGame/MonoGame.Samples

As well as Godot Engine:

  • https://github.com/godotengine/godot
  • https://github.com/godotengine/godot-demo-projects

As well as raylib:

  • https://github.com/raysan5/raylib
  • https://github.com/raysan5/raylib-games

But not heaps.io, the game engine powering Dead Cells

  • https://github.com/HeapsIO/heaps
  • https://github.com/HeapsIO/heaps/tree/master/samples

It would be good.

Gabryel-lima avatar Jun 05 '24 18:06 Gabryel-lima

I'm skeptical of the benefit of moving them out into a separate repository.

If we have outdated tutorials rotting in the main repository, moving them into another repository just lets them rot in a different place? A place that's even less likely to have eyes on it?

RE examples, anybody can post examples on Github, there have been several projects. Like https://github.com/pygame-examples/pygame-examples

I've been here for a while and haven't noticed this repo yet lol

Gabryel-lima avatar Jun 05 '24 18:06 Gabryel-lima

I've been here for a while and haven't noticed this repo yet lol

So you're saying that we should move things out of the main repo and that you don't notice other repos?

My point is that people can post their examples on the internet without it being an official part of our repo or our Github organization, and there's nothing wrong with that.

Starbuck5 avatar Jun 07 '24 06:06 Starbuck5

I've been here for a while and haven't noticed this repo yet lol

So you're saying that we should move things out of the main repo and that you don't notice other repos?

My point is that people can post their examples on the internet without it being an official part of our repo or our Github organization, and there's nothing wrong with that.

That's not what I meant. I just pointed out that I hadn't seen the example repo here

Gabryel-lima avatar Jun 07 '24 13:06 Gabryel-lima