Default argument values are great! Conventionally, you'd put the arguments that do have default values last, so that calls that make use of fewer arguments are clearer to parse, but it seems that (your current version of) Ruby can make sense of it. That might not always be the case.