Developing computational thinking skills with algorithm-driven spreadsheeting

The paper presents the details of a four-year project to test the effectiveness of teaching spread-sheeting with spreadsheet programming, instead of the traditional, widely accepted surface approach methods. The novel method applied in the project, entitled Sprego (Spreadsheet Lego), is a concept-based problem-solving approach adapted from the didactics of other sciences and computer programming. In the experimental group contextualized, real-world programming problems are presented in a spreadsheet environment. A semi-unplugged data-driven analysis is carried out based on each problem, which is followed by the building of a feasible algorithm, expressed by natural language expressions. The coding is completed in the following step by applying a limited number of spreadsheet (Sprego) functions, multilevel, and array formulas. The final steps of the process are discussion and debugging. On the other hand, classical, tool-centered approaches are applied in the control groups. Our research reveals that the traditional surface approach methods for teaching spreadsheeting do not provide long lasting, reliable knowledge which would provide students and end-users with effective problem-solving strategies, while Sprego does. Beyond this finding, the project proves that Sprego supports schema construction and extended abstraction, which is one of the major hiatus points of traditional surface navigation methods. The project also reveals that developing computational thinking skills should not be downgraded, and the misconceptions of self-taught end-users and user-friendly applications should be reconsidered, especially their application in educational environments. Gaining effective computer problem-solving skills and knowledge-transfer abilities is not magic, but a time-consuming process which requires consciously developed and effective methods, and teachers who accept the incremental nature of the sciences.


I. INTRODUCTION
"Each problem that I solved became a rule which served afterwards to solve other problems." [1] The major concern of the present study is whether a thoroughly developed algorithm-driven spreadsheet programming method could serve the development of students' computational thinking skills in tertiary education. The focus is on (1) the improvement of software engineering students' algorithmic skills, (2) their computer problemsolving abilities through knowledge-transfer activation, and (3) how Sprego programming (Spreadsheet Lego) [2]- [4] could prepare them for further studies in informatics/computer sciences, especially in datamanagement and imperative and/or object-oriented programming languages.
To provide the answer, we offer the results of a four-year study of testing and analyzing postsecondary and first year university students of informatics on their spreadsheet programming abilities. In the project, the effectiveness of the widely accepted, tested, and commercialized surface-approach methods were compared to the algorithm-and schema-driven Sprego programming. The question was whether students in tertiary computer science education needed such simplified programming instructions or knowledge built up in "serious" programming experiences would serve them in other environments, such as spreadsheets.
It is not surprising that the two most frequently asked questions considering computer science/informatics education are « Should we teach students to program? » and « Should all students learn to program? ». Our local surveys repeated in classes and in recently organized conferencesrevealed that most students, teachers, and scholars are convinced that these questions were presented around the time that Wing [5] proposed her computational thinking approach in 2006. However, they have been lying around unsolved for about thirty years [6]. Soloway and his colleagues clearly declared that programming is ubiquitous, and it should be expanded to end-user computing, socially sanctioned intellectual advances for everyone, embedded in a rich cognitive context. They also expressed the ideas that creating a computational medium requires making programming easier to learn and do, and requires expressiveness and usefulness. Considering the same problems, the misconceptions circulating around programming were brought up twenty years later, clearly indicating that not much had changed [7]. This happened in spite of the fact that the power of spreadsheeting was recognized: "There is clear potential to generate significant benefits by developing improved methodologies for many of the very important activities performed by millions of people who interact with spreadsheet information systems." [8]. However, the "improved methodologies" primarily focus either on the placement of spreadsheeting in a novel programming interface [9]- [12] or on reducing the complexity of spreadsheet interfaces [13]- [15]. The choice of methodology development might be influenced by the results of [15]. The authors of the paper found that out of four abilities and skills logical reasoning, spatial visualization, mnemonic, and sequencingonly logical reasoning may be developed by spreadsheeting. Nevertheless, we have found that it is the tool-centered, low-mathability approaches [16] that narrow the list not spreadsheeting, since Sprego programming has positive effect on two more abilities, namely spatial visualization and sequencing [17], [18].
Beyond this potentials, we also have to deal with the risks of spreadsheet programming, thoroughly detailed, analyzed, [13], [20]- [29], and solved to some extent [30]- [34]. In general, the wider research community tends to focus on the financial losses caused by poorly designed spreadsheets rather than on the development of "real" spreadsheet methodologies. In this context "real" stands for methodologies where the programming (coding) happens on the spreadsheet interface by taking advantage of the built-in functions and the well-developed graphical interface. This shortcoming is clearly indicated by the fact that the thirtyyear-old methodological problems are still with us. At this time, we must formulate a novel question « Why have we not been able to carry out what was so clear thirty years ago, and ten years ago? ». Nothing has happened, in spite of the awareness that "For many people, the programming language of choice is a spreadsheet. In fact, spreadsheets are probably the most widely used end-user programming systems. The people who use spreadsheets to program are often end-user programmers. End-user programmers are people who often have little or no training in programming but still do some amount of programming. In the U.S. alone, the number of end-user programmers is conservatively estimated at 11 million, compared to only 2.75 million other, professional programmers.", and these numbers have increased since this estimate was made [14], [21], [26], [31], [34], [35], [36].
Finding solutions to these problems is far beyond the scope of the present study; yet some of the questions closely related to its focus can be answered. The following is a list of well-documented problems to which Sprego and its teaching-learning methodology could provide effective solution: over-mystification of the imperative and the objectoriented languages and misinterpretation of programming and coding [6], [35], [37]- [39]; downgrading of end-user programming by IT professionals, corporate managers, and information systems researchers. Spreadsheets are almost invisible in the information systems and computer science research communities [8], [11], [40]- [43], are considered boring [44], [45], and involve mindless, routine tasks [46], and are reduced to computer driving licenses and product knowledge [47]; decontextualized teaching materials [48]- [51], and interface-centered approaches to end-user activities [21], [49], [50], [28], [52]- [55] (Fig. 1); misleading user-friendly slogans from the leading software companies whose effectiveness have never been proved [56], [22], in accordance with software-centered exams [28], [50] (with 40 hours of study time [57]), a lack of schemata for utilizing fast thinking [1], [40], [58]- [65]; computer illiterate teachers at all levels of education, which has sadly been proved during the pandemic, missing aspects of TPCK (Technological Pedagogical Content Knowledge) [66], [67], self-nominated educators of informatics [68], and experienced but not expert teachers in informatics [69], [50]. Pólya [58] clearly stated that "Thus, a teacher of mathematics has a great opportunity. If he fills his allotted time with drilling his students in routine operations he kills their interest, hampers their intellectual development, and misuses his opportunity. But if he challenges the curiosity of his students by setting them problems proportionate to their knowledge, and helps them to solve their problems with stimulating questions, he may give them a taste for, and some means of, independent thinking." The same is true, but left unattended in teaching informatics in general, and in end-user computing in particular; illiterate end-users [19], [28], [40], [52], [70]- [72] and unreliable self-evaluationsconsidering the level of digital competence [22], [73]. Wolfram [51] went even further by claiming that "The finery of writing odd maths symbols doesn't seem to me to be the essence of maths. … With no effective, general education in computational thinking, most people can easily be misled, and they are." The same is true in end-user computing. Following the instructions of computer-cooking course-books and tests ( Fig. 1), navigating on graphic interfaces at lightning speed does not develop computer problem-solving abilities; accepting the myth of the digital native and the multitasker generations proposed by Prensky [74] has been clearly rejected recently, and been proved to be only a myth [75], [76]. At present, informatics as a school subject is reclaiming the infamous title of being the most hated topic from maths: "…mathematics has the dubious honor of being the least popular subject in the curriculum… Future teachers pass through the elementary schools learning to detest mathematics… They return to the elementary school to teach a new generation to detest it." [58]. Beyond being hated, informatics seems as secluded as mathematics [51].
It is clear that we are in need of fundamental changes, as stated by so many educators. The present paper clearly demonstrates that neither primary nor secondary school students can handle end-user problems from a programming point of view. Furthermore, software engineering students of informatics in tertiary education face the same problem. The research detailed in the paper reveals that the high-mathability [16], [77], [78] Sprego programming [2]- [4] would serve both end-users and professional software engineers in the development of computational thinking skills and knowledgetransfer activation.

A. SURFACE-CENTERED VS. ALGORITHM-DRIVEN END-USER APPROACHES
For the placement of the different teaching-learning approaches in informatics, the typology of computer problemsolving approaches would serve us. The typology defines two hypernym categoriesdeep and surface approaches -, and within them two and three hyponyms, respectivelyconceptbased and computer algorithmic and debugging-based; algorithm-based, information-based and trial-and-error wizard-based [79]- [81], [50]. The hypernym categories are in complete accordance with the problem-solving systems of various sciences (Table I): mathabilityhigh vs. low [16] evidence utilizationinnovation-led-evidence vs. evidence-led-innovation [51], [82] higher order thinking skill (HOTS) - [concept-based] problem-solving vs. scientific approach [65] minimalist learning theory (MLT)active-user vs. enduser [83], [84]. In general, deep approach methods are problem-driven, while surface approaches focus on tools. Considering the three hyponyms of the surface approach methods, we must make a distinction between the algorithmbased and the other two methodsinformation-based and trial-and-error wizard-baseddue to the thinking mode [62] which is activated in the process of problem-solving. In the information-and the trial-and-error wizard-based methods slow thinking is activated, which has been proved error-prone [40] [62]. On the other hand, the algorithm-based methods activate reliable and effective fast thinking [62] by using and calling schemata built up with computer algorithmic-and debugging-based methods [58]- [61], [63], [64].

B. SURFACE-CENTERED SPREADSHEETING
The essence of the surface approach methods is that they tend to present details on the interfaces, wizards, or helps; they place emphasis on non-spreadsheeting (e.g., typing, text formatting) or minor issues, mismatch knowledge-transfer and program-specific items, but leave real problem-solving unattended [13], [14], [15], [51], [85]. The problems of surface approach methods in relation to computers was expressed as early as 1981 [86], but only a few listened: "It is sometimes thought that, with the availability of the hand-calculator and its big brother, the computer, the use of mathematics is reduced to pushing buttons and feeding in canned programs. This view would be quite false." Wolfram [51] goes one step further and claims that "When a major new machinery comes alongas computers have -it's rather disorientating." With the recently published and readily available digital tools, this fear has become reality. End-users, including teachers, cannot realize that "It is the drudgery that has been eliminated from mathematics by these modern devices and not the need for thought. We assuredly still need to recognize when a problem is suitableand ripefor mathematical treatment, and we need to plan a strategy for tackling the problem." [86] and "Machinery has mostly replaced human brawn not human brain." [51].
However, warnings are overridden by the marketing voices of software companies, by teachers' lack of belief in the incremental nature of science, expressed in the Meaning System Model [87], and by the sunk cost fallacy [62].
Traditional spreadsheet-educational materials, on the one hand, do not present real-world problems (Fig. 1). Furthermore, these surface approach methods do not consider any proven problem-solving methods which work effectively either in STEM or computer programming [56], [88]- [90]. One further undesired effect of surface approach methods is that they lead to false conclusions by claiming that end-user activities are boring [44], [45] routine [46], and are only suitable for low-level secretaries, and as such, should be banished from computer education.

A THE ESSENCE OF SPREGO
In a nutshell, Sprego (Spreadsheet Lego) [2]- [4] primarily follows the concept-based problem-solving method of Pólya [58] supported by further studies and theories, such as the cognitive load theory [63], [64], the psychology of teaching mathematics [102], the theory of thinking fast and slow [62], and the meaning system model [87].
In the following, the exaptation from end-user spreadsheeting to Sprego programming is summarized (without repeating the theoretical background detailed above).
the adaptation and combination of the above mentioned theories to teach spreadsheeting and spreadsheet programming aiming at active-users; developing programming and knowledge-transfercentered tasks based on real-world data sources. In this way the widely accepted decontextualized classwork ( Fig. 1) can be replaced with interesting and motivating contents; introducing concept-based methods focusing on problems and their algorithms, instead of tools. This is carried out by (1) avoiding data-typing and meaningless data sources, (2) reducing the number of functions to a dozen (with possible extensions) (Table II) and avoiding function wizards, (3) whenever it is possible omitting formula-copying. By leaving behind these surfacehandling methods, there is the opportunity for building up firm schemata for activating fast thinking in solving future tasks; inventing and introducing unplugged and semiunplugged teaching materials and tools for better understanding and making classes more enjoyable [103]- [108]. using array formulas [109], [110]. One advantage of array formulas is that one of the most frequently occurring errors originating in formula-copying can be reduced [26], [40], [111]. Array formulas also serve the introduction of the concept of n-dimensional vectors and operations on these vectors, knowledge which can be transferred to programming and database management.
The aims of this method, beyond teaching spreadsheeting effectively, are: preparing students for higher and "serious" informatics programming, database management, developing their computational thinking skills and abilities, strengthening mathematical notions through spreadsheet problem-solving and practice, solving real-world problems, giving students the chance to see beyond interfaces and pure surface-navigation, revealing the incremental nature of the sciences. Our previous teaching and research experiences and tests have already proved the effectiveness of Sprego [17], [18], [73], [112]- [116] compared to surface approach methods. These studies have been carried out primarily in primary and secondary education and with relatively small samples in tertiary education. In the present paper, we would like to emphasize that Sprego may be introduced at all levels where teachers are open to algorithm-driven spreadsheet teaching, and are able to completely leave behind the surface approach methods. The latter condition is extremely important, because we also found proof that mixing the surface and the deep approach methods causes more harm than good [116]. Our previous papers and books [2]- [4], [77], [78] provide the details of the methods, and can be adapted to any spreadsheeting environment.

B DESCRIPTION OF METHODOLOGY
According to the principles of Sprego, strictly real-world data sources are presented in the form of 1NF (first normal form) tables during both lectures and seminars. The contents of tables are in accordance with age, background knowledge, and students' interests (e.g., local food places, game boards, geographical contents, movies, youtubers, sports). Due to the limited time available for the subject, pre-prepared tables have been uploaded to a website accessible for the class. The first step of the teaching-learning process is the thorough analysis of the actual table. In this phase, the number of data fields, records, and data types are discussed and decided. Being aware of the nature of the data table, (1) problems are presented by the teacherlater on by the students. (2) The problem is discussed and analyzed, all the characteristics and connections describing the correspondent data are collected, written on the blackboard (teacher) and copied in exercise books, notepads, etc. (students). (3) Next, the algorithm of the problem is discussed and built along with the input and out values and their data types. Using natural language expressions, the algorithm is written on the blackboard and various unplugged tools by both the teacher and the students. The most frequently used unplugged tools to take notes and demonstrate multilevel functions are matryoshka dolls (original or 3D-printed), origami boat sets and toy barrel sets. (4) The next stage is coding. In the coding process, as detailed above, a limited number of spreadsheet functions -Sprego functions, Table II are applied to reduce the cognitive load of the 500 built-in spreadsheet functions [117]. Furthermore, whenever it is possible, array formulas are created [2], [109], [110] to reduce copying errors [20], [26] and making formulas as secure as possible. (5) The final step of the problem-solving process is discussion and debugging. Here it must be emphasize here that this step is as important in spreadsheet programming as it is in other programming languages. Furthermore, being aware of the relatively high number of errors in spreadsheet documents, utmost care must be taken to discuss and debug spreadsheeting issues [13], [20]- [29].
Using unplugged tools along with role-play in tertiary education might seem childish. However, it has been found that first year students are as keen on play-along as K-12 students. In addition, the interviews following these experiences proved that these occasions helped students understand algorithms, including those whose codes they have already known by heart.

A. SCHEDULING
The research took place over a four-year period, collecting data in three pre-tests (PRET), and in three delayed post-tests (DPOSTT). In both cases, approximately twenty minutes were given to complete the paper-based tests.
Both the experimental (G1) and the control groups (G2) were made up of students starting their studies in tertiary computer science education. According to the national curriculum, all the participating students studied spreadsheeting in elementary and high school. Most of them took the maturation exams in informatics, which include spreadsheeting [118], [119]. On average, our first year university students completed these exams with excellent results, and no significant differences were found between the experimental and the control groups. Officially, students arrived at the university well prepared in spreadsheeting.
The pre-tests were carried out in the very first week of the first semester of the students in their tertiary education. At this time the students' brought in knowledge was tested. The delayed post-tests were administered at least one year after the treatment, depending on the students' availability. The students who were tested in the delayed post-tests were still studying at the faculty.
The intervention took place in a two-week period, as part of the subject entitled Introduction to Informatics, which involved two-hour lectures and two-hour computer lab sessions every week, adding up to eight hours. This is an extremely short time, but both students and faculty members considered teaching spreadsheeting a waste of time.
The number of students participating in the test is presented in Table 3. Between the pre-tests and the delayed post-tests there was no further spreadsheet teaching and documented spreadsheeting in either the experimental or the control groups. The reason for this is that spreadsheeting and spreadsheet programming is still not considered "serious" informatics, consequently it is absent from all the activities of the students. However, it is documented that both groups studied at least two semesters of high-level programming languages, covering at least three imperative and objectoriented languages.
Furthermore, students were not informed in advance of the tests, consequently they did not have the opportunity to prepare for testing. We can assume that they solved the tasks based on their knowledge derived from their last official encounter with spreadsheeting.

B. METHOD OF TESTING
Students were required to complete the tasks on the test papers, without any help, neither from their fellow students nor computer programs (helps, wizards, miscellaneous online sources). The reason for this "old-fashioned" testing method was to track how students create spreadsheet formulas, and we also wanted to identify the algorithms behind their solutions. These aims of the study cannot be carried out in spreadsheet environments due to the autocorrecting of syntactical errors, the loss of uncompleted formulas, and the loss of unsaved files.

C. SAMPLE
The number of students participating in the pre-and the delayed post-tests were determined by their availability. The pre-tests were administered in the first week of the students' tertiary studies, when there were quite a number of students attending the classes. One or more years later, however, the students' willingness to attend classes declined, and the high rate of dropout made them unavailable. In both G1 and G2 groups about half of the students filled in both tests (Table III).

D. TREATMENT IN THE EXPERIMENTAL GROUP
In the experimental groups, both in the lectures and the seminars, the 'jug and mug' educationwhere students come to class and listen to the teacher without interruption, without any dialogue or interaction even when prompted to do so -, were replaced by inquiry-based learning [58]. The effectiveness of this method has been proved in various sciences, primarily in mathematics [51] and programming [121], [122]. Consequently, considering it in the context of teaching spreadsheet programming seemed reasonable. The keywords associated with this intervention are presenting real-word contents, analyzing data, building algorithm(s), the simplicity of codingcalling up simple, general-purpose functions (Table II) and building composite functions -, discussing and debugging step-by-step [75], [123].
During the experimental period, using various data sources, we start with problems handling texts, forming yes/no questions for both text/number output and conditional formatting, and handling error-values. Based on this knowledge, the next algorithm is solving conditional counting, summing, averaging, minimum and maximum. The essence of these problems is a three-step algorithm (1) a yes/no question for formulating the condition, (2) marking the TRUE answers with a selected value -1 for counting, in other cases, values from the table -, and (3) carrying out the indicated operation. Advancing from the simplest conditional counting to the more and more demanding conditional problems, the same algorithm is applied. The next algorithm handled is the linear search, where a two-step algorithm is applied: (1) finding the record-index of the searched value, and (2) calculating and writing out the required value from the identified record.
Regardless of the algorithm in question, the same method is applied. In the introductory period, the focus is on the building of the schema, which is a deep approach method requiring slow thinking [60]- [64]. In the advanced period, the calling up of the built-up schema/schemata is carried out, which is a surface approach method requiring fast thinking [60]- [64].
The problems are solved with array formulas for (1) avoiding errors originated in the copying of the formulas, (2) delaying the introduction of the extremely demanding concepts of relative and absolute reference for as long as possible, and (3) preparing students for further studies in computer sciences (e.g., database management, programming).
The entire problem-solving procedure is carried out with the coaching method, where the teacher's role is best described as that of a moderator, who intervenes only to improve functioning (not infrequently with unplugged tools) and to avoid the development of misconceptions [13]. The problems are thoroughly analyzed, the algorithms built, the coding carried out, and outputs discussed [76]. One further characteristics of the method is the special coding process, where composite functions are built, in accordance with the limited number of functions (Table II). In the coding process, the innermost step is carried out first, the output discussed, and then this output is presented as an argument or operand for the following step. This process is repeated until the final output is written out. Solutions are built up step-by-step in complete accordance with Pólya [58]: "A great discovery solves a great problem but there is a grain of discovery in the solution of any problem. Your problem may be modest; but if it challenges your curiosity and brings into play your inventive faculties, and if you solve it by your own means, you may experience the tension and enjoy the triumph of discovery. Such experiences at a susceptible age may create a taste for mental work and leave their imprint on mind and character for a lifetime.".
In addition to classwork, students were encouraged to complete homework tasks involving similar problems, and their effort was rewarded with extra points. They were also motivated to present real-world problems of their own in classes.

E. TREATMENT IN THE CONTROL GROUP
In the control groups the well-established surface approach method was applied, with which the students were familiar from their previous studies in elementary and high school.

IV. Research question
Our previous studies proved that teaching spreadsheeting with traditional surface approach methods does not develop long lasting knowledge [17], [18], [73], [112]- [116]. We found proof that students, as end-users, can pass the interfacecentered exams with good or excellent results, but forget almost everything in a couple of weeks, between the maturation exams and the first week of their tertiary studies.
It was also found in our previously conducted studies in primary and secondary education that teaching spreadsheet with Sprego programming: is significantly more effective compared to the traditional surface-approach methods, long-lasting knowledge in the form of schemata can be built up and called on to activate fast thinking in problemsolving, surface approach methods applied in advance of Sprego programming are serious distractors. The primary question of the present research is whether or not studying spreadsheeting with a deep approach method would result in long lasting knowledge similar to formal achievements. In a scenario in which students are overconfident because of the results of their maturation exams [118]- [120] and burnt-out due to mindless and meaningless surface approach methods in primary and secondary school, teachers encounter students who are completely uninterested in spreadsheeting. Furthermore, the question of time was our concern, i.e. whether the two-week period available in the curriculum would be enough to cover all the algorithms planned, or students would need more time even in a minimalsyntax IDE.

V. Hypotheses
(1) Sprego programming is more effective than traditional surface approach methods in teaching spreadsheeting in tertiary education.
(2) Sprego programming supports schema construction, and reliable knowledge is stored in long-term memory.
(3) Sprego programming attracts students and has a motivating effect even on those who are uninterested in the tool-centered approaches.
(4) Teaching spreadsheet programming, similarly to other programming languages, requires direct, strong instructional guidance.

A. THE TASKS
The primary aim of the tasks was to measure how students would be able recognize the algorithms and the schemata of the problems presented. To achieve this the following tools and tasks were provided.
-A data table of 5 fields and 235 records. Due to the length of the table, only a section of the table was presented, with the field names (row 1) and eleven records (rows 2-8 and rows 233-236) (Fig. 2). -A variable in cell G2, whose value is unknown. (Fig. 2).
-Six tasks. Five tasks were to be answered with spreadsheet formulas and one with a native language sentence (a classical decoding task) (Fig. 3).

B. Solutions: Task B
Task B has one solution, leaving out of consideration how the output vector is created: array formula or copying. Both solutions were accepted if the presence of the vector was clearly indicated. Task B contains three knowledge-transfer items: division (1), population divided by area (knowledge transferred from another subject) (1), and population presented in thousands (information retrieved from the sample table) (1). There is only one spreadsheeting item (1)how to create a vector output. The array formula (AF) solution is the {=1000*E2:E236/D2:D236} formula.
Four items were assigned to the task (the numbers of items are indicated in parentheses). VOLUME XX, 2017 8

C. Solutions: Task A
Task A is a linear search problem which officially has two solutions.
-In spreadsheet programming the shorter solution is when one output is assumed. In this case, the =INDEX(C2:C236,MATCH(MAX(D2:D236),D2:D236 ,0)) composite function can be used.  (6) writing out the capital city/cities (2) Considering the capacity of long-term memory, in Task A, we must call attention to the falsely assumed use of HLOOKUP() and VLOOKUP() BIF functions, which cannot be applied in this instance, given the structure of the table. HLOOKUP() is ruled out because the data fields are arranged in columns, VLOOKUP() because the output field -Capitalis on the left side of the search field -Area. These restrictions and many more [2] make the BIF functions mentioned extremely difficult to use, because they require access to unnecessary and hard-to-recall information from long-term memory.

D. Solutions: Task C, D, and E
Tasks C, D, and E are different from A and B in the sense that they can be solved both with built-in-functions (BIF) ( Table V  and Table VI) and algorithm-driven array formulas (AF) ( Table IV). The BIF solution is much preferable according to spreadsheet providers, course-books, and instructors blindly following the new trends of the software companies. On the other hand, the AF solutions require only one schema stored in long-term memory and two general purpose functions. In the case of the BIF functions, there are problem-specific functions with different syntactical rules and with confusing orders of arguments which can be used to solve the three similar problems.
The number of items in the array formulas were assigned to the solution by considering the name of the functions (2) the positions of the functions (2) which one is encapsulated in which one valuesthe constant and the vectors involved (3) their argument positions (2) syntax (1) The three tasks are solved with the same algorithm, so the number of items is the same. In Task C there is one extra point for handling the string constant.
The comparison of the three tasks reveals that considering the level of generalization Task C is the lowest, followed by E, and the most general is D.  We must call attention to the different order of the arguments in one-and multi-conditional functions, which further deepens the confusion (for comparison see Table V and VI). However, the difference in the order of the arguments does not change the number of items assigned to the solutions.  Additional solutions can also be considered (e.g., Database functions). These solutions were accepted and evaluated according to the items detailed above.

E. Solutions: Task F
The answer to Task F is: The number of European countries whose name starts with A. In accordance with the answer 3 items were assigned to the task: number of something (1) -European (1) starts with A (1) We must call attention to the structure of the test, which was intended to help students. If students were able to recognize the same algorithm of Tasks C-F, they would realize that Task F provides the syntax to the solution of the conditional calculations in Tasks C-E.

VII. Methods
The data were processed with the help of Microsoft Excel and SPSS (Statistical Package for the Social Sciences). The students' results were recorded in Excel tables, year-by-year, according to the items detailed above. Most of the analyses of the descriptive statistics were carried out and the primary diagrams were also mapped with the help of the spreadsheet program.
After the pre-processing of the data, they were transferred to SPSS to conduct inferential statistics.
Beside descriptive statistics (average, deviation, variance, minimum, maximum), other statistical methods, probes were used to test the data in consideration of our hypotheses.
The following tests were used: -Pearson Chi-squared test, -Whitney U test, one-sample t-test for two independent samples, -LEMloglinear model, one-way ANOVA, two-way ANOVA.

A. Results: Task B
Considering Task B, a significant difference was found in the PRET test between the two groups, in which the results for group G1 are higher than those of G2 (Fig. 4). As mentioned above, the groups were assigned to the teachers randomly and there was no significant difference between their maturation exam results [73], [118], [119]. Since our concern is how the difference between the students in the experimental and the control groups developed from the pre-test to the delayed post-testi.e. understanding what is stored in long-term memory -, we were testing the significance of the interaction. In this respect, a significant difference was found between the two groups (p=0.012, Partial Eta Squared=0.007). Fig. 4 clearly shows the changes in knowledge in the two groups. While group G1 achieved better results, the results of G2 students declined. As mentioned above, among the tasks, Task B involves the least 'spreadsheeting' in the sense that it requires knowledgetransfer and spreadsheet items in a ratio of 3:1, which means that teaching spreadsheeting deals with only one quarter of the required knowledge items.

B. Results: Task A
Task A is the least successful task of the test. Its major characteristic is that it requires the application of the algorithm of the linear search and the spreadsheet coding tools to create the formula. As mentioned above, the table and the order of the data fields rule out calling up the BIF functions; consequently, the students were required to build a multilevel solution, either with one formula or with substitute cells referring to previous outputs (Table VII, Fig. 5).  Similar to Task B, the results of group G1 were higher than those of G2 in the pre-test. The significance of the interaction was checked, and we found a significant difference (p=0.001, Partial Eta Squared=0.013) between the two groups in the delayed post-test. The difference between the two groups was that while in group G2 this was the only item which was higher in DPOSTT than in PRET, in group G1 more than half of the items were higher in DPOSTT. We can conclude that the eight-hour-long block of the interaction was enough in group G1 to maintain fundamental knowledge, while in G2 students forgot almost everything. This result shows, on the one hand, that eight classes are not enough to teach programming, while on the other hand, our high-mathability spreadsheet programming approach, even in this short period of time, is more effective than low-mathability surface approach methods.

C. Results: Task C, D, and E
As mentioned above, when solving Tasks C, D, and E there are two fundamentally different approaches which can be taken into consideration. One method is to solve these tasks with problem specific BIF functions, accompanied by several difficulties and incoherencies [2]. The other option is to build up the algorithm of the problemsa conditional calculationand then carry out the coding with simple, general purpose functions.
The comparison of the interaction in Tasks C, D, and E considering groups G1 and G2 showed a significance difference between the two groups (p=0.054, Partial Eta Squared= 0,004; p<0.001, Partial Eta Squared=0.038; p<0.001, Partial Eta Squared=0.032 respectively) ( Figure 10). However, the results of the conditional calculating tasks revealed a different pattern compared to Tasks A and B.

FIGURE 6. The results of Task C in tests PRET and DPOSTT.
Since Task C is the easiest among the three tasks sharing the same algorithm, it is no surprise that its result is the highest (Fig. 6, 7, and 8). Even in PRET, group G1 achieved a relatively high result. As the tasks become more and more general the results are lower and lower. This means that even if they understand the algorithm, students need more time to practice in order to increase the level of abstraction, to be able to build up a schema which can be recalled in similar situations.
The results further demonstrate that students studying with the spreadsheet programming method have a much higher abstraction level and, furthermore, a much more reliable fast thinking ability to call up schemata from long-term memory.

D. Results: Tasks F
Task F is a classical decoding task, where a code is presented, and the students must answer it with a natural language sentence. This task does not require any special spreadsheet knowledge; it can be solved by recalling knowledge-transfer items from mathematics and programming, namely, how functions and composite functions work, how parentheses rule the order of execution, and how embedded conditions work (Fig. 9). The pattern is similar to that which is observed in Tasks C, D, and E: the results of group G1 significantly increased from PRET to DPOSTT (C: p=0.01; D: p<0.001; E: p<0.001; F: p<0.001), while in group G2 there was hardly any change. Between the groups the difference in the interaction is also significant (C: not significant; D: not significant; E: p=0.01; F: p<0.001).
Since Task F is an open question task there was space left, and the students used it, to make comments on the task. A notable number of students self-confidently declared that the formula was not correct. (When we tested teachers, the percentage of those who claimed that the formula was incorrect was even higher). Another phenomenon which must be mentioned in this context is the level of understanding according to SOLO categories [112], [124]- [126]. During the three semesters which passed between the pre-and the delayed post-test, the students studied programming for at least two semesters. In group G2 the number of students who were stuck at uni-structural level increased from PRET to DPOSTT, while in G1 this undesired phenomenon was not present. The comparison of Tasks C, D, and E, on the one hand, clearly reveals the differences between the development of groups G1 and G2. On the other hand, it is also obvious that the level of abstraction which the three tasks require are different, and students cannot reach the highest SOLO categoryextended abstractin the eight classes of teaching.

IX. Selection of problem-solving approaches
The next research question was how the traditional and the Sprego methods affect the selection of problem-solving approaches. At this stage of the analysis, only those students were taken into account who participated in both PRET and DPOST; 302 and 551 students, respectively. Three groups of the students were formed both in the experimental and the control group, based on the selected method (BIF or AF) and those who did not do the task (Ignored, I).

A. Approaches: Task C
According to the algorithm, there is no difference between the three tasks; however, built-in spreadsheet functions make it complicated. Among them, Task C is the most common and simplest conditional calculation: counting with equality and a string constant. The number of students who selected BIF, AF, and I (Ignored) solutions for answering Task C (Table 8). The chi-square test proved (p=0.04) that there is a connection between the PRET and DPOSTT solutions to Task C in group G1. The essence of the connection is that those who selected BIF in PRET did the same in DPOSTT with a greater probability than they selected AF or I. It is also proved that those who started with an array formula do not switch to builtin functions in DPOSTT. In group G2 a similar pattern can be revealed (p<0.001); however, there is a greater probability that those who started with BIF stay with BIF.
We tested the difference between PRET and DPOSTT with a marginal homogeneity test. The number of students ignoring Task C does not change significantly from PRET to DPOSTT, neither in G1 (95 and 97 in PRET and DPOSTT) nor in G2 (259 and 279 in PRET and DPOSTT).
The selection of approach reveals a different pattern in the two tests. In group G1, the number of students solving the problems with BIF significantly decreased, while those who used AF increased (p<0.001). In group G2 there is also a significant difference in the method selected; however, this is due to an increase in those ignoring the task (p<0.001).

B. Approaches: Task E
The second ranked task in terms of in complexity among the conditional calculations is counting with inequality and variable. This task is at a two step higher level of abstraction than Task C: equality is changed to inequality in the condition, and the string constant of Task C is replaced by a variable. The number of students who ignored the task increased compared to Task C, in both groups. The selection of BIF or AF shows a different pattern compared to Task C. The number of AF solutions increased in both groups, which indicates that even in PRET students intuitively select the algorithm-driven solution when the abstraction level is increased (Table 9).
In DPOSTT, in terms of the number of tasks ignored there is huge difference between the two groups. In the experimental group the figure dropped from 184 to 137, while in the control group there was no change (413 vs. 400). The number of those selecting BIF decreased in both groups (G1: 55 vs 9, G2: 56 vs. 24). For AF, an increase was detected (G1: 63 vs. 156, G2: 82 vs. 127). However, the increase in the experimental group is much more noticeable than in the control group.

C. Approaches: Task D
The most complex among the conditional calculations is calculating average with inequality and variable. In Task D a similar pattern was revealed as in Task E (Table IX and X). In PRET the number of tasks ignored does not change compared to Task E, in spite of the increase in the level of abstraction. However, considering the choice between BIF and AG an even greater preference for the AF solution over BIF can be detected.
In DPOSTT, the students from group G1 almost unanimously selected the algorithm-driven solution at the highest abstraction levels. In group G2 a similar pattern can be revealed but on a lower scale. The explanation for this change even in group G2 can be found in their background studies, which included at least two semesters of programming.

X. Types of interactions
Considering the type of interaction which distinguishes the two groups, it is obvious that the algorithm-driven spreadsheeting is significantly more effective than the traditional surface approach methods (Fig. 10). The algorithmdriven solution supports building up knowledge and schemata in long-term memory, which can be utilized in similar problems.
These results were further tested with Log-Linear Modelling (LEM), where three variables were considered: pre-test (PRET), delayed post-test (DPOSTT) with values BIF, AF, I, and the groups (G), experimental (G1) and control (G2). The question was what kind of relations can be revealed between the three variables. It was found that the model of PRET × G, DPOSTT × G, PRET × DPOSTT fits the data. The connection parameters of PRET × DPOSTT reveal that in Task C those who used the BIF solutions in PRET tend to use the BIF solutions in DPOSTT. Those who used AF in VOLUME XX, 2017 13 PRET use AF or ignore the task in DPOSTT more frequently than would a random selection. A similar pattern was revealed when considering those students who ignored the task in PRET: selected AF or ignored the task, however this choice of selection is less attractive [127]- [129] (Table XI). The connection parameters of PRET × G reveal that at the beginning of the experiment more students in group G1 tend to solve the problems than in group G2 (Table XII). After the APPROACH intervention, the parameters of the DPOSTT × G connection in the delayed post-test show that more students applied the AF solutions in the experiment group than in the control group (Table XIII). This result shows the effectiveness of the Sprego interaction. The parameters show that the selection of the method is more possibly the same in the tests than a random choice would be (Table XIV). In PRET most of the students ignored the task in both the experiment and the control groups (the parameters of PRET are −0.37, −0.43, 0.8 for the solutions of BIF, AF, I, respectively). However, the students in group G1 tried to solve it more frequently, preferring the BIF solution to the AF (Table XV). The pattern follows the pattern of task C: after the Sprego intervention, the parameters of the DPOSTT × G connection in the delayed post-test show that more students applied the AF solutions in the experimental group than in the control group. This result also shows the effectiveness of the Sprego interaction (Table XVI).
In PRET, it is also shown that there is an extremely low number of students who tried the BIF solution in the case of task D, whose abstraction level is the highest among the three tasks with the same algorithm (the parameters of PRET are −1.26, 0.22, 1.04 for the solutions of BIF, AF, I, respectively). Furthermore, it was found that more students ignored the task in both the experiment and the control groups. The students in group G1 preferred the AF solutions more frequently than did those in group G2, while in group G2 the most preferred choice was to ignore the task.  Considering the method selected to solve Task D in DPOSTT, it was found that in group G1 the relative frequency of AF, while in G2 the relative frequency of Ignored, increased (Table XVIII).

XI. Discussion
A comparison of the conditional calculation tests with the different levels of abstraction allows us to draw the following conclusions.
In the experimental group, the number of students ignoring Task C (lowest level of abstraction) does not change significantly from PRET (95) to DPOSTT (97). Furthermore, in Task C the number of tasks ignored is the lowest (Task E: PRET, DPOSTT: 184, 137, Task D: PRET, DPOSTT: 178, 144), and there is no significant between PRET and DPOSTT (C: not significant; D: p=0.019; E: p=0.001). These findings prove that the interaction in the experimental group resulted in significant changes in cases in which schemata were not formed in previous studies. More importantly, Sprego programming attracts students (Hypothesis 3). On the other hand, the chi-square test indicates the tendency to the sunk cost fallacy, meaning that students cannot let go of the "good old" method, even though it has been proved less effective. This finding implies that students recognized the algorithm which connects the three tasks, but showed some reluctance in applying it in the simplest task. The LEN parameters show that the method selected is more possibly the same in the tests than a random choice would be.
In group G2, the number of students who ignored the tasks reveals a somewhat different pattern. No significant difference was found between the number of tasks ignored in the three tasks (PRET: 259, 413, 389, DPOSTT: 279, 400, 378 in Tasks C, E, D, respectively). They remained as resistant to spreadsheeting as before.
We can also conclude that the differences between the results of the two tests are not influenced by those students who ignored the tasks, but by the performance of those who worked on the problems. In general, it was found that Sprego is also more effective than the traditional approaches in tertiary education, just as it is in primary and secondary schools (Hypothesis 1).
The comparison of the method selected in both groups revealed that as the tasks become more abstract, students tend to use the algorithm-driven approach, or simply ignore the task; problem specific built-in functions do not play a role in their answers.
It is also clear that the algorithm-driven Sprego programming with its methodology provided the students with such firm background knowledge, in spite of the extremely short period of time available for teaching, that they switched from the surface approach methods (which they had studied for years) to the new one. This means that students studying in group G1 were able to build up schemata which were called upon in the delayed post-test (more than one year after the intervention), which proves Hypothesis 2. The results also indicate that the switch from the old methodology to the new has merit, since their results significantly increased despite the long gap between the pre-and the delayed post-tests.

XII. Conclusions
In the present paper we analyzed the effectiveness of teaching spreadsheeting with Sprego programming (Spreadsheet Lego) compared to traditional, widely accepted user-friendly, but low-mathability methods.
The results clearly demonstrate that the traditional toolcentered methods do not build up long-lasting knowledge and do not help students develop their problem-solving abilities. On the other hand, Sprego proved more effective both in problem-solving and extending abstraction. Beyond this, SPREGO methodology provides students with long lasting knowledge, which is a great advantage of the method compared to traditional surface-navigation approaches.
This result shows that the directed inquiry-based methodology applied in the experimental group, in spite of the low number of contact lessons, was enough to build up the algorithm of the conditional calculation. However, using the same methodology, the time was not enough to build up the algorithm of the linear search. In the experimental group, a slight increase is detectable, while in the control group there is a steep decrease. We can conclude that the method was also more effective in the case of this algorithm, but building up numerous algorithm(s) in this short period is impossible.
Algorithms require more time (Hypothesis 4) and direct, strong instructional guidance.
In the population density task, the missing knowledgetransfer items deriving from background studies caused a problem, and there was no time to fill in this gap. This task clearly exemplifies that real-world problem-solving should be transferred to other disciplines, where computers are used as tools, and are not the aim of the teaching-learning process.
However, we must keep in mind that developing fundamental skills, including computational thinking skills and abilities, is a time-consuming process. Based on the results of the project, it was also found that the eight-hour period assigned to the subject by the curriculum is not sufficient to cover the subject of spreadsheeting and functional programming. This finding leads to further consequences in terms of creating curricula on the subject of data management and programming, as well as integrating them.
Based on the results of previous research and the results of our project described in the present paper, it is clear that some of the misconceptions circulating in computer science education have held back students' chances of developing their computational thinking skills and their effectiveness in real-world computer problem-solving. Our results prove that there are methods and approaches which can supersede the less effective methods and aid our students, and Sprego is among them.