(1) In general, a basic program in computer science education shall:
(a) meet the following conditions:
(i) provide a well-articulated integrated curriculum that challenges students to learn increasingly more sophisticated computer science concepts across all grade levels and content areas wherever appropriate; and
(ii) foster a collaborative environment that embraces creativity, communication, and problem solving;
(b) include the following practices:
(i) ensure students become informed citizens who can critically engage in public discussion on computer science related topics;
(ii) ensure students develop as learners, users, and creators of computer science knowledge and artifacts;
(iii) ensure students understand the role and impact of computing in the world around them, leveraging computer technology to create solutions; and
(iv) increase career and college readiness.