The OP omits some of the points I consider important - problem-solving attitude, low level programming, learning unix. Also I think that starting with both Python and Ruby is a bit strange idea - they are really similar (in almost every way I can think of) and such course of learning may cause some confusion (e.g. which pieces of syntax belong to which language?).