terça-feira, junho 10, 2008

define: programming

Programming is all about knowing when to boil the orange sponge donkey across the phillipines with an orangutang gorilla crossed with a ham sandwich to the fourth power of twelve across the nile with an awful headache from the previous night when all of alfred's naughty jalapeno peppers frog-marched the nordic elves across the loom-lined geronimo induced swamp donkey over and above the fortran fortified kilomanjaro fence past the meticulously crafted anti disgusting sponge cake scenario where all the hats doth quoteth the milk which is not unlike the super werewolf from the infinite realm of ninja-step. it's hard to define, really.

By some extremely creative (and high) anonymous guy who commented on Coding Horror.

segunda-feira, junho 09, 2008

RTFM

I learned (the hard way), that is always better to read the documentation, help files, readme.txt or install.txt files before trying to do something using trial and error.

It is always quicker and more productive to take your time, read about what you want to, and then do it knowing exactly how.

You think that an easy task can be done without getting help from boring manuals, going straight to the point is so much funnier isn't it?

Believe me, you are losing so much good information doing it like this, and a lot of time too. When you make something work, how can you be sure that you did it using the right method? Isn't there an easier, faster and safer way?

Sadly most people are afraid of manuals and spend precious time using trial and error, without any clues about what they are doing. When programing this is called programming by coincidence.

I also used to program a lot by coincidence, who didn't? But after passing some hard times you realize that reading the documentation is always faster than trial and error.

So you become to add more value to products which has a good and complete documentation, it's very sad when you find some definitions like this in the documentation:

This is Ranged, a member of class TClientDataSet.

When you are working on a project, or in my case developing something which will be used for several projects, it is very important to document things, it will save you and your co-workers a lot of time in the future, I usually forget things which I did myself, how can will I remember about something someone else did if nobody documented it? Well, guess the only option is to program by coincidence.