Lecture notes for sinatra skeleton + JS event delegation