effective coding