| |
Results of CS3216 (Semester 2, 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
Lecturer to Respond - This survey also presents the lecturers with a
opportunity to address the concerns of the class and to clarify some issues
from the perspective of the teaching staff, which is also why this
particular page exists.
-
Reference
for future batches - Students always want to know about class before they
take it. For CS3216, it is especially important since this is a new class.
That said, it is also precisely because CS3216 is a new class that what is
true for 2007/2008 might not be true for 2008/2009. The only consolation is
that the lecturer does in general get a little smarter teaching a class the
second time round and things would hopefully be better the next time this
class is offered (probably Sem 2 of AY 2008/2009).
Total Number of Respondents : 44/51
|
Essay |
1)
Why did you decide to take this module?
|
1. It seemed interesting, challenging, unique and informative.
|
2. Sounds fun |
3. To do something different. Its like either do it now, or
forever miss it. With regards to qn 3, the assignments are
definitely not hard. But it takes up 100% of your time to make a
proper app. |
4. I wanted to try something no one else does before. And I was
interested to see how I can work with different kind of people
from different background. |
5. Thought it was interesting and different from other NUS
modules. |
6. It sounded interesting, and quite a detraction from the
normal NUS type modules. Also, thought it would be a good chance
to get my hands dirty with Facebook application development |
7. I dont know anything about how to write a web app. Taking
this module will help me to do this. Besides, I can meet new
friends, quite good lah.... |
8. I thought that it will be a fun experience. Being a facebook
developer sounds cool to me. And, the module will be something
very different from the normal boring NUS module anyway, so why
not right? |
9. I had intended to pick up web programming in an accelerated
manner through this course and at the same time learn about the
basics of software development. |
10. find it interesting and new. was addicted to facebook. |
11. Interest in web programming and find this new module very
interesting. Wish to know more ppl who share the same common
interest as me. |
12. To try out something new and learn facebook development and
to build on to my portfolio. To meet like-minded people. And I
prefer practice-oriented learning to theory-oriented learning,
since I like puddings. |
13. I wanted to meet more ppl. |
14. Its new and interesting, so I decided to give it a shot |
15. It was something very different from the usual modules found
in NUS, and it's a first time for this module, so I thought it'd
be fun to be one of the pioneers. Plus it was a Facebook module
which allowed me to develop my ideas and whatever I want, and to
create applications I always wanted to. |
16. To learn more about facebook and social networking sites.
|
17. I perceived this module as a vibrant module where I could
meet with interesting people in addition to a professor who has
broken off from the norms of NUS. |
18. Partly because I was in a research group that needed to
deploy a game to collect network-usage data. Another reason was
that I felt that it would be challenging to take a module
without knowing how exactly it will end. |
19. I wanted to take a module which actually allowed me to do
what I want, make what I want. |
20. Hope I can do something cool; make new friends, learn new
things... |
21. I am interested in Open Source and want to get the hang of
FB programming. |
22. Mainly curiosity... again :) |
23. Great opportunity to learn anything and everything. Chance
to do something out of the world. |
24. Out of interest |
25. I thought that a module of this nature would be interesting,
and that there was something i could take away from it to apply
in other modules. |
26. I want to try something new |
27. by then the application of this module started, i was just
starting to using facebook. think it would be great if some time
could use the app i made on my own. |
28. Hoping for something cool, which I guess, I got more than
just cool. Haha |
29. I wanted to meet and work with interesting and smart people.
A course like this would be very likely to attract talented
students to join it. |
30. 1. Ben is cool! 2. Facebook and Web 2.0 is the future of new
media. As a CM student, I think it is necessary to know the
theories and technology in it.
|
a new module it is challenge know more people who have strong
programming skill or enterprise spirit Dr.Ben :) |
31. The FB platform is currently the hot new thing and it was a
great chance to get involved and see first hand what the fuss is
all about. |
32. I thought it's fun. |
33. To learn new skills and meet other people |
34. I wanted to give myself an excuse to learn web programming
languages (PHP). |
35. Coz its fun and SOMETHING USEFUL and practical! I can
actually create something and show it to the world (unlike the
other not so fun modules) |
|
Skip: 7 (15.9%) |
|
Interesting that students take CS3216 for a variety of reasons.
|
|
|
|
Given the diversity in the class, I have found that it is very difficult
to ensure that everyone will achieve the same amount of learning. I
guess if 60% of the class think that they learnt quite a lot, we ain't
doing too badly for a first try.
|
Multiple Choice |
2)
How would you assess the difficulty of the
assignments? |
They were too easy |
0
(0%) |
They were not much of a challenge |
5
(11.4%) |
Average, just like my other classes |
10
(22.7%) |
They were challenging |
26
(59.1%) |
I almost wanted to commit suicide |
3
(6.8%) |
Skip |
0
(0%) |
|
I'm satisfied that the assignments are sufficiently challenging and yet
not overly so.
|
Multiple Choice |
3)
How do you find the module workload? |
Too light, I want more work! |
0
(0%) |
On the light side. |
0
(0%) |
It’s like other normal module. |
1
(2.3%) |
It tends to be on the heavy side. |
23
(52.3%) |
Way too much workload, I can hardly breathe! |
20
(45.5%) |
Skip |
0
(0%) |
|
Yes, I got the message. Assignments were too much work - but to be fair
to me, the basic requirements for the assignments that takes up 70% of
the grade were really more than reasonable. As it turns out, students
spent a lot more time than expected trying to get at the 30% of the
"creativity" grade. This outcome was quite unexpected, but it did lead
to some pretty impressive apps for the assignments and some of the
groups followed up on those apps for their Final Projects.
|
Essay |
4)
If you found the workload to be heavy, how do you
suggest we can arrange the curriculum to better balance it? |
1. I don't have any idea about this :D. Sorry. |
2. I feel that we are a little over-assessed. Some of the
assignments are basically formalising what we have already done
on our own - eg: Application seminar. Perhaps some of the
assignments can be combined, such as Assignment 1 and 2. Or
Assignment 1 could be a in-class exercise instead. Then again,
there is this desire for us to have worked with as many people
as possible before we head off to our final project. Perhaps
that could be achieve through in-class exercises instead? |
3. lesser projects? long time to develop ideas. If the point of
the class was to make us think, time should be given. Due to the
insufficient time given (approximately a week) there is hardly
time to think through ideas carefully before the necessity to
start on them already. |
4. Maybe there were too many assignments. While I understand the
purpose of all 3, the fact is that for some of us by the time we
finished assignment 1 we had actually managed to inadvertently
clear some of the milestones in other assignments. After a while
we ended up suffering from FB fatigue |
5. Reduce the number of assignments |
6. In modules where the syllabus is fixed, there can be grading
by quota and by bands... But for something like CS3216, grading
should not be relative. Much grief has been caused due to
competitiveness. Do consider that his module has no
prerequisites. If learning is the objective, than we should be
graded on how much effort we put into learning and how well we
learnt. There should be no comparison with other students taking
this module but rather compare the intensity and effort compared
to a normal 4MC module with no pre-requisites. Compared to
CS3214, the workload might seem similar, but do note that CS3214
is completed by groups of programmers. In CS3216, the load is
double because there are less programmers. |
7. Instead of having so many assignments, reduce it to maybe
just one project and one assignment. Also, try to give credit
for great ideas instead of a full completed application. It
should be noted that it is extremely difficult to complete a
worthwhile application within 1-2 weeks. The only way to
complete an application would be to do something cute and
'stupid', which is not what most programmers with pride would
want to do. If you can see, a lot of applications have lots of
potential, just that there was little time to carry them out to
fruition, and I've heard that some of these apps scored better
than completed applications, which I feel were not very
innovative and has no potential for development. Reduce the
number of assignments, and allow people to have time to really
complete worthwhile applications, instead of producing many
'useless' applications. |
8. can we just cancel those code review, ui review and
application seminar thing?
|
9. Reduce number of assignments, requires more pre-requisite |
10. JUST ONE major project and GET RID OF ALL THE ASSIGNMENTS
SUB-ASSIGNMENTS, etc. I am quite pissed with the workload of
this module especially since it is only 4MC. I rather it be
lighter and exams. I think the workload is equal to 3 of my
modules easily. |
11. Reduce the no of assignment. lengthen assignment period. |
12. Reduce to two assignments, and increase time for each one.
|
13. 2 apps instead of 3. By the 3rd one, already out of steam.
Most of 3rd ones objectives are already done in 2 anyway, so its
like just copying over. |
14. Remove the assignment. |
15. Perhaps the first 3 assignments can be more spread out to
give more time for planning? Most of the pressure for the
assignment came from within, really, to create an application
that we would be proud of ourselves. |
16. Set more specific and clear task what to be completed on the
assignment so it wont be too open ended. It will also be good to
teach us the things we need to know to even attempt the
assignment. Currently there is very little in the lectures that
teaches us how to code a facebook application. |
17. Firstly, the App. Seminar should be the FIRST thing we do.
Once we know what a good facebook app requires, we should
develop just one or two applications for the project. That would
result in 3 projects in total. I would cut out all the other
work to a minimum - its all fluff: the reports, the reviews,
surveys, peer reviews, everything else. Plus, the classes should
be less lecture and more information sharing sessions and group
discussions, perhaps in informal groups. Maybe we could take on
a new topic every week and break up into groups to discuss and
make an impromptu presentation in a hour. then spend the next
hour giving those presentations to the rest of the class. Topics
can be: platforms, coding the app, acquiring users, business
models, etc. |
18. Put much less emphasis on the assignments so that the
students do not overdo the assignments. |
19. Combine many of the mini-assignments into larger chunks so
that the students are concentrating on something for a longer
period. |
20. Give non-programming people more non-programming work.
Design review is a good start, as opposed to code review. |
21. Part of the heaviness is because we inflict it on ourselves
trying to do cool things but another thing is that there seems
to be a lot of writing involved. Writing write-ups, reviews and
so on. That is quite time consuming. One thing you guys could do
is consolidate the writing so that it gives a perception that
there isn't a lot to write. Like the design reviews, the 2 apps
were given to us at two different times with two different
deadlines. What you guys could have done is to just give us the
two apps and gave us a single deadline. |
22. Combine assignment 2 and 3, most of assignment 3 milestones
would have already been fulfilled in assignment 2. Even though
students do all their work on the last minute, a longer
"duration" for the assignments will allow a "breather period" to
rest before going on to the next big thing. |
23. Assignment after assignment, we have not finished one
assignment, we have to form a new group for the next one. |
24. It would be better if the course has 1 final project that we
focus on. The assignments could be done in a discussion/review
session, so that the non-coders can help their team members. The
short time frame between assignments give a lot of stress, and
the quality of applications cannot be as ideal as we wanted it
to be. |
25. Perhaps cut down the number of assignment by one or two and
spread the rest out. |
26. The assignment itself is not heavy, however, it's too free
and open , pple usually put a lot of effort in to that. I think
2 assignments are enough. The first one actually very easy,
could possibly done in 2hrs work shop. |
27. not balanced work load between coders, designers and
writers... |
28. The course aims to take in a diversify range of students but
the assignment and course structure seems to assume everyone is
a coder. May the curriculum could be more diversify rather than
focus mainly just on coding. |
29. put the seminar at the beginning of the semester. Change the
assignment one to workshop. |
30. Erm, I would really suggest cutting down an assignment app.
Because since the enrollment is done by choosing the
enthusiastic and the hopefuls, people tend to OVERDO their
assignments. Let them, but let them enjoy working on it also,
coz it's pretty draining all these while. My 8 MC module is not
even half as heavy as this 4 MC module... haihz.. |
31. I think this module has waaay too much workload for a 4MC
module. It should be a 6MC module instead. To balance the
workload, I think we should cut down on the number of extra
things we need to do like application critique, design reviews
and code reviews. 3 small assignments and 1 final project is
waaay more than enough. In fact, I would recommend 2 small
assignments and 1 final project (then we have more time to focus
on our final project to make it really good)
|
32. the assignment could be some milestone like mission, no need
to build a who application 1 small 1 big application |
33. I feel that we are trying to do way too much. The
assignments themselves are heavy in workload, adding in other
miscellaneous stuff like code review, design review, app
seminar, peer appraisal, etc...etc.. makes it worse. Let us just
concentrate on making our stuff. |
34. I think the problem is that the implicit expectation of the
apps are very high, since there are really a lot of talented
people in the class. Well, this is actually a good thing if
there are not so many application assignments. The number of
assignments should be cut down but this will reduce the exposure
of the students to the other potential tem members which will be
crucial for the final project. Therefore, I will suggest that
there should be only 2 assignment and 1 final project and more
networking sessions instead. |
35. The module is rather open-ended which means that while the
assignment requirements themselves were fine, the drive to do
that bit extra can become rather taxing. |
36. Perhaps scale down the reviews and seminar part. However,
the crux of the problem comes from everyone raising the bar too
high, not exactly from the requirements of the module. |
37. I think it's ok for this module to have heavy workload,
otherwise we might not be able to learn enough stuff. |
38. Remove the design review and code review etc or perhaps
combine them as one.. the same goes for the seminar review cos
the projects themselves are heavy which i feel is good cos the
whole module is about creating a awesome final project... |
39. Hehe, make it 8 MC's :P After all, we KNOW that everyone's
gonna be setting the bar sky-high. The stuff we do in the module
i think are really worth spending time on, just as much if not
more so than the stuff we do in other modules. So the only
cure-all is to allow us to do LESS concurrent OTHER modules by
raising the MC count :) |
40. Its not that the workload is heavy, its just that they're
general enough that you can do a lot with them... and the
general trend is to do just that :P. Id suggest increasing the
given time by a bit. |
41. Instead of giving like 3 or 4 individual assignments, the
course can, have only one project that spans one semester long.
So groups will be formed at the beginning of the semester with
the aim of building a killer app at the end of the course. There
will be several deadlines (to replace the assignments) which are
graded along the way to see whether the project meets the
specified requirement. For example, first milestone is to make
your app able to print Hello World, second milestone is to make
your app able to allow interactions on profile page etc. This
makes the course more focused. Also, people won't be tied down
by like two different apps at the same time (if one of their
apps turn out to be popular) and (though not relevant to the
question) people are able to build stronger bonds with their
groupmates. The group switching thing makes everyone
acquaintances only but not friends, or maybe the purpose is just
to make acquaintances (business contacts) |
42. Seeing that some people have fulfilled most/all milestones
for all 3 assignments even for assignments 1 and 2, I guess to
decrease the workload, have less assignments with longer
duration, but packs more milestones. |
Skip: 2 (4.5%) |
|
Agree that the assignments need to be adjusted because the three
assignments have generated significantly more work for the students than
intended.
Also agree that the FB Seminar should have been scheduled earlier. I had
schedule the meeting with the potential industry partners early in the
Semester to provide students with more time to work out potential deals.
Too bad they didn't quite work out. :-(
A future offering of this class will likely have two assignments that
are more structured and focussed. Will probably also cut down on the
writing. Yeah, I do agree that I was a little overly ambitious and tried
to do too much - but to give me some slack, it's really hard to know
what to expect the first time a course is offered. :-) The suggestion
about giving more time for the assignments is not feasible. NUS students
tend to do assignments only at the last minute. It's the same if they
are given one week to do the assignment as if they are given one month.
This is something that I learnt the hard way. In fact, there will likely
be an early deployment deadline for the Final Project maybe in the 10th
week for any future offering of this course.
I however disagree with suggestion 41 that there should only be one
Final Project. Need the assignments for the students to pick up
requisite skills and also to get to know other students. Otherwise how
to pick the right people to form the Final Project teams?
|
Essay |
5)
Did you find the feedback write-ups that you received after
grading to be useful? If so, why? If not, why? |
1. They are useful to a certain extent. They help you understand
the grade that you are receiving. But they may not be effective
to help you improve because by the time you see the feedbacks,
you are working on the other app already. However, they can
serve as pointers to your final project. |
2. Definitely. The feedback we received allowed us to see
mistakes that we missed during the actual development of the
application, so it was a good learning opportunity. |
3. Yup. |
4. Its helpful. You get to learn from feedback and understand
the rational for the grades given. |
5. Yes. It helps me to know how to write better apps later. |
6. Yup! It was very useful coz the write-ups were good and
constructive feedback which we can implement to improve our apps
immediately. |
7. Feedback are useful in terms of ideas on how to improve our
application. However, it is not very useful in to a large extent
as suggestions for improvement are normally already thought of.
The trouble is our lack of knowledge on how to implement the
improvement which is not included in the feedback. |
not really... dunt think ppl or even my self will actually learn
through doing this |
8. First one, yes. Second one, no. Actually, they said they my
application has error, but didnt say what error is it. I asked
for clarification, but still haven't get any reply yet. |
9. Pretty Useful. Rather specific comments in fact. |
10. yes.
|
11. yup, helpful. concise and to the point. |
12. I think its really good to get actual feedback write-ups.
Unlike many other modules, at least here I get an idea of what
I'm being marked up or down for, and know where to focus my
efforts on for future, similar endeavors. |
13. Yes, at least we knew what we did right / wrong. |
14. Well it was informative. It wasn't very detailed but neither
was it too brief. So neither is it extremely useful nor is
useless. It was informative in a sense that there was a bit of
information on how we could improve and so on.
|
15. Yes, just that some reqs were a little less explicit that I
might have liked (e.g. ... Facebook uses XHTML 1.0 Strict but
your code is HTML 4) |
16. Not very useful. Generally, we know our limitations and
shortcomings. What would be useful would be to channel that
energy to lead us half the way in our assignments and projects.
In the first question, I had indicated that I have learnt a lot
in this module. Do not mistake it as "this module has taught me
a lot". I was forced to spend sleepless nights to learn by
myself. The time spent is way more than any other modules and is
comparable to 3 or 4 modules put together. This was not
reflected properly in the module workload. It can be debated
that the module workload is merely a guideline and it is
actually us who are overly competitive that works so much
harder. Do note that the module workload is usually an indicator
of how much time is to be spent to do reasonably well. In this
case, if we merely stuck to that level of work indicated, I
doubt prof Ben would even want to pass us. |
17. It was informative and helps me improve on the next
assignment. |
18. Yes, they were useful. They provided us with information as
to how we can improve our applications. |
19. Things pointed out in the feedback were definitely valid and
true, but we already knew of many of the problems that were
pointed out. Usually, the reason we couldn't deal with them was
lack of time. |
20. It's ok. |
21. Yes and no. Yes in the sense that they allow us to know what
graders are looking for in subsequent assignments. No in the
sense that sometimes the grades were not given fairly; what the
graders are looking out for is not what i really had in mind.
(for example, i feel that people should not be penalised for not
completing an application, yes, execution is important in todays
world, but in the span of 1 week, you really cannot expect
complete execution of something complex. In that sense, i would
expect greater credit for a half completed but ingenious idea,
rather than a completed useless application). The way the
grading goes... it seems that CS3216 is encouraging the
production of fads, which can spread fast, but also dies off
fast, and gives no real value to users. |
22. Not really. They were either too bitchy or just superficial.
|
23. Not particularly.. I think usually people know what they did
wrong with their app.. just that they didn't have enough time to
fix it :P But user experience wise i think its definitely
helpful. |
24. Yes |
25. Yes, they are useful. The feedback allows us to better
improve ourselves for future assignments and for the final
project. |
26. Yup, there are good feedback and it helps me to do better
for the next assignment.. |
27. Not really. Not enough time to reflect. |
28. Yes. Makes us understand the goods and bads of our apps. |
29. The feedback is very useful but I think the feedback should
be in a open form where we an reply to the feedback |
30. Ok ba.. |
31. They were useful, which gave insight into improvements for
the following assignments. |
32. Yes. I know what I have done right and wrong after reading
the feedback. |
Useful |
33. yes, but some time I personally disagree with some feedback |
34. They might be useful, but I can't appreciate them. Perhaps
because I'm a non-coder |
35. Good. Highlights some points that may have been overlooked
by the team. |
36. Yes, they were useful. They provided valuable information on
where improvements could be made |
37. Neutral |
38. Not quite. Because I suppose not enough time was spend to
study my code for the other group to form constructive feedback |
39. Average. It is nice to get feedback but the feedback might
not be relevant considered that team changes for every
assignment. |
Skip: 3 (6.8%) |
|
I guess the write-ups are relatively useful to most of the students and
not very useful to some. I would like to respond to comments 16 and 21.
Re: comment 16, I'm glad that the student learnt a lot and frankly, it
sounds a lot like what Caleb mentioned to me in person. Perhaps it's
Caleb. :-) My response: as a teacher, what I care about is that the
students learn something. As it turns out, what I really want to achieve
in CS3216 is that students figure out how to learn by themselves and
develop the confidence that they CAN learn stuff on their own. Not sure
if it's much of a consolation, but I think the process (not content)
that this student has gone through in CS3216 will serve him/her well in
the future. :-) What does "channel that energy to lead us half the
way" mean? Spoon-feeding? I'm not very keen.
I think comment 21 is absolute nonsense. The assignments are scoped so
that it is possible to complete them on time - and MOST students have
done so. I had already emphasized during the first lecture about the
importance of execution and how ideas are cheap. Well, if it was indeed
true that some really ingenuous idea was attempted and it was half
completed, more credit would be given. Unfortunately, to the best of my
recollection, most of the apps that were buggy/incomplete simply
demonstrated a lack of effort and the ideas weren't that impressive or
innovative to begin with. Attitude and pride in one's work is very
important for success. The submission of incomplete work demonstrates a
severe lack of pride in my opinion.
|
Essay
|
6)
If you’re a programmer, do you think that the
non-programmers are able to contribute effectively to the
assignments? |
1. No. They will often try to pick up on report writing or other
related stuff, but usually in the end the programmers have to
take care of it because they don't know what is happening at
all. However, I acknowledge that the non-programmers is a
must-have in the class for killer-apps to be even possible. They
just have to try harder to help in some things. |
2. yes.. the ideas and project management are impt as well as
they can also contribute in the creative aspect |
3. Unable to comment, worked with fellow programmers so far. |
4. There are exception, but on the whole they are more of a
burden. The level in class is too high for non-programmer to
pick up skills on the fly to contribute. |
5. I am not a programmer. The current assessment only allow non
programmer to contribute minimally. |
6. Yup, quite a lot. Like Shaoqiang, his drawings are quite cute
:)). |
7. Definately. Programming isn't everything about projects. What
they can contribute at the least is their time. |
8. Yes, though the group must take effort to put more emphasis
on UI, design, etc. |
9. What a designer can do in an hour, a programmer is unlikely
to accomplish in a lifetime. Similarly, what a programmer can do
in a few days, a designer would take years. Both parties are
essential to the team. Still, it is a fact that programmers have
more tangible work to do and therefore much much much more time
is spent. |
10. yes |
11. Yes. There are so many things in the assignments which need
non-programmers.
|
12. Some can. Some as in, the rare few of them. |
13. Yes definitely. As i said, the grading is heavily biased
towards design and UI, and little appreciation is shown towards
the technicalities of the assignment. |
14. There are people who has been very contributing to the
assignment with their talent however, there are also a few who
could not really help or the amount of work they can do is
limited because there is too little time to pick up new skills |
15. N.A. |
16. Definitely. However there must exist a skill set library
available to all, rather than all of us searching around in the
dark in a bunch of virtual strangers. Thus resulting in groups
with either too many programmers, or maybe only one. And with
such a library groups and partners can more accurately search
each other out, preventing cases where some are overworked while
the others feel useless. The inclusion of non-programmers with
other skill sets makes the team dynamics much much more
interesting and provide out-of-the-box ideas. |
17. Non- programmers will be able to contribute more effectively
to the assignment if the assignment period is long as they will
be more them for reviews and thus marketing of the apps. |
18. The non-programmers are able to contribute effectively. In
fact, I could go on to make the claim that some programmers may
not be able to contribute that effectively because of
communication problems. The non-programmers are usually good in
communicating ideas and thought. |
19. everything except coding |
20. n/a |
21. In aspects of creativity, definitely. It was usually the
non-programmers who came up with the most ideas first, followed
by the programmers telling them what they thought was actually
practical to create. However, due to the time constraints,
having a few more coders on the team would have helped as well. |
22. A little. |
23. most of the non-programmers I encounter expect quite a lot
from programmers... and do not know what to contribute
effectively... i am not really a programmer but i try to at
least accompany the programmers through nights if needed... |
24. Only designers. |
25. Few non-programmers are able to almost contribute
effectively to the assignments. Which ever way you look at it,
the non-programmers do end up doing much less work than the
programmers unless they are heavily involved in the designing
process. |
26. Yes, there are many aspects that a non programmer can
contribute in. |
27. Yes.
|
28. The non-programmer should at least have talents in other
areas, such as graphics. If not, they usually just sit in the
corner doing nothing. They try to contribute by coming up with
ideas, but often they can be ludicrous, such as being
technically too complicated to implement. |
29. NA. |
30. Designers are a definite need. But not too many, i think the
programmer "class" should have around 80-90% because it's very
very focused on programming. |
31. Well, I only worked with one, and she was more useful than
some of my programmer-teammates :D (this is anonymous rite?) |
32. i'm not a programmer. |
33. If I were a programmer, I think non-programmers better be
very good in design. Otherwise, they will not be able to
contribute effectively. I think even writing skill doesn't help
much, much less entrepreneurial skills. I think for this module,
if the objective is to churn out very good apps, it will only
need hardcore programmers and designers. |
34. Some non-programmers are able to contribute well, while some
are not able. In the same way, some programmers are able to
contribute well, while some are not able. It depends on their
ability, attitude, and focus of the application. For instance,
there are some from arts who majored in CNM, and probably have
taken game design module, or simply love to play games.
Programmers may feel more comfortable with them as they could
help to design portions of the game. This is as opposed to
working with people who don't play games, but try to contribute
and is strong in their opinions. Which might end up "ruining the
dish" and deadline extensions. Things that could otherwise been
done fast and efficient, becomes slow and disasterous. |
35. They could design the pages. |
36. In some extends, depends on the which application we're
developing. Usually, marketing/bizad ppl only useful in the
final project. For the assignments, I dont think they contribute
as good as programmers. |
37. I dont think anyone cares about having people in the group
who are not programming, but considering that most of the apps
dont really have a business model or such, there's not much for
business oriented people to do much either. But its a definite
plus that you get to network with people from different
faculties. I really would recommend increasing the quota of arts
students as there aren't enough good designers here. |
38. Yes in terms of idea creation and brainstorming. |
39. They can do graphics, reports, documentations |
40. Not exactly. While the designers tend to be the creative
ones, not having some technical knowledge does tend to lead them
to come up with ideas that are technical challenges, which while
not impossible to do, would take quite some time to implement,
code-wise. Also, having working knowledge of the programming
languages and/or HTML would allow them to work directly on the
webpages. However, they are able to see things in a different
perspective, which helps the UI design become more
user-friendly. |
Skip: 4 (9.1%) |
|
Seems like a 50/50. Some non-programmers can contribute effectively,
while others cannot. I guess the six-million-dollar question for me is:
how should the selection criteria for the class be adjusted for the
non-programmers to ensure that they are able to contribute to the class
effectively.
For the record, the students who are offered places in CS3216 as
"programmers" must typically have a minimum A grade in CS1101/CS1101S.
As it turns out, the many in the current batch are more than just
A-students. Many are elite A+ programmers, competitive programmers or
have extensive web development experience.
|
Essay |
7)
If you’re a non-programmer, what are your views
on the assignments? Do you find it difficult to contribute? |
1. The assignments are hard, need to work with good programmers
to get our ideas into reality |
2. I'm kinda half-half hybrid, so I'm commenting here too. It
depends on what you can do, and the abilities of your teammates.
For me it was easy to contribute, as I just generated ideas,
conveyed them to the programmer, who writes functions to perform
what I had in mind, while I designed the look and graphics +
gameplay. Communication is the key. Of cuz, not slacking too. |
3. It is not difficult to contribute but rather the contribution
does not appear to have value as the assignment are generally
require the contribution of programmer more than anything. |
4. I think the assignments are really fun and I actually learnt
quite a fair bit of coding from them. And no, I did not find it
difficult to contribute because coding is only one small part of
the equation. A bigger part is team work, creativity and idea
execution |
5. Yes. However, I can help out with the business logic and flow
of the applications. My understanding of data structures also
help me to communicate with the programmers about my ideas
effectively. However, just having ideas is not useful unless one
can appreciate the technical difficulties of implementing an
application. |
6. Very difficult to get the programmers to acknowledge your
opinion as 'worthy'. You had to fight for everything! Not like a
real project with a real structure at all. More like a free for
all. |
7. i am a programmer? |
8. n/a |
9. It's not very difficult to contribute but it's more like the
attitude of the programmers towards non-programmers since
programmers are like the majority and the greatest contributors.
The class should be made up of half programmers and half
non-programmers instead to make it more balanced and make the
class more lively and vibrant and not make the non-programmers
tilt towards the minority. |
10. N/A |
11. Yes. Assignments are too technical |
12. - |
13. NA |
14. Yes. Besides perhaps the first project meetings, the rest
are always ONLY about the programming side of the project. |
15. I don't find it difficult to contribute due to my expertise
in graphics. However, it is difficult to for us to learn from
each other, due to the amount of work and pressing deadlines. In
the end, we just want to create the best app, and we do what we
are best at - while at awe of our other group mates could do
rather than learning from them. Quote unquote " He can program
anything we throw at him" and "he" will say "He can design
anything we throw at him". I find myself sharpening my design
skills after 3 assignments, rather than learning more about web
technologies, which was why I joined this module. |
16. N.A |
17. no...it's fine to contribute as much as i can |
18. Sometimes I have difficulty carrying out my ideal plans due
to insufficient programming knowledge. |
19. yes even a week programmer is hard to contribute |
20. If I were a non-programmer, the minimum requirements for the
assignments should be very challenging and exciting to learn.
However, having said that, the app will be a very boring one
which only does the minimum requirement and it will not be
enough to compete in this class. Therefore, I think
non-programmers have no incentive to contribute programming-wise
since their peers can do it faster and better than them. They
will have to contribute other stuff like designing. P.S I think
to maintain the anonymity of the survey, I have to answer both
questions. |
21. As a non-programmer i felt that i could still contribute to
the group - particularly through the report-writing component
and the other not-so-technical areas of the assignments (such as
text for descriptions as well as graphics). |
22. n/a |
Skip: 22 (50%) |
|
Suggestion 9 is not practical. The current ratio is approximately 70%
programmers + 30% non-programmers. Clearly not practical to make it
50/50 since most of the work to be done is programming work. In fact,
I'm tempted to move to 80/20 for future offerings of this class.
Designers are are critical for Facebook applications. I guess the
question is how to identify the good designers. The selection process
for future classes will likely require those who claim to be designers
to submit their portfolios. :-)
|
|
|
Multiple Choice |
1)
How do you find the lectures? |
They are completely useless. I learn nothing.
|
1
(2.3%) |
I have no idea what's happening half the time |
4
(9.1%) |
Lectures are no different from the other classes
on campus |
11
(25%) |
Lectures are clear and I am able to follow the
material quite well |
13
(29.5%) |
Lectures are way cool. Easily the best class that
I've taken at NUS |
15
(34.1%) |
No idea. I don’t attend the lectures |
0
(0%) |
Skip |
0
(0%) |
|
I'm glad that the lectures are generally well-received. Quite happy that
34% of the class really appreciate the lectures. :-P
|
Essay |
2)Feedback
for Lecturer Ben Leong. |
1. I feel that I learnt a lot from him. There some programming
insights that were shared by him that I find it particularly
enlightening. He should conduct more lectures on his own instead
of inviting external speaker. Since he understands the course
better than most external speakers. |
2. Cool. |
3. The classes you gave we're awesome - perhaps the Guest
lecturers could be more interesting though! |
4. Cool :) |
5. Never knew you're a person who believes in this kind of
education! Cheers!! |
6. Very funny and cute, but sometimes, talk too fast and too
much :D. |
7. I don't think the lectures are totally useless but I feel
that they do not really contribute much to our class learning
and assignments. I feel that lectures are just an unnecessary
"extra". We still learn waay more real stuff by doing the apps.
|
There really isn't much I could say. Easily the best lecturer in
Computing. |
8. Coooool.... He's handsome btw :)). |
9. Inspirational... though this course is kind of like guinea
pig... he manages to still deliver... and really helpful with
things along the way... |
10. Would like to hear you lecture more! I think you have spent
more time on this module due to all the coordination and stuff.
|
11. One of the best professors I have known in NUS. |
12. a very amazing guy.. though sometimes speak too fast... lol
i like the shirt he wore on the pitching session ~~ |
13. Thanks for arranging this wonderful course! |
14. Has a great heart and mind for the students. However,
sometimes the best can be given by letting go. |
15. Guess the questions more or less answer for this part. |
16. I think we definitely do need lectures as they are one of
the opportunities for everyone to mingle and network, but Id
have say some of the guest lecturers were a bit lacking. Yours
were fine though :) I don't really mind though as overall its
been a lot of fun. |
17. Ben is more like a project coordinator rather than a
lecturer. It's good, as long as we can learn a lot stuff in this
way. |
18. Reminder that we take 5 to 6 other modules beside CS3216? |
19. A very good lecturer with students' improvement and
understanding his first priority. Very helpful in understanding
student feedback and improving so that they enjoy and understand
the material. Friendly and laid-back. Definitely hard working. |
20. Prof Ben doesn't really lecture much in CS 3216. However he
does make a good "summary" in the end of the lectures by others. |
21. Hehe, we all know he worked as hard as any of us did on his
assignments :P Although he didn't do a lot of lecturing for the
course, I think the vision and the planning that went into the
course is one of a kind. This course will likely be the most
outstanding experience in my NUS life. |
22. Reasonable, understanding and inspirational. Also helps
students a lot. Should try dressing as an indonesian business
tycoon in school once in a while. And don't sleep so late all
the time. |
23. Pro Ben has an unorthodox way of doing things, very
different from what i've had in other modules. While its
refreshing to have a totally different approach to assignments
(the whole "meet the milestones and then some" format), it leads
to intense competition (which is good and bad). |
24. Most of his lectures provide valuable insights and ideas.
However, they hardly help us in the ground work we need to
complete. It is the groundwork that many of us are not familiar
with and need a lot of assistance. Changing some of those
lectures to technical ones, like the crash courses, would be
better. Already a lot of time is spent on this module, there
shouldn't be additional non-compulsory workshops, which are
actually very compulsory. However, he needs to be clearer that
CS3216 is ONE module. Most of us have 4 or 5 other modules to
take care of. |
25. Makes the lectures feel more like a informal discussion
session, which helps break the ice quite a bit. |
26. Excellent
|
27. There should be more Facebook-directed lectures, and those
that are very focused. For e.g. FBJS, how to use dialog boxes,
Animation, the restrictions of FBJS compared to the normal one,
AJAX, the inbuilt AJAX object, Database handling, etc etc. And
also, not just the technical aspects, where the non-programmers
usually feel pretty lost for the lectures. Perhaps we can have
designers to come speak about UI design, how to use photoshop,
illustrator etc. Then maybe we can achieve a more well rounded
lecture system. |
28. Very good and motivated lecturer... have great knowledge of
social networking sites and do what he talks... understanding |
29. Learn from google, don't be evil. Even if sometimes evil is
a necessary tool. |
30. I don't know who is in charge of the grading, but the
grading is very important because ultimately, it matters to a
lot of people. There should not be too much expectation on a one
week assignment because given the choice of doing a completed
useless application and a half completed but potentially good
application, the fact that the completed one sometimes score
better than a good idea may be hard to swallow for some people.
The frequent 'shifting of goalpost' is also hard for a lot of
people. For example, the second design review was only given out
with 3 days to work on it. It is not fair, given that we have
other modules to work on. And the eyeball grading was uncalled
for, because it should have been told before the assignment
starts, so we can gear the application towards that side. People
come to the module because of what is stated before it started,
if it changes too frequently, it is very irritating and for long
periods of time, people must do things that they didn't really
want/expect when joining the class |
31. Well cool, but I think he need to slow down a bit. |
Skip: 12 (27.3%) |
|
Thanks for the kind words from some of you.
The comments about me not lecturing very much are quite true. It
unfortunately turns out that I didn't think I knew quite as much about
some of the guest speakers for some of the topics that we covered. The
thing about "evolving platforms" is that sometimes even the lecturer
also dunno. :-) But should that keep us from trying to teach students
things that are good to know even if we don't know it. That's where the
guest lecturers come in. Of course, they don't always work out, but all
in all, I think we've had some pretty good guest lectures this Semester.
Frankly, it is a lot more effort arranging for these external speakers
to teach than for me to teach a regular lecture/tutorial class. Also, I
met with every single Final Project group for at least an hour each, and
some groups multiple times where there was a need. Lectures I can
definitely do if I know the stuff. :-) It's just that the typical
lecture/tutorial teaching style is not suitable for every class. In
CS3216, I'm experimenting with a different teaching style. Personally,
while some refinements can certainly be made in future semesters, I
think what we did in CS3216 sort of works. :-)
Comment 30 really gets to me. Must the same guy who got a earful in the
earlier section. Perhaps I can share the reason for the eyeball grading
for assignment 3. I was actually upset at some of the groups for
submitting substandard and buggy work. Really no pride in my opinion.
The eyeball grading was meant as an incentive for these folks to clean
up their act, so get me started. My greatest regret for CS3216 is that I
admitted some students who are both kiasu w.r.t. grades and yet have no
pride in their work.
If you are a potential student reading this survey in a future semester
to decide if you want to take CS3216, ask yourself if you have pride in
your work and if grades are more important to you than pride in your
work. If grades are more important to you than pride in your work,
please don't bother to sign up for CS3216. You'd be wasting your time
and mine.
|
Essay
|
3)
Suggest other topics that should have been
covered for the lectures (if any). |
1. More practical examples on software engineering. |
2. Cant think of any... |
3. user interface design and user psychology |
4. Maybe something about UI design (from a design perspective
but not the way that Dr Klarrisa Chang did it) - aesthetics /
user experience as opposed to technical |
5. How to build an apps that can cope with high user demand. |
6. None. |
7. actually a lot is covered which is good but i would like to
see more entrepreneurship lectures which provides a good bridge
between students as well as business entities outside... |
8. No idea.... |
9. How to relieve stress?? |
10. Flash and action script additional lectures!! |
11. On how do we actually make a facebook application and how to
deal with the many limitations of the facebook interface. |
12. I think we need a lecture for UI Design(from the art
perspective rather than the computing perspective). Most
programmers do not care about UI Design, and most users tend to
get the wrong impression when the UI design of an application is
not good. I think some basic principles on how to design
beautiful and user-friendly interface is necessary. |
13. nothing i can think off. |
14. PHP programming, Database design, FBML. Tangible stuff that
we actually use. Concepts are cheap. |
15. How to scale a project. I always found that people are too
ambitious, that make people put too much effort and time in
doing just one assignment. |
16. cant think of any at the moment |
17. Perhaps some good Facebook developers could come and speak. |
18. oops I covered it above. |
19. Teamwork, team management |
20. Since there are people from multiple disciplines, perhaps a
lecture on software development process and how each different
roles play a part (as how they work in the industry). Not
exactly software engineering, which is also a must, but more of
industry standards and practices on how the different
roles/departments fit together and how they cooperate to create
a software product. E.g. roles of producer, designer,
programmer, QA, marketer etc... |
21. Coding conventions and code optimization, and on interface
design. |
22. How to build apps for scaling? |
23. Less lecture, more learning. Maybe just some core concept
lectures like now would be sufficient, but more "stipulated
timings" of "lectures" where we can do discussions and learn
from one another. |
24. Maybe some programming would be helpful for non-coders. |
25. n/a |
Skip: 19 (43.2%) |
|
Agree that UI design is important. UI design was supposed to be learnt
from the FB Seminar and from the design reviews. Klarissa's lecture was
supposed to cover that too - but unfortunately it didn't quite.
Actionscript, Flash, PHP programming, Database design will most
certainly NOT be taught. This is not a class to teach programming per
se. There are other classes for that purpose.
FBML and FBJS will also not be taught 'cos they are sufficiently
straightforward for students to figure out by themselves. Part of this
class is the process of being thrown in the deep end and being forced to
do self-learning. FBML and FBJS are perfect for this purpose.
It is not useful to teach coding conventions 'cos there are a lot of
them out there and there's no "right" one. Programmers need to follow
the conventions for the company they end up working for. Code
optimization is hard to teach - optimizations techniques are
language-dependent.
Agree that how to scale programs to a million users would be a good
topic to be covered. Unfortunately, I must admit that I'm actually no
expert in this regard also. In response to this midterm survey, I
actually arranged for a guest lecture on scaling from the infrastructure
perspective by Zit Seng. Personally, I thought it was a very good
lecture.
|
Essay |
8)
Which of the workshops (UNIX, XHTML/CSS, PHP/MySQL,
Intro to JavaScript, AJAX) did you attend. Please let us have
your feedback on them |
1. none, to my regret :( |
2. I could not attend any of the workshops, although I did want
to attend them. |
3. None. |
4. they are pretty useful |
5. All. Good, did its job. Unix one might have been better if
the zones were settled before then, and everyone can follow
step-by-step instructions to set up apache, mysql, etc. I still
haven't set up my zones. |
6. None. |
7. None |
8. attended UNIX... but didn't much time allocated... so it was
in a hurry... |
9. I attended Unix and Javascript workshop. Both tutors are
quite clear when explaining complicated problems. |
10. UNIX, PHP/MySQL, Intro to JavaScript. Too rush, never
managed to complete them due to timetable clashes. Should be
taught during regular lecture times in place of Software
Engineering and "some wierd things about spreading and
exponential growth crap". |
11. Didn't attend any of the workshops |
12. UNIX, PHP/My SQL Generally OK, though I thought PHP/MySQL
could have been clearer |
13. UNIX. Moved a bit fast but was alright. |
14. unix : confusing cos it went really fast. and we were
expected to already know half the content. |
15. AJAX and UNIX, generally they were useful and informative.
Would be helpful if the timing can be fixed so that we could
attend more of them. |
XHTML/CSS I can just say amazing, learnt quite a lot of new
stuffs in 2 hours |
16. Unfortunately, none. |
17. UNIX JavaScript |
18. Unix was too fast to follow |
19. na |
20. UNIX |
21. UNIX: i didn't quite understand most of it. |
22. Unix , php/mySOL |
23. UNIX. Nice Introduction but too deep for the
non-programmers. |
24. I attended the UNIX workshop but I'm already comfortable
with it. But overall I think it covered the basics pretty well. |
25. NO TIME! |
Skip: 18 (40.9%) |
|
OK. Will schedule 2 hours for the UNIX Workshop in future. Hopefully
those who found the Workshop too fast will have an easier time. Reason
why the Workshops were not compulsory is that we realized there were
many who knew some of the contents already. The Workshops are a leveller
for those who knew less to learn more. :-)
|
Essay |
9)
If you missed one of more of the workshops,
please let us know why you didn’t attend them. Did you already
know the material or was it due to scheduling conflicts? |
1. I already knew the material for most of the workshops but I
still wanted to attend to brush up on my basics. I was not able
to attend the few that I wanted to attend because I ended up
forgetting the time and date. |
2. It was more scheduling conflicts, and that I had some basic
prior knowledge of the technology being taught. |
3. Knew some of them, but mostly due to scheduling conflicts. |
4. I'm familiar with some of the materials and don't wish to go
to school earlier or go home later. |
5. There is no fixed time and the time is announced pretty last
minute which makes it hard for people to plan their schedules.
Should fix a time for workshop before the course starts so that
people can leave that slot free. |
6. scheduling conflicts |
7. na |
8. NO TIME! Totally busy, this module, that module... I'm like
playing Island Hopping this whole sem. |
9. I was quite interested in attending the Javascript/AJAX
workshops but wasn't able to due to clashing timetables. |
10. yup, its due to conflicting schedules.. :( |
11. all those workshops i didn't attend are due to lectures time
clash |
12. There was a conflict in my timetable. Unable to attend most
of the lessons. |
13. Scheduling conflicts. Workshop times should be determined
before the module starts, so we can see if we can attend them. I
am quite tied up in business matters as well as school work |
14. I already knew the material. |
15. Schedule conflicts and time constraints |
16. Scheduling conflicts mainly. Other times, too much work on
hand already. |
17. I already knew the material. |
18. Scheduling conflicts and too much work to clear! |
19. I hardly attended any workshop due to timetable clashes. |
20. Scheduling conflicts. |
21. scheduling conflicts |
22. i missed the others because they were either not relevant or
clashed with my schedule |
23. Time clash with my lecture and other tutorial classes with
counting the attendance :((. |
24. I know most of the stuffs they are teaching at the
Workshops. |
25. already known |
26. Scheduling conflicts |
27. Scheduling conflicts almost always. Attended the UNIX class
even though I really didnt need to. |
28. All scheduling conflicts. Despite having an idea of most of
the material, I kind of wanted to attend most of it :( |
29. already know the stuff... would have gone for those if not
for time constraints... |
30. It was due to scheduling conflicts and I already knew some
of the materials in them. |
31. Scheduling conflicts - Love to attend them, but there really
was no time. |
32. I wanted to attend the AJAX Workshop, but I was unable to
make it. For the others, I already had prior knowledge, or was
already well on my way to learning it, so I didn't see a need to
attend the workshops, though I do know that I might have picked
up some useful tips. |
33. Most of the time, things covered in the workshop are too
basic. |
|
Skip: 10 (22.7%) |
|
Because CS3216 is a cross-faculty module, scheduling is a big headache.
Considered scheduling all the Workshops in the evenings, but didn't want
to impose on my Tutors and as seen above, many students don't want to
take late classes.
CS3216 lectures will almost certainly remain evening lectures even in
future Semesters. Two key reasons: (i) very hard otherwise to allow
cross-fact registration since too many conflicts in the day; (ii) would
be almost impossible to get guest lecturers for the class if they are
held in the day.
|
Essay |
10)
Do you think we should conduct other workshops?
What should they be? |
1. FBML, and a troubleshooting sessions where we get instant
assistance on problems we usually end up spending 6 to 12 hours
searching and trying... |
2. not sure |
3. Yes. Not sure. |
4. Anything ab technologies of Web 2.0. |
5. NIL |
6. A Ruby on Rails workshop would be great! |
7. Actually I don't mind conducting a workshop myself. Ruby on
Rails or something.
|
8. not really |
9. Hm.. it'll be good IF everyone can attend.. but considering
NUS's killer schedules... er......... |
10. Design workshop |
11. Some basic principles on how to design beautiful and
user-friendly interface |
12. Yes and no. Example, have a RoR workshop instead of a
lecture. |
13. Perhaps workshop on Flash and using Frameworks and Rapid
Software Development techniques |
14. not that m aware of.. it is quite complete and it definitely
equip us with the knowledge to do our app |
15. na |
16. Flash! |
17. NA |
18. Current schedule is fine. |
19. Flash, action scripting will be very helpful. |
20. No real opinion. Perhaps one on RubyOnRails for those
wishing to get involved.
|
21. no |
22. I think it is pretty much sufficient and well-covered. |
Skip: 22 (50%) |
|
I don't think we will have a RoR Workshop since PHP is the officially
supported language. Basically this is a resource constraint. I can't
find enough Tutors who know RoR and even if I can find them, I suspect I
won't succeed in persuading the Department to pay for them.
We will not teach Flash per se in CS3216, but we might have a
introductory Flash workshop if I can find someone suitable to teach it
the next time. It is my opinion that Flash is quite an important
web-programming language. Flash and PHP are not direct competitors. They
serve different needs.
|
|
Forum was quite disappointing. :-(
|
Essay |
12)
Please let us have your suggestions on how the
teaching for CS3216 can be improved. |
1.The only part that can be improved upon is the number of
assignments. It would be extremely helpful to make a few
substantial assignments that last over a longer period of time
rather than having to care for one for a week and then quickly
moving onto the next one. |
2. Things like "hello world", or "wall" don't really have to be
assignments. Just conduct some workshops for those, and let us
concentrate on making something big. Perhaps just 2 big projects
and nothing else. |
3. I think it's already good enough for me. |
4. only sometimes feel the deadlines are coming together and a
bit messy |
5. I think the course objective must be stated clearly and held
to. Making a difference is not about completing a useless
application, it is about creating value for users out there. As
such, either give full credit for the ingenuity of the
application, or give lesser assignments and longer working time
so that we can expand each idea fully. I don't like the idea of
doing an assignment just for the sake of an assignment; every
assignment is a piece of work and should be an application that
is both useful and will last long on the platform. |
6. Try to make workshop schedule more formal. |
7. Better forum system. Current one hard to use when too many
posts |
8. Reduce the workload!! !!! |
9. I don't have any issues with the current teaching staff. I
think the teaching staff in CS3216, methodologies and pedagogues
are pretty good. I just think that the teaching of some of the
guest lecturers are pretty bad though. Not very clear. |
10. Grading should not be relative, after all, selection
criteria was pretty strict. Everyone here deserves an A if they
put in half the effort compared to now. Teach tangible stuff
which actually help us. The concepts can be made into reading
material or workshops. There is no pre-req for this course, we
need the technical knowledge. |
11. There doesn't seem to be any real focus for CS3216. It would
be good if lessons build up on the focus. Also many lectures
cover topics perhaps many wouldn't like hearing again. |
12. Dont know, I'm not a teacher :D. |
13. it's fine, just a little less workload. |
14. Have a consistent, organized and standard place where
deadlines/event dates are published. If any of the
deadlines/time of events are changed, it should be reflected at
that one place. Sometimes its published at several different
locations (email, announcements, lesson plans, etc..) and when
one changes, the rest may not get updated. This can cause
confusion to some people who might not have taken a look at the
updated one. |
15. I felt that a lot of the time most of the module focused on
the technical aspects. While i understand that this class is
about Software Development, the mixed nature of the class (with
students from other faculties outside SOC) may not feel the
relevance of certain topics to them, especially with all the
technical jargon being thrown around. |
16. Almost perfect already. You want better you'll have to go
overseas probably. But compared to many other NUS
lectures....... .... .... no need to compare la, many of the
others, plain, boring, banal, sleepy, blablabla... |
17. too heavy workload I think. maybe pre-release some course
materials during the winter vocation |
18. not much... the bottleneck is the mindset of students...
which is the result of the way NUS is mounded |
19. Nil. |
20. A radical idea: all students are required to do 4
applications for the whole of the semester. They can do it any
time, any order they want, but must finish the trilogy and a
final project for presentation, with the only deadline being
when the final presentation comes and all 4 apps must be handed
up by then. |
21. It might sound trivial, but a LT with better chairs might
have helped. The current LT is rather cramped (when there's full
class attendance) and ends up being quite stuffy. Perhaps a
slightly larger LT with better chairs will help. |
22. concentrate more on the deliverables.. such as the final
projects etc |
23. Said it once and i'll say it again! Less workload! |
24. Maybe we can be spoon-fed a bit more on technical aspects,
giving us more time and effort to work on the entire app. |
25. To cover a proper grounding for the students to start off
with making their application, instead of just throwing them off
with assignments and expecting that everyone will be able to do
it. |
Skip: 19 (43.2%) |
|
In response to comment 10, the technical knowledge is definitely there.
Just that not everyone has it - but neither does everyone need to
achieve the same level of technical competence. That had never been the
goal of this class.
In response to comment 11, as it turns out, there is some sense in the
madness. Will touch upon the sense at the Last Lecture and do a grand
summary of the class. Part of the problem I face is that the guest
lectures are somewhat of a random variable. Some turn out well and cover
what I had in mind and more, while others might not. Need to give and
take.
Comment 14 is valid. Will improve in future.
Suggestion 20 will NOT work. Need to do students the favour by giving
them deadlines. :-)
Re: comment 22, the deliverables are not what's important in my view.
It's the PROCESS.
Re: comment 25, unfortunately that's the whole point of the class:
throwing students in the deep end and having them figure out how to
swim. That said, we're not unreasonably sadistic. As we've seen this
semester, it sort of works out.
|
|
|
Multiple Choice |
1)
What is your overall impression of CS3216 thus
far? |
This is a horrible class. Truly regret choosing
it. |
0
(0%) |
It’s alright, but mostly painful. |
13
(29.5%) |
Just like any other module |
0
(0%) |
It’s a good module and I definitely enjoy it. |
14
(31.8%) |
CS3216 rocks! Coolest class I have taken in my
life. |
16
(36.4%) |
Skip |
1
(2.3%) |
|
Interesting distribution. I wonder why. Hmm.....
|
Essay |
2)
What do you think you have learnt thus far? |
1. I've learnt more about application design and logic. Forced
myself to discuss database structures with the programmers. :)
Got to know really smart friends!! |
2. Do not restrict yourself! And facebook applications are not
that difficult to make!
|
3. New programming techniques |
4. I did not learn much from the lectures and seminar but I
learnt a lot from working with people, knowing the right people
for the job and knowing my own strengths and weaknesses. |
5. how to design a popular application |
6. Different faculties work differently. |
7. Learnt about good programming practices, which is useful.
Learnt about teamwork as well. Learnt that everything can be
commercialized to make money, sigh. |
8. Sleep less, study less, how to keep up with other modules and
survive. ^_^ |
9. some Programming knowledge some Photoshop/Illustrator/Flash
skills Networking skills Marketing skills |
10. Well, most of it is TO KNOW PEOPLE. AND getting to
REALLY-KNOW PEOPLE. |
11. A lot of things, too many things to list down. |
12. how to create a facebook application as well as greater
understanding of social networks. learn how to derive a business
model for my final app as well.. |
13. I've learnt how to write a Web app, how to work as a team
:D. |
14. How to think. |
15. Most importantly, how the FB platform works and what it can
(and can't do). The broader implications over the whole internet
as well indirectly. |
16. I have learnt a lot so far. I have learnt how to create
applications that suck and serve no real purpose to anyone and I
have learnt how to make really fun applications that have a lot
of potential. The coolest thing is that the assignments I make
in this class don't just go to waste, they are actually use by
real people elsewhere. I don't think there are many modules that
can do that.
|
17. 1. Designing a FB app is easy. Designing a GOOD FB app is
not. 2. Groupmates matter. 3. Sometimes you have to be the bad
guy and slavedrive. 4. Advertise yourself and your skills. it
helps. 5. Good programmers != good application 6. Don't feature
creep. 7. KISS (Keep it simple, Stupid) 8. Make something that
works as opposed to something that tries to wow the pants off
everyone but doesn't work. 9. SOC zones are unstable. 10.Web
application users are a fickle lot. 11.Its not always about
making something revolutionary. you can always take something
good and make it better. 12.NICHE MARKETS 13.You know you're
good when you have a fanbase. |
10. oh man. i learnt a lot fr this module, not only programming
knowledge, but friends, and inspired a lot by them! |
11. Everything this course was designed for + more, such as
teamwork. The best thing was that I got to know a lot of
talented people! |
12. Facebook application development, and a bunch of stuff from
the different lectures. I also learnt that the proof of the
pudding is in the eating, and that I like to eat puddings. |
13. I've learnt from the other students in this module, and the
potential and capabilities to do great things. |
14. Project management, developing software in a new platform. |
15. Software Engineering Principles, Security, RoR Many of the
lectures which were intended to get certain principles across
were successful. Along with the academic material I also learnt
more about working in teams and networking. |
16. The workload is killing people, reduce it please. |
17. Trivial things like the facebook API aside, mostly
non-technical skills : interacting and dealing with people,
reading lengthy reflections and musing on different perspectives
etc. Oh, learning to use Ajax was pretty cool too :P |
18. I think it's more the experience for me. I like having
various guest lecturers come in to speak, which gives the class
a wider view upon the world, rather than have one single
lecturer rattle on for the entire semester. I also like the
activity within the class forum. This is truly the most active
IVLE module I have seen in my few years in NUS. I really like
the life and vibrancy in the class. |
19. Cool things really depend on idea, luck and lots of effort. |
20. Many things about web development that I haven't had time to
learn before: PHP, CSS, HTML, Database, JScript... and the
facebook platform |
21. A rather big picture view of current web technology, doing
apps on facebook, some theories on security, project management
and propagation via the web |
22. How hard could it be to make cool stuffs. |
23. A lot! Project management, source control, the confidence to
learn a new language in one day (but i shall hope never to do
that again, ever..), teamwork and management, how social
platforms work and its direction in future, most importantly
making friends and contacts who CAN do work, so that in future
we know who to look for to get work done. |
24. I get a better idea about the facebook platform. I have hope
to actually learn to program and develop application. However at
the pace and the focus, it is hard for non programmer to
actually learn much. |
25. I have learnt what i had wanted to learn, but painfully. I
had hope i would be taught, but instead i was forced to self
learn. This is VERY BAD. |
26. Loads of web programming, software development, how to
create cool stuff in Facebook. |
27. Mostly on the personnel management side. |
28. I learnt more lifeskills than anything else, which is great
in a way. I think Ben said he wanted us to learn something like
this in the process |
29. working with people... planning ahead and strategizing... |
Skip: 7 (15.9%) |
|
I like comment 14 best. :-)
Re: comment 25, you're your own best teacher. Don't be so spoilt lah.
:-P
|
Multiple Choice |
3)Would
you recommend this module to anyone else? |
No, I won’t want them to suffer the pain I did. |
3
(6.8%) |
Nah, I don’t think it’s worth it. |
1
(2.3%) |
I have no opinion about this. |
7
(15.9%) |
Yes, I will encourage anyone who asks me. |
24
(54.5%) |
Of course, every NUS student should take this
class! |
6
(13.6%) |
Skip |
3
(6.8%) |
|
Quite curious to note that while 30% of the students feel
that this class is "alright, but mostly painful", 80% will recommend the
class to their friends. Maybe 10% of the students are sadists and want
to inflict pain on their friends. :-P
|
Essay |
4)
Please give us your comments and suggestions on
how to make your learning in CS3216 more efficient and
interesting. |
1. Perhaps have an application showcase at the end of the
semester for the rest of the NUS population to take a look at
our wonderful work? Also, maybe just 2 small assignments just
purely to learn the basics then 2 projects would be sufficient.
Right now it seems as though we are doing 4 projects. |
2. LESS WORKLOAD... It'll be good, for its 4 MC's worth.. |
3. have more class participation opportunities during lectures
since there is no tutorial. |
4. Grading scheme should find some ways to estimate the effort
of each member of the group. Group working skill is extremely
important in this course, but many students don't have
sufficient skill. |
5. There's really a lot to learn and look forward to. But it
seems more to be of an 8MC equivalent. |
6. 1 major project throughout the whole module with deliverables
in between. |
7. Nothing much. Less work and more learning maybe! |
8. It is a very tricky issue. I think one problem is the mixing
of programming and non-programming people together. The synergy
is very hard to achieve in practice. One way is that the class
should be held differently with programming people in a class
and non-programming people in another. Else, the programming
people may complain about non-programming people being unable to
contribute and shun them for project groups and the
non-programming people won't be able to contribute effectively
as well. Otherwise, have this class only for programmers and
designers. I think the synergy is easier to create and both
sides will enjoy working with each other and with lesser
workload, they will be able to churn out even better works. |
9. It's already good enough. |
10. NIL |
11. Since the group is diversify, the lectures would be more
useful if it covers discussions on new ideas and concepts on the
facebook platform from different angle, such as marketing,
business opportunity, etc. |
12. may make some more pre-request for taking this module |
13. I think it is pretty much interesting already. I was
wondering if there could be an exercise or assignment in which
we are forced out of our usual roles to take on another roles,
so as to "force" us to learn from each other. Eg: Programmers
cannot do the coding, but graphics etc. Then again, it would
require quite a bit of time. |
14. Again I would to emphasize this. Please don't fragment the
workload into many pieces, let us concentrate on making our app. |
15. None. |
16. Longer times between deadlines would help planning and give
teams more time to think through their applications I guess.
Creating applications that just barely satisfy the minimum
requirements isn't really satisfying. |
17. More technical notes! and maybe an idea could be to allow
students to teach students, share their knowledge kind of thing. |
18. Less assignments, longer deadlines, but packed with more
milestones. |
19. One thing that I though could have been done was to *not*
show the last lecture video to students. The thing is, after
everyone saw the video, everyone has the implicit need to do
something really nice/wonderful because that's what randy's
students did. I think the real test would have been to not show
the video, ask us all to do a hello world application and then
actually see what we come up with. I think that way, things
would have been far more interesting than now because the
students wouldn't have started out with any kind of a need to do
something extremely creative other than their innate need to be
creative.
|
20. Make this a 8 to 12 MC module so we can have less external
commitments to worry about. Teach stuff we actually need. |
21. Hehe, u sure this course will still exist after this
semester? :P Think code and design reviews could use more
'teaching', so that people actually know what is expected and
know what to do (even programming students may not be familiar
with these :P) |
22.- |
23. Nothing more than what I already added. |
24. do less work... think more... and allow time for
innovation... |
25. Reduce the workload, give students more time to focus on
building their apps. 2 small assignments and 1 final project :)
|
26. nil |
27. Make it more interactive, more student orientated |
28. Maybe have the class split into discussion groups to
increase participation in lectures. |
29. Longer deadlines for breathing purposes (being able to do
something in a day doesn't mean we can continue this way every
single week.) |
30. Teach more on how to make the application. Hands on
practical on these are a great replacement for one or two of the
groups projects. |
31. CS3216 is interestingly cruel! But keep it that way, may the
fittest survive. |
32. it's fine so far. |
33. lesser lectures and more tea parties... it will be more fun
and goes beyond the traditional concept of lecture teachings.. |
Skip: 11 (25%) |
|
"Less work and more learning" I really like this idea, but not quite so
easy to achieve in practice....
|
Essay |
5)
Any final words about CS3216? This is your chance
to tell us anything you want that is not already covered by the
previous questions. |
1. I just want to say it again, the workload is killing people,
reduce it please. |
2. the ZONE makes a lot of trouble, why not just buy a hosting
service from outside... I found that most of applications get
popular/high grade are games, people are more willing to built a
game application. I think facebook is not only a platform for
just playing games, we should also make some app really useful. |
3. The evillest combination. Its cool therefore you want to work
on it but there are too many cool people and the bar is sky high
so you have to work your pants off on it and its only four MC's
so you end up screwing your other modules and in the end
probably get a bad grade for everything... but the experience
may still be worth all of it :P |
4. None. |
5. Lecture time slot can be moved earlier in the day... |
6. Though the course is tough, and the workload inhumane - I
really appreciate how the course content has been thoroughly
thought out. The reason why I find it tough to manage the
workload could be improper management of time and I'm in my
final year, but I really appreciate the efforts put in by the
Prof and TAs. Thank you for organizing this course!! |
7. Please continue holding CS3216 in future semesters. Things
can only get better. I'm looking forward to meeting more NUS
students with a more exploratory, and less rote-learning,
mindset. |
8. nil |
9. Can we get 6MCs for this module? I seriously think that this
module is waaay too heavy for 4 MCs. :( |
10. It's been a great experience so far. I knew it's hard to
start a module like this and i really appreciate the effort put
in my all lecturer and TAs. Keep up the good work! |
11. CS3216 is cool! In fact, many of my friends hope this module
can be offered every semester instead of once every year so that
they have more chance to take it.
|
12. Erm, rock on! I seldom do surveys anyway, and the reason i
do this is becoz of respect, and awe (since the first day of
this module)! |
13. Can I take it again next sem? Call it CS3217 or something.
So that we can keep taking it. :P |
14. From my point of view, CS3216 is really great. People are
talented and cool. However, looking at the other side, it is a
class so full of talents and this is usually not true in real
life. Besides, the focus of projects are getting further away
from the original intention. Nevertheless, it is truly
once-in-a-lifetime opportunity to be in this kind of environment
where people are so cooperative and easy to work with. I found a
pool of like-minded people who take on any challenges and
conquer them. |
15. To much pressure on us building our app. Even if we've came
up with a generally successful application by ourselves, we are
very limited in freedom to continue developing it in the
direction that we want it to go. Many feedbacks were given for
us on how to improve. However, the staff is often not
experienced enough in facebook application developing. Thus
unable to help us when we are having problems implementing our
applications/upgrades/fixes. |
16. Don't hold discussions through email. There were certain
emails that were more fitting to be on the forums instead, and
some emails should be on IVLE announcements instead. |
17. It's quite an interesting course. Teaches many things that
you won't learn in the classroom, head faking and all that. |
18. The whole "not working with the same people twice" thing was
a bit troublesome. when it reached the last 2 assignments i
really couldn't be bothered to actively go searching for group
mates (i thought i'd just try my luck with the matchmaking). |
19. Rock on :) |
20. It is a good module and i truly enjoyed taking this module..
i also believe in ben to guide us well for our final project...
cheers |
21. i prefer... allocation of groups to be randomized... else...
people tend to stick together... |
22. I re-iterate... CS3216 is ONE module... not 5. We are not
teaching staff who teach 1 or 2 modules a semester... We take 5
or 6. The teaching staff appears to think CS3216 is all we
should be caring about. |
23. I think this has definitely been one of the better modules
that I have taken in NUS. What I really liked was that the
assignments were flexible enough that you could virtually make
anything that you want! Unfortunately The assignments though end
up taking a lot of time. One Idea would be to make one of the
assignments a 24 hour hackathon to reduce time spent on each
project a bit. |
24. I will encourage anyone who asks me whether or not to take
CS3216 to think hard about it. It is a very good module that
teaches a lot beyond just academic areas but it is a challenging
module that requires discipline and passion. |
25. Many seem to be very passionate for this module at the
start, but perhaps because of fatigue everyone starts to ignore
module. |
26. Nothing really. All covered. |
27. still feel really glad I submitted the application for
CS3216 =) |
28. This can be a great module in a few years time. You just
need to get the workload right! |
29. The course leaves most of the workload to students.
Workshops are not enough. There should be project consultations.
SoC Zone is not stable. Facebook also causes frustration for
students. Lecturers are asked to lecture on general and wide
topics. It's difficult for them, and students don't get much
from them, also. |
30. "In many ways, the work of a critic is easy. We risk very
little yet enjoy a position over those who offer up their work
and their selves to our judgment. We thrive on negative
criticism, which is fun to write and to read. But the bitter
truth we critics must face, is that in the grand scheme of
things, the average piece of junk is more meaningful than our
criticism designating it so. But there are times when a critic
truly risks something, and that is in the discovery and defense
of the new. The world is often unkind to new talent, new
creations, the new needs friends. " - Anton Ego, from
"Ratatouille" |
31. Good luck to all of us and I hope that this module can
continue to its next semester and all future semesters to come
:) |
Skip: 13 (29.5%) |
|
I actually think a 24-hour hackathon is a really good idea. :-) Might
try that next for the next course. :-P
|
|