Earlier quoted context omitted.
Having had to work on an application supposedly supporting cron expressions: the numbers are just the basic parts of the language. When someone inputs something ridiculous like "5,3/4 4-8,11 1 4,5,6,9-11 */2" you get to enjoy the fun of reverse engineering what they meant (it's never what they actually wrote). And that's before you get to all the extensions supported in some cron environments (but not all). I find sy…
Per other comments though, it looks like systemd's syntax when you want to specify something that's not just that one number is at least as complex. Is your example (which I agree, looks cryptic) any less cryptic in systemd? I asked jippity, and it said this: [Timer] OnCalendar=*-04,05,06,09,10,11-01 04..08,11:03/4,05:00 OnCalendar=Sun,Tue,Thu,Sat *-04,05,06,09,10,11-* 04..08,11:03/4,05:00 To which I have to go: "wha…
Nobody's prevented from using cron instead of systemd timers. The significant differences in typical relatively simple cases are ordering:
cron: M H d m Y DOW
systemd: DOW Y-m-d H:M:S [each part optional, with *, *, and 00:00:00 defaults]
And then, because - is taken, ranges use .. in systemd. Aside from that, it's mostly the same for typical cases of simple periodic timers. Even x/n and x-y/n for steps work similarly. Syntax for complex cases start to diverge, for jitter or special numerically-irregular DOW or DOM or multiple non-periodic times.
In your example, adding more spaces between the date and time parts would make it more visually digestible. There's also the .. range operator which jippity strangely didn't use for the month field even though it did for the hours field.