CITS2002 Programming and Systems - Project 2 Feedback (2015)
Q9: Any comments or suggestions about the nature of the project?
Compared to other assignments/projects this was by far the most time
consuming for me, i found it challenging and throughly enjoyed it, thank you
Chris again for the effort you put into not only the project but the unit as a
whole, it is by far the best value for money unit i have taken, keep up the
cracking effort and passion for teaching it really shows!
I thought this was a fantastic project that challenged us to find
solutions on our own, however it was quite tricky to get your head around
initially. I feel that a lot of students didn't understand good programming
practices and recursion or perhaps just couldn't visualise how the project fit
together as a significant part of it (the parser) was already done and
difficult to understand.
I loved the fact that this project has given me so much more of an insight
into how shells and the overall computer works. It was challenging but
rewarding. My only critisim is the steps that guided the completion of the
project could have been worded better as i found some words were being used in
two different contexts which became confusing.
The tutor in the CSSE lab was not helpful at all
[Chris truncated the slight attack at the end of this comment].
Found the first project more difficult. This one was more guided (in a
good way).
The project itself was truly fantastic. I think it was a a great way to
combine the system and OS learning with the C programming that we generally
do. I do have to say that the timing and organization left a lot to be
desired. I think a project of this magnitude should be released much earlier
and also be due much sooner than it was. This sort of deadline lead to me
especially working on the project until the last day and then only having one
week to get ready for the exam which is frankly much more important than the
project in terms of marks. However, i do have to say that this project was a
massive improvement compared to Project 1. Chris is an amazing teacher and he
always supports help and that sort of thing on Help2002 and i think he is
probably one of the best teachers that i have encountered in my life. I guess
the only complain from me would be to just figure out a better way to organise
the course so all deadline do not end up on the last day of the semester.
Thanks for an amazing experience.
The 2nd project was alright in terms of difficulty, but it was
overwhelming at first since there were a lot of concepts that we haven't
encountered before like piping, file redirection and scripts. Thus it took me
about a week before I started coding. The web program that displays the
CMDTREE structure was a big help, though.
I don't view projects as reasons just to assess what is already known,
but as an opportunity to learn new things while applying them to the problem
being solved. Reading, learning, designing are all part of projects, and CS,
too; there should be no expectation that coding has to begin on day 1.
I preferred this project to the first one as it was more involved with the
operating system topics.
I would have been interested in learning how to write the parser from
scratch but that may have made the project's time requirement to be too long
with other subject's final projects due at the same time. For some reason
people in the unit thought the project was hard but it was incredibly basic in
programming difficulty compared to some algorithm and data structure problems.
I have no idea why students are given concessions in CSSE for projects which
require research. The instructions were very obvious, all that was required
was research and application. I would have preferred to get this project
before the study break but did not find it hard to finish as a solo assignment
in the time given.
it was unclear how to begin working on the project. Once over the initial
hurdle all the tasks were laid out well
Look here, bit too hard
[then Chris truncated the childish part]
This project was very interesting, it really helped me understand more
about procceses, and how C language communicates with the Operating System.
we know how a fork works now so that it was probably a pretty good
project. gotta say, thank you Chris for the project steps, we'd 100% have died
without them.
Very interesting project. I had to go outside of the lecture content and
do my own research occasionally, which is exactly in line with the method of
learning stated for the unit.
There was too much guidance and hand holding in the project. Unlike the
first project thr second was broken down into a series of very clearly defined
steps, and recommendations were given for how to approach each individual
step. This made completion of the project almost feel like following a
tutorial. While I understand these were probably concessions made in the
aftermath of the unit's inability to handle the (very fair) first project,
perhaps not providing recommendations, and making students seek out the
appropriate functions on their own, could have made for a more appropriate
level of difficulty. I did very much enjoy.the second project.
Glad that you enjoyed the 2nd project;
your early comments (unfortunately) kindle
the feeling of "you can't please everyone".
The restrictions on the use certain functions should have been stated as
part of the initial brief i.e. not to use execvp() and system(). Understand
why they were not allowed but would have been good to know up front. Other
that all good, learnt a lot from doing the projects. Filled some gaps ( some
quite large ) in my knowledge of C and the inner workings of Operating
Systems.
The clarification about the restrictions on functions was made on the 4th day,
and more to cement the (I wish, obvious) idea of what's in the spirit of
systems-focused projects - you don't implement or learn about
the technical features of a shell by just calling an existing shell.
According to the feedback from project 1, it was marked too strictly. In
the 1st project, we just wrongly wrote a path which led my program (can run
successfully) failed the test, but it took off 5-6 marks of total. Also the
requirement didn't write anything about that. And for a question of 6 marks,
why could we get a -2 marks!! That is too cruel for us!!!
It's unclear why you're commenting on the marking of the 1st project here.
If you had concerns about project marking,
there was a period of about 2 weeks in which you could have asked for
further explanation or a review.
Without the command tree parser it would have been really really hard to
do.
In my mind, programming is aimed to solve problem efficiently, cause I
learned c before,I solved this problem without class material and I tried my
best to solve the problem and let it execute nearly 1 sec to finish, I
succeed, but I failed on structure and bin and I lost near half of marks. I
think teacher can be more flexible in the future.
This comment also seems related to the marking of the 1st project??
Agreed, efficient programs are desirable,
but of greater importance are correctness, readability, and maintainability.
These have been 'themes' consistently emphasised throughout this unit.
Q11: Do you have a single-line comment for future CITS2002 students?
Allow plenty of time for completion of projects, little bugs that "can be
finished later" can sometimes be deceivingly time consuming.
Hard but worth it
Make sure to start on the project early, and make sure to have a partner
that is equally as dedicated to the project or there will be a big gap in the
teamwork.
This unit is a must iff you already love programming
Hopefully you get Chris as your unit coordinator!
Start Early people :P
Study the C language before undertaking this unit even if you have done
other programming units so you can focus more on the theory aspect (operating
systems) and not be bogged down with difficult concepts in C (such as pointers
and memory management).
This is the best taught CS unit at UWA, if you find it too hard, I
recommend changing your major.
You'll love this unit if you stay up to date on your lectures.
remember, no matter how bad this unit seems, or how much you struggle with
labs or projects,
[then Chris truncated the criticism of a different unit].
May have been good to read what was so bad about this unit,
as your other feedback indicated that, at least, you enjoyed the 2nd project.
Put the work in, and ask for help if you need it.
Go to the lectures. It's all there.
please take this unit prudently.
Make sure you have someone to bounce ideas off (even if you're working
alone), talking about your program sometimes lets you see the solution.