project with game design are provided as tools for engagement (Levy, 2013b; Schanzer et al., 2018).
Contribution
To sum up, the contribution clarifies the components of CT and explicates their contents in more detail. The CT model divides into horizontal layers of abstraction, automation, and analysis, similarly to SW development having the phases of design, implementation, and testing. Abstraction infers conceptual modeling, such as UML diagrams in SW design.
At elementary level, the technique is practicable as a general knowledge building tool of concept/mind mapping, which should be imported in mathematics praxis as well to provide a holistic overview. In the matrix view, the vertical axes are algorithmic and logical thinking, and creativity. Furthermore, the model hypothesizes a preference for the functional paradigm. Paradigms influence the semantics of a programming language and which kinds of abstractions, design patterns, and coding conventions suit best. For example, in imperative languages, counter-based iterations are the basic building blocks, whereas functional languages exploit recursions extensively. Publication VIII points out the differences between paradigms and their implications in mathematics teaching. The CT model, however, is paradigm-agnostic, even if the close conceptual linkage between the functional paradigm and mathematics is acknowledged and implicitly supported by FNC-2014, which integrates CS into mathematics.
Burke (2016) claims that the metaphor connected to computing is influential in positioning CS in a curriculum; he enumerates the metaphors of maker mindset, digital literacy, and grounded mathematics. The referenced literature mainly illustrates two of these orientations: Papert and Wing belong to the maker mindset as CS laymanizers, whereas the grounded mathematics folks of Racket highlight conceptual purity.
5.2 Mathematics and CS concept overlap
This thesis presents a hypothetical learning trajectory for CT, and the necessary CS concepts are specified in accordance. To introduce the concepts, the already-established mathematics syllabus provides a suitable schedule and attachment points. Conceptually, algebra is at the center of gravity, but geometry offers a wild card to motivate and engage students, as demonstrated by Publications V and VI. In engagement, creativity seems to be the key and low-threshold/high-ceiling types of tools, such as Scratch, succeed in fostering it while teaching the basics; see Publication III. Publication VII sketches learning trajectories further to university-level mathematics. The feedback from SW engineers reveals useful and CS-supportive mathematics content. Instead of continuous mathematics, they would benefit from more discrete mathematics, especially stronger skills in algorithms and data structures, and logic. Additionally, such areas as sets, statistics and probability are considered useful (Publications IV and VII).
5.2.1 Algebraic fundamentals in the core
A few publications address the linkage between algebraic and CS fundamentals, in essence, variable and function. Dependent on the selected paradigm, the concepts deviate more or less from their mathematical counterparts, which can be a source of misconceptions.
Publication IV determines the features of the (imperative) variable, such as its identity
as a memory store, global versus local scope, and its type often being a non-numeric,
46 Chapter 5. Results and discussion
complex data structure instead of simple primitives (int, float) as in mathematics. The variety of types concerns also the parameters and return types of functions.
Ultimately, assignment is the main complication. Publication VIII raises the peculiarity of the assignment operation of x “ x ` 1 from the mathematical viewpoint, which reveals the variable’s true nature as a memory store and the pivotal role of assignment in distinguishing between the imperative and functional paradigms: in pure functional, neither assignment nor mutable variable exist, in other words, no side-effects are caused.
Publication VIII illustrates the control flow of imperative code as consecutive state changes, in contrast to the functional paradigm and its value-passing chain, where a function equals a value. In mathematics, a function must return only one output for an input. In computing, a function may return multiple values for one input, which implies side-effects and mutable data, for example, assignment of a global variable. However, pure functional language does not provide an assignment operation.
In addition to variable and function, the most crucial CS concepts include also type, and the control structures of selection and iteration. Assignment has its implications for the control structures as well: the imperative paradigm employs iterations, whereas the functional paradigm utilizes recursions in the absence of incremental counters.
5.2.2 Basics with visual programming
With visual programming, students familiarize themselves with sequencing, grouping commands as bigger blocks, and the control structures of selection and iteration. However, a special emphasis is required to avoid reinforcing the most common misconceptions in Scratch, such as ‘loops are forever’ (Armoni et al., 2015). Currently, testing and debugging are poorly supported in Scratch. To self-assess Scratch projects, Publication III recommends making routine checks by exploiting automatic evaluation tools, such as Dr. Scratch. Passing the evaluation with the level of ‘developing’ or ‘mastery’ could be used as a prerequisite for a certain grade.
On the other hand, the benefits of Scratch are apparent. Scratch fosters creativity and enables self-expression by implementing projects with authentic goals. Most importantly, visual block snapping prevents students from writing syntactic errors. Blocks function like legos, they fend for themselves: they either fit or do not fit together, which reduces unnecessary cognitive load and the need for debugging. In the beginning, error-free programming is good for increasing students’ self-efficacy. However, subroutines, which are called blocks in Scratch, do not function optimally: parameters cannot be conveyed and blocks do not return any value. However, the basis of subroutines is the sequencing and grouping together of associated commands, which, in all its simplicity, constitutes the dawn of algorithmic thinking.
5.2.3 Algorithms and discrete mathematics contents
According to SW professionals’ evaluation of useful mathematics topics, algorithms and data structures are the most profitable. Publications IV and VII recommend setting clearer learning targets for algorithms, such as a binary search, and merge sort, as in the UKNC. In computing, the most common data structures for storing numbers or other data include arrays, lists, and vectors. Often, the structures provide various in-built convenience functions for set operations that may come in handy, e.g., in iterations.
Publication VII highlights discrete mathematics as a necessary support for CS theory
studies. In the case of algorithms, for example, logic and sets were advantageous. For
5.2. Mathematics and CS concept overlap 47
example, naïve set theory provides tools for describing and visualizing set operations, such as unions, intersections and cuts.
5.2.4 Discussion of related work
FNC-2014 is the primary source for sketching the learning trajectory of mathematics.
The learning trajectory embodies the learning theories of cognitive constructivism, which state that knowledge is built on top of already acquired knowledge. The trajectory defines consistent progression from simple to more complex tasks. As Clements and Sarama (2004) put it, the learning trajectory is ‘a conjectured route through a set of instructional
tasks designed to engender those mental processes or actions hypothesized to move children through a developmental progression of levels of thinking’. This study complements the trajectory with a selected subset of CS concepts, i.e., function, variable, type, selection and iteration. Algebra is essential, and its building block, early algebra would facilitate the introduction of principal CS fundamentals already at primary level. However, ‘early
algebra does not mean algebra early’, instead, the learning material should be aligned with the children’s level of cognitive development (Carraher et al., 2008). In learning, early prompting of topics provides ‘met-befores’ that enhance the readiness for easier comprehension in later iterations (Bruner, 2009; McGowen and Tall, 2010). In regard to the very basics of CS, algebra is at the center of gravity; the synergy is mutually exploitable (Schanzer, 2015).
The mathematics syllabus should be reviewed in its entirety to ensure an appropriate theoretical basis for both natural sciences and computer science in accordance with the changes. For example, the evaluation of the most useful mathematics for SW engineers demonstrates the imbalance between continuous and discrete mathematics. The engineers talk of an excess of continuous mathematics (calculus, differential equations) at the expense of discrete mathematics, which they desire to be emphasized more. Algorithms and data structures are the most needed, followed by logic, sets, statistics, and probability.
These concepts are backed up by ACM/IEEE recommendations for an applicable CS syllabus for higher education (ACM&IEEE, 2013). FNC-2014 mostly omits these contents, but UKNC and USCC mathematics and CS provide points of reference.
A proper implementation of mathematics-CS integration would require sufficient resources and time, which currently are inadequate. Preferably, new knowledge would be gained through hands-on experiences and social interactions. Papert promotes learning by making, which complies with the active learner approach of FNC-2014. However, this is time-consuming. Fortunately, the crafts syllabus is capable of complementing it by introducing robotics and automation. There should be an active dialog and synchronization of learning goals between the subjects. Some prominent topics, however, are absent from both the mathematics and crafts syllabi, e.g., safe use of the Internet, the protection of one’s on-line identity, and responsible and respectful on-line behavior, which can be termed as ‘new civics’ and a few of the topics are handled in environmental studies. Having CS as a separate subject enables the UK to introduce a robust theoretical basis for CS, the above-mentioned skills, and in addition, the infrastructure of networks and devices, and a means to improve students’ technological fluency overall.
Contribution
The main contribution is the extraction and justification of the most prominent CS
fundamentals. Moreover, their position and intended schedule are hypothesized in
48 Chapter 5. Results and discussion
accordance with their integration in the learning trajectories of mathematics. In addition,
the explication of the most useful, but under-taught mathematics contents aims to give a
proper theoretical basis to support CS teaching. Even if the territory of CT models is well
occupied, this thesis establishes the niche of transferring CT and the CS fundamentals to
elementary education and mathematics teaching, which is globally unique.
In document
From Legos and Logos to Lambda: A Hypothetical Learning Trajectory for Computational Thinking
(Page 58-61)