exercism

The Clojure Track: https://exercism.io/my/tracks/clojure
jaihindhreddy 2020-03-31T12:07:47.005700Z

ooh I didn't know about this channel before.

jaihindhreddy 2020-03-31T12:07:49.005900Z

Nice.

jaihindhreddy 2020-03-31T12:08:20.006400Z

Thanks @ pez for creating it!

❤️ 1
pez 2020-03-31T12:12:42.009600Z

Thanks for all the help mentoring me, @jaihindhreddy!

❤️ 1
jaihindhreddy 2020-03-31T12:14:03.009900Z

My pleasure!

jaihindhreddy 2020-03-31T12:14:48.010300Z

@pez you could consider announcing this channel in #announcements

jaihindhreddy 2020-03-31T12:15:21.010700Z

Might help in recruiting more mentors and maintainers.

pez 2020-03-31T12:20:21.012400Z

Yeah, we should consider that. What should we say the channel is about? When I created it I dodged that question, but if promoting, we can't really 😃

jaihindhreddy 2020-03-31T17:51:36.014100Z

That's a good question. I'm not sure. Maybe talk a little bit about what Exercism is, and how it helped you personally, and how people can help it, through mentoring and maintaining, or for beginners to learn.

hindol 2020-03-31T17:56:27.015200Z

I just casually mention #exercism and run away, without explaining it. I second @pez, we cannot really announce it yet.

1
pez 2020-03-31T18:11:28.020400Z

I can definitely tell how excercism was, and is, helpful and important for me. What is a bit unclear, yet, is what this channel is about. We've so far (the few days it has existed, haha) stayed clear from posting code and discussing solutions. Yet, given how ethereal anything posted on this slack is, maybe we shouldn't avoid that? I feel that it could be like a #beginners channel on steroids used like that.

pez 2020-03-31T18:15:53.023500Z

Then the channel purpose could be something like A place where http://exercism.io mentors and students gather and discuss everything from how the Clojure Track can continue to serve the community, to how to tackle this or that exercise, as well as coordinate the tasks of helping students along the track in a timely manner.

💯 1
pez 2020-03-31T19:17:56.023900Z

Am I laying it on to thick, you think?

jaihindhreddy 2020-03-31T19:22:00.027200Z

I love it. A tad too thick yes 😅

pez 2020-03-31T19:22:49.027600Z

LOL

pez 2020-03-31T19:35:57.029600Z

Announced it, with all the butter still there. It's deeply meant and honest, so there is that.

💯 1
borkdude 2020-03-31T19:38:44.030100Z

there's also some work going on a babashka exercism track 🙂 https://github.com/porkostomus/babashka

🦜 1
pez 2020-03-31T20:02:27.032Z

That's awesome, @borkdude! I think I might enter that track.

➕ 1
hindol 2020-03-31T20:45:04.040500Z

Do you think we should advertise this channel on Exercism itself? Truth be told, I am still not sure what we'll use this channel for. One great use is, and you mentioned it @pez, notifying potential mentors about a new solution. Quicker feedback is always good. I remember waiting over a month for feedback on one solution! I am glad I pushed on, some would not. Discussing about solutions is not a good idea as it can contain spoilers. Unless we find a way to hide spoilers. What do you think?

hindol 2020-04-01T07:29:01.076400Z

Right. I just hope it's not against exercism's policy.

😟 1
hindol 2020-03-31T20:57:42.040600Z

Seems the official recommendation is to use a thread to hide spoilers. https://mobile.twitter.com/slackhq/status/843928196445888512

pez 2020-03-31T21:04:22.042500Z

Yeah, let's use threads. It'll be a bit like on exercism, where you can find them spoilers if you look for them.

💯 1
pez 2020-03-31T21:05:33.043700Z

Yes, I think it would be good to advertise this channel on exercism.

jaihindhreddy 2020-03-31T21:41:30.044500Z

I've been suggesting people to join this slack org, naturally they'd probably find this channel. We can mention it as well.

Cris B 2020-03-31T22:09:01.046700Z

Thanks for sorting this out @pez. I had a selfish moment hoping not too many people on exercism see this as it's kind of nice having a relatively undiluted hotline to a mentor! (speaking of which, @hindol.adhya, I've submitted the RNA Transcription ex).

🤘 1
😃 2
jaihindhreddy 2020-03-31T23:09:58.048Z

Aaand I stole the mentorship from hindol, sorry 😅

😀 1
🤐 1
seancorfield 2020-03-31T23:35:06.048900Z

So... give me the elevator pitch on what http://exercism.io is and why I should care? (I've heard about it a lot but never visited the site).

hindol 2020-04-01T07:30:21.076600Z

Infinine seqs, sure, but how do you even introduce people to metadata and epochal time model on Exercism? Those are pretty beginner level exercises.

jaihindhreddy 2020-04-01T08:31:14.095800Z

@hindol.adhya The "Robot Name" exercise allows me to introduce the epochal time model to curious people. I usually tend to suggest using defn- to make some fns private to the ns. And when people ask why there's no def-, I explain metadata. When it comes to things like variable names, when recommending coll as the same for seqables, I try to back that up with this piece of evidence:

(->> (vals (ns-publics 'clojure.core))
     (map (comp :arglists meta))
     (flatten)
     (remove '#{& nil})
     (frequencies)
     (sort-by val >)
     (take 5))
The top 5 most used argnames in clojure.core pop out. This allows me to explain metadata and vars and a bunch of other things, depending on the level of curiosity and hunger someone shows.

👍 2
hindol 2020-04-01T08:36:48.096200Z

Glad that works for you! I personally fear introducing too many things at once will scare students away. P.S. Regarding defn-, I use (defn ^:private ...) to retain symmetry with def.

💯 1
jaihindhreddy 2020-04-01T08:46:11.096400Z

Absolutely. I only pull this out after discussing at least a few problems with someone. I've only used it about 3-4 times I think. I make sure they're already comfortable with threading macros and the idea of namespaces, and the fact that ns requires and refers-in everything in clojure.core. I try to stay just outside their comfort zone to maximise learning. For example, when I think an iteration was just right, instead of just saying so and moving on, I try to dig around for a couple of good things in the solution, and why they're good. That's when these things come out.

hindol 2020-04-01T08:51:57.096700Z

That's a great strategy indeed.