Friday 3 June 2016

The Poetry of Code

Write a poem about a sunrise. Perhaps you'll leap straight in, and start writing freeform verse. Perhaps you'll choose a style; a haiku, or a limerick? Something using iambic pentameter or rhyming couplets? Your choice of approach places tangible constraints on how you express yourself.

What aspect of the sunrise will you write about? The sun itself, or the environment it rises over? Maybe there's a seascape to be evoked, or mountains. Maybe a city?

Now ask a friend to write a poem about a sunrise. I promise you, it won't be the same. To the outside observer watching you work, both of you will look alike --- scratching words on a page with a pen --- but the results are wildly different.

You both work alone. Your art is your own. It's wonderful.

Write a program to sort some numbers. Perhaps you'll leap straight in, and start writing freeform code. Perhaps you'll choose a style; Object Orientation perhaps, or a functional approach? Something using Java or Python? Your choice of approach places tangible constraints on how you express yourself.

What algorithm will you choose to write? A bubble sort, or a quick sort? Maybe a shell sort to be implemented, or a sleep sort? Maybe there's some other approach?

Now ask a friend to write a program to sort some numbers. I promise you, it won't be the same. To the outside observer watching you work, both you will look alike --- typing words on a keyboard --- but the results are wildly different.

You seldom work alone. Your art is a collaborative exercise. It's wonderful.