Thursday, October 23, 2008

cess Dia

Sometimes (usually about 2 o'clock in the morning when I am keyed up and can't sleep) I have amazing epiphanies that (if properly shared) may potentially alter the future course of All Human Endeavors from this point in time until The End Of All TIme... Here's my latest:
If you take the phrase "Process Diagram" and remove from it "cess Dia" you end up with the word "Program".
What an amazing correlation between Process Diagrams and Programs!

Okay, so maybe that's not such an amazing observation, but I'm going to pursue it a bit further because it fits very nicely with a pet theory of mine...
A Flowchart is worth a thousand Words.
Think back... in my case think way back...  When you were first introduced to Programming didn't somebody use a Flow Chart to illustrate what a Program is?  For some of you, especially those of you who are relatively young, perhaps not... but for old-timers I'll bet there's a scribbled Flow Chart somewhere back there in your past.

Why did we abandon Flow Charts and come to rely only on Words?

If you've used any of the Graphically Oriented Programming Tools out there (like Lego Mindstorm's Robolab) then I'm sure that you know using Icons to program can become a bit tedious.  It's just easier to use words because you can type really fast.  I'll give you that... but it's also a lot easier to make mistakes with words, and it's often really hard to discern the structure of your program from that mass of words.

Apparently I'm not the only one who thinks so... I you Google "Code to Flowchart" you'll find an amazing number of tools that will parse your Code and produce (you guessed it) Flow Charts.

So here's the point of all this rambling...  I think that it's pretty useful to create a flowchart from code, but I think it's even more useful to create code from a flowchart.

From this point forward I'm going to transition from the generic "Flowchart" to the more specialized "Process Diagram"...

Process Diagrams are a great way to visualize the structure of (a certain class of) programs, and they're a much more effective programming tool than words.  A few symbols replace thousands of words, and those few symbols express the intent of the program far better than words ever could.

No comments:

Post a Comment