I don't know how it happened. I don't know who took that first step. But someone did. Someone went and used Hungarian Notation to names columns in databases. And then a bunch of people followed. Now I won't go into how completely ridiculous I think Hungarian Notation is. I'll spare you an eventual admittance that it useful in some instances (when used properly). In fact, I won't even bring up my belief that those who abuse Hungarian notation (i.e. 95% of the people who use it) should forfeit their keyboards, apologize to their employer, and try a new profession (but not Civil Engineering).

No, none of that. Instead, I'll share with you this email from Tim Heuer, recipient of GMail Invite 2 of 6:

...as if you didn't know that the field "IssuedDate" was a date, it has been declared as a datetime type.  But since that might not be enough for some ... the developer added "datIssuedDate" -- and if that isn't enough...we'll add on an unknown "f" to it...making the complete notation "fdatIssuedDate" for all those that might be confused.

Oh but that's not all...you see we're not confident enough in the abundance of date parsing abilities of SQL Server, Visual Basic, C#, VBScript, etc. so we've broken the IssuedDate out into three separate fields: fintYearIssued, fintMonthIssued, fintDayIssued...to help those that don't want to use DateTime parsing functions built into just about every programming language on the face of the earth.

And because we may export this stuff at some time, in the data model we're adding a "FILLER" field.  Notice that the FILLER is a variable character length...so our ideal "filler" may be anywhere from 1-3 characters...keeping in line with the consistent inconsistencies.

And I think I figured out what "f" stands for. You see, I was staring at fdatStatusEffectiveDate and was wondering What the heck is the date-typed date fdatStatusEffectiveDate? Is it a row? A function? A const---- and then it dawned on me. It's a field. Thanks "f" prefix. And as an added bonus to Hungarian fans, I'll write continue the rest of the post using Hungarian Notation.

vSubmit adjYour adjAkrWTF nStories cjAnd vWin nOne prOf adjThe adjFour adjRemaining adjGMail nInvites!

[Advertisement] BuildMaster allows you to create a self-service release management platform that allows different teams to manage their applications. Explore how!