Skip to content
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

Consider merging with "CppKoans" #3

Open
AlexSzatmary opened this issue Jan 14, 2024 · 6 comments
Open

Consider merging with "CppKoans" #3

AlexSzatmary opened this issue Jan 14, 2024 · 6 comments

Comments

@AlexSzatmary
Copy link

Hi, I'm re-learning C++ and I like koans. I started on CppKoans; if you check the PRs there, others have added more but they haven't all been merged. Yours are yet another instance and the version that is most recently updated. I'm considering synthesizing all of these efforts. Would you like to be involved? If so, I'll send PRs your way.

@LegalizeAdulthood
Copy link
Owner

Sure, combining them seems like a good idea. I browsed that other repository a little bit and since it's not a fork of mine there are differences in style as to how to approach a koan.

I created a koan style just off my own personal whims, but one of my friends said that his content filters started going haywire because I used XXX as an identifier, LOL. I have no strong feelings about the style of what I currently have. It's also a little stale in that I'm not using vcpkg to get the Catch2 dependency set up automatically. This will make it significantly easier for a beginner to get started. I prefer using an existing unit-testing framework over something homebrew.

So first we'll need to decide on the style we're going to use for the koans and how best to combine the two repos.

@AlexSzatmary
Copy link
Author

Thanks for the note! Let's see what we can sort out.

I worked through the original "CppKoans". I also worked through a few of yours. I merged in the 2 sets that had PRs that were not merged on the original repo. I'll work through those and if that goes smoothly, post that merged set on my repo. That should be an easy lift. I hope to do that this week.

I had gotten pretty good at C++ 20 years ago but in the meantime became far more proficient with Python. I would like to get more experience with a compiled language and C++ is used a lot in applications that I'm interested in. It's worth it to me to invest in learning. Despite my having not much recent experience with C++, a lot stuck with me and I can crank through the koans quickly. Given how the language has shifted, I think I'll need to learn more to do a good job of updating. I'm planning on working through learncpp.com next, which I think would put me in a better position to revise koan content.

Merging CppKoans and your cpp-koans will be more of an undertaking than just doing the merges I mentioned. The format is definitely different and I'd need to do more to have a sense of which I'd prefer. Reformatting or translating shouldn't be that bad but ideally they'd have a consistent feel, such as amount of difficulty per koan.

I think that the current system tests the learner's solution against the author's koan. I'd also like to add a testing system whereby you can author a koan, author a solution, and have the solve be tested. Without that, I could see myself making goofy errors like leaving the answer in the koan. The testing system I'm thinking of could run easily with textfiles of solutions and regexps. I'm open to thoughts on this.

I appreciate your support for the general idea of merging the repos. If you have a little energy to help out, I'd appreciate it if you could answer questions and offer feedback. If you have a lot of energy, maybe we can collaborate on translating koans and getting the details right.

Thanks for your interest!

@LegalizeAdulthood
Copy link
Owner

I haven't participated in a while, but there is also a C++ track on exercism.io -- you might want to look at that if you haven't yet.

@AlexSzatmary
Copy link
Author

Thanks for the tip! The C content doesn't work correctly in the web browser but, based on your tip, I checked the C++ content and it does seem to function properly. I'll check it out!

@LegalizeAdulthood
Copy link
Owner

I also just learned about this Modern C++ Programming course

@AlexSzatmary
Copy link
Author

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants