You don't need to nest the d3 functions, because the Scrubber expects an array of values, and d3.range(min, max) already returns the the array
viewof year = Scrubber(d3.range(1950, 2009), {loop: false, delay: 1000 / 24})
Looks great! Good job! You could also try to add interactive tooltips and or labels to show detailed information on each bubble (refer to the tips and pointers section in this notebook)