Originally launched in 2013, Exercism was built by Katrina Owen in her spare time and quickly went viral, with thousands of people signing up each month. The product-market fit seemed spot on, with 200,000 members coming on board purely through word-of-mouth recommendations.
A few thousand dedicated members had stuck around, but with little product expertise in the team and a user interface that was minimal and hard for all but the most dedicated developers, most people stalled after a few weeks of using it and Katrina struggled with retention.
In 2017, Katrina decided to partner up with her friend, Jeremy Walker, and his team at Thalamus, to join forces and reconceive Exercism from the ground up. Led by Thalamus’ Nicole Chalmers, the team spent many months rethinking and rebuilding Exercism, starting from properly defining its values, digging into Learning Theory, surveying the programming community and then progressing through to the beautiful new website that’s there today. In July, the site was finally launched, and metrics are through the roof, with retention of new website visitors rising from 1.6% to 16%.
So what is Exercism?
Each language track is laid out with a core series of exercises, with each one teaching different language-specific programming concepts. Users solve the exercise and submit their solution to the site, where one of site’s mentors will provide feedback on how to make the code more idiomatic. Learners can master the differences between imperative and declarative styles, functional vs OOP and learn how languages like Prolog and Haskell treat pattern matching in function definitions.
Each completed core exercise unlocks a series of side exercises that that give users the opportunity to practice the skills they’ve learnt. Similar to the core exercises, solutions are given mentoring and users can also browse the collection of other people’s solutions to learn interesting ways to solve things differently.
Users can practice coding on Exercism in disguise under an anonymous alias or, for those who want to showcase their work, personal profiles are available and provide a place for users to showcase their language skills during job interviews – finding novel and interesting solutions to problems is a great way to prove that you know more than just the awkward white-board exercise!
The whole project is open-source. The language tracks, tooling and website have been created by 1,700 volunteers who range from senior well-known developers to people putting in their first Pull Request. Exercism has a strong focus on empathy and skill-building, and it’s therefore a great place to get involved in contributing to an open-source product for the first time. The site is also actively recruiting more mentors to help bolster the 700 that give an hour a week each at the moment.
Having seen the project go from strength to strength, Jeremy Walker is incredibly pleased and proud to be part of it: “It continuously blows me away that thousands of people contribute their free time to help others, but I really believe that there are few better ways to get better at your craft than to teach others. Exercism is an exceptionally exciting project to be part of.”
Getting involved in Exercism is a great way to network in the software development community and can be a solid way to build a reputation for yourself. There are already 12 mentors based in Birmingham, so there’s probably someone you know already there!
Whether it’s to contribute or just using the site to practice, we highly recommend checking Exercism out! Congratulations to the Thalamus team, Katrina and of course to all the invaluable volunteers!