-
Notifications
You must be signed in to change notification settings - Fork 53
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
Implement #25: Add an examples index #197
Conversation
It aims in the end at completing #25: having a README.md to show people around the examples directory. This commit introduces such a file as required in the issue with an organized structure. Images will be added to the directory `docs/assets/images/examples`. Signed-off-by: Paul Mabileau <paulmabileau@hotmail.fr>
Took the interesting and different enough examples from the available set and listed them in `examples/README.md` with respective source code links. Signed-off-by: Paul Mabileau <paulmabileau@hotmail.fr>
Recorded a demonstration for every selected examples in the index and added it to the example index. Signed-off-by: Paul Mabileau <paulmabileau@hotmail.fr>
Added a few sentences per selected example in order to just describe it, inform which turtle methods are used or explain how the drawing algorithm operates. Signed-off-by: Paul Mabileau <paulmabileau@hotmail.fr>
As the linked Wikipedia article states, it is the Heighway, and not highway, dragon. Signed-off-by: Paul Mabileau <paulmabileau@hotmail.fr>
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@PaulDance Wow! Amazing work! You did such a fantastic job with this. I am excited to merge it. 🎉
I say that because I had quit the trouble recording the examples, then cutting and finally rendering them to GIFs, so I might have cut some corners here and there
No worries! I have done a lot of this so I know how difficult it can be. Thank you so much for putting in the effort! Did you also speed up some of the GIFs as well? They look great! So high quality I'm honestly so impressed by your work. 😁
Note: Did you by any chance record the GIFs with a red-light filter enabled or some other program that makes your screen dimmer? I noticed that none of the examples with white backgrounds are actually fully white. (I've made this mistake before. Don't worry, you don't have to go and re-record everything! At this point, I think it would be better to leave them as-is and then open an issue to do it later. It's only barely noticeable right now, and that's only if you know what to look for.)
So to summarize, I grouped by programming complexity rather than drawing complexity, which I think is more a matter of finding the right numbers and writing a lot of similar code. Let me know what you think about this.
Great! I am fine with the way you ordered things. That issue was written 3 years ago, so it makes sense that we would have to deviate now that we have so many more examples. If we find a better classification/ordering later, we can always readjust!
Finally, I wrote the descriptions after making all those GIFs, so they did not end up being novels, but I might have included some typos, so proofreading is required.
This is what I'm here for! Shorter descriptions can be great. No need to be overly verbose just for the sake of it. You did a great job with your descriptions. I like that you mentioned which parts of the API are used for many of them. Some of the names you chose for the examples are very creative! 😁
I've left you lots of feedback in the form of suggested changes. You should be able to batch them up into a single commit and apply them all at once. Feel free to improve the work even more, but do keep in mind that we can always come back and keep working on this later. :)
Note: I made the edits directly on GitHub, so you may need to trim trailing whitespace in your editor after saving the file. 😅
Out of Date Images
An unfortunate consequence of #25 being 3 years old is that the GIFs for heart, maze, and rust are all out of date. If you run those examples again, I think they've changed pretty significantly.
If you have a chance, could you try and re-record the heart and maze examples? No problem if you don't have the energy for that, we can always open up follow up GitHub issues to keep working on this. The rust example can't be re-recorded right now because of #177. We can leave that GIF as is for now.
Nice!
I actually sped up the long drawings themselves using
Oopsie daisy 🤷♂️... yes I did, but it never crossed my mind! I guess this is how one learns, huh.
Yes I can definitely do that and truthfully I think it would look better to have them all in the same size. The time I spent recording and adjusting the GIFs was mostly figuring out how to get the GIFs themselves first. I tried using Peek, but couldn't make it work because moving and resizing the recording window was a nightmare. So i used recordMyDesktop that I have used before and worked fine, but when I tried to edit the result using the graphical video editor kdenlive, exporting to a GIF was a complete failure. So I finally had to make the edits manually with ffmpeg which I never used before... Now, it shouldn't take me that much time to record two additional ones, no worries. |
A few are still to be discussed. Co-authored-by: Sunjay Varma <sunjay@users.noreply.github.com>
Signed-off-by: Paul Mabileau <paulmabileau@hotmail.fr>
As the ones initially published in the issue were three years old, an update was bound to be required at some point. The Rust example GIF is to be updated as well as soon as the Rust example is updated itself. Signed-off-by: Paul Mabileau <paulmabileau@hotmail.fr>
Applied the same formatting suggestion as the Heighway dragon example and also clarified a bit the description itself. Signed-off-by: Paul Mabileau <paulmabileau@hotmail.fr>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work @PaulDance! I found one typo and one missed GitHub suggestion. This can be merged once those are resolved and the build passes. 🎉
A simple copy-and-paste oversight in the table of contents. Co-authored-by: Sunjay Varma <sunjay@users.noreply.github.com>
@sunjay That should be it, right? |
@PaulDance I just applied the last suggestion that must have been missed for some reason. I'll merge as soon as the build passes. Nicely done! 🎉 |
@sunjay No, I did not miss that one: you came back on your first comment saying this part was actually fine by you, so I let it as is. Did I miss something? |
@PaulDance I think there may have been some misunderstanding. The suggestion I just applied was similar to several others you applied earlier, not one of the ones we discussed leaving as is. Is there a comment where I said it was fine as is? |
See the links I just added to my previous message. |
Ah! I see where the misunderstanding is. Here's the comment you linked to with some added emphasis:
So you see, I'm fine with calling the shapes themselves simple, but I wanted to change the description to avoid calling the example that. (My other comment that makes the applied suggestion goes more into why.) Sorry for the confusion! Hopefully that resolves things and we can get this merged. 😁 |
Ok then, sorry I missed that part. Everything is therefore fine by me now. You'll be able to merge this in a few minutes I'd say. |
Great job @PaulDance! |
Hello again @sunjay!
In order to address #25, I compiled a selection of examples I judged interesting and organized them in sections by level, which I thought could be better than repeating the level for every entry, and yes also because it was simpler for me. I say that because I had quit the trouble recording the examples, then cutting and finally rendering them to GIFs, so I might have cut some corners here and there 😩.
You might notice that I did not respect your initial proposition about some of the examples' level: I considered "Beginner" as simple geometric shapes, "Intermediate" more complex geometric constructions including drawings with parameterized arcs because I consider this just a lot of guesswork, and "Advanced" the maze and fractals drawn using recursive algorithms. So to summarize, I grouped by programming complexity rather than drawing complexity, which I think is more a matter of finding the right numbers and writing a lot of similar code. Let me know what you think about this.
Finally, I wrote the descriptions after making all those GIFs, so they did not end up being novels, but I might have included some typos, so proofreading is required.
Cheers,
Paul.