Scheduling problems are encountered in many real-world situations and scenarios. In practice, the problem is often dynamic, which means that not all information is available at the outset or that information may change over time, so the schedule needs to be constructed simultaneously with the execution of the system. To solve scheduling problems under dynamic conditions, various problem-specific heuristics, called dispatching rules, have been designed. However, manually designing such heuristics is a difficult and lengthy process. Therefore, a great deal of research is focused on automatically designing new scheduling heuristics. This has led to the application of hyperheuristics, methods that can automatically develop new heuristics for various problems, to this problem. Genetic programming is usually the method of choice for generating new dispatching rules, since in numerous occasions it generated good dispatching rules for various difficult scheduling environments. This talk will cover recent developments in the automatic generation of dispatching rules, as well as outline several new research directions in this field.