CITS1401
Problem Solving and Programming
CITS1401 is rated by StudentVIP members:
Textbooks
We don't have any textbooks for this subject yet.
Why don't you be the first?
Sell your textbook for CITS1401Notes
View all CITS1401 notesWe don't have any notes for this subject yet.
Why don't you list yours first?
Sell your notes for CITS1401Tutors
Become a tutor for CITS1401Mah
$50 per hour
we offer expert tutoring across a diverse range of subjects and fields. Our team of experienced tuto...
KS
$50 per hour
Hi there, I am currently enrolled in 2nd year of uni at UWA. I am studying a Bachelor of Business...
Yao
$50 per hour
I am an experienced software engineer with 8 years of experience. I excel in mathematics and have pa...
Daniel
$50 per hour
I studied a Master of Data Science and I am passionate about helping more people learn and succeed a...
Nara
$40 per hour
Hi, I am a student, graduate from Master of Information Technology. I am currently an employed Machi...
Reviews
This unit isn't that bad, only because I barely watched any of the lectures. The lectures I watched (first 5-ish) were pretty terrible, with the lecturer presenting the content in the most boring fashion possible, and spending more time trying to debug her code than I thought someone competent at Python would spend trying to remove the most fundamental errors. As someone with a little bit of other coding experience, this unit isn't overwhelmingly hard, but I'd imagine there is a sudden spike in difficulty - much time is spent going over the bare basics, with not much time spent on the harder topics e.g. recursion. Most of my learning came from the labs and just searching online. The projects themselves are fairly similar (reading information off a file and processing data) but the task sheet wasn't always clear on what it wanted - especially when the sample outputs for you to check your code against were initially wrong for both projects, so until it was corrected a week after release, it was confusing as to why your code's output didn't match. The exam was terrible - 60% of the grade being allocated to a closed-book, pen and paper exam. Whilst I understand an online exam would be pointless because of everyone using ChatGPT, the fact that you have to memorise most of the essential functions is insane - it is a completely different skill from what you have been practicing for the whole 12 weeks. For a comparison, it's like trying to do math, but you try and memorise every single number to do a problem. The exam is more of a glorified memory test with a bit of Python in it. Overall, a terrible unit. If you've been spared by having the option to do this course (instead of being forced to), please don't do this - it's simply not worth your time. I would rather be strangled by an actual python than redo the exam again.
Anonymous, Semester 2, 2024
Prior to this unit I had no experience in Python so believe me when I say this unit is poorly paced, you will spend the first 4 weeks reiterating the most basic of premises before a sudden ramp of difficulty with little to no time to spare covering the more difficult parts of the unit. The formatting of the projects left more to be desired, there was ample time to complete, but most of the time I found myself scratching my head wondering what the actual project WANTED me to do as instructions felt rather vague. The exam was the worst part of the unit, ultimately a test for your ability to remember things. A hand written exam to test python coding abilities is like assessing a swimmers ability to swim by having them draw what freestyle looks like while blindfolded. It especially doesn't bode well when a member of staff tells you "just google it when you're stuck, you'll never remember everything you're going to need."
Anonymous, Semester 2, 2023
CITS1401: First of all, I would consider this unit 6/10 out of difficulty rating. This unit might be really ez for those who priorly studied in highschool. The concepts are basics for beginners (list,sort,concantenate, string, dictionary). labs quiz are useful, can based on that to learn. Projects are individually, very difficult depends on each year, but complex, requires weeks to come up with solutions to code (u will have 2 assessable projects-consider them as the mid sem). Chat gpt is a double-edged weapon in this course: I sometimes used chat to solve my bugs in the code but it didn't give me the desirable result almost every time. ChatGPT CANNOT HELP U DO THE PROJECT - u have to do it by yourself. On the good side, sometimes I ask Chatgpt to teach me the function, and meaning of each concepts in python and it really gave me some useful examples (I learn some new concepts which are not taught in lecture and are able to apply them in final exam and got marked correct :>. The finals are 55% worth, so don't skip this one, if u accidentally got low score on Project 1 and 2, u can still make up for this and pass CITS if u grind on the finals! THe final is straightforward, no tricks and usually 7 or 8 questions separately. But u need to be careful, this is forbidden-book test, u will need to memorize concepts and apply them to "design" your own solutions. Personally, i don't think the final will be marked strictly as the projects but still need to be careful right! !!!!!!!!!!!!!!Plagiarism is a crime, please please never copy your friend's code or even from CHATGPT, u will get really SERIOUS CONSEQUENCES (might fail the course) Good luck on those who study data science or IT or any course that require this! I believe u can do it!
Anonymous, Semester 2, 2023
Project 2 gets marked late so over 120 students get 0/30, and project 2 is so difficult. Literally have to email a facilitator to get marks back.
Anonymous, Semester 1, 2023
Projects were written just about as poorly as they could've been. The labs were good. Didn't watch a single lecture, but the powerpoints were okay.
Anonymous, Semester 1, 2023
This unit did an alright job at teaching Python, yet most learning had to be done on my own based on the labs and projects we were given. Lectures were dry and long, consisting of content being read from the slides and going through practice problems. The lecturer, Mubashar, although friendly, was unreachable via email or even the help forum he always encouraged us to use. However, the very frequent labs were handy. This unit took up a lot of time, particularly the two projects. The task sheets for the projects were poorly written, with lots of missing and contradictory information that had to be clarified by the tutors on the help forum/during the labs. This shouldn't have been the case, as many of my questions also went unanswered and I could not make as much progress as I would have liked to on the projects since it took up to a week for any response. Some of the later, more difficult topics such as recursion were brushed over, while we spent many lectures in the beginning going over and repeating the basics, like conditional statements. Additionally, the final exam was on paper and closed book. In my opinion, this is a terrible way to assess one's coding skills. It did not allow us to test our code, and become more of a memory test than a computational thinking and python test. Overall, I would not recommend you take this unit unless it is a core unit, or if you have some prior knowledge of python.
Anonymous, Semester 1, 2023
Its too difficult
Anonymous, Semester 1, 2023
Wanted to give a review that was from the perspective of someone who has never had any prior coding experience before this unit. I took cits1401 as an elective in my second year and study commerce. I found the unit in general a good introduction to python and actually really enjoyed the lab questions for the most part as I could see myself improving quite a bit throughout the semester and think about concepts in new ways. I did spent a lot of time making sure to have my own crack at lab questions and follow along with the lecturers' code but found that it definitely helped. The two projects were challenging and I would spend multiple evenings on them and involved a lot of individual study to get the right outputs. A big part of doing well on these was just checking the study board regularly as there are a lot of small things that the marking key requires which aren't explicitly set out on the project outlines. The final exam was particularly hard from my perspective as there were no notes allowed and it was in person. Overall, I thought the unit was pretty decent and managed to HD it though it did require many many hours and a lot of extra effort beyond what was thought. I'd still recommend it to someone who wanted to give coding a crack but just be aware that you need to really commit yourself to this.
Anonymous, Semester 2, 2022
It was easy content wise. Nothing to really learn. The projects were okay, not that interesting or challenging. Used python but stayed away from importing libraries, which I disagree with. The final exam makes all your effort up until that point useless. Its worth 55% its 8 difficult algorithmic questions that you have half a page to write out syntactically correct python with. Making you pressed for time, as you don't want to run out of room on the page. 5/8 (about 80%) of the exam questions were based around recursion which is a joke as it was very very briefly taught and only given example was the simplest application of a factorial function. Very hard to HD this unit even if you are something of an academic weapon, wouldn't recommend as an extra unit "for fun" and just brace yourself for the painful final exam.
Anonymous, Semester 2, 2022
Definitely worth adding a 0/5 stars just for this unit. Having coding experience, even I had trouble. The lectures taught the very very very basics of programming which left a lot to be learned in order to complete the projects. Lab difficulty and project difficulty were at like two different ends of the spectrum and then exam difficulty was at a whole nother level. Project outlines were very vague, poorly worded and needed lots of clarification. IF YOU DON'T NEED THE UNIT, DON'T DO IT!