(image from Danny Lincoln)
There are many ways to grow your software engineering skills. Learning algorithms, building tools, creating websites, crafting games.
Earn Engineering Honor
One method I've been enjoying lately is participating in codewars.com.
You earn honor by solving problems ("Katas") and contributing to the community. Some Katas take 15 minutes to solve, some require researching the internet and paging through your favorite algorithm book.
The gamified platform provides a web-based editor, a test framework and thousands of problems to choose from.
Once you've solved a problem, you unlock all the solutions that others created. You learn a lot from all the various approaches.
Monthly Code Katas
This is even more fun when run as a social event.
I participating in a "Code Katas" session hosted by the SeattleJS Hackers Meetup. This is now a 100% remote event anyone can attend via Zoom -- the March 2020 event was the first one held remotely due to COVID-19.
Here's how it works:
Justin Oliver Lee Galvanize.and Jon Borgonia who lead the meetup, offer an initial "get to know each other" session for socializing. Classroom space and pizza is often provided by
Then the introductory round of Katas start with Justin posting one coding problem in Slack. Everyone works on it for 20 minutes. Justin has solved many of these problems previously, so is happy to help.
As people finish, they post their solutions back to a public Slack channel.
At the end of the round, each person in turn walks through their approaches with the rest of the group. Almost every solution is different -- sometimes in small ways and sometimes in large ways -- but you learn from it.
After the warm-up, it's time for a second round. Two Katas are posted -- choose one or both to work on. Then there's a third round.
In addition to having fun participating, you've earned some honor on Codewars along the way.
In-between events, keep working away on new challenges at home or with others.
I look forward to seeing you on Codewars.