Associate Professor
School of Computing

National University of Singapore

15 Computing Drive, COM2 Building, #03-20, S(117418)

Tel: (+65) 6516 4240 Fax: (+65) 6779 4580

Email: benleong at


Results of CS1101S (Semester 1, 2011/2012) Mid-term Survey + My Responses

The following are the results for the online survey that we did after the mid-term exam. I've also included some of my comments to the mid-term survey.

There are several reasons for this survey:

  • Timely Feedback - We cannot teach well unless we know what's going on and what students do not understand. Waiting till the end of the semester would be too late and there's nothing much that we can do. That said, I hope that students will appreciate that the lecturers are only human and it's not always possible to address all concerns and fix all problems this semester. In any case, the feedback will be taken seriously and future batches of students will benefit.

  • Allows Lecturer to Respond - This survey also presents the lecturers with a opportunity to address the concerns of the class and to clarify some issues from the perspective of the teaching staff, which is also why this particular page exists.

  • Reference for Future Batches - I am hoping that future batches of students will read this feedback before deciding whether to take CS1101S or the regular CS1010 C version. Scheme is indeed an easy language, but that doesn't imply that CS1101S is easier than CS1010. Students who decide to take CS1101S because they are looking for a "softer" or easier option are likely to be disappointed. My advice, "Choose CS1101S only if you seriously think you like computer science and are considering going into the IT industry or graduate school. Students who are simply interested in scrapping by should avoid CS1101S".

Note: Feedback on the Tutors are omitted here because of privacy reasons. I do not feel that it is right for me to put up the feedback they received on this site (not implying that they are bad. In fact, I have the privilege of the support of a FANTASTIC teaching staff this semester and the feedback is raving good, but I still omit as a matter of policy). They can choose to put up their feedback if they wish.  This is an anonymous survey. We have no idea who said what. We just know what was said. :-)

Total Number of Respondents : 43/43

Understanding Your Background
1) Multiple Choice

Did you have any prior programming experience?










2) Essay

If your answer to the above question is "Yes", what programming languages do you know?



2. C and a little bit java

3. C++

4. python.

5. C++

6. C++, actionscript, java

7. C

8. a bit of Pascal

9. C++

10. C, C++, Java

11. C language

12. C++, C# Slight exposure to C and Java

13. C++

14. Php, objective-c, jquery, html

15. Very minimal ActionScript. Back when Flash was under Macromedia.

16. C, Java

17. C# Boo C/C++ Lua Javascript Some x86 asm

18. Java and a little of C, but that was quite long ago and I've forgotten most of what I've learnt

19. C, C++, Java, Assembly

20. C++, PHP, javascript.

21. scheme, haskell, python, javascript, C, C++

22. C some kinds of scripting

23. Python - very minimal amounts of it

24. Java, Python. Some C.

25. Mainly C++ and C#.

26. C

27. C and Java. Only know the basic knowledge.

28. C/C++ and VB

29. Java, some C#

Skip: 14 (32.5%)

For the first few years that I taught CS1101S, the ratio was typically 50-50. Last year, it went up to 70-30 and it seems like we're seeing the same trend this year. 

3) Essay

Why did you choose to take CS1101S instead of CS1010?

1. I wanted to take the challenge

2. It's more challenging and I can learn more staffs.

3. From what I'd seen, CS1010 covered things that I'd already learnt before. Wanted to try something completely different/new, and had heard good things about SICP.

4. Double Degree. So had to take :)

5. Thought it would be interesting, and wanted to take the challenge despite not having any programming background.

6. Double Degree

7. CS1010 was too easy

8. interest.

9. CS1101S seemed a lot more fun. Anyway an NOI Silver is an exemption from CS1010, and our school doesn't allow CS1010 to be taken.

10. C sounds boring. It's like what I already know. And I wanted to learn new stuff like functional programming

11. I heard CS1010 is no good.

12. N/A

13. No choice. Double Degree.

14. I realised my weakness was more in forming algorithms and question analysis, than in learning syntax. I felt I could get more exposure to algos and programming techniques with CS1101S than with CS1010.

15. Prof Ben

16. more interesting, and more challenging

17. I've took the CS1010 exemption test. I don't like the way it tests on tracing a code. And I don't like to go through a module that I've already known.

18. It was the only option anyway, couldn't take CS1010.

19. I wanted to learn something more than just a programming language.

20. Because i thought that CS1010 would be boring.

21. They say learning Lisp makes you a better programmer. Besides, I want to do something new instead of C/C++.

22. Because subconsciously I'm probably asking for punishment.

23. Because I want to learn more. For CS1010, I think it is easier to study it in vacation time, by borrowing the notes from my friends who has taken it.

24. I had CG1101, which was too easy. I wanted to do something more interesting and challenging, instead of wasting my time on things I already knew.

25. For fun and Challenge. To take CS1101S is one of the reasons why I choose computer science instead of math.

26. Decided to try something different from C++

27. challenge myself, do not want to be too relaxed in the first year.

28. because i think i would learn more than i would be learning in cs1010

29. More interesting and challenging!!

30. Had previous study in CS.

31. Scheme is a beautiful, functional language. I can learn a lot from this language. Still it can improve my weak algorithm.

32. I took a look at the syllabus of both modules and felt that C was too slow for an introductory programming mod.

33. Because CS1101S is harder and I think I can learn more if I take CS1101S instead of CS1010

34. Recommended by friend

35. DDP

36. I didn't =P

37. Because the other module does not teach as much new knowledge as CS1101S does. In addition, this module is fun.

38. No choice, DDP

39. Because I wanted to learn something beyond programming language, for example, the thinking ability, the programming convention and so on.

40. It sounds more interesting

41. Pre-allocated.

42. Was actually allocated. But didnt drop cuz wanted to just try

43. CS1101S has the best prof and teaching team

Skip: 0 (0%)

Motivations look pretty standard. CS1101S are typically ones who are out looking for a challenge or are DDP students who don't have a choice.

1) Multiple Choice

How do you find the lectures?



I have no clue what the lecturer is talking about most of the time


I have no idea what's happening half the time


Lectures are no different from the other classes on campus


Lectures are clear and I am able to follow the material quite well


Lectures are way cool. Easily the best class that I've taken at NUS (not like I've taken a lot, but...)




Fantastic. First time in my life, every student says that they can follow the lectures. Perhaps I have indeed become better at lecturing CS1101S after doing it for the SIXTH time. :-'(

2) Multiple Choice

How effective are the recitations in facilitating your learning?



I'm always asleep during recitations and have no idea what the instructor is saying.


I have a hard time understanding what is taught in recitation


Recitations are okay


Recitations are clear and helpful in reinforcing the material covered in lectures


Recitations are brilliant. I understand Scheme completely because of them.




Recitations results are a little worse than last year, but not by a whole lot.  I suspect it's because we have way too many students in the first recitation. That's the largest recitation I have had of all time. The one student who is having a hard time understanding what's being taught should really interrupt me to ask questions. :-'(

3) Multiple Choice

How effective are the Discussion Groups in facilitating your learning?



They are a complete waste of my time ...


I have no idea what's going on/I have no idea what the Tutor is saying most of the time


Discussion Groups are okay


Discussion Groups are helpful for my learning


Discussion Groups are brilliant. Every module at NUS should have them!




The results for DG is a little worse than last year, but last year we had an anomalous 1:4 ratio.  I am quite satisfied with this current result. Kudos to the tutors for their hard work.

4) Essay

Feedback for Lecturer Ben Leong.

1. Nice efficient and clear.


3. Prof Ben has a pretty interesting teaching philosophy, style and method. The lectures are always interesting compared to all the other lectures (since JC). Never a dull moment (maybe its due to its speed. Idk). Lessons aside, prof Ben is very approachable and provides feedback to queries quickly and this puts doubts to rest early (which is good! Otherwise nagging doubts and worries will hinder learning)

4. Prof's evilness seems to have gone down a few notches as this year's midterm was quite manageable. Might be due to old age jkjk

5. excellent!

6. This mod would not be the same without him. My favourite lecturer so far.

7. None

8. Good, warm-hearted lecturer. Always take care of our work and encourage us to go ahead.

9. great! very nice.

10. Good and witty, and relatively clear in getting points across. Possibly light handed as he is the lecturer and needs to keep pace to the overall class.

11. brilliant, though sometimes i cannot follow him.

12. The lecturer is enthusiastic and the lectures are interesting and inspiring.

13. I hope enough good has been said about Prof Leong. I wonder if I would have the same positive attitude if the course were bell-curved. I do like Prof Ben's teaching style, I like the speed he goes at, and it means should I need to understand something I have to work to get it, (rather than not-work and pretend to understand it). I'll do my best to try and remember various Leong-isms (like "How cool is that?", or other such phrases).. and will miss such well-coloured slideshows.

14. Darth Ben is easily the best lecturer that I have ever come across. He captivates students with his interesting lectures and certainly propagates love for computer science.

15. He cares a lot for students and really wants to see them develop into effective problem solvers and programmers. He is hence a disgrace to the legions of Sith lords.

16. Learning great things from him!

17. A very good Lecturer, the best I've seen so far.

18. Very well versed in his craft, quick to answer and gives sufficient insight into the subject. his exam questions are very challenging.

19. Intelligence and Agile

20. Helpful and Considerate.

21. Ben is awesome!

22. I believe its not said enough, thanks for a great module.

23. No feedback, couldn't think of anything to improve.

24. Big joker (in a good way)

25. Interesting lecture!! Most of time I can understand the lecture entirely during lecture itself.

26. He is definitely the best lecturer I have come across. In particular, his teaching philosophy greatly appeals to me. His lectures are very interesting, very engaging, and clearly very well-prepared. I have found his lectures to be stimulating, not just through their academic content, but even through things like the videos he shows during the breaks. He is also very approachable and helpful (you can even message him on facebook and get responses.. imagine that!) The way he sets problems, etc. kinda forces you to work hard, which helps more than you can immediately realise.

27. Easily the module which i look forward to the most everyday, be it missions or dgs or recitations. without the amount of difficulty i doubt i would like it as much

28. Prof is very motivating. He sets high expectation for students but also offers lots of support, feedback and encouragement. Bonus point for being the most active prof on fb :D

29. we should spend more time on data structures and signal processing, i.e. important ideas (need not completely follow the text book)

30. You are way cool. I appreciate the videos during the breaks, and more importantly the clear way you explain the code to us. I think SoC will miss you when you go on sabbatical. Well, at least I will.

31. Evil midterm paper setter. But I think lectures and recitations are clear enough and I can follow most of it.

32. Needs to make us use clickers more often. It tests how much of the lecture we have uploaded. Should have said that we could ask questions in exams, then I wouldn't have spent 15 mins staring at the 1st part last question, thinking why the hell there's no way to solve it, and what the hell to write on the paper.

33. Dr Ben is very professional in the sense that he is always able to make us understand the things he teaches. Good!

34. Teaches people to swim by pushing newbs from the high-diving board and straight into the deep pool. Gotta admit that almost drowning in maps and lambdas hasn't been fun. But I must say I enjoy the sights from top of Mount Everest way more than Bukit Timah. Tough challenges, just the way I like it.

35. Great!

36. His charisma certainly does help in making the lectures more interesting. Knows exactly what he's teaching so he was able to answer questions that was posed to him by the students. Previous years' students say he speaks too fast, but I don't think this is a problem this semester, or at least, for me.

37. Clearly knows the subject extremely well and makes lectures/the course in general enjoyable.

38. He's good and is concerned for us and our understanding. He enjoys his work and that enthusiasm rubs off on us such that we too WANT to study scheme. How cool is that?

Skip: 6 (13.9%)

Thanks for the kind words. :-)

No more comments about me speaking too fast this year. Maybe age has finally caught up with me and I'm finally slowing down sufficiently.

On the Clickers comment, it turns out that I was just trying out the Clickers for the first time this year. I've found that I'm not quite a Clicker guy. As it turns out, there are no right ways to teach, just as there is no one path to success in life. Clickers don't really seem to work for me and so I'm not really keen to use them. I'd think a little harder about how I can use them better.

Missions & Side Quests
1) Multiple Choice

As a five MC module, the workload for CS1101S is expected to be heavy. On average, we expect students to spend about 12.5 hours per week on the subject. Granted that for some of the weeks, you spend less time on the subject; and on other weeks, you spend tremendous amount on it. On average, how much time per week have you spent on CS1101S?



At most 10 hours


Between 11 and 13 hours


Between 14 and 15 hours


Between 16 and 18 hours


At least 19 hours




The distribution is similar to last year, except that a larger proportion of the students seem to be spending < 10 hours. On average, the distribution is okay. Those of you who are spending > 19 hours, look on the bright side, you are training your brain. There is really no secret, only HARD WORK. 

2) Multiple Choice

There are 22 missions for CS1101S this term, which divides naturally into 7 sets of related missions. What is your view on this workload?



Way too little work. More please ...


Workload is somewhat light


This is just nice


Work load is somewhat heavy


CS1101S missions are killing me ...




We're reduced the workload slightly this year and it seems good. Only 4.6% of the students think that the problem sets are killing them compared to 15% last year. This shows how CS1101S is being improved incrementally every year. Last year was the first time that we did JDFI Academy, so it was hard to estimate workload. Looks like we're doing well. 

3) Essay

What are your views on the EXP distribution thus far? (Is it commensurate with the effort you've put in?)

1. no comment

2. Not too sure how it works actually.

3. It's ok

4. Yes.

5. The distribution seems alright to me so far, but I think the RSA missions could have warranted more experience based on the amount of pain it caused me.

6. Yes.

7. fair enough

8. Roughly, although questions seem to be getting exponentially harder

9. Okay

10. i am content with my exp

11. interesting

12. No comments.

13. Within each mission, the graded rewarded may sometimes seem uneven, for eg in a mission graded over 8, 1/8 of the exp would be gone due to a relatively minor mistake.

14. It is commensurate with the effort I've put in.

15. Acceptable.

16. More EXP should be given to force crystal contest, that really sucks up time.

17. This is a smart way to reflect "homework" part, since it carries 35% towards the final result. I think it's fair, although I am no doing well for EXP >.<

18. YES

19. Well... You don't tend to see how much EXP people have. (Even on the leaderboard?). As such, I get EXP points or I don't. :P If I don't deserve them then I don't get them, so that's fair enough. I haven't noticed so much any change in how much XP I've been receiving. (I'm not concerned whether I get less for the stuff now than for the stuff at the start). That's sort of assuming if I do all the work well enough then I can get (most) of the 35% for the course. I would prefer that there be work we do without getting XP for it. Since I would prefer to know students do things just for the sake of doing-them, (or because programming/scheme is cool :) ) rather than for getting EXP points.

20. I think it rewards our effort just about right.

21. I have never really noticed the EXP distribution, so I'm fine with it.

22. I am not sure because sometimes I put in a lot of time and effort but still got deducted, some times I got comfused about what exactly need to do.

23. I don't really keep track of the exp... I don't really care =\

24. It's okay.

25. okay

26. The EXP distribution are fair.

27. Yep. Even though I've not managed to score very high (yet), I think the distribution is quite fair. I don't really know about the kind of points distributed for forum participation, so I can't intelligibly comment on that.

28. The EXP distribution commensurate with the effort i've put in.

29. I haven't actually been keeping tabs with the EXP distributions. Perhaps it would be good to show us a table list of how much EXP is needed to get to each level? Because I'm pretty sure the EXP needed to level up is exponential for each increasing level.

30. actually not proportional to me effort. I think I really put a lot of efforts on the homework (JFDI). Even sometimes I can't finish them on time. One reason is I always working alone and never ask questions. It really wastes a lot of time if I go a wrong way and never look back. The silly mistakes I make in the missions also take away a lot of experience. But it's OK because I think I have already learnt something

31. EXP doesn't really seem to have any link with the effort/work, since almost every mission results in you levelling up. There doesn't appear to be much difference in the amount that you get for a relatively easy mission compared to one that is harder.

32. Not important anymore, as long as its sufficient its enough, not worth chasing too hard for more.

33. Thank god it is not like those in Korean MMORPGs.

34. Maybe the Exp to level should stay similar to the exp gain?

35. I have this feeling that missions level you up too quickly, like you level almost once every mission.

36. Seems to be optimized for normal students. Those who want to do more (e.g. contests), it doesn't really match the effort.

37. I think it is commensurate with how well one learns. But it is true that the more effort I paid, the higher EXP I would get.

38. I guess it's OK

39. I.. don't really pay attention to the EXP earned per mission.

40. Don't really track EXP

Skip: 3 (6.9%)

Students generally seem to be okay with the EXP distribution. It is intention BTW for the EXP for the side quests to be relatively low compared to the main quests, i.e. optimized for the "normal" student. Assumption in comment 19 is correct. Most students are expected to reach Level 35 at the end of the course. Perhaps 5(?) will be in Levels 30 to 34.

To respond to comment 30, it's actually okay to spend a lot of time. The lost EXP can also be "made up" by doing side quests. Good attitude. :-)

4) Essay

Please let us have your feedback on the missions and sidequests for the class.

1. High-quality.

2. I like how missions and side quests usually relate to each other so we can work on the same type of problem over an extended period of time (probably because they were split from 7 problem sets anyway). The interesting plot also helps tie everything together.

3. Cannot be done last minute because if you have a misunderstanding somewhere it can totally ruin your day.

4. Though it is less related to exams, but it is brilliantly informative. I really want to do more interesting stuff like this. The very thing I want to point out is that I always get stuck on easy stuff such as function type due to lack of information. I think there should be a brief lecture or review on what critical points are covered in each mission(like the path one) so that we can save time to do the thinking part more.

5. Positive. Missions match with contents learned in class and introduce new practical concepts

6. They're fine.

7. some too difficult :(

8. I think they are just perfect. They make us understand the materials taught in this module. They also provide a chance for consistent learning.

9. It's really interesting to have so many attractive missions and side quests. I am very appreciate that.

10. Too much information! Always losing marks because did not read properly.

11. Without these questions, I swear there is no need for one to choose CS1101S. The missions and other questions are the key part from which I did learn. Although even sometimes I want to kill myself during doing missions, after accomplishing them, I feel nothing but only delighted.

12. Some of the instructions are rather confusing. Based on the wordings of the questions, I sometimes don't really know if I have answered everything that the question is asking for, or if I had actually answered out-of-point i.e. "that's not what the question is asking (!)". But all-in-all, they have been interesting to do.

13. they are quite helpful for understanding. but some of them are hard and i spent a lot of time to finish them.

14. Mission are fun and entertaining because of the storyline

15. They seem not difficult at all once you finished it and look back, but the process doing it is painful >.<

16. I do not really understand the questions fully at times, maybe it's just me, but sometimes it does seem ambiguous.

17. the side quests in general are quite fun. but difficulty ratings for missions sometimes overrated

18. Missions are pretty easy, just time consuming reading all the write up, and I guess I had been looking into the source files much more than required by the question.

19. well organized

20. I probably would get whacked for this but... I think the context and questions could be better. Maybe point form or smth? Some of them are confusing. I remember getting stuck for 5hrs trying to understand and I went to bed thinking "Omg my English is really terrible or I'm just plain dumb". While that may be true, I rather not feel that way. In the end, it was resolved in 10min over the phone with Ryan's explanation.

21. mission/side quest requirements are sometimes slightly ambiguous, with the meaning confused with a wall of text. the difficulty curve for the missions seemed to spike around 8-10

22. some missions are extremely hard for me to solve out and need a lot of time.

23. Some instructions not clear, especially the non-programming ("explain ...") ones

24. Fun so far, and poses a nice challenge. Some of the deadlines seem a little tight (particularly with the earlier series of missions where it was possible to complete a mission and have another unlock immediately with the same deadline.)

25. Too easy compared to paths.

26. interesting and easy to follow and understand. ^_^

27. Loved the RSA missions! I thought drawing the curves was cool, too. I did like the mention of the tutor's names in the missions. (Zi Chun and Zi Han, in the curves, I think it was). Even if Zi Chun didn't think such-and-such, it still made it more fun to do.

28. They are fun to do, never had this sort of assignments before.

29. The background story is cool. Although it may appear to be trivial, it give us a setting to blend ourselves in and, in the process of solving them, at least I myself do not feel like doing some chores but playing a fun game.

30. Very good way of getting us interested in the assignments.

31. I'm happy with it so far.

32. Missions with greater realism such as the cryptography ones are great because of the extra nuggets of information thrown into the mix. The missions themselves are extremely manageable and they do test me in writing code rather than just understanding the concept.

33. Some tasks' instruction is not so clear, sometimes confuse me.

34. Difficult and quite stressful to complete on time.

35. The missions and side quests are ok, but having all the students do the same things is not a good idea.

36. nice

37. The JFDI Academy is a truly revolutionary idea! The storyline, the comic bank, the colorful premise which each problem follows... they all create an environment where you can work for hours on end, yet feel like you're just pursuing a hobby! In particular, I really enjoyed the analytical questions (particularly those in side quests). They seem like quite a refreshing change after hours of programming!

Skip: 6 (13.9%)

Lots of complaints that write-up is not clear. Well guess what, the same complaints have been heard year after year and EVERY YEAR, the new batch of tutors is told to review the write-up for the problem sets to make it clearer. After FIVE years of changes and updates, we still have complaints. >.< What can I do?? Strangely, I'm no good with this 'cos the questions seem pretty clear to me.... I guess next year's tutors will have to try again. Martin Henz will be taking over CS1101S and converting it to JavaScript, so perhaps that's the chance for him to see if he can make the explanations clearer where I have failed for the past 5 years. *sigh*

The tutors are currently reviewing the rest of the missions. Hopefully, they will do a better job for the second half of the module.

4) Essay

Please give us your suggestions on how we can improve the missions and side quests. 

1. When one mission unlocks the next mission and both happen to have the same deadline, it would be nice if we could be notified that there's actually a second mission due on the same date, so that we will not get a shock when the deadline is approaching and suddenly another mission pops up right after we submit the first one ):

2. Hm the hi-graph.rkt series had a some learning curve there, an introduction would have helped.

3. Reduce verbal explanation, instead add more codes in the instruction.

4. perhaps have more optional missions (for practice but no grade) --> reduce frequency a little. some of the missions are really lengthy to read - would be great if they could be shortened somewhat

5. The first thing that comes to mind is that side quests should unlock comics too! (maybe like parallel comic strips, providing trivia about the characters/events in the main storyline!) Apart from this, I wouldn't mind seeing more analytical questions (although its quite easy to lose marks on them, so they should probably be more leniently graded)
Pretty Colours for the PDFs? ... or more friendly to printers, a JFDI-style banner for the missions. Might make it 20% cooler... Uhm. I did like the side quest where not barely the skeleton for the code was given, so we had to come up with our own solution to it rather than draw-in-the-dots. I think more of that thinking would help us students better. (Say that was too-hard for students, we could have the option to grab a skeleton version of the file, or one with a bit more flesh to help out a bit -- No difference in the end for what the program had to do, would be my suggestion).

6. Make it harder.

7. Be more clear on what output we are expected to have like those during RSA. For example, when asking for types, can say output is something like (something ) -> to something , as an example.

8. Possibly some clarity in task requirements sometimes.

9. We need more gay missions!

10. from a gamification stand-point, instead of a "hi-streak", it could just be a cumulative perfect score. I kinda not cared so much once I broke my streak.

11. offering some core points of what we can learn from the mission, not just give the SICP link, but in the mission paper.

12. Harder mission and easier side quest?

13. Okay for me.

14. There could be more optional challenge side quests.

15. A simple suggestion: Since the majority of us is able to get to Level 35, I think if we can transfer the excessive experience after Level 35 into the CA, for example, to take them into Mid-term, then we would encourage the students to learn better.

16. The missions and side quests themselves are quite good and fun.

17. Make the questions more clear by rigorously defining what the terms mean (eg NOI/IOI have very clear definitions; APIO kind of sucks compared to them but still clear)
maybe have the task requirements reiterated in point form at the last part? will there be more side quests to give us more programming and algorithm experience?

18. Make it easier for "definition understanding" and include more problems focused on cultivating thinking ability. (currently, it is the case that as long as you understand the scripts and what the questions mean, you can solve the problem and I usually cannot understand it. I believe a good problem set should be informative and easily interpretable as well. Then it takes time for students to obtain an answer after they have understood the questions thoroughly. I think the pure thinking part is not as challenging as pitfalls or the understanding part.)

19. Use Simple and Direct English.

20. make the question less ambiguous

21. It'll be nice if side quests release part of the comic or smth haha... everyone does the side quests anyway (I think).

22. so far so nice.

23. perhaps not setting deadlines too close

24. Some of the questions could have been a bit clearer, sometimes I have no idea what the question asks for.

25. Perhaps tell us how many marks for each part question to give us a gauge on how difficult each part question is expected to be.

26. Harder side quests? I mean, come on, its optional, it should be hard.

27. Some of the details (not the questions themselves - the background info) could use a little tweaking to become less ambiguous, but this isn't a huge problem - everything can still be figured out with some time.

28. Maybe can put in bullet point of what is expected.

29. They should be slightly more challenging.

30. more interesting missions and cover more

Skip: 13 (30.2%)

I've already addressed the issue of problem sets not being clear above.

What are gay missions? >.<

Obviously, there are differences in opinion on the "correct" difficulty of the side quests. Perhaps I should clarify that the key function of the side quests is to let students make up "lost" EXP and provide additional practice. They are not there to challenge students though we do have a couple of more challenging side quests. Also the workload this year has been reduced because of feedback from last year. Some missions have been simplified esp. the later ones and some side quests have been removed. Obviously, some people want more, but seriously, we need to strike a balance that pretty much will always make some people unhappy. Such is life.

5) Essay

Please let us have your comments about the Programming Contests.  

1. I don't even understand what the question asking about??

2. Interesting challenges, though those who have taken part in similar things in the past have a clear advantage - almost becomes pointless to try and seriously compete instead of just submitting something for the minimal amount of XP.

3. Pretty cool idea. Too bad there are other modules' work preventing us (well, at least for me! D:) from really putting in effort to try it out (I.e. come up with better stuff than simply submitting smth that works)

4. very cool

5. Challenging. But those who have rich programming experience seem to be the only ones winning.

6. Very interesting contests, mostly targeted at all the pro people who have free time to spare. It's a pity there were so few stereogram submissions for the rune contest since I think stereograms are really nice to look at.

7. It is good, especially because they are optional.

8. The contests are fabulous tools to gain new knowledge since I had to pretty much scour the net for ideas to beat them. However, I feel that they biased towards students with greater knowledge of computer structures and algorithms. Maybe some of the contests could have more help, for example mentioning relevant algorithms that the students would be able to use to solve the contests. Hence they become more of contests of implementation rather than solely knowledge.

9.  Hard and Helpful

10. Too challenging for me beyond the rune design contest.

11. The contests are brilliant, especially 8.1

12. EXP from just participating in the contests are quite sad (low). but the contests are fun.

13. totally no idea on the contest....... I really get lost in it

14. A sacrifice between studying for exams and thinking of a good algorithm.

15. Challenging but useful. A little bit too difficult.

16. Enjoyable.

17. Super time consuming, but damn fun. MOAR!

18. challenging.

19. More advantageous for those with experience or background.

20. it's cool.

21. haven't even participated in the last two :(

22. 1st: Please ban image-painter! 2nd: Did not enjoy

23. The fractal is quite nice and I can handle it easily, but I cannot understand the meaning of the second contest

24. Basically it is something that those with programming background definitely have advantage.

25. They are hard.

26. Haven't participated in any.

27. I have not put effort into the programming contests. That physical badges are given out is cool.

28. it is interesting. but it seems that i have no chance to win. hahah

29. They present quite a challenge, its fun to think about them.

30. Ah! I just wish I had been better prepared for these! They come up at VERY inconvenient times :( I must, however, say that they are INSANELY interesting. In fact, its quite inspirational to see how well some students solve them!

31. I want to see more contests which are not algorithm oriented.

32. could be better if contests are organized into teams

Skip: 11 (25.6%)

Glad that many student enjoy the contests. The contests are supposed to soak up all the time for the students who still have too much time on their hands after finishing the missions and side quests. They are meant to be hard - how else to soak up all the time? :-)  

6) Essay

Please let us have your comments on the Paths.  

1. Useful. The deadline should be more.

2. Should have more exercise. The difficulty is fine, but more of easier difficulty should be added so we can familarise with the procedures.

3. The Paths fit perfectly in the Scheme of teaching (pun intended). They help in clearing the concepts that may appear a little vague after lectures. Also, they provide much-required 'light' practice.

4. useful, however once submitted our answers cannot be reviewed

5. Paths help us revise stuff learned in class. Sometimes instructions and test case are not defined clearly.

6. Very useful in helping us reinforce our understanding from what we have learnt in lecture. I might not properly grasp what certain slides is trying to tell us, and the paths are useful in overcoming that.

7. The paths help me review the points covered in the lectures.

8. Too difficult, and too short.

9.  Paths really help us check if we've actually understood what was taught during the lecture, which is extremely helpful when we find out what we thought we understood from the lecture was totally off the mark.

10. It's a fantastic way to learn and review what we were taught.

11. Useful for learning, but difficulty seems arbitrary. Some answers for the multiple choice questions seem too ambiguous.

12. they were fun until they became so hard...

13. Very helpful. if possible can we refer to previous steps we already completed before? like when I was doing the rabbit steps one i kind of forgot what was my previous solution after getting stuck at the current step. and question suggests that its similar to the previous step which we can't access till the end of the path.

14. Paths are awesome. Seriously. It consolidates the learning and is the first layer to iron out early/simple doubts from lecture. Every module should have one!

15. Paths are great when they ask hard questions. Those are the ones that provides the greatest insights.

16. essential. dont remove them. perhaps leave the answers there when it is completed.

17. Acceptable.

18. They are timely review on lecture contents. Because of the bonus EXP, we are driven to do it early.

19. Very good for helping us understand what was taught. Gives us more qns to think about.

20. The difficulty level very inconsistent.

21. Really nice and helpful

22. Paths are excellent at reinforcing concepts discussed during the lecture.

23. Vital. So important. they're like forced revision (and i mean this in a good way).

24. quite well.

25. I think the paths are a good way to check we're in the right place. They start off pretty simple, and can get reasonably tough. If we constantly screw up, the tutors can see where we go wrong and help us. So that's pretty cool. I LOVED, LOVED reading in Path 13 (I think it was) a tie-in with the missions. ("After decoding messages from DucHiep and Darth Ben", I think it was). :P That was just so fun.. somehow integrates everything better? The one with the story-for-the-path (about bunnies) was cool, too.

26. It's very useful.

27. Brilliant stuff!!!

28. it is helpful.

29. Paths are great. It reinforces concepts taught. And since it's not graded, there isn't a fear of pressing the submit button. Should have more paths.

30. Paths are very well-designed and some paths are really hard and useful.

31. Helps us to recall lecture materials

32. It's good for checking whether I understand everything right.
33. Good thing to have, helps in understanding the things taught
34. Good for re-enforcing things learnt in lecture.
35. Like a warm-up for missions.

36. It reflects general understanding of contents covered in class.

37. Paths helps me to understand the lectures more, works even better than recitations, but could have been clearer in wording.
38. A little summary on the take-aways of the lecture.
39. very very useful!!!

Skip: 4 (9.2%)

I am glad to see that the Paths are very well received. Much credit must go to Head Tutor Koh Zi Han for building the path system and to all the tutors for their hard work in setting the path questions. Paths is a significant innovation in CS1101S teaching that we introduced this semester and I think it improves the class.

The deadlines are *meant* to be short. Paths address a very significantly problem. That is, students go away from my lectures thinking that they understood everything, when they actually haven't quite understood the material well enough to apply the concepts. We intentionally "force" students to do light practice almost immediately after a lecture, so that they would be familiar with the material covered before the next lecture (which obviously will be building upon the previous lectures). Recitations and missions aren't quite good enough because there's quite a significant time lag.

There's an explanation for the apparently increased difficulty. The tutors were of the opinion that we should increase the difficulty of the Paths to get students mentally prepared for the midterms. Not sure if that's a good idea, but I have issued orders for the difficulty of the Paths to be reduced to that of "light practice". Those who think that we should have killer paths again to help students prepare for the Practical Exam are welcome to suggest this in the IVLE Forums. If there are enough students who like to self-torture, we might oblige. For now, Paths will be reverting to "slow and easy" until further notice.

1) Multiple Choice

Comment on the difficulty of the midterm



Too easy


Somewhat easy


Just right


Somewhat hard


Way over your head




While students complained that the paper was harder this year, the results this year are better and quite close to what I expected.  This distribution also fits with what I had in mind when I set the midterm. I think I did a pretty good job, but seriously, after setting questions for six years, setting exams has become quite painful. One more PE and one more Final Exam to go. 

2) Multiple Choice

Comment on time allocated for the midterm



Way too little. Too long, too little time.


Time is somewhat short


Time allocated is just nice


Too much time, too little to do


I can nap for an hour during the midterm and still finish every question




I guess the paper this year is slightly longer than the paper last year as shown in these results, which is perhaps why the students complained that the exam was harder.

3) Essay

Any other suggestions/comments about the midterm?  

1. Kind of hard to write codes down. But of course, the written part is to prevent people from trial and error and get the code right. I suggest making only Question 1 on paper, and the rest as a practical exam. Reason being question 1 is straightforward, either you get it or you don't. The rest of the questions are problem solving base, so I don't think you can trial and error the code.

2. Give some warm ups.

3. i don't know. maybe i am too weak. i suffered from the midterm.

4. my first programming paper. not really prepared for the kind of stress level. zzz.

5. What can I say? It's more of personal failure (panic, stupidity or what not) than the paper's difficulty.

6. I think the one question could have been a little more clear. On the other hand, the questions were indeed quite interesting.

7. given the nature of the subject, it was hard, but expected.

8. One evil question.

9. Most of the questions were ok, and rather do-able, but thinking through the procedure before writing it takes time, and there was not enough time.

10. Where is the movie ):

11. Actual difficulty of questions didn't seem much harder than those encountered in a mission - difficulty came from the test conditions, but mainly from the amount of time.

12. Think just ten or fifteen minutes would have helped quite a bit.

13. If the time were longer, the questions should be more difficult. The questions were difficult, but I think we were given preparation for these. I found the time pressure, particularly for the later questions, quite intense.

14. Its not always a good idea to get inspiration from students, since usually we get around and discuss the topics we talk about, so theres no more surprise. xD

15. difficulty is alright but time is really short for me.

16. It is difficult, but this is CS1101S. I think it is okay to be difficult. It helped us learn.

17. kneel down for the midterm... Extremely hard, Extremely tedious, Extremely long.

18. I spent too much time trying to figure out the steps I should be taking to solve each question, which is bad.

19. Super difficult~!!!

Skip: 35 (55.8%)

Re comment 3, don't worry too much. Things will be fine. We will help you get better. The midterm is also somewhat diagnostic.  

JFDI Pedagogy
1) Multiple Response

Which parts of the game system have a positive impact on your learning? Tick all that apply



The role-playing concept: EXP and achievements


The leaderboard


Having storylines for each mission


Side quests


Paths 36
Comics as a reward for completing missions


Content delivery and submissions through the JFDI website


Interaction with teaching staff through comments system on JFDI website


The whole idea of game immersion


It is interesting to learn that about 60% of the students this batch appreciates the game system. Last year was the same! Is this a coincidence or does 60% represent something about the current generation of students.

The interesting thing about JFDI Academy is that students who really don't care about the game can simply IGNORE the game and "just do homework". In this light, the game is really just a "layer" that hopefully will make learning more interesting in some instances, but doesn't cause any damage for people who don't care.

2) Essay

Please explain your selections for the previous question.

1. I know a lot of effort has been put in to make this more interesting and it has in way made it a more enjoyable learning process.

2. Added motivation to complete assignments.

3. -paths serve as a quick review -side quests tend to require more thinking so help to reinforce concepts learnt

4. JFDI is certainly a very good system in term of learning. The main problem is that I can't login into it on my own laptop. My tutor helped me with many methods but all failed. It is super inconvenient borrowing laptop from my friend each time I need to login >.<

5. Leaderboard: invoke kiasuism Storyline: stop me from asking myself "why the hell I'm doing this?" Side quests: extra EXP Path: revision Comics: it makes me want to do more missions

6. The entire concept just seems perfect. The fact that there is an online system: telling you exactly what problem sets you have; setting deadlines for you to submit by; giving you a storyline to follow so you always have something to look forward to; rewarding you each time you complete a problem (so that you don't give up because of the difficulty), is just amazing!

7. The EXP, achievements, leaderboard and storylines are basic components that make games, especially online games addictive. The same system in this module unexpectedly has the same effect. It makes learning and practicing addictive. Side quests, paths are chances for us to patch up our mistakes in main missions as well as opportunity for us to reinforce our knowledge. The system works well. I have experienced no bug yet.

8. I think casting the whole system in a RPG game exploits the urge to get on top of others well and this helps learning by applying positive pressure. And since the comics get more and more interesting it really helps with the motivation part too. Furthermore, the comments allows us to clarify our doubts immediately, when the problems are still fresh in mind.

9. Not in any order... I'm a gamer. So having a game already win half my heart lol. I also like reading manga, so the idea of unlocking a series of comic after doing work is kinda nice and rewarding. As for paths, I've already mentioned earlier. Interaction is always good. This allows near-instant feedback during learning which I think is important. The in-built interpreter is also quite cool. It saves us trouble from running Dr racket and it also allows faster feedback on our understanding. As for the leaderboard and exp, I don't really care I suppose. It's all fluff, bells and whistles. But I suppose it helps motivate some other people. Side quests are not "side" lor! I don't know of anyone who don't do it.

10. There is a certain amount of interest and incentive involved in the whole system when there is an attached creative work to it. Instant interaction with teaching staff on the very same location as the submission page is very convenient and helpful

11. those i tick are what i pay attention to everyday.

12. side quests and paths can make up the main mission, the leaderboard encourage you to do better...

13. I like the path version of learning, read the brief lecture on new stuff or a short review on old stuff and then accomplish a highly related task. I hope missions and side quests are made like path.

14. The best feature of JFDI is the interaction with tutor, very straight forward.

15. jedi provides instant rewards after finishing work. It feels really fun to interact with tutor and prof through comment too

16. I think the whole idea of the work being part of the game is good motivation for me to complete my work and the experience part makes me try my best in the assignments to try and get as much EXP as possible. Being part of a game also makes the work more interesting as compared to other modules and I feel more like studying for scheme.

17. Its the whole idea. Thinking that I'm playing a game helps me to spend hours on scheme without caring at all. The leader board also helps me by giving the 'game' a slightly competitive edge.

18. The content is good. I didn't pay much attention on the stories. But I never say it's not a good idea.

19. The game system keeps me distracted from the pain of going through the code. The comics are nice for congratulating myself on completing missions, and for breaks in between missions. The interaction with teaching staff is key, in my opinion. Annotations let tutors point out exactly which part of our code has problems. And the comments are a good avenue for tutors to give positive encouragement for good code (kudos to them for that), and for us apprentices to sound off our concerns. The resemblance of the comment/notification system to Facebook ups the cool factor and makes JFDI more relevant/accessible to us who live in the Facebook generation.

20. I think its a really cool idea that supplements are learning and makes the module an immersive experience.

21. I think every NUS module should have this system. Just too dedicated

22. I want the 35% for the JFDI Academy.

23. Extra questions = better understanding

24. the comics are cool but what keeps me from staying on the site is the load. i believe its the fb connect. but that's not really v impt. the paths and missions help to reinforce concepts and reassure myself that i have the "correct" take away from the lectures.

25. No offence to the comic artist. (She has done a great job). However, I'd omit them as useful-to-my-learning. This is because the time between reading one comic and the next is so disjointed. Since I need to complete a mission between successive comic-releases, I tend to lose interest as such for the comics, or any interest is dominated by the drive to complete the mission, rather than for the comics. Other than the so-much-time-between, just that there's only one page of the comic for one mission doesn't seem like much. (Burdensome to the comic artist to do more, I would think, though). I think the storylines are useful in that it provides some reason why you're doing-what-you're doing. With RSA, while it would be fun enough just to do RSA.. that there's a message to decrypt which is integrated into the story makes the thing that much cooler. The leaderboard I never seem to make it onto. (Oh well, there can only be 15..). But, like, it's of course shameful to see that your level isn't as high as those on the leaderboard (or to see they have a cool tag-thing which you don't have). I liked the tags... but unfortunately there's not much interaction on JFDI itself, and so it's more superficial than bragging-rights.

26. The paths I think are really, really useful for learning. They helped me understand the procedures for lists properly.

27. I don't know how to explain by reason... But I just feel the way is something like: interested -> do -> suffer -> cry -> keep doing-> done ->make mistake ->learn. (loop again)

28. Immersion of the 'playing' world is done well, and kudos to the person writing up the mission storyline for each of them, it makes the mundane ever more platable.

29. I love competitive programming, somewhat, I guess...

30. I am a lazy person indeed. If I see some people have done much more work than me, I will try hard. Through the leaderboard, I can see the progress for the leaders can stimulate myself on the work. All this game design is very attractive, at least it's not that boring compared with just completing all kinds of tasks. Actually, if there is no game system, perhaps I wouldn't push myself so hard to learn more.

31. EXP and achievements act as a reward for completing work, which encourages you to go and do it. The JFDI website itself is a much more convenient system for submitting and receiving work than IVLE, and has the psychological factor of working with something special.

32. Competition makes everyone "chiong".

33. I found everything there interesting and extremely helpful in my study. However, I'm not as interested in the comics.

34. Playing game is more interesting than doing homework, though it is just a illusion

35. The storylines for each mission and comics make problem sets less dry, and the JFDI website makes submitting code very convenient such that I can do it from my phone.

36. The leaderboard, EXP and achievements don't really make much of a difference to me.

37. The side quests and paths provide practices which aid in the understanding of the topics. Comments allow me to clear some of my doubts faster and since there are annotations, the I know exactly which part of the code my tutor is referring to and vice versa.

38. The story and comics are awesome. But it still feels more like homework than a game

39. the tasks give me more experience with thinking and computing method

40. More competition = more fun

41. exp and achievement motivate us to do more for scheme as from playing too much games in the past its like ingrained that if got exp then must level up soon. leaderboard its just ego storyline offer a break from reality which is relaxing after working hard on missions. side quests give extra info on subject matter and helps understand the topic better paths lets us see exception cases and challenge our understanding see storyline good, able to review my work within 24h after submission. able to leave message. Awesome.

Skip: 2 (4.6%)


3) Multiple Response

Which parts of the game system have a negative impact on your learning? Tick all that apply



The role-playing concept: EXP and achievements


The leaderboard


Having storylines for each mission


Side quests


Paths 0
Comics as a reward for completing missions


Content delivery and submissions through the JFDI website


Interaction with teaching staff through comments system on JFDI website


The whole idea of game immersion



4) Essay

Please explain your selections for the previous question.

1. I do not care my position on the board, but my friends keep asking me about it. Even there are profs relating our capability to the positions on the board.

2. no bad

3. None of them have a negative impact on my learning actually...

4. A double-edged sword. helps to push me to do missions fast and well, but tends to cause burning out...

5. Hm this would count under Others? Having to log into Facebook to access JFDI means I'm very prone to distractions. Nowadays I keep JFDI in one window and FB in the other. But, say, after I complete my paths, I would alt-tab back to facebook. Now I know this boils down to personal discipline, but given a choice between FB Connect or not, for my own sake, I would choose the non-FB option. I understand avoiding Facebook Connect would mean implementing a password/login/forgot-password? system on the JFDI side of things.

6. That's the best part

7. there isn't really a negative impact.

8. sometimes feel that no chance to follow the people on the leaderboard.

9. I don't really see a real problem with the system.

10. I think they all fulfill some goal so I don't think they really negatively impact learning in anyway.

11. Leaderboard doesn't have much of a positive effect, and has (in my observations) even resulted in some students not caring much about the JFDI system as a whole.

12. Doesn't seem productive to try and rank students, since those who don't appear may simply give up hope while those who do become complacent and overconfident.

13. No comments.

14. It's demoralizing for me to look at the leaderboard, see how high levelled other students are and compare that to my pathetic looking level.
explained in 26)

15. "negative impact" is a strong word. I like the way that the content is delivered less than the other features of JFDI. [That I don't do everything on JFDI means I don't get as much EXP? Sure, fine, makes sense. Give credit to those who do the work...]. I think for the elements of the mission that could be automatically marked, I would prefer that (and then checks from the tutor to make sure I'm not cheating, or that I have the right idea for the description questions). Just-so there's a "duh"-safety-net for if I get something wrong. Saves from students making dumb mistakes, or thinking they had it right when clearly something was wrong. --I agree that there should be questions which the student has to explain their understanding with paragraph answers, and that cannot be automatically marked. (The paths and danger-rooms have that automatic-marking. I like that). The role-playing mask of JFDI over CS1101S I find a bit thin. I don't think there's much difference between saying 'assignment' or 'mission'. (Other than how cool it says when talking in front of non-Scheme mates). Students would get the work done either way. -- I do wonder how many would be so quick to do the work if not for JFDI, so there's that going for JFDI over any cynicism I may have. (Certainly it's not bad work! Don't get me wrong).

16. I don't think any of them has a negative effect, except maybe that it makes me take time from other stuff I have to do for this module.

17. None selected

18. very sad cuz can't get on leaderboard.

19. The idea of leaderboard is good, but it is a little stressful because I never get myself on the board yet.

20. Sometimes side quests distract me from focusing on my missions ):

21. I don't think any of the above negatively affected my learning

22. I don't particularly like competing with others at every moment. It also gets depressing when some students finish 6 assignments before I even knew they were up.

23. I cannot think of one.

24. Meh, its fine.

Skip: 19 (44.2%)

Yes, we are well aware that the leaderboard might have some negative impact on some students, but as shown in the previous section, it actually has a positive impact on significantly more students. That's why we kept it.

As for whether JFDI Academy helps to encourage students to submit earlier, the answer is an conclusive yes. Because homework has traditionally be submitted via IVLE, we actually have all the submission times for the problem sets in past years. We have done some analysis and found that in the past, students submit their assignments on average about 15.5 hours before the deadline and a median of 6.2 hours (this means lots of students submit *just* before the deadline). After JFDI was introduced, the time before submission was increased to 51.2 hours. :-) So, yes, JFDI Academy apparently works -- but this shouldn't be too surprising is it?

5) Multiple Response

Which of these game features encourage you to finish missions and play the game most?





Achievements and badges


Unlocking comics





6) Essay

Please explain your selections for the previous question.

1. They give me a sense of accomplishment. Honestly achievements are what keep me doing the paths on time, and are also what motivate me to attempt side-quests.

2. Serves as a reminder about how much you have learnt and achieved since starting on this module. Feels good man.

3. I don't care much about the leader-board since I don't believe that CS is a competing sport. Achievements are good because they are a more absolute reflection of what we have done.

4. Someone put A LOT of thought into the comics. I just wish there was more (maybe unlock a comic for each task? (Although that doesn't seem too feasible!))

5. Er, I think it boils down to learning? After all, nothing remains except the stuff in your head when the module ends.

6. I don't need games to motivate me to do homework.

7. always warns me that I should pull up my socks

8. The missions themselves. I like to solve problems. Problems like those on Project Euler.

9. The comics and achievements are cool and all, but the thing that encourages me to finish missions most is the impending deadline for each mission...

10. The fact that our EXP and levels are linked to our marks.

11. everyone want to be on leaderboard so they play the game.

12. just being able to complete a mission is satisfying for me.

13. to be honest, the fact that this is an assignment is the largest motivation, though the leaderboard takes some of the pain away...

14. comics tend to end on a suspense, thus becoming a motivation to complete the missions fast to find out what happens next

15. My tutor encouraged me in some way...

16. I just don't care about the achievements and comics...

17. It is the human factor that makes it addictive. It doesn't feel good to be at the bottom.

18. feel good give ego.

19. Because I want to do my best to get on the board.

20. A double-edged sword. helps to push me to do missions fast and well, but tends to cause burning out...

21. I'm not competitive enough, maybe, so the leaderboard and accomplishments aren't a big deal to me. I do however, have an interest to watch the story pan out.

22. the leaderboard always reminds you to get faster and keep the pace.

23. it's like you do work, you read more:)

24. Deadline
25. Interesting scenarios introduced by the missions significantly improves the experience of doing 'homework'. For once, I didn't dread more homework.
26. I like to collect icons.
27. It makes me feel good. Although comics idea is also quite well, but since I am not a comic fan...I just enjoy the story line.
28. Overall the fact that there are deadlines is the most important factor in completing missions. If there weren't, though, I would say the level and XP system is a very good source of motivation - just this system on its own (including achievements) without anything else (leaderboard, story) is enough. Comics and the ongoing story are nice, but ultimately have less importance.
29. I wan to know the whole story!!

30. I think I should try hard to catch up with the others

31. Show off on Facebook
32. That position is mine!
33. I don't want to be left behind to far.
34. The side quest should have comics too
35. I'm going to get the achievements anyway.
36. They are interesting xD.
37. Completing the mission for the sake of completing the mission... (the due date? :P). Well. Unlocking comics I don't think happens frequently enough to provide that incentive. And if someone gets more of a buzz from reading a 1-page comic than from completing a programming assignment... Being on the leaderboard is cool.. but those students who work quickly get there first, and so it's only like top 15 out of 40. If I'm not on the leaderboard, I'm only going to panic if I'm really far behind. The Achievements/badges ... Well, I think these would be more effective if they were shown off more. But IVLE doesn't really facilitate that. The "Share with Facebook" stuff was cool. I think the achievements/badges would be better if we spend all our time on JFDI (as opposed to IVLE), then there's bragging rights which come with it.
38. refer to q.26

Skip: 5 (11.6%)

Glad to see that some students appreciate the comics.

7) Multiple Choice

Which of the following best describes your motivation to get on the leaderboard, in relation to the work you do? 



I do everything I can to get on it


I am generally motivated to get onto the leaderboard


Being on the leaderboard is a nice side-effect of doing my work


I don't really care about it





8) Multiple Choice

How much has the game system enhanced your learning compared to regular instruction?



Not at all :(

0 (0%)

A little


Moderately :)


Very much!


It's a brilliant scheme!




It's nice to see that the game system seems to have enhanced the learning experience for 95% of the students. :-)


1) Multiple Choice

What is your overall impression of CS1101S thus far?



This is a horrible class. Truly regret choosing it.


Should have taken CS1010 instead. :-(


Just like any other


CS1101S is cool


CS1101S rocks. Coolest class I have taken in my life.




Seems like we've achieved yet another record of 95% of the students saying that CS1101S is the cool and above, compared to 90% last year. Sorry to see that one student regrets choosing to take CS1101S. We will try to help the student change his/her mind before the semester is over.

2) Multiple Choice

Has CS1101S been able to arouse your interest in programming?







I was already interested in programming before CS1101S!


I was once interested in programming, but CS1101S killed it :-'(




All the students seem to like programming this year. Absolutely brilliant! :-P

3) Multiple Choice

If you were given a choice again to choose either CS1101S or CS1010, would you still have chosen to take CS1101S?










4) Multiple Choice

Would you recommend CS1101S to other students?









This happens every year. We have more students who prefer CS1101S to CS1010 even if they get the chance to choose again, but fewer would recommend it to their friends. Actually this last question is quite redundant. We are not too concerned whether students would recommend CS1101S to their friends or not, but I kept this question just for kicks to see if we will see a trend similar to past years. :-)    

5) Essay

Please give us your comments and suggestions on how to make your learning in CS1101S more efficient and interesting.

1. Letting us be able to interact with other students on JFDI. Right now, we can only interact with the tutors. This makes it feel very individual-oriented on JFDI. Perhaps, letting students have the option to open their code publicly to other students who have also already finished the same mission/side quest, and allowing other students to comment on the code.

2. More practice questions, so that there's a better feel of the Scheme. Something destroyed the danger room entirely.

3. It's interesting as it is already. As for efficiency, I'll say the pace is planned out pretty nicely. Any faster and I think I might get lost. There's this one thing that I wish could happen but I know it never will - to have more time in general. I think its important to fully digest and let knowledge sink in but then school is just busy like that I suppose..

4. learning pace is considered very fast, but we were warned.

5. The textbook is nice.

6. put more time on it...

7. Cant think of anything else

8. more comics to unlock?

9. Keep JFDI academy.

10. I'd say things are pretty good as they are.

11. A "best practices" session or section on JFDI for good student solutions to Missions. We could all learn from the neat, elegant code that others are writing in lieu of the newbie's clunky code.

12. make it harder. most marks I loose due to careless mistakes and not lack of understanding; that's not very fun

13. I cannot think of anything to make the class more interesting. The recurring 'characters' mentioned in the lectures, maybe? Seems a bit uncouth. More crossover with the JFDI academy in that sense, maybe.

14. Its the best module I've taken, so not much that can be improved.

15. No idea at the moment.

16. I think it is good enough as it is. The pain could be less, though that would defeat the purpose of Scheme.

17. It took you six years to think of this... I really don't see how I could possibly improve it!

18. 1. When doing the mission, try to solve everything as fast as possible. There's no time-limit of each mission, so I sometimes spent a whole day doing a mission. 2. Always remember you have other module to learn. Should distribute the time evenly.

19. There should be an option to sign up for auto alerts for mission deadlines to lighten the TAs' burden so that they don't have to work so hard reminding everyone that missions are due.

20. It's important to understand basic concepts of the class.

21. Communicate more with buddies.

22. different people have different need.

23. It is already interesting enough. If more interesting, it would be bad for other modules.

24. Stay the way it is.

25. More effective interaction with tutors in DG.

26. more group-based projects

27. No comments, good as it is.

28. It's good enough:)

29. more practice

Skip: 14 (32.6%)

In response to comment 1, it turns out that programming is not typically a team sport. Also, we don't really want to have to deal with complicated access control code.

As for more practice, er, there's A LOT of practice already. There are review questions, buddy questions, paths and DGs and missions/side quests. Still not enough, you can check out the questions in SICP or the two other supplementary texts! Nobody *killed* the danger room. All the tutors are just too swamped with grading to create extra danger rooms. Your tutors are actively setting paths and also reviewing/improving the upcoming missions.

Re comment 26, the group-based missions and robot project will be coming up soon. Akan datang.

6) Essay

Tell us more about what you think about CS1101S. This is your chance to tell us anything you want that is not already covered by the previous questions.

1. Can help to organize more of the outside-class-hours peer-help mission-chionging gatherings? I found it to be very helpful.

2. so far, except mid-term test, I was quite well with this course even though I got suffering sometimes, the mid-term is too hard for me.

3. It's really cool

4. Proud to be CS1101S student

5. I think this module promotes a lot of work on our own. It is a module that teaches us how to think instead of how to write programs like CS1010 do. This is extremely important because thinking is far more important.

6. CS1101S is a wonderful scheme.

7. 40 previous questions! What's not covered?!

8. it is cool and more challenging than i thought.

9. too easy

10. Maybe more mass learning sessions?

11. Honestly, I doubt any other class I take in NUS will be even remotely close to as interesting as CS1101S is (I must admit that this is a slightly depressing prospect... maybe others should try to do similar things). In particular, Prof. Ben is an EXCELLENT teacher. He has managed to strike the perfect balance in terms of difficulty of the module (its VERY difficult, but you can manage it). Although my knowledge of Programming Languages is quite limited (just C/C++ and VB), I think Scheme is an excellent choice. I was VERY disappointed to know that Scheme won't be taught in NUS any more. I hope the new module follows a similar pedagogy. An even bigger disappointment was that I probably won't be able to take Prof. Ben's lecture CS3216 either, since he won't be teaching that either (not for the next couple of years, anyway) This is probably just pointless nerd-talk, but I am REALLY going to miss this module :(

12. Everything in the course is definitely understandable by those without a background in programming, but those who do have such a background have a pretty clear advantage. Some of the concepts in lectures aren't explained in enough detail for someone without a background to understand without having to do independent research (which may very well be the intention, though I have to question whether all students would have the drive to go and do so.) Overall, love the course and the content - the workload is heavy but still manageable (though it still dominates over all other modules.)

13. Time consuming but its too fun to stop.

14. I hope all my courses can be like CS1101S cos it is the only course in which I learn stuff and a lot of stuff. I just fall asleep in other lectures.

15. In an administrative sense.. I like that CS1101S isn't bell-curved. There're a fair-few clever kids in the class, it seems, so that would be a bit unfair or discouraging if it were. The stuff we get to do in CS1101S is really broad, and really non-dull. I've helped out a friend of mine in CS1010 with their assignments once or twice; first off the work 1101S does is way, way cooler than the work 1010 does, secondly the assignments 1010 does would be trivial work to do in 1101S... (that is, IF the goal of assignments is to learn about how to use the language, then what becomes apparent is: ) in 1101S we spend much less time battling with the language, and much more time focussing on concepts and 'managing complexity'. - That I think is good, and I hope it translates well for us later. Having seen / become used to (as mentioned above) Python, and Java, it's been interesting to work with a Scheme.

16. CS1101S is eye opening. I've learnt new ways that I can code which I cannot do it in C++.

17. Sometimes CS1101S makes me doubt myself whether I make the right choice, especially when I think if CS1010 will give me a higher CAP. But I look at JFDI and I attend all the "how cool is that?" lectures and get the Robot Kit later today, and I see past the pain and I'm reminded of what I've suspected from the beginning - here I'll pick up experiences and most importantly, question-analysis skills, which I'm very sure I won't get in CS1010. The warning by my seniors that this feels like a 6MC module definitely helps in managing expectations.

Skip: 26 (60.5%)

CS1010 is not bell-curved either BTW. Perhaps we should have made it clear to students at the beginning of the semester. The point is that we don't want students to get discouraged in their first programming class. Basically, an A should be indicative that a student has reached a certain level of proficiency in programming skills. Seriously, an A in CS1101S does mean something. Students who get an A in CS1101S have essentially achieved what it takes to become a software engineer for a career. It doesn't mean that those who don't shouldn't, but they probably need to work harder and train more before they become one. Those who get A+'s should aim to become a Google or Facebook engineer.

7) Essay

Do you have any concerns about CS1101S? If so, what are they and how can we help?

1. Too addictive, will lose control, mid term dun put deadline.

2. How to get on the Dean's List?

3. Not doing well >.<

4. Cannot do well enough?

5. No concerns that would affect this batch, but I'm not sure switching to JavaScript for next year is a very good idea - Scheme seems much more suited as a starter language than JavaScript, and SICP itself is (while not perfect) a proven course that has served many well. (That being said, though, this is from the perspective of a student who doesn't have anywhere near the amount of information or foresight that the powers in charge of the module do.)

6. So far none.

7. Yep, i didn't do well in midterm, hope to catch up. I think i can do the questions but just somehow stuck at one question and freaking out.

8. Yes, CAP. Because I wanna study CS2020 next semester, I have to get at least A- and I have to try my best to achieve A-.

9. My grades!

10. I fear my CAP might not be as impressive as my peers in CS1010, as mentioned. I've come to the conclusion that in the long-term, my highly-developed skills with algorithms will give me an edge over them. Perhaps this can be shared with future batches (are there still any?) to allay their fears.

11. Curious, but how would the tutors be helping students who have done comparatively badly for the midterms?

12. See above (assuming you're reading it respondent-wise, not question-wise!) (It's the long comment about disappointment on the apparent discontinuation of Scheme)

13. is there a way to cure the lack of mental dexterity and agility?

14. I'm mainly concern about grades. everything in scheme has been great but its would be heartening to know what kind of grades we will be expecting in contrast to the 1010 people. I don't regret taking scheme but this is just bothering me somewhat.

15. I hope I do well ):

16. None whatsoever

17. (define concerns null)

18. Nope, thank you. You are great prof and tutors.

19. no I dont.

20. I have no idea how to prepare for scheme exams. I can complete the missions, but am not sure about being prepared to take exams.

21. Tricks during exams. Sometimes just a simple tweak can turn a mind-boggling question to a piece of cake. But I just cannot come up with it. Help!

Skip: 22 (51.2%)

It is common for some students to be concerned about their grades at this point. Moving forward, we will do our best to help the students who are falling behind by pairing them up with "buddies". Tutors will also be paying special attention to them. Every week, the tutors get grilled by me on how their struggling students are doing.

There will also be a re-midterm next week for students to "redeem" themselves. Those who didn't do well in the midterms had better be revising to make sure that they UNDERSTAND how to APPLY the concepts that they have learnt thus far. There are really no real tricks. I think it's mostly just practice, practice and more practice. There's one secret to success in life, it's called HARD WORK.

Students also have to do their part by working harder if they are not doing well. They should attend office hours which start again this week. As for getting on the Dean's List, I had already sent you people the following article. The secret is quite simple: CONSISTENT WORK. Most can't do it because they lack discipline.

Students also need to get over their grades. Grades are here for a reason and they matter for only a very short while -- not more than two or three years after graduation. For those who focus on honing their programming skills sufficiently, grades might not matter AT ALL. There are many paths to success in life.

Last updated $Date: 2015/02/26 13:12:25 $