You've probably encountered more than your fair share of inadequately descriptive variable and function names. Debugging a function with variables named a, a1, a2, a0, aO, al, a1l, al1, aIl, a1I, and al1I is something I wouldn't wish on my worst enemy.

On the opposite end, we have this code from an anonymous submitter:

class DrugStrengthFormCountryManufacturerPharmacyCopayProductPriceFactory
{

    public DrugStrengthFormCountryManufacturerPharmacyCopayProductPrice
        getSalesOrderProductSupplierCopayDrugStrengthFormCountryManufacturer-
        PharmacyCopayProductPrice (SecurityContext securityContext,
            SalesOrderProductSupplier salesOrderProductSupplier,
            Organization copay)
    {

        /* some code here */

    }

}

Those naming conventions are consistent throughout the code, too. Imagine hundreds of lines of code declaring instances of RidiculouslyLongClassNameThatsPracticallyImpossibleToRead, calling functions like GetRidiculouslyLongClassNameThatsPracticallyImpossibleToReadById.

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