Monday, July 26, 2004

Making Programming Fun

by Asim Jalis

So now the question arises: How can we apply the Fish insights to programming? What is flair programming? Here are some ideas on this. MEET JEROME Watching Matrix Revolutions last night it occurred to me that programs should have names. Instead of calling a program Source Control Manager, why not call it Jerome? We like interacting with and responding to living things. This phenomenon is called Biophilia. We like scenes with trees more than pictures of bleak lifeless landscapes. Compare a picture from Mars with the picture of a rainforest. Which one elicits a quicker and stronger reaction? Imagine if Apache was called Fred. Part of the reason Linux is so popular is because it sounds more like a person than BSD, or Windows. OTHER WAYS TO MAKE PROGRAMMING FUN But beyond this there must be other ways of making programming fun. The fact is that there are many degrees of freedom in writing a program that we train ourselves to ignore. What are these degrees of freedom? How can we explore them without making programs buggy? We are so afraid of bugs that we give our classes and our methods serious bureaucratic names. Try giving them playful names instead. For example, instead of calling a method XmlDeleteSubNodes(node), why not call it KillTheChildren(node). Another thought: can we make programs humorous? I have seen this in comments sometimes. It's good fun. Let's personalize the data streams and the objects. Talk about them like you would talk about an errant child. Instead of throwing exceptions, let's yell or holler. There might be a market for a playful programming language.