Teaching Constraint Programming Using Fable-Based Learning

The paper presents the pedagogical innovations and experi- ence of the co-development of three MOOCs on the subject of “Modeling and Solving Discrete Optimization Problems” by two universities. In a nutshell, the MOOCs feature the Fable-Based Learning approach, which is a form of problem-based learning encapsulated in a coherent story plot. Each lecture video begins with an animation that tells a story following a novel. The protagonists of the story encounter a problem requiring technical assistance from the two professors from modern time via a magical tablet granted to them by a fairy god. The new pedagogy aims at increasing learners’ motiva- tion and interests as well as situating the learners in a coherent learning context. In addition to scriptwriting, animation pro- duction and situating the teaching materials in the story plot, another challenge of the project is the remote distance be- tween the two institutions as well as the need to produce all teaching materials in both (Mandarin) Chinese and English to cater for different geographic learning needs. The MOOCs have been running recurrently on Coursera since 2017. We present learner statistics and feedback, and discuss our experience with and preliminary observations of adopting the online materials in a Flipped Classroom setting.


Introduction
Discrete Optimization problems require us to make a finite number of decisions, each from a finite number of possibilities, such that some constraints are satisfied and the solution found is "good" under some objective measure. It is a common form of decision making, and ubiquitous in our society. Its applications range from solving Sudoku puzzles to arranging seating in a wedding banquet. The same technology can schedule planes and their crews, coordinate the production of steel, and organize the transportation of iron ore from the mines to the ports. Good decisions in manpower and material resources management also allow corporations to improve profit by millions of dollars. Similar problems also underpin much of our daily lives and are part of determining daily delivery routes for packages, making school timetables, and delivering power to our homes. Despite their fundamental importance, all of these problems are a nightmare to solve using traditional undergraduate computer science methods.
Constraint Programming (CP) is an approach to tackling Discrete Optimization problems. The method consists of first coming up with a mathematically precise model of the problem and then submitting the model to generic constraint solving and optimization algorithms. Since CP is not widely taught, we set ourselves the task of promoting CP using the MiniZinc modeling language and CP solving technology. In order to reach out and educate the wider community, we utilized Massive Open Online Courses (MOOCs) (Blackmon and Major 2017), which provide a platform for disseminating high quality training rapidly and widely to the masses. MOOCs benefit learners of different sectors such as those without ready access to higher learning, those seeking to upgrade their employment skills, and those engaging in lifelong learning.
A typical MOOC consists of lecturing videos optionally with interactive quizzes. Teachers can provide further online resources for learners' to pursue additional self-learning activities. There will usually be an online forum to facilitate communications amongst the teachers and the learners. Many MOOCs provide assessment tasks and evaluate students' submissions, with peer grading or auto-grading software. A problem with traditional MOOCs, however, is student engagement and retention. We propose to enhance student engagement by using Fable-based Learning so that learning is fun, immersive and contextualized.
In Fable-based Learning, all lectures are designed around the progression of a coherent story plot. Learners are immersed in movie-like settings as they progress along the lecture videos. Pedagogically, each lecture starts with a short animation both to tell stories and present a challenging problem as the learning context for the materials to be covered in the lecture. As such, we expect learners to identify themselves as the main characters in the story, have a better understanding of the challenges to be solved, and feel the urge to learn new techniques to solve the challenges.
We present the experience of utilizing Chinese classic novels to design three MOOCs on modeling techniques and solving algorithms for Discrete Optimization. 1 In addition to showing how we adapt the story plots of the novels to create scenarios for Discrete Optimization as the learning context, we give also the positive learner feedback collected on the Coursera MOOC platform. Furthermore, the MOOC materials are used in Small Private Online Courses (SPOCs) (Fox 2013) to teach a postgraduate level course in a Flipped Classroom (Uzunboylu and Karagozlu 2015) setting. Students' feedback in the form of standard course evaluation and special purpose in-depth studies are collected and presented. We also shed light on how student performance is related to classroom participation.

Fable-Based Learning
Fable-based Learning (FBL) creates a narrative strand that weaves the learning journey together for the learners. Each of the core videos in a course starts with a short animation relating to a famous fable/novel. In addition to setting the stage, each animation presents a problem to challenge the learners to solve. Learners are motivated to move onto the next video and chapter in the story by solving new problems in a gamified set of scenarios. A pleasant side effect of using animations to introduce each problem is that all the graphics in the course are of high quality, designed and produced by graphic artists. The FBL approach is a form of authentic learning, as the animation poses a challenge that relates to a real world problem. This has immediate application to the learners as many of the problems they encounter are similar to those in their own life.
We use an example scenario (see Figure 1) to provide the context for learning scheduling. In the story, Zhuge Liang suggested Liu Bei to strengthen the defence of the city to prepare for Cao Cao's attack. Three tasks were involved: building a wall, producing more weapons and training an elite army. To construct the wall, they needed to make the bricks and mortar and hire craftsmen before they can actually build the wall. All these costed money, which required some fund raising. To make the weapons, they needed to purchase raw materials and recruit craftsmen which again must be backed up by fund raising. Building and training the elite army involved recruiting the soldiers plus weaponry training and defence training. The complexity comes from the fact that all these tasks are interdependent with different precedence constraints. The goal was to schedule all the tasks in such a way that all the precedence constraints were satisfied and total project time was minimized. All these requirements result in a complex scheduling problem.
The scenario/case is extended progressively in later chapters to include unary resources and disjunctive scheduling requirement and then also cumulative resources thus introducing new concepts and techniques.
The pedagogy aims at increasing learners' motivation and interests as well as situating the learners in a coherent learning context. Using the FBL approach, each video lecture begins with an animation that tells a story following the progression of (the extract of) a novel. We have chosen the classic "Romance of the Three Kingdoms" (Luo and Brewitt-1 Promotion video: shorturl.at/bcvIP Taylor 1959) to serve as the storyline of MOOCs 1 and 2, while MOOC 3 relies on selected stories from "The Book of Mountains and Seas" (Birrell 1999), "The Investiture of the Gods" (Xu 2012) and "Journey to the West" (Wu and Jenner 2003). Each story serves to define a problem encountered by characters in the novel requiring technical assistance from the two professors from the modern time via a magical tablet bestowed to them by a fairy. The story/problem thus sets the learning context, and the stage for learners to understand why they have to learn new techniques to solve this problem. The animation is followed by lecturing of the professors (see Figure 2), who first analyze the story/problem before covering the new knowledge points. Besides watching lecture videos for subject knowledge, learners are given two forms of hands-on programming exercises: workshops and assignments. These problems are all designed based on practical applications but sugar-pilled using scenarios in stories. An auto-grading system is available for learners to submit and test their solutions for both forms. While both workshop and assignment problems are identical in nature, assignment problems are for assessment purposes, while the workshops help learners to internalize the knowledge, and allow free discussion amongst learners about new knowledge points. Learners are encouraged to try out the workshop problems first, before watching the live coding session videos (see Figure 3), in which the teachers attempt the corresponding workshop problems from scratch in a pair programming fashion. In the videos, the teachers think aloud and discuss the codes. Learners can see how the teachers approach the problem, and importantly how they commit mistakes and eventually identify and rectify bugs.

Figure 3: Live Coding Video
In addition to the mentioned videos, students have access to another two sets of videos: (a) a MOOC introduction at the beginning of the MOOC and (b) module summaries at the end of each week. Similar to the live coding videos, the two teachers present together in a conversational style to create a more interactive and lively picture, as compared to the monologuing style used in lecture videos.
In summary, Fable-based Learning is Folklore-based Learning (Lee, Lee, and Lau 2006) without the interactive game-playing component. Learners follow an immersive story plot to an extent that it is almost like role-playing. The approach is also Problem-based (Barrows 1996) since every lecture is designed to solve a difficult problem, which serves to motivate and contextualize subsequent learning. It is closely related to Anchored Learning (Bransford et al. 2012), in which learners are situated in an interesting and realistic scenario. In Anchored Learning, different and possibly unrelated scenarios are created for different learning purposes, but, in Fable-based Learning, all scenarios are interrelated by the coherent story plot.

Learning Content Design and Development
Each MOOC is organized into modules, each designed to cover roughly a week of learning materials. Each module contains a sequence of lecture videos (we call chapters), a workshop and an assignment, live coding video and a module summary video. In the following, we list the titles and module content of the 3 MOOCs. In what follows, we use MOOCs 1 and 2 to illustrate our content design process, and how the teachers collaborated with the scriptwriter.
Using problems created along the storyline of a novel, students should be better motivated and contextualized in understanding why and what they have to learn, and enjoy a more immersive learning experience. Having to create problems and stories related to a Chinese classic and yet having to preserve the main storyline and its chronology also presents interesting challenges to the scriptwriter. The first step is to pick a suitable classic/fable as the story background. We selected, for example, the "Romance of the Three Kingdoms" for the many battling scenes and strategic planning quests which can be easily cast into Discrete Optimization problems.
The teachers began with an outline of the courses (or MOOCs), listing all the knowledge points (see Figure 4), which are the important topics to cover. The scriptwriter also 4: Knowledge Points had to go through the "Romance of the Three Kingdoms" to select the so-called scriptable moments (see Figure 5).
Such scriptable moments were then overlaid on the course outlines to pair up with the technical content (see Figure 6). In designing the exact teaching content, the order of the scriptable moments in the story must be respected. We then assigned the moments to the individual chapters in the different modules of the courses. This step requires close coordination between the teachers and the scriptwriter. The selected moments in the story were then assigned and used to "storylize" the technical problems that would be used to induce the learning materials to be covered (see Figure 7). It was a combination of scriptwriting and technical problem design, which often induced multiple brainstorm- A content development process like this presents a challenge to both the scriptwriters and the teachers. The scriptwriters must have good knowledge of the novels and be able to identify good scriptable moments, which must be fun and important in the storyline and yet also amenable to storylization to provide the context to a Discrete Optimization problem. The teachers have to define the characteristics of the problem based on the topics to be taught, and co-create the problem together with the scriptwriter. Fortunately, in our case all the scriptwriters had a computer science back-ground although they knew nothing about Constraint Programming or Discrete Optimization. This eased the communication between the two parties. Presenting another challenge for the teachers, such a problem-first approach in every single lecture implies an entire different way of organizing teaching and demands a large number of example problems.

MOOCs Status and Learners' Feedback
Discrete Optimization is about solving real-life problems, and the Fable-based Learning approach is all about case studies. Each chapter/video is started with a story which encapsulates a case. Ranging from production planning, resource allocation, project management, rostering to routing, the cases are all designed from practical applications and used as the context and motivation for learners to learn a new topic/technique.
The three MOOCs consists of 13 modules/weeks totaling 61 lecture videos, 3 MOOC introduction videos, 12 module summary videos, 14 live coding videos, 14 workshops and 12 assignments. That translates to 23h38m of high quality videos, which were produced in close to two and a half years. MOOCs 1 and 2 were launched on Coursera in January and February, 2017, while MOOC 3 was launched in May, 2018. Each MOOC lasts for four weeks, and is run on Coursera on a rolling basis. The MOOCs, including the grading of assignments, are completely free for learners, unless they want a certificate from Coursera in which case they have to pay a small fee. We are able to promote Discrete Optimization to thousands of learners around the world, which is impossible by just lecturing in the classroom alone.
We received top ratings from the learners for each of the three courses: 1. 89% 5 stars, 9% 4 stars and 1% 3 stars 2. 94% 5 stars and 6% 4 stars 3. 93% 5 stars and 7% 4 stars Some reviews are quoted below: • "I've never been more engaged in a MOOC!!" • "This course was amazing! Far more interesting, entertaining, and educational than I was expecting to find. There's a trailer for this course, which indicates how wellproduced it is and how much effort has been put in to make this more than just dry lecture material. The coursecreators have done an amazing job with this one; if you are a beginner with any interest in optimization or constraint programming then this is the course for you." • "This course is very well done. The story gives a fun context to the exercises. The exercises allows one to really start to understand how important modeling is and how to do it, they are so well calibrated that I wonder if they were generated by a solver :-)" • "Amazing course, amazing material and amazing lessons. For everyone interested in Discrete Optimization MiniZinc is a must know technology and this course does an amazing introduction with lots of different applications." • "This is an amazing introductory course to discrete optimization. All the learning materials are very high quality, and teachers are awesome. All concepts are introduced with very practical examples, and the assignments are incrementally difficult. You will learn MiniZinc that it is a declarative programming for discrete optimisation.
It is really enjoyable thanks to the background story. I love workshop videos where teachers solved a problem similar to the assignment before you tried. Definitely, I would recommend this course to anyone who wants to introduce in this area." Coursera also allows learners to write "Stories" about their learning experience. We quote some extracts.
• "It's not every day that I come across a whole new approach to solving my problems, yet here it is.
I enjoyed your course greatly, though it has left me cursed. My curse is the constant suspicion that us humble non-CS professors have been arranging the world in non-optimal ways. I now see inefficiency everywhere I look, the question of "Did they even try for the optimal solution? Or did they just take the first one that satisfied the constraints" haunts me daily." • "I'm a principal solution architect . . . The scenario and story based approach is brilliant! Not only is it entertaining, it provides a context to the problem that is both interesting and relevant. I have watched every lesson multiple times, which would not have been enjoyable otherwise.
Having completed the first course and solved, though I highly doubt it's as elegant or robust as it could be, my initial use case, your approach and instruction is so entertaining and interesting that I've enrolled in the second. . . ." • ". . . I first became interested in MiniZinc when I attended CP/SAT/ICLP in Melbourne. I saw you both there, I think, but I did not have an excuse to meet you (I spent most of my time in ICLP). I am not a researcher in any of those communities. . . . Your course is excellent and engaging. Thank you for the care you have obviously put into the course design. I think I probably put much more time into this than I had anticipated, and yet I really enjoyed doing that because you managed to keep me on the edge of my abilities and comprehension of the language features, which I believe is really the place to be for learning such a skill. . . . The workshops were probably the best pedagogical devices for me for most of the course. . . ."

SPOC and Flipped Classroom
While the MOOCs are available on Coursera for the public, the authors both teach similar courses at their home institutions. In the following, we summarize the experience of one of the authors using the learning materials developed in a SPOC (Small Private Open Course) (Fox 2013) and a Flipped Classroom (Uzunboylu and Karagozlu 2015) setting to teach small classes at the postgraduate level in the 2018 Winter and the 2018 Fall semesters.
In each semester, a private session was created on Coursera exclusively for students registered in the course. Students' learning was divided into "out-of-class" and "inclass" activities. Outside the classroom, students practised self-learning on Coursera in roughly one week per module. SPOC tasks include: • viewing and learning from the lecture videos in a module • interacting with one another and the instructors on the online discussion forum • attempting the workshop exercise and viewing the live coding workshop solution video • attempting the assignment and submitting to the autograding system. In addition, students were required to fill in and submit a weekly survey on Google Forms. The survey contained questions asking about concepts covered in the module and those testing simple technical skills in the form of True/False and multiple choices. Students were also asked/reminded of the videos that they were supposed to watch and exercises that they were supposed to attempt.
A typical semester lasts for 13 weeks. Since students prepared well before coming to classes, class meetings were reserved for applied learning activities and higher-order learning tasks in the form of Flipped Classroom. This was also good opportunity for students to receive face-to-face support from the teacher and peers. Thus, the instructor • encouraged students to ask questions • went through the survey questions quickly and gave extra exercises to test students' in-depth understanding • required students to answer questions in turn to identify common misconceptions amongst students • identified and assisted students in need.
As such, class meetings were held only every other week and reduced to seven weeks (the first week gives a gentle introduction to the course and Flipped Classroom arrangements).
Inside the classroom, after verifying that the students had understood the material presented in the video lectures, the instructor set the class additional activities directly related to the course content but separate from the materials in the MOOC. In the classroom the students were randomly placed in pairs and worked together on the new modeling or solving task. We found the random pairing to be crucial in • breaking up pairs of friends who, for instance, left all the work to one person; • encouraging weaker students to talk to and learn from stronger students; • deepening stronger students' grasp of the material by essentially having them teach it to weaker students; and • improving class comraderie by forcing everyone to actively participate with others they did not know. A more organized pairing of strong and weak students might have been better, but the random pairing seemed quite adequate in our experience.
The 2018 Winter and Fall classes consisted of 17 and 22 students respectively. Except two senior undergrad students in the Fall class, all students were postgraduate students at the Masters and PhD levels. Almost all students had a computer science background, while one was from Statistics and another one from Mathematics and Information Engineering. We give an observation regarding the course marks of the students in both classes. The sorted marks are divided into two bands: high and low.
• Students in the high-band with top marks are all those who attended 60% or more of the classroom meetings. • Students in the low-band with low marks are those who attended less than 60% of the class meetings. This mark distribution makes sense since those attending more class meetings are the ones who (a) spent more time in the subject and (b) are more motivated. This is also indirect evidence that SPOC activities are helpful in learning.

Evaluation by SPOC Students
Our universities conduct standard course & teaching evaluation (CTE) at the end of every course. Students are invited to fill out a questionaire, the results of which are shown to the teachers only after course grades are released. We followed this practice for the SPOCs. In addition, help was sought from the "Centre for Learning Enhancement And Research (CLEAR)" of the university to conduct research to find out how the effects of Fable-based Learning and the Flipped Classroom arrangements imparted on student learning.

Course & Teaching Evaluation
The CTE questionaire consists of 16 questions for students to evaluate the different aspects of the course and the teacher, scoring on a 6-point Likert scale (Likert 1932). Topics include the presentation style and clarity of the teacher and whether the course is interesting, stimulating, wellorganized and with clear learning outcomes. Two additional questions are given at the end for a summary score on the overall satisfaction with the course and the teacher.
The overall satisfaction with the course and the teacher in 2018 Winter was 5.75 and 5.75 respectively, while those in 2018 Fall was 5.33 and 5.67. Amongst the other scores, all were over 5.0 and most over 5.5 with the exception of three scores. Students were also asked to predict their grades. In over 80% of the questions, scores given by students predicting themselves with grades A/A-are higher than those given by the rest of the students.
The lowest scores in both classes happened consistently with "Appropriate Workload" and "Content Difficulty", all scoring 5.0 or slightly less. This is in agreement with the belief that a Flipped Classroom requires more efforts from learners. Also, the three MOOCs have a total of 12 challenging assignments, although not all are used for assessment. The content difficulty score also confirms that this is indeed a postgraduate level course without sacrificing standards and quality, even though the learning materials were designed using the Fable-based Learning approach.
Students were also invited to give written comments. We summarize below the representative ones concerning teaching and learning. For the course: • "interesting." • "Workload quite many." • "Can talk more about algorithm at first." • "Students can be even more active for a flipped classroom." • "Good course format, should use in other course! Class meeting too slow." For the teacher: • "Interactive lessons." • "Very interesting teaching method. Enthusiastic and energetic way of teaching. Encourages students to learn more in the process. • "like traditional lecture method better." • "clearly explained." • "Video is too much. I think it would be better to be more precise. Also, it's better have lecture notes." In summary, the CTE questionaires revealed that while most students found the course and the Flipped Classroom interesting and useful, some preferred the traditional classroom format.

Focused Research
Because of the special pedagogy adopted in the course design and delivery, we wanted a more in-depth investigation and hence conducted a specialized survey in 2018 Winter and a focus group in 2018 Fall.
2018 Winter Survey A questionnaire was designed to collect students' opinion on their user experience and perception on various dimensions of the course. The questionnaire was distributed to seventeen students through the Google Form in March, 2018. Eight responses were collected. We give extracts from the summary of the study below: • Flipped classroom implementation: Comments on the flipped learning elements of this course were generally positive. Most students found the length of the micromodules (or short content videos) appropriate and the in-class activities well bridged with the micro-modules. Nearly all respondents agreed that the in-class activities consolidated what they learnt from the micro-modules and strengthened their critical thinking skills. They also found flipped learning fun. • Problem-based and fable-based learning: Students generally agreed problem-based learning enhanced their learning effectiveness; it helped consolidate what they learnt and understand new knowledge. The fable-based element of the course was also much appreciated. Most students agreed that the use of the tale "Romance of Three Kingdoms" in the micro-modules raised their interest in learning. They also confirmed that the story facilitated their understanding and recollection of the course content and helped with their problem-solving during the course of studying the micro-modules.
• Weekly online surveys: The weekly online surveys gained very positive feedback from students as well. Most students found the length, number and level of difficulty of the surveys appropriate. They also confirmed that the surveys consolidated their knowledge of the course content and helped them keep track of their learning progress.
• Overall experience: Reflecting on their overall experience with the flipped/blended course, students generally found the course enjoyable. The majority of them were satisfied with the quality of the eLearning courseware, which they deemed influential to their learning effectiveness. They also considered the bi-weekly meetings essential to their learning. Most students reported that they were able to follow the course progress through self-learning, and had received helpful and timely feedback. Workload was also considered appropriate.
In conclusion, this eLearning course was generally wellreceived by the students. Its implementation of Flipped Classroom and its incorporation of Problem-based and Fable-based Learning were also highly rated. Also, with good course structure design and class arrangement (i.e., the bi-weekly lectures), the course succeeded in facilitating effective learning. However, it is also noteworthy that students generally preferred a mix of eLearning and traditional face-to-face lectures, which suggests that eLearning cannot replace traditional face-to-face lectures entirely. Rather, the two should go hand-in-hand to optimize students' learning experience.
2018 Winter Focus Group A focus group discussion was held on 17 January 2019 to explore students' perception of the course conducted in Term 1, 2018-2019. Five students participated in the one-hour focus group discussion. Four of the participants were self-reported to be familiar with eLearning. Their eLearning experiences prior to taking the course were gained mostly, if not entirely, from self-studying non-CUHK courses, e.g., MOOCs on Coursera by other institutions. None of the participants had engaged in blended or flipped learning prior to taking the course. The discussion consisted of two parts.
The first part concerns the general perceptions of eLearning and face-to-face instruction. When given the choice between a course delivered purely online and another one with the same subject content conducted in face-to-face lectures, four of the five participants chose the former. They cited the following benefits of eLearning: 1. In the case of flipped learning, fundamental concepts can be learnt ahead of time so that more contact hours in class can be spared for discussions of advanced problems; 2. eLearning allows greater learner autonomy (i.e., more control over one's learning pace); 3. eLearning materials, e.g., video lectures, have been carefully selected and edited by the instructor(s) and are therefore more succinct.
On the other hand, one participant expressed his preference for face-to-face lectures, suggesting that questions can be raised at any time in a traditional classroom setting. Although most participants favoured eLearning over face-toface lectures in general, they unanimously agreed that complementary face-to-face instruction was necessary to enhance learning. One of them noted that he often needed external motivations, e.g., a study guide given by the instructor, to stay on track on his course of eLearning; flipped/blended learning with regular face-to-face sessions would help keep his study progress in check. Another student added that his preference for eLearning rested on the assumption that the eLearning materials were of high quality. The second part concerns the specific learner experience in the course.
• Independent learning: All participants confirmed that they were comfortable with the independent learning component of the course. One participant said that his motivation of self-learning came from both the fact that micro-modules were easy to follow and that there were bi-weekly face-to-face lectures, in which he had to answer questions from the instructor. His comment supports the majority view of the participants that eLearning should be complemented with face-to-face instruction. Another participant suggested that compared to extrinsic motivations (e.g., courseware design), intrinsic motivations (e.g., the learner's interest in the subject matters) are the greater drive to successful independent learning; the role of the instructor is thus to encourage student to appreciate the importance of the course content.
• Efficacy of eLearning and face-to-face instruction: One participant suggested that given the nature of this course, eLearning was his preferred mode of delivery; it allowed clearer presentation of scripts which would be otherwise difficult or less convenient to be shown in a traditional classroom setting. Face-to-face instructions would be more suitable for the teaching and learning of mathematics and theories. All participants agreed that the biweekly lectures fostered their understanding, memorization and recollection of the course content. They also helped them establish connections between different concepts and motivated them to think about the theoretical and/or practical rationale behind the concepts. Questions from the instructors were reported to be highly stimulating and engaging.
• Fable-based Learning: There were unanimous commendations on the high quality of the animations used in the micro-modules. Nonetheless, opinions were divided with respect to the usefulness of the adaptation of the fable "Romance of Three Kingdoms". Two participants suggested that while the adaptation of the fable was essential to the course structure, it was less so to their learning of the course content. One of them reported that he conventionally skipped the animations and went directly to the video lectures and problems after the first few modules. On the other hand, others found the animations conducive to their learning. One participant reported that he replayed the animations when he had difficulty understanding the problems. Another suggested that while the animations were less important in earlier chapters, of which the topics were relatively easy, they did facilitate his understanding of the more challenging content covered in later chapters. It was also suggested that while it helped to introduce each problem with a story, the coherence between individual stories was less crucial to learning. • Feedback to students: All participants appreciated that the instructor was easily accessible both on-campus and online and that clear instructions for assignments and learning activities were provided. They also reported to have received timely feedback on their online assignments. However, it was recommended that the feedback be in greater detail, providing comments on how answers could be improved. Three of the participants also voiced their need for more assistance with the assignments; among them, two proposed the arrangement of extra face-to-face sessions, for instance in forms of tutorials, designated for the discussion of assignment-related questions. They preferred face-to-face discussions to online discussions because, as one participant pointed out, it was inconvenient to type mathematical formulae. • Other comments: Throughout the discussion, there were multiple mentions of Assignment 6 being too difficult and requiring too much time to complete. More in-class discussions of the assignment were proposed. While the course was described by some as being "very challenging", all participants suggested they would recommend this course to their peers since the knowledge and skills covered in the course are useful. The practice of flipped/blended learning in the course was generally well received. The adaption of the Chinese fable "Romance of Three Kingdoms" was considered crucial for creating a holistic structure of the course. The quality of the animations used in the micro-modules was also highly commended despite mixed views on the effectiveness of the animations in enhancing the learning of the course content. Although most students preferred eLearning over face-to-face instructions when forced to choose between the two, it was unanimously agreed that flipped/blended learning was the most suitable mode of delivery of the course. To further enhance learner experience, it was recommended that feedback on assignments on Coursera be more detailed; hints/instructions on how submitted answers could be improved would be highly desirable. More in-class discussions of the assignments would also be beneficial.

Limitations
The studies are hardly conclusive at this stage, because of only two student cohorts and small number of participants. Respondents to our survey and focus group interviews were not sufficiently randomly sampled. However, the studies do provide a first impression on how well Fable-based Learning and the different components in the Flipped Classroom arrangement are making an impact on students' learning experience. We should certainly follow future cohorts with similar studies. In the future, we could also consider introducing a control group and perform cross-institutional comparisons.

Concluding Remarks
Building these MOOCs using Fable-based Learning was certainly an adventure. This is also the first time such a learning approach is applied in a large scale. While the MOOCs still suffer from the heavy dropoff rate of most MOOCs, given the subject material taught is highly challenging from both a mathematical and computer science perspective, we have been happy with results. The aim of these MOOCs to teach Constraint Programming to the masses through MiniZinc has been quite successful as evidenced by the 2500 downloads of MiniZinc per month since the courses have started. Building a high quality FBL course is challenging and requires a great deal of planning and strong communication between scriptwriters and educators. But, at least for us, the process was immensely rewarding, and it continues to attract highly motivated learners of the materials.