This isn't the first time that we've been introduced to abstracting the ever-changing symbols we use (such as the @ or < symbols) into easier to change, constant variables. But, this snippet of code from Sergio Pereira really got me thinking.

[simplified it to protect the innocent]

What happens, three centuries from now, when they decide that “NV” is how our society will symbolically represent a quantity of no determinable value? Sure, our descendants will easily be able to change “0” to “NV” -- but what happens to the fellow who has to maintain the code after that? Now he'll have to use a variable named “valueZero” which will mean as much to him as “valueGroobable” means to us. There just has to be a better way. We need a way to abstract out variable names too ...

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