better variable names and more pythonic classes