Bite-sized graded difficulty exercises for many programming languages, with unit tests and a commandline client to manage downloading and submitting. Similar to the various koan packages often available, but more polished and (the piรจce de rรฉsistance) with human mentoring. That's the best I can do (as someone more naturally wordy than elevator pitchy), but it can be a good way to get started on coding 'in the small' with a new language.
The human mentoring is the unique aspect of Exercism. It is a great way to learn the basics of Clojure (or any language). It is for beginners and that's why it is important to give timely feedback to keep them interested. More Clojurists are good for the world, ๐
Now that other people have already explained what it is, this is why I like mentoring there: I get to see things like lazy infinite seqs, metadata and epochal-time-model click in people's heads time and again. And that gives me tremendous satisfaction ๐
A reason, among several, to why you should care, @seancorfield. The main feature of Exercism is this human mentoring. It is a great opportunity to show how the Clojure community, generally, works. I would say it is beyond teaching the programming skills, it also can โrub offโ some of the people skills, and attract the people who enjoy a friendly and polite environment. The situation is special, as a student I was often being challenged to question my first (and second, and ...) attempts. Attempts that I sometimes felt pretty pleased with. But the challenges came in this nice Clojurianesque packaging โ an obvious wish to see me succeed. And thus, rather than risk putting me off, it encouraged me. Quite lovely. As a newcomer I could have put that on the account on me just being lucky with which mentors picked up my submissions, but I happened to know that it was a rather characteristic behaviour from people representing this community. (Well, I was also lucky, but anyway.)
Exercism has given me my much-needed first experience working as part of a large distributed team. After going through the Clojure track a couple of years ago I signed up as a mentor, and now I'm helping maintain several tracks as well as designing the new platform set to launch this June. It's a real joy to get to work with so many experts in so many languages on a real production codebase.
That's awesome, @porkostomus! The platform really shines in its professional feel and attention to details.
Just did the "Hello, World!" exercise ๐
Good to hear from your perspective on the Clojure community @pez . Seems that way to me so far, though my experience here is limited. I wonder why it is this way if so - has this been deliberately cultivated? As it's a not-quite-mainstream language do people feel they need to be friendly to attract developers? I do notice that Clojure developers seem to be particularly enthusiastic about the language. Or perhaps their motivation leans heavily towards the intrinsic, which induces openness towards others similarly interested.
Did my second, awaiting on mentor feedback
Lolz
> jest --no-cache ./*
RUNS ./hello-world.spec.js
[1] 348973 segmentation fault (core dumped) npm test
I thought I would try out brushing up my javascript mad skillz (whilst I await clojure feedback)
but, yarn test
works.
It is rather interesting, @cb.lists. To my experience this community reflects society at large. Most people I have ever met and interacted with are nice, polite and helpful. In some online communities there seem to be some other mix, for sure, so maybe the question rather is, what happened there? Also, I think it might be down to cultivation, but maybe not so deliberate. The community grows steadily, but slowly, so the first people in the community have had a big impact, I think. (It is what I mean by โrubbing offโ in my last comment.) And I am thinking the first settlers were probably very nice chumps. ๐
A very tangential question (and maybe should thread on this, so that the other discussion can continue) but does anyone know why Clojure community created its own forum instead of relying on something like StackOverflow? The Clojurians Slack is a little "hidden". Not everyone has a Slack account but almost everyone is present on SO. I joined Clojurians Slack after almost a year of getting introduced to Clojure. I wonder how many newcomers see the 4/5 year old SO questions and think Clojure is dead.
I don't think it was deliberate. And it probably happens with a lot of things these days. SO does not play the same obvious role for things that establish now.
Hmm you have a sunnier image of society at large than I do @pez - I guess our experiences differ ๐ In any case, it seems friendly around here.
We also maybe should advertise the #community-development channel here. ๐
If you are trying http://Exercism.io and do not need a mentor to help you, I suggest doing the practice track rather than the mentored track and cancel any mentor review requests you may have outstanding. Using the mentor track will block you from doing more challenges unless you cancel the mentor review. You can do all the challenges straight away if on the practice track. Also there is only a finite number of http://Exercism.io Clojure mentors to go around (its seems there are unofficial mentors in this channel though)
(I'm doing it in "practice mode" for now)
At the same time, try asking for mentoring now and then. To get a feel for what it is like. Helps in empathizing with the users.
Yeah, I will do that on a few of the non-easy ones I expect (and maybe even some of the easy ones at some point). I suspect this is going to be a bit like 4clojure in that I'll do a bunch of exercises initially but then just not find time to do any more.
I am super curious about how you will solve the tasks!
Thanks to this channel, now there is a mentor overload. For the last few days the mentoring queue is hovering around 0.
I did a video walk through of a few of the challenges https://www.youtube.com/playlist?list=PLpr9V-R8ZxiClng6zv2wqIEd_tOQB7gKx - all the exercises that have code here https://github.com/practicalli/exercism-clojure-guides I avoided the ones that tested your mathematics skills...
A bit OT. I did the beer-song exercise 15 years ago: http://www.99-bottles-of-beer.net/language-robocode-494.html ๐
And here's my Clojure one, (unmentored ๐ ) https://exercism.io/my/solutions/458cb4d937a64f6b967e7fb861f378b8
I know you didn't ask but I added some comments, ๐
I sort of asked, actually. ๐ I have been curious about cl-format
a while now, and I'd say it is pretty sweet.