How Does Code Sound? by Felienne Hermans at Lambda World Cadiz
When coding have you ever thought about how your code sounds? It may not be your first priority when coding, however, you can learn a lot from hearing your code spoken and it can also be useful for pair programming. Associate Professor, Felienne Hermans at Lambda World described their experiment of how code sounds and what they learnt from it.
Let's see how your code sounds!
How Does Code Sound? Lambda World 2018 Keynote
We study all sorts of aspects of programming languages, their ease of use, type system, their level of abstractness, but we feel one aspect is overlooked, how a programming language sounds like when read aloud. Is reading aloud hard? Well, yes.
We found that developers cannot pronounce code in a consistent fashion. We had 25 experienced developers read code aloud, and it was a mess, even for simple statements. For example, how to pronounce an assignment statement like x = 5? Is it “x is 5”? Or “set x to 5”? Or “x gets 5”? And what about an equality check? Is it “if x is is 5”? Or “if x is 5”? Or “is x is equal to 5”? What can we learn from reading code aloud? We think programming language designers could learn a lot from hearing their language spoken. For example, if programmers consistently read if x == 5 as “if x is 5”, = or even is might be better keyword. What is the ultimate end game of this idea? We envision programming language designers of the future to prescribe a way that their language sounds, much like languages have style guides. When the sound or ‘phonology’ is defined, it can be practiced, taught and analyzed.
This will be useful while learning to program, but could be a valuable tool people that interact with code in an oral way, such as visually and physically disabled programmers, and developers that are doing (remote) pair programming. What will the talk cover?
In the talk, we will describe our experiment and what we learned from it, so other interested in exploring how languages sound can start well-prepared and informed.