learning dynamic stuff