About page of exercism.io says:
Exercism is an online platform designed to help you improve your coding skills through practice and mentorship.
But what exercism really is and how it's different from dozens of other coding practicing platforms?
For me, as a learner, it's the only platform I've seen so far where you can learn idiomatic use of any language. If you're a python developer and have seen code like this, you will get the idea:
my_list = ['dog', 'cat', 'hamster'] for i in range(len(my_list)): animal = my_list[i] print(animal)
And if you're not familiar with python, above code is one of the examples of C-style programming in python, more idiomatic version:
my_list = ['dog', 'cat', 'hamster'] for animal in my_list: print(animal)
It's worthwhile to use language as it supposed to be used. And Exercism achieves that by building a community of mentors who provide you feedback on how readable, performant, and idiomatic your solution. It is not about making code passing the tests.
So basically Exercism is like Archlinux among coding learning platforms.
And I didn't even mention that it's not web-based, they have CLI, so you can use your favorite IDE or vim.
It's all about learning, but why mentoring there?
Why do you need to read other's people code? Because it's one of the fastest ways to learn programming in general. Other people are different, and you can absorb their point of view, their mistakes, their ideas. It might be overwhelming to jump into Linux kernel sources, so better to start small.
As a mentor on Exercism, you can compare multiple solutions of the same problem, see what mistakes people do, what style they use, how it fits particular language.
That's how you become fluent.
So programmers not only read and write code, but they also communicate with other people. That's actually one of the essential parts of the job, in my opinion.
Good ideas can die because they weren't communicated properly. Bugs get introduced, people call tech industry toxic, a lot of things happen because developers don't master skills in human language.
It's an excellent opportunity to grow, where you can learn and practice, how to express your thoughts to other developers. You will get feedback from them, there's even slack for mentors. This is how you can stand out from the crowd. I'm not saying you'll become 10X developer, but you'll become better
If you like to speak about programming in a bar or around a coffee machine, but not everyone shares your passion, that's not a problem.
Most of the solution discussions on Exercism are about style, convention, micro-optimization, and readability. You don't have deadlines, business priorities, etc. Just enjoy pure programming.
You take responsibility for how many good developers there will be in the world.
It's simple like that:
More good developers => better software => less bugs and stress.
Who knows, maybe one of the students you help will create another open-source framework or project, that will generate thousands of workplaces.
How often someone helped you on StackOverflow, Github or this random forum? You can do this too, and it won't be that hard as diving into a big open-source project or compete on StackOverflow.
And Exercism is the right place to start giving back to the community.
Someone might say
But that's not true, and it's not even about other mentors. It's about you caring about your craft.
Signup to become a mentor and make it happen! Enjoy and spread the word.
P.s. Languages selection on the platform is impressive.