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

WIP draft of function-composition concept #821

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

colinleach
Copy link
Contributor

I haven't looked closely at exercises to match this, but other tracks seem to use high-school-sweetheart.

@depial depial marked this pull request as ready for review February 20, 2025 23:40
@depial depial self-requested a review February 20, 2025 23:44
Copy link
Contributor

@depial depial left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lg2m

@depial depial enabled auto-merge (squash) February 20, 2025 23:46
@colinleach
Copy link
Contributor Author

What's your preferred way forward? I could either add a (non-empty) introduction.md, or add high-school-sweetheart and copy the introduction.md from that. The latter option at least has the advantage that we'll know what a minimal Introduction looks like.

@depial, your choice.

@depial
Copy link
Contributor

depial commented Feb 21, 2025

I think the latter sounds great :)

@colinleach
Copy link
Contributor Author

I'll try to PR high-school-sweetheart in the next day or two, unless you're keen to do it yourself.

@depial
Copy link
Contributor

depial commented Feb 21, 2025

Great, I'll see if I can take a look at it as well. I'm hoping to get some of your work pushed through here since it's definitely quality. (Apologies for my recent absence, I hope to be around more now)

@colinleach
Copy link
Contributor Author

I've mostly been absent myself for the last several months. I had been making decent progress on the learning track, but then I got ill: mainly dermatology problems, but then side effects from the drugs treating it. I still spend quite a bit of time in medical waiting rooms, but I'll try to pick this up again and make progress.

I was most of the way through writing the strings concept when things went bad, so I hope to finish and PR that fairly soon.

@depial
Copy link
Contributor

depial commented Feb 26, 2025

I'm sorry to hear about your medical issues and wish you all the best with your recovery! If working on stuff here is too trying, definitely continue to take a break :)

I'll look at getting a PR with high-school-sweetheart opened today.

@colinleach
Copy link
Contributor Author

colinleach commented Feb 26, 2025

I'm sorry to hear about your medical issues and wish you all the best with your recovery!

Thank you. It's been a strange few months since my skin suddenly declared war on me, but I'm now getting treated. Yesterday I saw the dermatologist again, and she greeted me with a cheery "Good morning, my itchy friend". Fair enough, I also tease her a bit (30 years working in medical research changed my relationships with doctors: still respectful, not quietly deferential).

The initial treatments early October had a lot of side effects, but recent stuff is much better tolerated. I said in one post that the syllabus had stalled because my brain had stalled, which may have accidentally given the impression that I have mental health problems. Not true, it's just that I hadn't slept properly for several weeks. Though I can imagine the parents of newborn babies rolling their eyes and muttering "tell me about it...".

The drugs also messed up my immune response, so (fairly predictably) I caught every passing infection.

@colinleach
Copy link
Contributor Author

I've now reversed strategy, and my immediate priority is to get early concepts/exercises fit to merge, so we can start building a WIP syllabus on the website. Writing the more advanced concepts was fun, and educational for me, but I now think I should postpone doing more of that.

There will be a hiatus mid-March, when a friend is flying out from England to stay with me for 10 days. I'll still be in fairly regular contact, but we'll be travelling around and I'll be less likely to write long-form content. Normal service will hopefully resume late-March.

@depial
Copy link
Contributor

depial commented Feb 26, 2025

My friend recently spent a couple of very itchy months with little sleep, so I've been told, in quite definite terms, it no fun at all.

I think your strategy seems reasonable. I also like creating exercises for more advanced topics, since I find them more self edifying, but I see this can only help so much and I'll have to bite the bullet and do some of the more "mundane" tasks as well. Luckily there's always nuggets of interest in anything if I keep my eyes open.

I may also be receiving guests in the middle of March, so maybe these periods could overlap. I don't think I will be traveling (much) though, so I should still be somewhat available if they don't.

@depial
Copy link
Contributor

depial commented Feb 26, 2025

I can't find high-school-sweetheart in problem-specifications... Am I looking in the wrong place, or do I have the wrong name for the exercise?

@colinleach
Copy link
Contributor Author

problem-specifications is only for Practice Exercises, where we aim for cross-language consistency. Tracks are free, and often required, to do their own thing with Concept Exercises.

These tracks have high-school-sweetheart live: crystal, elixir, gleam, csharp. I suggest you decide which one you prefer as a starting point, then steal it from their GH repo and adapt for Julia. Sorry, it's quite a manual process.

@depial
Copy link
Contributor

depial commented Feb 26, 2025

Gotcha!

Did you want to translate the introduction.md, for here (which I would copy), or should I have a go at it in the exercise (which you could copy for here)?

@colinleach
Copy link
Contributor Author

colinleach commented Feb 26, 2025

After trying a few approaches and having various discussions with Bethany, a good approach seems to be:

  1. Copy the concept's about.md to the exercise's introduction.md.
  2. Edit it right down, removing anything not directly relevant to solving the exercise.
  3. Copy the shortened introduction to the Concept.

That way we achieve the twin goal of having a minimal introduction, and ensuring it is a subset of the about.md.

Of course, if you find the exercise forces you to add bits to the Introduction, those would need to be copied to the About so that it remains a strict superset.

I'm not sure I explained that very clearly. Does it make some sense?

@BethanyG - am I correctly passing on your advice here?

@depial depial mentioned this pull request Feb 26, 2025
@depial
Copy link
Contributor

depial commented Feb 26, 2025

I've opened a PR(#830) with most of the necessary files for the concept exercise. However, I've left the introduction.md blank, to be filled in with about.md info. Also, I went ahead and translated the Crystal instructions.md and hints.md since they were quite simply done, but they will need to be changed to focus on function composition (rather than string methods).

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

Successfully merging this pull request may close these issues.

2 participants