Artistic, expressive and poetic may not be words that come to mind when you think of coding, but much like poets, programmers manipulate linguistic structures to explore creative possibilities in an ever growing virtual landscape. Coding is much more than the mere act of typing code. It is the raw materials with which coders search for expressivity and clarity, and find solutions in beautiful, functional designs.
This exhibit is an opportunity to share, their often invisible, creative process and explore the connection between the programs we have come to love and the codes we take for granted. It visualizes the inputs that are so often hidden from the day-to-day user, and reveals the marriage of expression and functionality.
The goal is to create an appreciation for the language of code, the imagination and artistry of the people behind them, as well as its importance in our lives. Recognizing that code is a bridge that brings together both the creative and functional process that we all encounter in our daily lives helps us realize that the way we communicate goes well beyond physical manifestations.
"Hello World!"; The <Art/> of <Code/>
The first thing every computer programmer learns is how to show "Hello World!" on the computer screen. The title of this exhibition reflects these details: the title starts with double quotes; this establishes the following text as a string to be displayed on the screen and it is not something that the computer is supposed to do. Following the quotes is the text: in this case, "Hello World!". The second set of double quotes ends the string and tells the computer only to display what is between the quotes. The semi-colon at the end of the phrase establishes this as a command to be carried out.
Most of us did not learn how to program a computer. Consequently, we tend to see computer code as something intimidating and frightening. When we look at the code we see a bunch of characters that have no rhyme or reason to us. Nevertheless, we are frequent consumers of code, to the extent that we take for granted the code that powers our apps, Web sites, computers, and phones.
In spite of the initial confusion you might experience when seeing the code that instructs our apps, websites, computers and phones, did you know that there is an aesthetic to code? A well written code is both beautiful and creative in its own right. Computer programmers have developed several different ways to make their code both elegant and functional.
In coding, there is what is called tab order: this is the horizontal spacing indicating the start and finish of a particular set of programming code. This tells the programmer where the code starts and, by drawing an imaginary vertical line, where the code ends. The programmer then knows that they are working within that set of tabs on a particular function. If there are many dozens of lines of code, then this tab order is even more important to show beginnings and endings of a particular function. As you may realize, much of computer programming is to tell the computer where to start and where to finish.
When you look at the code in the exhibit look for the tab order. It will look like this:
code (function) instructions conditions conditions instructions end of code
Another part of programming aesthetics is the comments. Comments refer to text that explains what the code is supposed to do. Good comments make it easier for others to understand what the programmer intended with this code. Programmers tend to dislike adding comments since it tends to slow down the authoring process. However, good programmers add detailed comments to make life easier for themselves and others who may come later to work on the code.
Comments often start with a special character that tells the computer not to execute the following code:
#Comments can go here code (function) #Or here instructions #Or here conditions conditions instructions end of code
In this exhibition you will see code that powers websites, games, and applications. Some of the code has been authored by experienced programmers using sophisticated programs. Some of the code has been written by those new to programming.
We hope that this exhibition will reveal the inner workings of code so that it becomes less intimidating, and will perhaps inspire you and make you think more about the applications, games, and websites you use in your daily life.
Bernie Monette, Program Coordinator, Humber College Web Development Program