in Code

Drawing Code

Cat photo: Buenosia Carol via Pexels

Does everyone doodle when they code? Maybe it’s because Ruby is object oriented, or because I’m a visual learner, but when I started to study Ruby and encountered something hard to understand, my first reaction was to draw.

I “drew” the problem, like it was a landscape made of logic. Like I could just see a solution if I put it on paper. When my brain’s rainbow wheel spun for longer than 10 minutes, scribbling shapes and words helped.

It was more rubber duck debugging than white board coding. I patterned quick descriptions of functions, connected with arrows and corralled in ovals. I jotted down more questions.

I’d be cool to say I was simplifying concepts until I abstracted words away in lieu of shapes. Like my inky mess was Ruby Hitsuzendō, coding Zen calligraphy. But really I think it helped me see the problem differently, and got me “out of my head” enough to stop freaking out completely.

Also, drawing word definitions, abstract thoughts and ideas can increase retention, according to a January 2019 article in the New York Times. It may be due to an “additional form of processing,” said a co-author of the study, Dr. Jeffrey Wammes, a postdoctoral fellow in the department of psychology at Yale.

Also, I’d have five or six pages open at once, my Learn.co lesson, previous lessons, ruby-doc.org, Stack Exchange, whatever programming blogs offered vital insights, so actual paper was a “non-screen” where I could think through the code. I never lost it among the screens.

Here’s a link, though, to the first few lessons of OO Ruby on Learn.co, which I simplified in my spiral notebook and then recopied using Illustator so anyone else could understand.