Issue 4, August 7, 2007

THE artistic programming NEWSLETTER

paint your dreams!

The fourth issue of Artistic Programming newsletter is here. And it is here to stay. Take it or leave it.

A Quick Word

Try remembering the following sequence of letters:

"axfd dfdofjd nere"
 

Now try remembering the following sequence of letters:

"i can remember it"

What is the difference?


Surprisingly, a lot of programmers treat their code as the first case.

For them, a program is a black box, a cryptic piece of words arranged in an even "crypticer" syntax. Something that behaves weirdly even if you change a portion of it. Something you just need to write down and get rid of as soon as possible.

Come on. Stop treating the code as something mysterious.

There is NOTHING in a program that cannot be understood.

Wherever you are now, open up the last piece of code and shake hands with it.

Befriend it.

Dive deep into it.

Understand why a certain piece of code was written the way it was.

Understand what each piece of code does.

Understand how different functions interact.

If at any point of time, you feel your application is behaving weirdly and you are not able to understand it, try remembering the following "sequence of letters":

"ererewouonm qffoajf fdfddf"

And you will know why your program is behaving weird.

Do not be in a rush to find solutions to the problems at hand.

If you are focused too deep on fixing the bugs, you will find yourself struggling with it. Approach it with a sense of understanding, try to dive deep into it, try to know more and more about the problem symptoms, and the solution will pop up.

Now, try remembering the following "sequence of letters":

"I AM A GREAT PROGRAMMER".

And you will know why this piece has been written for you.

DID YOU KNOW?

Software characterized by frequent updates, fixes, and patches is called 'dribbleware'.
The term is somewhat derogatory, indicating software that was released without sufficient testing or before all features could be added.
With the intense market pressure to release software products as soon as possible, and with the increased ease of updating software via Internet downloads, 'dribbleware' is becoming the norm rather than the exception.

"As soon as we started programming, we found to our surprise that it wasn't as easy to get programs right as we had thought. Debugging had to be discovered. I can remember the exact instant when I realized that a large part of my life from then on was going to be spent in finding mistakes in my own programs."

Maurice Wilkes Discovers Debugging, 1949

 

F-O-O-D For Thot!

Real Programmers don't believe in schedules. Planners make up schedules. Managers "firm up" schedules. Frightened coders strive to meet schedules. Real Programmers ignore schedules.

So, here's some food for thought for you. Chew on it.