I was wondering would it be worth using a form of standard such as Hungarian Notation/Systems Hungarian?
Why would I bother if everything I'm doing now is working fine?
I was wondering would it be worth using a form of standard such as Hungarian Notation/Systems Hungarian?
Why would I bother if everything I'm doing now is working fine?
I have seen the atrocities people commit in the name of hungarian notation. Please don't go there. Today's IDE/Intellisense etc. are more than capable of telling you about the variable type etc.
And then there is the whole issue of untyped languages.
No, it is not worth using any form of Hungarian Notation.
Eric Evans in Domain Driven Design (also available as a mini-book on InfoQ) does an excellent job highlighting the essence of a ubiquitious language:
To create a supple, knowledge-rich design calls for a versatile, shared team language ...
Use the model as the backbone of a language. Commit the team to exercising that language relentlessly in all communication within the team and in the code. Use the same language in diagrams, writing, and especially speech.
The terminology of the day-to-day discussions with the domain experts should not be disconnected from the terminology embedded in the code.
And considering that the code is the most important product of a software project, it is essential that there be little room for anything that doesn't convey the the domain experts concepts and ideas.
In that world, a world where our code reflects the domain, Hungarian notation has absolutely no reason for being.
Well if it is what you prefer, and it makes your code easier to read and understand, then it is a great idea to do. There is of course your typical holy war of not using Systems Hungarian, but if it makes you a more productive code, I say f*ck 'em.
I do however say consider using Apps Hungarian as it is a little more useful in identifying the purpose of a variable (which is what the intention of Hungarian notation was).
The answer here really depends on the language and way you code. For instance, a PHP programmer who makes use of the dynamic typing would not want to use Systems for the fact that the variable wouldn't be correctly pinned down by a type. In this situation I again make my claim towards Apps Hungarian.
I will answer something opposite of the question. Hungarian notation actually works GREAT with autocomplete.
Say you have a variable, and the name is intHeightOfMonster.
Say you forget the name of the variable
It could be heightOfMonster or MonsterHeight or MeasurementMonsterHeight
You want to be able to type a letter and get the autocomplete suggest to you some variable names.
Knowing that the heightOfMonster is an int, you just type i and voila.
Save time.