re: left to my own devises
I used to program in Coral66 which institutionalized something akin to the wonderful #defines in the article. In Coral66 keywords are in primes, e.g. 'IF', 'THEN', 'ELSE', 'BEGIN', 'END' and so on.
This fine except that it meant that you could spaces in variable names but the spaces were ignored by the compiler. These all refer to the same thing -
my variable, myvariable, m y v a r i a b l e, my variable
As you can imagine it became a nightmare trying to find a variable in a big program where developers had used spaces in their own unique way. We tried to ban the use of spaces inside variable names but there were always the maverics that insisted on using them and legacy code and the careless Friday afternoon code post pub lunch.