DEV Community

Joe Steinbring
Joe Steinbring

Posted on • Originally published at blog.jws.app on

What are koans and how can they help level up your dev game?

A koan is a story, dialogue, question, or statement which is used in Zen practice to provoke the “great doubt” and to practice or test a student’s progress in Zen. In the Zen school of Rinzai, the use of koans (often a paradoxical statement) is used to initiate the internal socratic method in the students, to break down prior deeply held notions that hold them back from Enlightenment. An example of a koan is the question “What do you call the world?”

So, what does this have to do with application development? There are technology-specific koans out there like Ruby Koans, ColdFusion Koans, Python Koans, and a number of different versions of JavaScript Koans. The goals of each project is to teach the particular technology through testing. A test runner like Jasmine, QUnit, or MXUnit is usually used. With koans, you need to run the tests and see them fail, make the tests pass, and then take a moment to reflect upon the test to see what it is teaching you. In doing this, the hope is that you will become a better coder.

The post What are koans and how can they help level up your dev game? appeared first on Blog.jws.

Discussion (0)