| |
Results of CS1101S (Semester 1, 2007/2008) 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.
-
Allow
Lecturers 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 CS1101XYZ version. Scheme is indeed an easy
language, but that doesn't imply that CS1101S is easier than CS1101XYZ.
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 TA and 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. :-)
I really appreciate the feedback. We do act on the feedback to improve the
teaching of the class. One of the notable outcomes from this year's feedback is
the setting up of a peer mentoring Scheme where the students who have
demonstrated mastery of the material are paired up with students who have
somewhat fallen behind. This was a suggestion from one of the students and the
teaching staff decided to take this up. The class is fast and we try not to
leave anyone behind. :-)
Total Number of Respondents : 53/57
This is a
very common distribution. In general, about half the students who take CS1101S
have some programming background while the other half do not.
2)
Essay
If your answer to the above question is "Yes", what
programming languages do you know?
|
1. C,C++,Java |
2. C++ |
3. - |
4. VB, Java, C# |
5. c, i have learned that for only about one month |
6. C++ Bit of Java |
7. I have done basic programming in C, C++ and Java |
8. PHP - currently inadequate BASIC/ VisualBasic C |
9. Java, C++ |
10. I know a little bit about Pascal |
11. Only some syntax about C..-_-|| |
12. C++ and a bit of Perl |
13. C++ |
14. Java C++ |
15. Visual Basic, C++, Java |
16. C++ |
17. c java |
18. Pascal |
19. basic, pascal, C, Java |
20. C |
21. C++ Java |
22. C++ |
23. I know Java and C++ where the programming code was
although long but due to the use of loops and all, the code was easy to
write. |
24. C++ PHP |
25. c++ |
26. Pascal, Java |
27. C++ (very little), foxpro |
28. Pascal, C++ :) |
29. C++, Web Dev languages |
30. Visual Basic.. but I almost forgot it... |
31. C, C++, Java, C#, JavaScript, VBScript, HTML, ASP,
XML |
Seems like
the majority of those who know some programming have C++ background this year.
3)
Multiple Choice
Did you know Scheme before taking CS1101S? |
Response |
Percentage |
Yes |
1
(1.9%) |
No |
49
(92.5%) |
Others
1. Just heard of it as an MIT-developed language
2. I knew scheme existed and that it was a functional programming
language but not the concepts
3. - |
3
(5.7%) |
In general,
most students who take CS1101S have no idea what Scheme is all about when they
sign up. It's quite amazing that we have one student who actually knows Scheme
this year!
4)
Essay
Why did you decide to choose to take CS1101S instead of
CS1101XYZ? |
1. Because I actually really bought that claim that
"Scheme is for beginners." |
2. students tt have taken it seem to find it interesting |
3. My senior told me it is very interesting. (I told him
I like recursion :P) and he is right! ;) |
4. Thought i should take up a challenge...since i already
knew a fair bit of java. |
5. Senior said cs1101s is harder. All of my friends are
taking cs1101xyz. I want more challenge and being different, so I took
cs1101s. |
6. Smaller class, good lecturer, looks more fun! |
7. hear from senior, get a good lecturer |
8. (define (reason-chose module) (and (fit? (timing
module) schedule) (interesting? (description module)) (not (similar-to-JC?
(topics-covered module))))) (reason-chose CS1101S) ; (begin (set!
meaningful-names (understand? code) ; meaningful-names)) |
9. To challenge myself. Also, since we are going to learn
Java in the end, might as well learn two languages in the meantime. |
10. I heard from my seniors that Scheme is cool... |
11. I thought it was going to be challenging and exciting
to do scheme and more importantly I wanted to know whether I would
survive. |
12. I felt it would be challenging as well as it being
more niche then java would give me a better experience. |
13. I find it more interesting and more challenging. |
14. I think it is a very good way to practice thinking. I
believe university experience is mainly to meet different people, you
see things from different perspective, and to stretch my mind. I think
CS1101S is really a very interesting module that shows me a different
way to think |
15. Thought it was interesting and it's a good way to
learn to THINK.. very hard.. |
16. I was exempted from CS1101XYZ. |
17. Heard that it would reinforce basic programming
principles and disciplines. |
18. I think it's better to learn concepts of programming |
19. Compulsory for double degree. |
20. Because Scheme sounds like easier than Java after
attended the intro workshop. In fact, it is harder than Java. |
21. Honestly, since I went back to China, I was absent
from the course briefing. In other words, I know nothing about the
module. When I was bidding for the modules, a friend of mine told me the
module is easier compared to XYZ, and students can easily get higher
marks...-_-|| |
22. Scheme is fun and challenging!! However it is too
"fun" that I might not pass it.... |
23. It sounded interesting and easy to learn. Furthermore
I was impressed with the way the lecturer "sold" this module during the
workshop held before term started. |
24. I have known Java before, and I want to challenge
myself :) |
25. coz I think it's more challenging, and I also want to
learn new programming language |
26. I wanted to learn more about computer science and
concepts in programming instead of taking a subject to merely assist me
in getting a job later. I am glad I learn things like higher-order
procedures and recursion/iteration and I feel like I wouldn't have
learnt these in CS1101XYZ. |
27. Because I wanted to feel challenged and understand
the concepts rather than the "language". |
28. Because I heard it was harder and wanted to take up
the challenge! |
29. Thought scheme might help me understand java or other
programming languages better. (Should be true right? =X) |
30. Only module offered |
31. It seemed more interesting and i had feedback from
friends that it would be a more interesting module to take. |
32. Because I wanted to learn more |
33. I didn't wanna compete with those pros who already
had a lot of experience with java. There's no bell curve. The group
taking scheme is much smaller than those taking java, so it's a "warmer
and cosier" environment. It's better because i think we get more
attention. You and the seniors promised that we'll have a different
perspective of OOP (and/or programming as a whole), and I wanted to
experience that. |
34. I wanted to get into S.P.C. for which my seniors told
me that it would be quite good if I take scheme. |
35. Want to learn something new |
36. Cause i thought i would be a challenge and hopefully
i can rise up to it. |
37. I thought no difference since I expect to face (much)
difficulty either way. Since Java was so hard to bid i thought no harm
going for Scheme since I'm kinda fine either way. Even when Dr Ben
offered a free transfer I *thought* no harm continuing in Scheme,
but.... .... |
38. I thought it would be easier. |
39. I want to learn how to THINK! |
40. first of all, it's no need to take a module to learn
java. self-study is enough. secondly, my senior told me I will gain a
lot from CS1101S. |
41. I like challenges. |
42. It sounds really cool during the scheme introduction
workshop. |
43. From what Dr Ben told us when we were being
introduced to scheme and java before the FOW, I seriously thought that
Scheme would be easier to understand.. I also thought that it would be
better to be in a smaller lecture group. |
44. I think CS1101S is way more fun and challenging than
the normal CS1101XYZ module. It is more interesting compared to the
other languages I know. Also I wanted to apply for SPC. |
45. Required for DDP (I think) |
46. Learn a new language |
47. It's compulsory in DDP, and some seniors said it's
cool. |
48. I was a mathematic major student in high school. I
heard from my senior that I should choose CS1101S because I have a
foundation in mathematics. In addition, choosing CS1101S fitted my
schedule. |
49. To learn more, to be smarter, to be different from
most people. |
50. Interest in Mathematics |
51. ...i chose cs1101s accidentally. I didn't know the
difference between S & XYZ, so i chose randomly >.< |
52. Wanted to take CS1101XYZ as I was told by seniors
that I should not waste time on something unnecessary such as Scheme.
However, I was interested in learning a new language. Being caught
between the two, the situation solved itself by making the only courses
to fit my schedule be CS1101S and CS1101Z. Of which, CS1101Z was highly
contested for during the bidding, leading me to decide on CS1101S. |
53. I was interested in SPC and thought scheme would be
helpful for that. |
Skip:
0 (0%) |
Like last
year, some people took CS1101S because it is a requirement for the Special
Programme. With the introduction of the CS-Math Double Degree Programme this
year, some have also taken CS1101S because it is a requirement for the DDP. From
what I have seen, most of the DDP students have done very well because CS1101S
covers a lot of concepts that are closely related to discrete Math.
What I am
concerned about are the students who got into CS1101S because they blur. I
believe that the impression for student 21, "a friend of mine told me the module
is easier compared to XYZ, and students can easily get higher marks" is wrong.
Traditionally, CS1101S gives out a larger proportion of A's because the class is
small and not subject to "The Curve", but more significantly because the calibre
of the students is *substantially* higher. Students who are looking for a good
grade from an easy class are likely to be sorely disappointed.
|
|
1)
Multiple Choice
How do you find the lectures? |
Response |
Percentage |
I have no clue what the lecturer is talking about most of
the time |
1
(1.9%) |
I have no idea what's happening half the time |
5
(9.4%) |
Lectures are no different from the other classes on
campus |
6
(11.3%) |
Lectures are clear and I am able to follow the material
quite well |
19
(35.8%) |
Lectures are way cool. Easily the best class that I've
taken at NUS (not like I've taken a lot, but...) |
14
(26.4%) |
Others
1. sometimes I understand sometimes I dun. I get the concepts but dun
understand the code.
2. Challenging to keep up
3. I am able to follow the material well but there are some topics in
which I don't get everything which is taught
4. Lectures are interesting!
5. I tend to get like maybe 70% of what is going on, but there are
certain days that I have absolutely no idea what in the world is going
on.
6. Lectures are interesting even though I do not understand half of
it most of the time. Its lively and engaging.
7. You're good as a lecturer for scheme, as in I understand most of
what you're explaining to us. Or will understand after a bit more
thought after lectures. I think I get most of what was taught, with the
exception for the harder maths, as my maths is pretty bad.
8. The lectures are cool! The materials are interesting, definitely
my best class! However they're somehow overwhelming for 2-hour lecture.
Cannot follow without reading about them before class. |
8
(15.1%) |
Skip |
0
(0%) |
Seems like at
least 90% of the class is following the lectures reasonably well. I am pretty
satisfied with this feedback. It is quite impossible for me to ensure that 100%
of the class are completely on top of the material for the lectures,
fundamentally because the pace of the class is very fast. If I slow down, I will
never be able to finish covering the planned syllabus. Lectures are paced to
ensure that the median students follows comfortable. Lecture slides are made
available on IVLE 3/4 days prior to lectures to help students who need a preview
to follow the lectures.
Why is the class so fast? Because it IS the ADVANCED introduction
to programming class at NUS. Students who want to go slow have the option of
taking CS1101Z and therefore it is not fair for me to slow down the students who
sign up for CS1101S for the roller-coaster experience (i.e. wind in their face
sort of experience). Got complaints near the beginning of the semester when I
slowed down a little bit to let some students catch their breath - but I think
the complaints were quite fair.
In any case, if the students were asked the same question after the first 2/3
weeks of lectures, quite sure that I would have some 50% indicating that they
have no idea what's going on. One of the reason why many students now (after the
middle of the semester) say that they are following well is also because they
have gotten used to the pace -- and to the Scheme syntax.
For the uninitiated, Scheme looks kind of weird and obscure with all the
parenthesis everywhere. My hope however is that by the end of the class, a
substantial number of students will learn to appreciate Scheme like Shakespeare
and when they start writing code, it's like poetry in motion (this is called
Wishful Thinking.... which we do a lot in the class).
2)
Essay
Feedback for Lecturer Ben Leong. |
1. Good! |
2. It's the only class where the lecturer takes a
personal interest in every student ;) |
3. pace is reasonable most of the time. classes are
interesting. Prof Ben's nice and funny. :) |
4. Very good. For me, I learnt from you not only the
programming concepts, but also some optimistic attitudes towards study
and life, which I think is very helpful. |
5. You are a good lecturer. Sometimes you go through
things too fast especially if people ask a lot of questions at a
particular lecture. I know you keep saying that lectures are not enough
but I feel a lot of students would like to understand as much as
possible in lecture first before reading the slides on their own.
Sometimes, some students also ask questions that are answered later in a
few slides. Perhaps what you could do is, if you think you are going
through a particularly tough-to-understand lecture, you could inform us
beforehand to note down questions on a piece of paper first and then you
could answer the questions either during the break or after class. |
6. quite good |
7. He is cool and the way he teaches is mindblowing |
8. I don't think there is any method i would prefer to
have the lecture in, just keep the webcast, it's a life saver... |
9. Dr Ben is far more engaging and most other lecturers.
Although one might attribute this to the smaller class size, I feel that
it has more to do with the teaching style. Most other lectures serve to
propagate information and knowledge, while tutorials serve to validate
understanding. For CS1101S however, Dr Ben actually teaches during the
lectures and periodically checks on his audience to ensure
receptiveness. |
10. You've put in a lot of hard work lecturing for the
class. Thank you very much and keep up the good spirit. |
11. Very fun lecturer. Easily the most interesting
lecturer I've encountered. Lectures are almost never boring with him.
Speaks too fast and in Singlish sometimes, which might be a problem for
foreigners, but definitely no problem for me. In fact, I can relate
better to him this way! |
12. Great lecturer. Tries to cater to the slower students
since the faster/brighter ones can make do with slower pace but not the
other way round. Haha. Incorporates some jokes during lecture time to
make it less stressing and probably to "extend" our attention span,
especially dealing with things that are cheem. Has many many versions to
his lecture. From V1 to V1.11 for eg. Hahaha. applies to PS, DG and rec
too. really dedicated to his work. Awesome. (5000 word limit is like too
much.... longer than any essay I've written) |
13. You're very dedicated to teaching. That's what I
really appreciate. Thank you! : ) |
14. It's quite difficult for me to listen to him in the
first time. He talk quite fast :(. But now, I can listen and understand
what he says :) |
15. Maybe cut back on the administrative stuff at the
beginning of the lecture so people will have more time to ask questions
later. |
16. The lectures are clear, fun and thought provoking!
Great job, prof! |
17. maybe he needs to emphasize/reinforce the main point
he is trying to teach us... sometimes, I cannot catch the main point. |
18. Cool! A lot of laughters. |
19. Pretty good, sometimes rushes through things, but I
suppose it doesn't happen that often |
20. I like your lecture style! |
21. I wanted to choose the "I have no clue what the
lecturer is talking about most of the time" option just for kicks, but
decided not to :P Nothing much for feedback, it REALLY is my favorite
lecture in nus so far... and i like the fact that you can crack and take
jokes. =D oh, and all the best being a father! ^_^ |
22. It would be extremely good if he speaks a little
slow. He goes too fast. |
23. He is the most interesting Computing lecturer I have
ever seen. Humorous, intelligent and warm person...haha:) |
24. You are cool Professor. It's fun to study the module.
You make it a lot of fun. |
25. i get the concepts but dun understand the code. |
26. Dr Ben is a very enthusiastic teacher, but he should
talk slower. |
27. Cool Lecturer, but find his lectures a bit fast
paced. Understandable and clear though. |
28. Examples are good... |
29. Dedicated, reliable, kind, easy to relate to and
understand. Lectures are enjoyable and fun! |
30. Very good! Friendly and easy to approach. Explanation
always is very good. |
31. You're good as a lecturer for scheme, as in I
understand most of what you're explaining to us. Or will understand
after a bit more thought after lectures. |
32. nice guy |
33. - |
34. Thank you, Dr Ben. You are cool and sometimes make
the dying class revived. However, at the begin of the lectures, the pace
of class is a little bit faster.. |
35. Excellent Professor...way cool. Does not deviate from
the topic and is very smart and hence a suitable teacher for scheme.
Very IVLE active...i mean he probably does the most stuff on IVLE...than
any other prof in NUS. :) |
36. Great Teacher |
37. Nothing much. Pretty comprehensive slides. *Thumbs
up* |
38. I think that he present the idea quite well. But in
some cases, I have to practice on Dr Scheme to understand how it works.
I think that he should use the interpreter to run all the codes that is
in the lecture. It might be helpful if the student hear and see the
result. |
39. Very clear, creative and humorous. |
40. Actually, Dr. Ben is the most enthusiastic lecturer
in my first year here :) Thanks for giving us new knowledge and great
care for the class! Best wishes to your family and your newly baby :)
|
41. He is a very fun professor. His lectures usually are
clear but they really make you think hard and dwell on what is taught in
class. I think overall he is doing a great job. |
42. Keep up the good work! Very comical and cute too. |
43. Superb! Although sometimes tend to go too fast during
lectures. |
44. Fantastic lectures given and I really like it.
|
45. Not much .. Lecturer Ben Leong is as good as they
come I suppose... There are some lecturers who can make the class very
interesting by infusing humour, others who dazzle and snap on everyone's
attention (e.g. Prof Tay Y.C.) but those are just other styles of
lecturing and Lecturer Ben's style is pretty effective and good in its
own way :) |
46. Speak a bit slower. And don't assume everything is
very easy! |
47. At first, it is quite hard for me to get the picture
of the lecture, since I cannot pick up the speed of your perfect speech,
haha. I had to listen to the lecture and transferred it to the English
which I could get used to easily, then I would translate it into my
mother tongue, think about the problems in Chinese and find the
solution..-_-||That is to say, during the whole process, many procedures
are applied..:P. Fortunately, since I get used to the lecture, I can
cancel one step, although it is not efficient enough.. However, I will
try my best and I like the relaxed atmosphere of the lecture, hehe,
though I cannot get the point of the perfect jokes.. :P |
Skip:
6 (10.5%) |
Thanks for
the kind remarks. :-)
Despite the comments to speak slower, what's clear is that I've ALREADY
improved.
:-) Only 30%(?) say I speak too fast? Used to be like 90%. Hehe.
Since I'm been lecturing for three semesters already, I can safely say the
following: (i) Hard to slow down. I try, but I fail 'cos cannot help but speak
fast when I get excited about what I'm talking about (which happens a lot). It's
like a reflex action; (ii) Speed of speech doesn't really matter all that much.
What matters is whether the students understand what's going on, which seems to
be happening.
Will still try harder to speak a little slower. What people need to do however
is just to put up their hand and ask me to repeat if they don't understand what
I say. Look on the bright side. If I speak faster, it means that I can repeat
myself more times during a two-hour lecture!
With regards to the remarks about being rushed sometimes. The problem is that
it's very difficult to estimate exactly how long it takes for me to cover a
topic. Because the lectures are feedback-driven, my pre-planning estimation can
go out of whack on the ground. Some topics I think are complex, people seem to
understand without trouble. Others that I think are intuitively obvious, nobody
seems to understand? We just have to adapt as we go along. Also, it takes me a
while to get a handle on the pace that is "comfortable" with the class (perhaps
not with everyone as I explained above, but with the majority).
9)
Essay
Please let us have your suggestions on how the teaching
for CS1101S can be improved. |
1. Probably some lab sessions |
2. Its currently pretty good.. nothing that starkly
requires improvement.. altho like they say there is always room for
improvement.. haha.. Such as hm.. Less typos.. problems sets.. esp. PS
2, needs to be way better documented (almost everyone was lost ... and
required someone to clarify or how the graphing works) |
3. I followed well in scheme. But I think some of my
classmates do suffer a lot, during lectures and doing problem sets. I
think especially at the beginning of this course, too many new concepts
are introduced for us. For some guys without programming background, I
don't think it's easy for them to handle. Besides, I do think PS2 need
to be clarified a bit during lectures so that it won't take us lots of
time to think about the key ideas. |
4. i hope the lecture can cover more basic rules in
scheme language. e.g. primitives. |
5. Personal attention on students The prof. should go a
little bit slow. I don't know actually as I studied very hard for the
mid terms but then still I ended up with a very bad score. So even I
don't know where I am wrong, it can be time management problem or the
paper was tough. |
6. recitations should have problems very similar to
exams. gives you the practice you need to be confident of exams. |
7. Probably can have some group discussion. Currently I
feel kinda left out, so I have to fight on my own:( |
8. It's ok like that I guess... |
9. CS1101S has 3 hours of lecture, 2 hours of Discussion
group, 1 hour for recitation. 3 hours for lecture is not enough to
explain and clarify everything. I think that we should have good
students (the one who understand most part of the lecture) help the
other. |
10. More lecture hours would be better... |
11. I hope that there will be more and more contests, and
let students have more times to do the contests. |
12. It's already great! =) Perhaps a better introduction
for "what we are suppose to do for problem set" would be good tho...
maybe go through in lecture, explaining what the problem set is about
and what exactly are the questions asking us to do. |
13. ~~keep going |
14. Some competition problems...should be awarded extra
credits...so that lazy oafs like me...who can think of a algo but wont
take the trouble of writing the code will set out to do the
problems..... |
15. Maybe can go a bit slower for the weaker students to
catch up. Emphasize more on basic concepts (spend more time on them). |
16. Nothing, everything is fine. |
17. Actually I think it's OK. |
18. Extended deadlines for all PSes |
19. Can try making more connection between different key
concepts. (Though a lot better than other modules already..) |
20. The schedule of the PS could be improved. It could be
such that the a new PS is released only after submission date of the
current PS is over. It seems to overlap now and is a bit taxing on our
schedules. PS that also requires us to go through the DG first could
also be scheduled better. Sometimes it seems like we only have 2 days
after the DG to submit the PS and again, might be a problem for some
students. |
21. Please put more questions of the day. |
22. Not so jialat problem sets, though it might be good
to sink in some concepts. Overall, fine. |
23. I think there should be more problem solving sessions
so that we can improve our skills. More practice questions and reviews
would be helpful |
24. It would be great if we can have lab sessions where
we get to try things hands on while we are learning. I have personally
been doing that on my own laptop, but it would be great if everyone does
that. |
25. none really... |
26. I think we should have a lab session for studying
CS1101S. |
27. I feel that examples given are generally not enough/
explanations could have been done in more layman terms. In other words,
I had an easier time studying from the textbook than listening to the
lectures. However recitation and tutorial materials are appropriate. and
the problem sets are challenging enough to test concepts learnt and how
to apply them. |
28. At a slower pace? |
29. It's already quite alright in my opinion. |
Skip:
24 (45.2%) |
Frankly, I
don't completely understand the suggestion about introducing lab sessions. What
are people suggesting? That we make everyone sit in front of a computer all in
the same room and all write programs at the same time? That's going to happen at
the Practical Exam BTW. :-) Frankly, programming is quite a solitary activity
and there really isn't a point in making people all sit together to program.
Students can of course form study groups among themselves to do group-based
programming, but I see no reason for us to impose this on the students.
What might be good may be to have lab TAs, i.e. people manning the lab so that
students who run into trouble while doing the actual programming have someone to
turn out. I will think about this more carefully and maybe introduce this next
year. There are two issues: (i) money to hire these TAs; and (ii) scheduling
issues -- when should the labs be manned? If students don't come then it's a
waste of both time and money. Maybe we can schedule such sessions for the two
days before a problem set is due?
The discussion groups are held in the Data Comm labs for a reason. This givers
the Tutors flexibility to have some of you guys type out stuff in the computers
in front of you. Whether the Tutors actually do this is likely to depend on them
and also on the questions being discussed. What I need to emphasize however is
that it is not our intention to have your guys do all your DG exercises during
the actual DG groups. That will be a waste of everyone's time. What students are
supposed to have done is to have tried out the DG exercises beforehand and
actually discuss/ask questions during the DGs. Of course, we all know that some
people don't prepare for DGs -- but that's fine lah. This is already the
university and people can do whatever they like. :-P They just have to bear the
consequences of their own actions!
The suggestion to slow down is a perennial comment and people should have seen
it before (and my responses) in the survey for last year. Also, I made clear at
the beginning of class that CS1101S was going to be a fast-paced and that will
not going to change (otherwise it defeats the purpose of having CS1101XYZ what!
People who want to learn programming at a slower pace should opt for CS1101Z). I
also offered to help students who signed up for CS1101S by accident (and who
were quite perturbed by the pace of the lectures in the first week) switch out.
Several students took up that offer.
I am quite baffled by comment 5 on the student not knowing where he went wrong
for the midterm exam. I actually took quite a lot of pain to come up with a set
of solutions for the midterm exams and I released it immediately after the exam.
The student may wish to check out the midterm solutions. If he still doesn't
understand where he went wrong, he should come to office hours and one member of
the teaching staff can resolve this.
In every class, we will always have students who end up falling behind. What we
can do however is simply to spend more teaching resources helping those to fall
behind catch up. We have 8 scheduled office hours a week (and this usually
doubles during the exam weeks) that students should make use of. Also, we have
started a peer mentoring scheme. That's the best we can do (for now). Students
who still have concerns about the class should send me email and make an
appointment to come chat with me and I will see what else we can do for them.
Let me start by apologizing for the typos in the Problem Sets. Truthfully, the
Tutors have been working very hard at checking and clearing up typos in the
problem sets, but we are only human. :-( I do not agree with this comment "It
could be such that the a new PS is released only after submission date of the
current PS is over. It seems to overlap now and is a bit taxing on our
schedules" (comment 20 above). What matters is when each PS is due, not when it
is released. The release dates are actually for my Tutors (NOT the students)
since they check the Problem Sets for typos and updates prior to each release.
Given a choice, I would have preferred all the PSs to be checked and released at
the start of the semester (but of course, Tutors are also human and undergrads,
so they have classes to take also). Fact is: we have students who can finish and
submit PS 4 even before PS 3 is due. :-P Releasing PS's early gives flexibility
to some students.
With regards to the scheduling of due dates, I already tried my best. :-P It's
always a big headache because of constraints like public holidays, exams and
this year, a conference that I have to attend in the middle of the semester.
Maybe next year, the public holidays and stuff will make the schedule better?
Students are supposed to have prepared for the DGs. They shouldn't be going to
the DG's for answers -- and truthfully, the time given for a PS is really quite
irrelevant. Most students only start on the PS's like 3 days before anyway!?!?
Complaints on the Generic Arithmetic PS due date should be taken with a pinch of
salt lah. Generic Arithmetic was covered BEFORE the midterm vacations (i.e. gap
of 3+ weeks between introduction of material and PS due date). The DG for
Generic Arithmetic came late only because I cancelled DG for one week because of
the midterm exams. I could have NOT cancelled DG for the midterm week and had
the Tutors cover Generic Arithmetic instead -- but I would have gotten
complaints that I didn't give people enough time to prepare for the midterms
(and since Generic Operations was not covered by the midterm, people either
wouldn't pay attention or not attend anyway). Either way, I lose. I just have
to pick the poison I thought was more palatable. :-)
In response to comment 4 which suggests that we should cover more Scheme
primitives in class, my view is that CS1101S is able concepts. I actually don't
care too much about Scheme and the primitives. Primitives are introduced in
class at appropriate times to SUPPORT the teaching of concepts. They are not a
focus and will never be a focus for this class. Students who want to learn more
about Scheme primitives can go and read the
online Scheme manual.
Sorry to hear from Comment 27 that someone doesn't think the lectures are useful
and prefers to study from the textbook. I think that's just a matter of learning
style. My advice: do whatever works. Some students I know depend only on the
lectures to learn the material and don't read the textbook. Does that work? For
some people it sure does -- and I'm speaking from experience. :-) I only read
the textbook (and probably not in its entirety) when I had to teach CS1101S.
When I took 6.001 in MIT, I never opened the textbook either. :-P
10)
Essay
Some students have suggested that we have review
sessions. If we hold such sessions, what are the topics that should be
reviewed? |
1. okay.. so this is kind of not answering the question..
but.. Maybe we can have 2 kinds of review sessions? One to cover the
fundamentals and the other to cover harder things like applications of
the concepts.. |
2. List |
3. No particular topic. Just ideas in general |
4. Key points and the mistakes we usually make... |
5. Multiple representations |
6. No idea... |
7. order of growth. oop. more about concept, I am very
lousy at it. and review of frequent mistakes:) |
8. The lambda special form, and this might sound
abstract, but how to "think" like a computer. This only really occurred
to me in the mid term test but I realized if I could think like a
computer, many things could be solved more easily. My initial confusion
with recursion was also because I couldn't think like a computer. |
9. Order of Growth. |
10. for me : List (the Map, Filter, Accumulate, etc)
Orders of growth Higher order procedures |
11. binary tree, gaming... |
12. The topic should be clarified in the forum before . |
13. Of course, the most basic and the most difficult
topic. * The most basic (define, lambda, if, cond, ...) are for student
to revise what they have learnt, what they haven't understand clearly,
... * The most difficult like "Data directed programming", "Higher order
procedure" should be taken into account. |
14. lecture 10 onwards.... i also have miscellaneous
doubts in other lectures as well for which i think if the professor
gives personal time to each student, it would be good for the student. |
15. well mostly it will be back to basics recursion,
iteration and trees. |
16. higher order procedures |
17. Problem Sets and their relations to the stuff we
learn in the lectures should be reviewed. |
18. The one's....that are usually too long to be
compressed in two lectures but probably are..........stuff that requires
a lot of eye balling..etc |
19. Generic arithmetic |
20. I believe that review sessions do not really serve a
purpose. If anyone requires additional help, a one-to-one session will
definitely be more productive. Review sessions degrade CS1101S to the
level of common courses where the focus is in stuffing the students with
information and expecting them to regurgitate during the exams. |
21. Higher order procedures |
22. Order of growth Higher order Abstraction Uh... almost
everything lah. Lol. |
23. orders of growth....? |
24. all we have learned... |
25. Binary search tree. |
26. Fundamental concepts, recursion, iteration, and
basically half the contents taught during lectures. |
27. I think the concept of tagging and building a a
complex system by using different levels of abstractions are very
important and need to be discussed in greater details. Also the signal
processing and lists should be reviewed along with strings. |
28. New concepts that we haven't practised much |
29. The topics that should be reviewed should be
discussed nearer to the review sessions as we would better know which
topics we are weaker in. |
30. the order of growth sets Generic Arithmetic Multiple
Representations |
31. Those topics which are core to programming such as
orders of growth and ideas such as list processing which are very
important. asking students on the forum is the way to go. |
32. Data structure implementation. |
33. do not know |
34. Obviously everything |
Skip:
19 (35.8%) |
In response
to comments 24 ("all we have learned...") and 34 ("obviously everything"), I
think cannot review EVERYTHING lah. Lol. :-)
Seems like the following is the list of requests:
-
Common
mistakes - This one hor, I dunno how to cover also. I'm not sure what the
common mistakes are. What I will do however is to repeat some of the
questions on the midterm that a lot of people got wrong on the Finals in a
slightly different manifestation - just to make sure that people learnt from
their mistakes and actually understand what they were supposed to have
understood. If people don't learn from their mistakes then too bad loh. Will
get it wrong again! What else is new? ;-P
-
Basic recursion, iteration and
trees - okay
-
Order of Growth - okay
-
Lists and list processing -
okay
-
Higher-Order Procedures - okay
-
Multiple Representations -
actually hor, this one got nothing to cover You are just supposed to
understand that given a set of specs, you can implement in multiple ways. I
will not, I say again, I will not give you specs for a data structure and
ask you to implement the data structure in multiple ways (even thought I
have asked people to compute something in different ways).
-
Signal
Processing View of Computations - okay
-
Data
structure implementation - nothing left to cover. We already did so many
examples in class: set, queue, table, stack, class schedule and on your
midterm you have your make-food. People please go and learn from these
examples. If you are required to implement a data structure, it will
probably be quite simple with a little twist ... like what you got on the
midterm.
-
Binary search trees - will not
cover, will not appear again ever in this course. :-P You haven't had
enough? Not to worry, you will probably review them in gross detail in
CS1102S.
-
Generic Arithmetic - you've
already done the PS. Wouldn't come out again in the course, but you guys are
supposed to have understood the concept of data-directed programming and
coercion.
In response
to Comment 20 that review sessions are not useful, I guess it all depends. The
review sessions are optional anyway. Those who don't think they are useful,
shouldn't come! :-)
11)
Essay
Please let us have your feedback on the Compulsory Text,
"Structure and Interpretation of Computer Programs (SICP)".
|
1. Seldom use it.. coz it's online. |
2. Not really easy to understand for me. No answers to
check and understand. |
3. Is quite informative and detailed. Useful text! |
4. Quite comprehensive but not as good as Concrete
Abstractions... |
5. More relevant to the teaching material than concrete
abstractions. |
6. its too wordy and hard to understand. feeling as a
burden to read it... |
7. Can it republish again? I hate to watch it online. |
8. Its very useful. |
9. it's quite a good book. I'll keep it even I finish
CS1102S. Everytime I read it, I can find new and exciting stuff in it. |
10. The illustration is not very helpful if we understand
the lecture material well. Exercises are good, but will be better if
answers could be provided. |
11. Comprehensive, but lacking somewhat in the
instructional aspect. The design aspect isn't covered very well. |
12. I haven't exactly read the SICP. I am mostly relying
on the lecture notes, PS, DG and recitation. |
13. The textbook is quite good. It covers all the topics
in the lecture. But there is an disadvantage: The book is not available
in paper form. It 's out of print. So most of the students didn't read
it. The exercises in the textbook are very interesting so it 's good to
have a chance to work on most of the exercise. |
14. I wish I had the hard copy version. And of course
solutions to the exercises. |
15. It's really cool!!! Full of insights and helps me
clarify a lot of concepts and develop the way of thinking (not only in
programming). |
16. I only read it when I don't understand the lecture
notes. Haha. It's a good book, actually. This is because sometimes, I'm
able to find good explanations. |
17. terrible sometimes I can not get the point |
18. I rarely read the book (lol) |
19. I think its very useful for this module and is a must
read for better understanding of the module. |
20. I have not really been reading this book. |
21. A bit too detailed in places. |
22. I haven't read it yet |
23. I don't really use it. |
24. Very inaccessible language, which makes it a very
technical read and not helpful for purposes of learning (esp. for a
first course in computing) |
25. It's a good book.. |
26. Personally, I have not read the text sufficiently to
comment. I tend to learn most of the things I know about Scheme by
experimenting. |
27. I find it interesting and inspiring. The exercises
are quite advanced so they help me a lot in understanding the topic
better. |
28. Very Helpful in understanding but lengthy |
29. The textbook is very helpful. But it doesn't have any
solution for exercises :(, so I think we should have solution for
exercises in this book. |
30. it's not as detailed as i would expect from a text
book. |
31. informative |
32. Er... haven't read it much... |
33. As it is web-based, it cannot be easily copied over
to the PC. Perhaps with permission, we can spider that site and
reproduce and distribute it to students as a zip file. |
34. Uh, never really read it properly. Oops. |
35. An absolutely essential text. I have it in book form
thanks to my seniors and am now reading it like I would the bible! |
36. Certain examples are really confusing or tough and
sometimes don't really know how to begin. |
37. Comprehensive and accessible. Though not everyone
reads it because much of the contents are covered in lectures. |
38. It doesn't have answers for the exercises!!!! |
39. Very good book, clear and interesting |
40. It's quite comprehensive, but there isn't much time
to use it anyway. |
Skip:
13 (24.5%) |
SICP is a
love-hate thing. People either love the book or hate it. I never read the book
when I took the class, but I sort of like the book. I like it much better than
Concrete Abstractions. We used Concrete Abstractions last year. I switch back to
SICP this year.
12)
Essay
Please let us have your feedback on the Supplementary
Text, "Concrete Abstractions". |
1. I only read a few pages. But, I think the SICP is
better. |
2. I wish I had the hard copy version. And of course
solutions to the exercises. |
3. At first it seems more user-friendly than SICP, but
then later on it seems to get more and more off-syllabus. (maybe cos it
IS, after all, defined as the supplementary text) |
4. A bit clearer for me compared to SICP |
5. Sorry, but I haven't downloaded it yet... |
6. Similarly, have not read this text. |
7. Its very useful. |
8. never seen, so do not know |
9. Never read. |
10. It is a good book. The exercises scattered all over
the book make it easy to understand a concept. The applications are also
interesting. |
11. -same as above- :))) |
12. never read. |
13. Reading it is like talking to friend, because it does
not use much formal written English... |
14. haven't read it before :p |
15. I have this text but I haven't used it so far. |
16. Sorry, never read it before... |
17. Never read it...SICP is enuf |
18. I don't really use it. |
19. I love the applications at the end of each chapter.
They give a good view of how what we've learn can be used in real life. |
20. I have the hard-copy of "Concrete Abstractions". It
's not as good as SICP. |
21. Good book lah... |
22. I Haven't read it yet |
23. Ok.. doesnt really provide extra info? |
24. Rather good text. It would be better if the pdf has
indexed links, |
25. i don't have that book and never read it. |
26. I hope the examples have answers. |
27. no idea |
28. It's also nice and includes more details. But in fact
no enough time to read through. |
29. I've not touched this text at all. |
30. This one is a little harder to understand compared to
SICP but nevertheless its very helpful especially after you read the
lecture notes |
31. Usually don't read it |
32. Clear |
33. Uh. nvr really read it properly too. Oops again. |
34. Comes across better in the instructional aspect. |
35. Havent referred to it yet. |
36. n/a |
37. its easier to be understood than sicp, but sometimes
hard to find the main point of the contents. |
38. Helpful as a complimentary text. Some things are
better explained here, but I feel many could make do with SICP alone. |
Skip:
15 (28.3%) |
It has
slightly more accessible language than SICP and some neat examples, but some of
the examples that they use to illustrate certain concepts are overly complicated
in my view. That's why I'm only using this as a supplementary text. :-) Overall,
I think the decision on SICP as main text is correct (and it's not because of my
MIT-bias). :-)
These results
are not surprising. This process of reflections clearly helps some and not
others and probably not all the time. The fact that 30% of the class finds it
generally helpful I think is already good enough and indication for me to want
to continue to do this in future semesters. I think reflections helps most for
those who actually post them, but it already helps those who read the
reflections by their classmates.
Personally, as a lecturer, it helps me too because it is another feedback
channel for me as to how the class is going and where people are confused.
14)
Multiple Choice
Do the reflection questions/reflection process increase
your interest in Scheme and CS1101S?
|
Response |
Percentage |
Yes |
24
(45.3%) |
No |
9
(17%) |
NA - I don't post reflections |
14
(26.4%) |
Others
1.I don't necessarily reflect only by posting materials on the forum.
Sometimes I reflect about the concepts in my own free time (on the bus,
at home, etc.) and test them by actually trying it out. So even though I
am interested in Scheme and CS1101S, the reflections I do on my own and
the reflection questions in the lectures increase my interest. Sometimes
I discuss things with friends/classmates and that helps too. But the
process of posting things online doesn't really increase the interest.
2. Sometimes it did, sometimes it didn't. Many times I felt convinced
that Scheme is not really a very powerful language even though it proved
me wrong many times, perhaps the problem is with it being hopelessly
inefficient. I am still more impressed with Java and still sometimes
thought I should have taken the Java courses instead.
3. Depends on how well I've understood the material so far. Heh.
4. Sometimes yes but other times no because I do not really understand
what's going on.
5. Sometimes there are things to write, other times there is nothing.
I find it a turn off that some people write reflections for the sake of
it. They should refrain from random commenting and only post if it is
required. In general, most of the exchanges are meaningful and increases
my interest.
6. most of the time, i dunno what is going on. and the forums are just
plain user unfriendly, someone should go redesign it... |
6
(11.3%) |
Skip |
0
(0%) |
Good. With
this response, Reflections will continue to be a feature in CS1101S next year.
:-)
15)
Essay
If your answer to the previous question is that you do
not post reflections on the lectures, we would be most grateful if you'd
share with us why you choose not to do so. |
1. Waste of time. |
2. The forum gets too cluttered. |
3. i can reflect back on a lecture and basically sum it
up in a sentence or two.. so i do not see the point in posting something
which i think is subjective to each student. also, for fear of posting
something ridiculous?! |
4. Not sure what to post |
5. Since most of the issues raised are outside the
learning scope and difficult to understand. And if i have doubt about
the concepts taught in lecture, i'd rather go for consultation to
clarify. Unless the discussion is relevant, e.g. discussion on ps
problem, it's hard to follow. |
6. Dominated by extreme high level discussions |
7. The forums are too cluttered and sometimes, it seems
like after the first 5 or 6 posts, there isn't much to add regarding a
particular reflections question. |
8. I'll only post reflection if the lecture is very very
very difficult. Sorry... -_- |
9. most of the time, i dunno what is going on. and the
forums are just plain user unfriendly, someone should go redesign it... |
10. get no time to do so~~ |
11. Don't really know what to type in as reflections
since everyone's posting almost similar stuff. |
12. Usually, they're questions that are too difficult for
my current level of understanding... |
13. People ask too difficult questions.. plus no time to
think through it.. |
14. My friends posted all that I want to say and I don't
want to spam the forum. |
15. reading off a forum may help for some ppl but i
prefer face to face talk. |
16. I think it's just a habit. I don't go to the forum
often. |
Skip:
37 (69.8%) |
Okay. Thanks
for sharing. Reflections are optional. Fine if people don't want to do it. :-)
|
|
1)
Multiple Choice
Do you find the CS1101S discussion session useful in your
learning? |
Response |
Percentage |
Yes |
48
(90.6%) |
No |
1
(1.9%) |
Others
1. yes but the sessions always seem to be dominated by those students
who already have a good grasp of the topics at hand. not enuff
interaction between students themself as well as between tutors and weak
students.
2. Not that much because my understanding is not that good and the
tutors have to cater to the whole class, so sometimes I lag behind.
However, recitations are very useful as I get to understand concepts
better.
3. I think it's a bit like a time for solving homework :| Maybe it's
better to have actual discussion and get people knowing each other |
3
(5.7%) |
Skip |
1
(1.9%) |
Good to know
that the majority of students find the discussion groups useful. Shows that the
Tutors are doing their jobs. :-)
These results
are quite curious. Fundamentally, our discussion groups are either same or
different and it's a bit odd that half think they are the same and half think
that they are different. Ah well.....
3)
Essay
If you find the CS1101S discussion sessions different
from the tutorial sessions in other courses, what are the differences? |
1. The content is about programming which is more
interesting ;D |
2. firstly its an hour longer !!! but i find my session
much more different because we go through everything very carefully and
not just get the answers. Thus its cooler for our understanding. |
3. More interesting tutors and topics... |
4. Harder to cope. |
5. Much more intense, involved and thought provoking. I
learnt most of my stuff from here actually. |
6. Every tutorial is different in a way... so difficult
to answer this question!! =/ |
7. As mentioned above, normal tutorials tend to be very
much akin to "answer checking sessions". Even for non-technical studies
such as MNO1001, the tutors like to force things down our throats and
highly discourage discussion that challenges established viewpoints. |
8. More learning.. of nuances...that cannot be taught in
lecture |
9. its more relaxed, discussion based and a lot student
participation. |
10. solving problems is not the key point in CS1101S
discussion sessions, however, to understand the concepts introduced in
lectures is most important. Besides, CS1101S discussion group tend to
have a smaller class so that it's easy for tutor to clarify our
questions. |
11. Since we have 2 hrs. The pace is slower and is more
helpful. |
12. Smaller class, more interaction. Allows for greater
discussion and understanding. |
13. It's the nature of the module. In other tutorial
sessions, we go over the questions and sometimes we don't have time to
go over all the questions or we don't understand the solutions to some.
But in discussion sessions, we go over all the questions and with the
computer, we can also test solutions and have a better chance at
understanding the solutions. |
14. They're rather different courses in nature.. probably
any meaningful comparison would need to be done with CS1101XYZ |
15. More fun? Lol. It's the only tutorial that's taught
by a senior for now. Even though I've heard say that when you get
seniors as your tutor, they'll probably be uninterested in teaching you
and have no time outside of lessons to help you. But here, the tutors
are quite happy to help (as seen in the forums). |
16. Some of the questions are challenging. So, I can
understand the Scheme language better. |
17. Much more interaction between students and tutor and
tutor will usually give further illustration and information related to
the questions. |
18. More interesting. |
19. People are more active, discuss about the different
answers that they have more.. |
20. More interactive and greater help in understanding
lecture topics |
21. More participation from the students. |
22. Much more interactive. That's good!!! All tutorial
classes should be this way!!! |
23. In tutorial sessions, we rarely discuss together
about the problem, just give solutions for exercises. |
Skip:
29 (54.7%) |
Great sounds
like my Tutors are doing a great job. :-) With regards to the class size, I
would actually prefer even smaller discussion groups, but I will need more
Tutors. I think six to eight students per group would be ideal.
This is random trivia, but when I took 6.001 at MIT, my tutorial group had only
5 students! Given the level of teaching resources we have at NUS, 5 students per
group is not achievable. If I can achieve six to eight some day, already very
good. :-)
Main constraint is the number of Tutors. CS1101XYZ can take nearly any student
as Tutors, CS1101S can only take the former CS1101S students as tutors. That's a
much smaller pool. Since your batch is quite large and there are quite a number
of you who are really good in Scheme, perhaps more of you guys can sign up as my
tutors in 2 years and then we can have even smaller Discussion groups.
Interesting.
I larger proportion of students this year seem to think that we need more class
time ... but my question: more class time to do what? :-)
Hmm... Not
sure how to interpret these results.
6)
Essay
Please give us your suggestions on how we might be able
to improve the discussion sessions. |
1. allow some group discussions. |
2. Pacing of the TAs? Then again they are not
professional tutors in that sense so can't really blame also... |
3. dont post all the questions before hand...the
conceptual ones...should be introduced in class.........u know...like
the order of time...etc...should be a surprise...to test the student |
4. Not much I can think of. The current situation is
alright. |
5. hm... it's fine |
6. If recitation is cut, I'd still like to have the
recitation questions and have the solutions posted on IVLE. |
7. Do more problems! |
8. recitation may be cut off. and then, in every
discussion session, the tutor may recap the key concepts taught in the
lectures and then go through the questions. |
9. I think for discussion groups basically we solve the
problem ourselves at home and if we cannot solve then we can always
refer to the solutions on ivle . So the doubts can be clarified in the
consultation sessions and I think for discussion groups the questions
should not be posted on ivle beforehand. I mean if we are given the
questions in the class we can see how fast and instantaneously we can
come up with the solutions which will help in exams too.
|
10. More tutors!! The tutors are doing a good job, but if
the class size was smaller that might encourage more interaction. |
11. The DG on lists was good, for example, as there was
sample input and output for every question :) Earlier DGs could use this
too... |
12. Maybe discuss briefly how the questions can branch
out to similar but different questions. |
13. yes but the sessions always seem to be dominated by
those students who already have a good grasp of the topics at hand. not
enuff interaction between students itself as well as between teachers
and poor students. |
14. It's good. Let it remain as such. |
15. Put more questions. |
16. I think it's a bit like a time for solving homework
:| Maybe it's better to have actual discussion |
17. Nope, i think it's great! and it is good that it
differs from tutor to tutor as it is... makes it interesting to see the
different views and perspective of scheme. |
18. More interactive because some of the students are shy
shy one. I hope the tutors can teach us step by step because some of the
students are blur blur one. |
19. Try to keep 'smart' people at bay, they keep asking
all the chim questions and all, i really dunno what is going
sometimes... want to say something also dun dare to say... |
20. More practical practices... |
21. We could discuss problems sets during DG sessions
too. As of now, PS are not discussed at all. |
Skip:
32 (60.3%) |
In response
to comments 3 and 9, the Discussion groups are meant to help students learn, not
assess how fast/much they have learnt. Not posting questions beforehand is not
the way to go. While the questions are posted, students can not look at them
prior to the DG if they so choose, but that's defeating the spirit of the
discussion groups in that students are expected to prepare beforehand so that
they can go and ask questions to clarify doubts which hopefully helps them learn
more/better. I tried having a surprise in-class quiz during recitation and
people didn't take too kindly to it.
All in all, I
think we're doing quite well. Reason is that PS's 2 and 3 are significantly more
time consuming than the remaining problem sets. The averages are typically
higher after the midterm than after the whole semester. This year's result is
not very different from
last year's. But if you look at the answer to the same question at the end
of the course last year, people will see
how it eventually balances out.
2)
Multiple Choice
The problem sets are important for learning the material
in the class |
Response |
Percentage |
Agree |
42
(79.2%) |
Disagree |
3
(5.7%) |
Others
1. Concepts are there but the applications sometimes a bit... cheem
2. whilst I understand their practical applications, they seem to be
dwelling in unknown ground. they dun reflect what is need in exams.
rather often after we finish the problems sets we forget what we did for
it quickly.
3. I feel like I am suppose to agree but I cannot seem to do problem
sets on my own so in that case it does not help me in terms of concepts.
4. i think problem set is interesting. but not so related to what we
learnt, in my point of view.
5. Sometimes it is sometimes it's a bit hard to see the link.
6. Not in a obvious way. But I'm sure it is.
7. i half agree, half disagree. So there should be different practical
classes in which students discuss about the problem sets and different
practical questions which are of importance for the practical exam. |
7
(13.2%) |
Skip |
1
(1.9%) |
I wonder why
there are three students who don't think the PS's are not important for
learning. People who are looking at the Problem Sets from the perspective of
preparing for the exams have completely missed the point. Those who are only
looking at trying to do well for the class by doing well at the exams are
wasting their time in this course.
3)
Essay
Please let us have your feedback on the problem sets for
the class |
1. Rather difficult. Research out of lectures and DGs
required at times. |
2. takes a lot of time.... |
3. very good practice..... |
4. It is a little bit hard that sometimes I can't catch
the ball. |
5. They can be torturous! Yes they are fun, but I have to
be lying to myself if I said I am having fun when I couldn't even figure
out how to start some of the questions after staring at it for 5 hours.
The problem sets are tough enough that they test concepts, not just
memory work. I think the current situation is alright. |
6. The problem sets are ambiguous in some aspects. |
7. It takes time and effort but interesting and
beneficial. And it makes me feel good because we can 'solve' big
problems with present knowledge. |
8. Mostly difficult and requires a lot of time and
thinking. But it's a good stretch for us. |
9. Cheem, can potentially drive some people mad. =X |
10. Challenging |
11. Hard.. obviously. lols. Allow more time to work on
it? |
12. they are really challenging and that is why they are
really good for the students . |
13. Generally, the difficulty is okay and the time given
is more or less enough if we plan well. It's really helpful to apply
what we learned during the lecture and to gain a feeling of
accomplishment after finishing it every time. :p |
14. Sometimes it seems difficult to solve it in a short
time with my previous knowledge in some field, so I had to search for
the internet for some related background information, but it's fun to
know new things!! I draw the conclusion, after a suffering process, I
can have a cool result finally. |
15. Well it's interesting, but should focus on the
question, not focus on the story. |
16. Problem sets are very interesting and challenging. I
spend more than 19 hours a week primarily because I enjoy exploring the
many ways to solve the same problem, or perhaps even doing something
more than is required. |
17. Problem sets are not so difficult since we have
discussion group. Most questions in the discussion group open the gate
to the answer of the problem set. |
18. its challenging, it requires a lot of thinking and
application, but the pre-readings of ps waste a lot of time, eg ps3. |
19. There very little link between the lecture contents
and the problem set. |
20. As they are : "grow exponentially in difficulty but
(fortunately?) drop linearly in time" |
21. The problem sets are very well designed and they help
us solve problems on our own given some background information which is
the best part according to me . You have to take your own time to
understand it and see how to solve it. |
22. the first 3 problem sets can be easier to wait for
us, until we get familiar with scheme, then it could be harder. |
23. Vast difference in standards from dgs |
24. It's very cool, especially the next PS5 :) |
25. they are difficult but once you understand what they
want us to do then its no more than an interesting game to play but then
the time given should be flexible because we had our mid terms now and
they are still continuing. So most of us haven't yet started ps4 and its
due on thursday. I'm really worried that how will i do it. Problem sets
are not the cup of tea for every one. |
26. Interesting |
27. There are lots of typos and ambiguous questions. In
ps02 the code was not explained clearly, causing me to have to spend
quite a few hours just to understand what's going on. Though that's a
good thing to train - how quickly we learn new ideas. Questions like 7
and 8 in ps03 are ones I really hate, although from forum response many
think the opposite. The questions are also not creative enough to get us
to really think critically. dg04 was better in this sense I feel. |
28. The interesting problem sets allow us to have more
knowledge about other aspects of computing for ex RSA. It also allows us
to have fun (I hope, wrt the robot PS) |
29. Its hard for me, I have to say! |
30. They're very interesting and do help us gain new
knowledge. |
31. Typos.. plenty of out-of-sync in submission template,
problem set question, and .scm source files PS03 with that (totally
unrelated) background story was a cool touch. |
32. I mentioned it above, unclear of what exactly are the
things we must do. And it will be great if the problem sets are released
only AFTER the discussion group discussing the PS materials. |
33. Helpful since it let me understand the Scheme
language better. |
34. cannot get the connection sometimes |
35. very challenging!! |
36. Can get a bit too difficult in some parts. |
37. Less maths stuff. Some pses are about maths rather
than about scheme. |
38. The problem sets are cool. I particularly liked how
in PS2, if the connect-ends wasn't using the let special form and you
did calculations like (curve1 0) and (curve0 1) repeatedly, later on in
dragonize, you cannot perform (dragonize 200) because time taken is too
long. I guess you could improve the schedule and also have varied
questions that you can't Google answers for. |
39. Interesting, but for weaker students, it takes up a
lot of time. |
40. Beside the Scheme contents of the problem sets, the
backgrounds were also interesting |
41. whilst I understand their practical applications,
they seem to be dwelling in unknown ground. they dun reflect what is
need in exams. rather often after we finish the problems sets we forget
what we did for it quickly. |
42. They are extremely important as they will allow us to
understand the concepts taught to us. |
Skip:
11 (20.8%) |
This is how
it works: people must LEARN how to program and think about programs. If they
figure that out, they will naturally do well in the exams. If they don't, they
will not. It's as simple as that. Truly. DGs and problem sets provide students
with the practical experience that they need to learn how to program. DGs
involves simpler applications; Problem Sets drive home the point (hopefully).
People should do it in sequence, DG first then PS. That's about it.
When people say that the Problem Sets are not related to the lectures, what they
are saying is that we don't spoonfeed you, but that's intentional. If I tell you
everything you need to know, how do we foster independent learning?
On the difficulty level of the PSs, here's my favourite phrase:
what doesn't kill you makes you
strong.
4)
Essay
Please give us your suggestions on how we can improve the
problem sets. |
1. more warm-ups |
2. Having a more structured feel to it. |
3. there is no possibility to increase the difficulty
level coz they are already difficult but we can make it a bit easier for
every student to score high in it. |
4. Questions are linked so when we don't know how to do
the ones in front, the ones behind will normally be a problem.. |
5. Increase the number of small mini-sized problems.
|
6. Have more about practical problems. |
7. Should be more samples provided. PS3 is good as there
are many samples and explanations! |
8. More practical problem sets (like ps5)... |
9. I think the problem sets should be changed because I
have seen that the last years problem sets and this year's are almost
same which may lead people to refer to solutions of their seniors. |
10. For the PS questions, what the question requires you
to do should be more clearly distinguished.. as in it shouldn't be mired
somewhere in a wall of text.. sometimes it becomes unclear what the
question really wants you to do. |
11. Problem sets should have more optional questions of
much higher level of difficulty. Unlike contests, these are relevant to
the entire problem set and will probably receive better response. |
12. did i mention extended deadline? |
13. A minor suggestion would be to proofread the PS
before uploading. |
14. either you give time to explain the scenarios of the
problem sets in context of what we are suppose to learn or understand.
otherwise convert them to exercises practical to meet exam standards. |
15. Improve on typos, phrase questions clearer, and put
in more "cute" questions. |
16. Make it easier? Way easier? |
17. Make the questions more clearly.. |
18. Just keep it up... |
19. You could avoid what you just did. Try to avoid
overlapping questions. The previous question in this survey asked for
'feedback' and here you ask us 'suggestions on improving the PS' and the
content of both overlaps. This was also visible in PS3 where you had us
forging a message to Jaf and in the next question, you had us forging
messages between different people. If you could do the jaf question,
then I guess the next question isn't needed since the essence of both
question are the same. |
20. explain the questions in general at lectures. :) |
21. Well have a bonus marks question per problem set. |
22. The descriptions in the problem sets should be
clearer. |
23. They could be made clearer. I sometimes have to spend
more time understanding what the question wants than solving it. |
24. Do not make every question follow from the last. is a
problem if we get stuck. |
25. maybe from the easy one to the harder one |
26. Well, I hope the extension of deadline can be resumed
if possible since sometimes different deadlines will really come
together at one time unexpectedly. And I don't think it will really help
to eliminate the copying of code because those copiers are probably
running out time even with the extension. If more time could be given,
they will be able to figure it out on their own and learn more. If they
just want to rely on others, they will still copy without extension. So
please kindly keep such flexibility to grant us more chance to
survive... Thx:-) |
27. Don't make so cheem la, then can meet deadline
without extensions. |
28. nothing much really... |
29. make it simpler on what students are exactly required
to do. |
30. More interesting topics... |
31. Problem sets 2 and 3 were a lot of fun because they
involved some really comical scenarios. Generally I like my homework to
also reflect some real world scenarios which can be applied to, so maybe
that could be one way where the Problem Sets could be improved. (so far) |
32. Lesser pointless questions |
33. I think some of the questions should be more clear.
It's better to separate the background and the question in each
exercise. And there should be a couple of challenging questions for each
problem set :p |
34. Try to give all info in the problem set rather than
saying refer to SICP. |
Skip:
20 (37.7%) |
Some general
responses: first, it's hard to come up with a good problem set. Maybe I should
have a Problem-Set-designing Problem Set at the end of the course (see the
recursion) and you guys will understand the difficulties? It's not easy to
create a coherent problem set such that each question is of increasing
difficulty and we can make later parts independent of the earlier parts.
I actually developed the quilting problem set last year and it was a lot of
work. This year, my focus was on other things. Maybe next year, I will introduce
one or two new Problem Sets. It is not humanly possible with the level of
teaching support that I have to come up with completely new problem sets every
year. It is true that there might be some cheating where people copy solutions
from their seniors. If we catch these people, they are in deep trouble; but even
if we don't, they will still be in deep trouble when the exams come around (esp.
the practical) 'cos they would not have had the learning experience they should
have had. Personally, I'm not too concerned. What is important is fulfilling the
teaching objectives for the class.
In response to comment 34, all the info IS GIVEN in the PS. SICP is just for
further reading in case people want to read more. That's all. But even if some
of the info is in SICP, so what?? Don't be lazy lah! :-)
5)
Essay
Please let us have your comments about the Programming
Contests. |
1. The contests are nice and I solved some like the NUS
problem and some I read through and thought of a way to solve them but
didn't spend time writing the actual solution. |
2. I would love to participate in contests, however I
already spend most of my time tinkering with problem sets. In addition,
responsibilities and commitments to other courses mean that I should
avoid too many non-essential activities so that I can devote my time
them better. |
3. They are quite good.. evoke interest in scheme |
4. no time to attempt those... especially with hall
commitments together with other outside stuffs.. :P but it is a GREAT
idea! would love to attempt them if i had the time! =D |
5. Good, interesting. |
6. cost a lot of time |
7. Don't really have time to do them. |
8. Well they should not be incentive free...give us
incentive...we give u marks |
9. only appeals to the students that are not
struggling/dun need so much time to understand concepts/write code. |
10. Looks interesting, but I never really did take part.
Good for sieving out the A+s from the rest! |
11. I haven't participated so far. But its a good idea. |
12. Out of my league :'( |
13. Too little, but otherwise alright. |
14. They're really cool : ) I found challenges there! And
they did inspire me to learn harder! |
15. It's quite good! I hope there will be more
interesting kind of questions. especially something I've never seen
before :p |
16. Good! |
17. Good way to occupy the very good students.
Interesting to see what the other students among us are capable of doing
using scheme. |
18. The contests are very thought provoking yet when you
manage to win they give you a sense of achievement |
19. haven't tried them. |
20. Benefit some but not most. |
21. Challenging |
22. Time consuming but interesting and improves my
understanding. |
23. not good enough to participate in one... |
24. Never attempted as the PS already takes up so much of
my time. |
25. I haven't participated it as I don't have much time
to think about it. It is for pros.. |
26. It's interesting although most of the time I cannot
get best solution:P |
27. I've not tried them at all. Seems pretty fun though. |
28. Tough but cool lah... |
29. Interesting, but wastes too much time. =P |
30. no comments... |
31. Don't participate in it.. |
32. did i mention extended deadline? |
33. i like it. |
34. Programming Contests are great chances to practice
and learn how to think. |
35. I haven't yet participated in them but i guess they
are really interested as my friend was telling me the same. I plan to
participate in them from now. |
36. They are actually quite tough but we can gain a lot
by spending long time thinking about it. It's so sad I don't always have
that much time... :-( |
Skip:
17 (32.1%) |
Contests are
meant to be optional and to suck up the time for the students who have a lot of
time to burn. Seems like they are fulfilling their objectives.
While this batch of students seem to be stronger on average than last year's
batch, the participation rate in the Contests seems to be lower. I'm actually
quite surprised.
|
|
1)
Multiple Choice
What is your overall impression of CS1101S thus far? |
Response |
Percentage |
This is a horrible class. Truly regret choosing it. |
1
(1.9%) |
Should have taken CS1101XYZ instead. :-( |
5
(9.4%) |
Just like any other |
3
(5.7%) |
CS1101S is cool |
28
(52.8%) |
CS1101S rocks. Coolest class I have taken in my life. |
15
(28.3%) |
Skip |
1
(1.9%) |
Given that
80% of the class are relatively happy with it and 10% are unhappy, I think we're
doing okay. This is slightly better than last year.
Research has shown that students are happier with a class when they think they
are doing better in the class. This year's batch is significantly stronger than
last year's which perhaps explains the improvement -- or perhaps my teaching has
improved? :-P
I am sorry to hear that there's one student who thinks the CS1101S is a horrible
class. Perhaps the student can make an appointment to see me and we can see how
we can help him/her out?
2)
Multiple Choice
Has CS1101S been able to arouse your interest in
programming? |
Response |
Percentage |
Yes |
43
(81.1%) |
No |
6
(11.3%) |
Others
1. I have prior
2. well, i had interest programming b4 hand but while doing java and
c++, i used to design the code in mind very often but with scheme i find
it difficult to write the code, maybe because my first approach to any
question is similar to the way i used to do it in java or c++.
3. Partially. I think my main interest in Scheme is the theoretical
aspects of it; the functional programming paradigm etc.
4. Until now I used to use the same techniques in programming which
was taught to me, but CS1101S forces me to think and it has made
recursion seem so intuitive! |
4
(7.5%) |
Skip |
0
(0%) |
Look good.
:-)
I think we're
doing better this year. At the same point last year, 25% of the class would have
preferred to switch out -- and this year we actually have significantly more
students (about twice as many). I would attribute this to the strength of the
cohort.
This is
actually one of those psychology questions. Conceptually, one would imagine that
the results for this question would be the same as that for the previous (which
was the case last year) -- but it's not! There are two students who are glad
they chose CS1101S, but who would not recommend it to their friends. I'm
actually quite curious to understand why. Just for kicks. :-P
5)
Essay
Please give us your comments and suggestions on how to
make your learning in CS1101S more efficient and interesting. |
1. More real-life applications if possible. |
2. Practice makes perfect. Concepts are clear enough, and
I think different people have different learning style. I expect some to
be more abstract and connected, but others may not. |
3. First of all, the reason why i'll prefer CS1101XYZ now
rather than CS1101S is that i have been trying my level best and i
really studied too hard for the mid terms but then my score wasn't at
all good. So, i am really depressed with that and i think that although
scheme is good but had i taken CS1101XYZ, i would have ended up with a
good grade because i have learnt that language before. So the only
suggestion is that if the professor tries giving personal time to
students and sort out their problems, that could increase students'
interest in that. |
4. Less fast pace...like another class of 1101Ss...for
slower learners |
5. more class involvement. |
6. the pace is too fast.. i need some time to really
understand the matter not to mention practicing it |
7. Maybe randomly pairing a small group of people based
on their affinity to scheme (let the tutors be the judge to that) and
assign a time for this group to just meet up and discuss. It might help
those lagging behind and yet having difficulties to clear their doubts
in classes or forum. |
8. Use scheme to make some fun games and show to others. |
9. i need more than 24 hrs a day... |
10. just do it. |
11. More cool stuffs... |
12. RGD Q34, it would really depend on the calibre of the
students.. I understand there are many who really struggle on CS1101XYZ,
and they would probably die horribly if they were to take CS1101S....
RGD Q35, PS03 with that (totally unrelated) background story was a cool
touch. Could possibly do more of this.. maybe? |
13. Well, overall i am happy with the course.....though
some bell curve alternative should be present in this course as
well.....some people like me...do well with a comp and badly with pen
and paper...and hence are screwed in the mid terms.... |
14. Please also introduce some real-life applications of
Scheme to makes things more interesting! |
15. It seems I have no good suggestions... |
16. for my own opinion while i get concepts, i have
difficulty converting them to code. should have more coding exercises. |
17. It is good enough as it is! Not like we have too much
time to spare or I would say increase more problem sets/problem set
difficulty. |
18. More exposure to exam type questions, the creative
types prof ben comes up with. |
19. Solve as many problems as possible. |
20. Explore more problems of more varied nature and
difficulty. |
21. Problem sets quite interesting, but hard to do lehz.
Come up with more creative questions for DGs or rec once in a while. |
22. encourage students to share their newest and coolest
codes. it can be written by themself or found in the book or the
Internet. |
23. We should have competition programming as a core
component of the course. This will teach problem solving techniques and
improve our thought process. |
24. Explain difficult parts clearly and in a slow speed,
especially the Generic Arithmetic. |
25. read the textbook and do the excises afterward |
26. There should be more practice involved and more stuff
that helps us get better understanding of the module and what the
objective of the module really is. |
27. Difference between recitation and DG is too big..
recitation is a lot more easier than DG.. Make DG slightly more easier
to understand to help us in PS? |
Skip:
24 (45.3%) |
Comment 7 has
become a reality and we are taking up the suggestion. Thank you anonymous
student. Will such a scheme be helpful? Actually at this point we still don't
know, but we'd never know until we try. We're fortunate that the strong students
in the class are also nice and helpful. :-)
Comment 3 is
extremely interesting. We have a student who knows Java who thinks that it's not
doing well in CS1101S. This shows that programming background doesn't
necessarily mean that one will do well in CS1101S and may it serve as a warning
to future students who are considering taking CS1101S or CS1101XYZ. People who
only care about good grades please choose CS1101XYZ. Personally, I'm interested
in students who want to learn and I'm not quite keen to take too many students
also -- this year's batch is somewhat too big for my taste. :-) I think I will
request to restrict class size to 50 next year to make it a more cozy teaching
environment. And to respond to the request for personal attention: students can
come to office hours. If not mine, to one of the Tutors or TAs to get
personalized help.
re: comment 22, there's actually a lot of sharing of code in the IVLE Forum,
please check it out!
Regarding fast pace of class, cannot slow down. Sorry. Please see earlier
responses. Re: Generic arithmetic -- aiyah, it's really hard to explain. You
guys have to do it yourself to understand - and you have in DG 5 and PS4 ... of
course, the response in the survey was BEFORE you did your DG and PS lah so you
wouldn't have known. :-)
On exam question, er, already got A LOT of past year papers and solutions on
IVLE. Every year hence, there will be one more set per year. Situation will
continue to improve over time (but not like it's really bad even now). If you
are asking about going through exam questions in class. Frankly, not going to
happen because I don't believe in that! My philosophy for exams is very simple:
(i) I design carefully to test whether you understand what you are supposed to
understand; (ii) where possible I try to teach you guys some new things (scary I
know. :-P); and (iii) I prepared detailed solutions so that you guys can figure
out where you went wrong. The Tutors are currently preparing a set of review
question for the Practical Exam.
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. Great class, great lecturer, wonderful tutors, nicely
structured course on concepts of programming, awful language. My only
real issue with CS1101S has and I believe always will be the language.
But I guess that is not really relevant, so I wish to thank everyone for
a great job for this first half of the semester. |
2. Scheme is cool... |
3. I would have liked more of Scheme to be taught.
|
4. Make it 6MC |
5. Great! Some students who are studying Java told me
that the Java is difficult. So, I think the Scheme language is suitable
for those who are not good at programming. However, I hope that we can
learn how to turn our Scheme code into a program that anyone can use it.
For example, The Game of Nim can only be run in Scheme, my friend want
to play it but they don't have DrScheme, so I can't let them see how
cool Scheme is. -_-!!! |
6. I understood that this course is about programming
concepts. However I wonder how many programming concepts there are, and
what's exactly "programming concepts". Scheme is extremely powerful at
abstraction. Is abstraction the most important concept? And what's more?
Abstraction barrier, generic operators, object-oriented programming, and
so on,... I think they are all programming concepts. But what are their
relations in a systematic way? What do they look like in modern
programming language? In this course, does we have an overall view about
programming? Hope you will still have strong focus on the point that "we
used Scheme to learn concepts, not a language"! :) By the way, this
course is not easy, it gives me a lot of questions about programming!
And I think it's not over after completing this course.
|
7. It seems I have no again... |
8. Try not to give students the illusion that Scheme is
actually easy to understand? lols.. |
9. I think scheme is a very powerful tool for programming
and CS1101s really makes one focus on the concepts rather than knowing
how to solve simple problems. It makes you learn a lot about how
complexity can be managed in a simple and efficient way so that it can
be of practical use. |
10. I think it's cool and insightful! learned a lot of
new concept about programming. :) and discussions are most interesting! |
11. it mainly on application and algorithm. its fun and
challenging to solve the problems, but sometimes may make u desperate
too. always stressed when doing ps though deadline is far away... in
overall, this is a really fun course only if student knows whats going
on. |
12. PS04 recommends we start on it after the relevant DG,
but then that would leave us only 3-4 days to do the PS if we were to
heed the recommendations? |
13. After the midterms, I'm looking forward to Java so as
to have a breath of fresh air. |
14. if someone want to take this module, he need to work
really hard. |
15. The pace might be fast but if a person is able to
handle it I think they would definitely benefit from it and enjoy it
more than CS1101XYZ |
16. i'm so lucky that eventually I choose to take such a
good module. |
17. Problem sets should not get extensions. This only
promotes procrastination. An extension should only be given after the
original deadline has been breached. This will ensure that all students
try their best in the time given and not let it drag till they have to
resort to copying code. |
18. There should be seminar and discussion on contest
(after the contest has been ended). It 's the chance for students to
share the ideas. |
19. it's very maths, i dunno about java, but sometimes
the amount of maths drives me insane... |
20. well...most parts covered......mid terms should not
be a hundred mark paper...too many marks for small number of
questions...i get one question wrong and bang...am down by 8 marks |
21. Really enlightening. I'm trying to find the common
pattern of different algorithms to the same problem, and expect it to be
a very hard task and require experience and sort of mathematical
expertise. But I would like to see some inspiring remarks. Now the key
concept that inspired me is the relationship between procedures and
data. It helps me crystalize my thinking and proceed to a new level. |
22. nothing |
23. I think it would be very interesting if it emphasized
more on fundamentals for first time programmers |
24. Interesting yet not easy to handle. Cool yet
agonizing. Intuitive yet not so intuitive. Rewarding IF AND ONLY IF can
manage to solve problems. |
25. It is a wonderful module. I like its simple syntax,
so I can focus more on methodology. |
Skip:
28 (52.8%) |
Re: first
comment on "awful language", HARLO??? Anon student please make an appointment to
come and see me so that I can straighten out his/her thinking. Scheme is like
poetry okay!! What do you mean awful language!?!??? :-)
In response to Comment 6, you should ask your friend to program his/her own Game
of Nim in Java. If you can program Nim in Scheme, why he cannot? :-P
Quick response to some question about: please keep in mind that CS1101S is your
101 programming course. Even if you finish CS1101S, you are nowhere near
programming guru and you still have a lot more to learn. People ask for
practical applications. Given that you guys really don't know all that much, how
practical can we get. The best we can do is to give you some toy examples to
play with.
I'm currently in the process of proposing a Facebook programming course for next
Semester. People who want to do more "practical" programming can take that
course loh. One step at a time lah, but patience padawan ... while the Force may
be strong with you, your training is not yet complete. :-)
7)
Essay
Do you have any concerns about CS1101S? If so, what are
they and how can we help? |
1. No |
2. No concerns, no regret!! |
3. well, I came up with a lot of doubts while reading the
lecture notes which are still not cleared. |
4. Mid-term test is a killer as compared to previous
years (previous years mid-terms are no kid! ). This mid-term test
questions are very difficult to understand and too little time. |
5. Prof Ben, I am not so sure whether I should mention
this...During today's exam, you were talking to us after answering some
specific questions given by some of our classmates. Maybe I am a person
who is easily distracted, I find my thoughts are "interrupted" when you
speak to us, because I wanted to listen to you but at the same time I
wanted to finish my exam question...so cannot focus well. I think I
should learn to be more focused...but maybe next time you may address
the questions by talking to the student who ask it personally in low
voice if that question do not concern all of us...Sorry, I really do not
mean anything bad, I really like your lecture:) |
6. Sometimes, I can't 'see' the solution. You guys
probably can't help in this aspect; as you mentioned, taking Scheme
requires a bit of mathematical maturity, something which I think I'm
lacking. Also, with the recent midterms, I suppose many (including me)
are feeling depressed. Perhaps the 'steepness' of learning can be
reduced so that people can catch up. |
7. for my own opinion while I get concepts, I have
difficulty converting them to code. should have more coding exercises. |
8. JCC! Not the Jungle course in NS. The Java Conversion
Course. Hopefully things will work out. Heh. |
9. Somehow I don't feel like I'm programming, or worse,
that I know how to program. It could be because of the minimalist
syntax. It could be we are always doing small snippets of code, small
programs. I think it could be nice to build up to programming on a
larger scale. While it is true that the lecture and everything else are
building up towards that, I'm still not very convinced I can produce a
real program myself. Even worse, I somehow can't tell if I'm programming
by rote or by thinking. So perhaps it would be good if we could get
exposure to building up a program of manageable but respectable size, go
through the thinking of tackling different aspects of a program and
putting it all together. |
10. As mentioned above, copying of code, or more
specifically having to deal with such absurd requests. |
11. The workload is, by various accounts, definitely
heavier than CS1101XYZ.. Especially if one were to diligently prepare
for DGs.. It probably should be a 6 MC module at the very least.. |
12. yes, sometimes do not know how to answer the
questions which means I can not understand the questions |
13. time time... help? hmm... make it 6 MCs! :thumbsup: |
14. None so far. I'll definitely go for consultations if
I find some. |
15. a. Sometimes stuck by what the interpreter does. But
seems we will learn it later. b. the way of making order log n
procedures by the manipulation of parameters. 1 prm is ok, but how the
algorithm comes by adding 2 or more prm s? Some seems to be tricks of
matrix or other mathematical structures. c. Procedures that cannot be
translated from recursion to iteration (in the same algorithm). The base
case seems to be an infinite set.. |
16. if it becomes easier, more students will be able to
do well in these module, so that more and more students will learn and
love "scheme". |
17. nothing |
18. Not enough time to practise.. give us more than 24hrs
a day? lols.. |
19. I need more time |
20. We should have more classmates so that there would be
CS1101SX and CS1101SY... |
21. Em...... I'm still thinking. I'll tell you in the
Final Survey of this semester. :) |
22. well, i really need to have a good grasp in maths to
do scheme, i hope my level of maths is good enough... |
23. no concerns ..........yet.............should we be
concerned about something...? |
24. No, I don't, I think... |
25. Lack of Java knowledge. |
Skip:
26 (49.1%) |
In response to comment 3 ("I came up with a lot of doubts while reading the
lecture notes which are still not cleared"), please come to office hours.
My apologies to student from Comment 5. Will try to speak more softly when
asking queries during an exam in future. :-)
Re: comment 8. This JCC thing is actually something that I have thought about.
Perhaps have a short intro/bridging course for 2/3 weeks prior to the start of
the semester for students w.o. programming background. Scheduling is an issue.
Might work for the NS cohort. We'd see how.
On the comments about building a big system or Java knowledge, all I can say is
patience.... and remember that CS1101S is really only a 101-intro course!
On the copying of code in comment 10, all I can say is that it's wrong period.
It is wrong to copy code and it is wrong to let people copy your code. Just tell
the fella who wants to copy your code to go fly a kite. You can tell him/her it
comes from me. :-)
Finally, I don't know how to give you guys more than 24 hours a day. So sorry.
If I figure that out, I will definitely give it to you. :-P
|