Note: you can also use symbols as markers, but I prefer constants. This preference is based on the fact that if I mistype CreditCardTypes::Vissa it will fail fast; however, if I mistype :credit_card_type_vissa, I will get a possibly hard to find bug.

Constant values are global values that should never change during the life of your application.

module MathValues PI = 3.14end

Constant values can be used throughout applications to ensure that the same value is consistently used.

circumference = circle.diameter * MathValues::PI

Based on these usages, I'm a bit concerned about some behavior I recently found.