-->

Friday, November 7, 2014

Thought Experiments for the Layman I: Procedural Programming

When explaining object oriented programming to a layman, there's a thought experiment that I generally put them through. Say I'm talking to a hypothetical non-coder and she wonders what OOP is. The conversation would go something like this :

"What is object oriented programming?"

"Well Jessica, I'm glad you asked. Object oriented programming its a highly convenient mindset of coding techniques that enables you to avoid the dreaded inconvenience of procedural programming."

"Huh? Procedural programming?"

"You know how in comedies, they might introduce a zany engineering character with his ability to build a Rube Goldberg Machine. An over-engineered, hyper complicated, step by step chain-reaction contraptions to do a simple task?"


"Oh yeah."

"That's procedural programming in a nutshell. As  you can imagine, all kinds of things can go wrong. And debugging such a system would be a nightmare!"

"I see. So what's object oriented programming?"

"Alright, to get the concept of object oriented programming, lets do a little thought experiment. Describe yourself."

::continued::

1 comment: