|
You think that everything is going your way today, but you're wrong. Happily listening to your music- noise-cancelling headphones blotting out the screeching whine of nearby co-workers- you are unaware of the impending doom. You're kicking ass and taking names, the code is compiling, progress is being made, you're learning new stuff - life is grand.
Then it starts. One tiny little extra set of square brackets turns a seemingly innocent C# statement:
_connector.Add(12);
into a tiny bomb of DOOM:
[_connector.Add:12];
Don't pretend like you don't see it. It's there. Look closely. That's right, it's language bleed-over. The most insidious thing that can happen to a programmer - worse than regular bugs. Want to know why? Because, as a programmer, your ultra-logical mind has been trained by years of programming to automatically recognize valid syntax... what you aren't trained to dois recognize valid syntax in the wrong damn platform. So it starts slowly. You've gone on typing - you're confident and today kicks ass, so you don't do your periodic random 30-second "let's build and see if we're still clean" check... no no, Mr. HotShotProgrammer - you throw caution to the wind and proceed to write 5,000 more lines of unbelievably fantastic C# code! The stuff of legends! Bards will be singing songs of praise of your wondrous code hundreds of years from now... yet it won't compile. After 20 minutes you have no idea why it STILL won't compile. Finally, you resort to scrolling through the list of 900 syntax errors in your project and eventually you discover the culprit and change the syntax back.
Then, not more than an hour later, you notice that Visual Studio has rejected the following line of C# code:
OnAuthenticationPassed(self, null);
You stare at it, trying to figure out why self is undefined. What the hell? Why would self be undefined? Every object in C# has a reference to the current instance of itself... Why the hell is VS not compiling... oh wait.... it should be this not self.
And thus begins the downward spiral of language bleedover from which no multi-platform programmer can ever hope to escape...
lol..I know this kind of errors very well! :-)
This has been happening with me too, except that I'm injected ActionScript
2.0 syntax into C# <shudder />.
Well, with ActionScript being injected into C#, then you can at least call
it something cool like "Action sharp!" or something like that ;)