subject knowledge development