do i need to take a lab and tutorial for CPSC 110 and 121? the computer science website doesn't mention a laboratory part for first year computer science courses but does mention a laboratory part for physical sciences and biology
Yes, you need to sign up for the Lab for CPSC 110 and both a lab and tutorial for CPSC 121. You will get a warning telling you to sign up for those sections if you haven’t already done so, don’t ignore those warnings, the labs are very important.
This term was a roller-coaster. I was really scared going into the program because I figured everyone in there would be super smart and mature...and I wasn't wrong (our class average for the BCS-specific section of CPSC 110 was above 80% while the averages for the other sections were in the 70s...people in my cohort intimidate me LOL). However, everyone is super friendly and so willing to help in CPSC. I only had class 2-3 days a week, but it was actually pretty tiring and I used up 10 notebooks this term doing practice problems and writing programs by hand.
I don't know how I feel about my upcoming semester, because I can only take one CPSC course, I'm taking mostly BIOL courses to finish my bridging module more quickly. After taking CPSC courses, I think I enjoy the problem-solving, teamwork and mutual frustration that comes with it more than the solitary work you often do in BIOL classes.
I took CPSC 110, CPSC 121 and LFS 250, you can read my course review after the break:
Computer Science 110, Kiczales
I originally love, love, loved this class because I was flying through the assignments and finishing my labs relatively easily to end up being the second or third person out of the lab. I even managed an A+ on the first midterm so I obviously thought I was killing the course. THEN IT ALL WENT DOWNHILL HAHA. All of the work for my other classes starting to catch up and I then I started falling behind in this class because I kept thinking "Oh well I was doing so well for the first half of the course, it'll be fine, I'll be fine...I've got all this other stuff to do". I was starting to struggle with the assignments, the labs would take me forever to finish and studying for the final was so hard. Lesson I learned: DON'T GET OVER-CONFIDENT.
We had two midterms and a final exam. The midterms were alright, they were to be expected. The final was kinda iffy because we had to solve one large problem, and that always scares me because if I mess up one part...then..yeah. I still ended up with a decent mark in the class, but wowza. In general, the class was very interesting and I learned a lot of new concepts that weren't mentioned in CPSC 301. This class focused more on how to design programs systematically instead of just writing code and praying that it works. My friends in CPSC tell me that the skills from this class will come in handy later on, and to not disregard it even though we used the Racket programming language, which is a language used specifically for learning how to program. The majority of the marks for all the assignments and midterms were from how well you set up your program and how well it is designed. The actual function itself wasn't usually worth very much.
If you're just want an intro course on programming and don't care about making your code look nice, and just on making it work, I would recommend taking CPSC 301 instead if you can. We followed some recipes/design aspects in CPSC 301 but that class focuses more on learning how to do basic (but useful) functions in the Python programming language. You can read more about CPSC 301 by looking it up in my search engine.
Computer Science 121, Tsiknis
This course is very different from CPSC 110, despite the two of them being 100-level intro courses. We didn't do any programming in this course, it was all about proofs. This course is more math-focused and teaches you on the skills of logic by working with premises and trying to prove or disprove conclusions. I hear this course is really similar to one of the introductory Philosophy courses at UBC. I was actually really scared at first when I found out this course included math because I hated calculus. We didn't end up using calculus and I'd like to think that I ended up being pretty good at proofs and mathematical inductions.
The labs were pretty cool too, they were always done in pairs, except for this one lab on regular expressions. We spent half the term building simple electrical circuits and the other half on the computer evaluating and building models of more complex circuits. We had two midterms and a final exam, all of which were pretty fair and expected. There were also weekly online reading quizzes.
In the end, I found this course a teeny bit more enjoyable than 110, but only because I actually understood what the heck I was doing.
Land and Food Systems 250, Fortin
This course was the 6-credit online "elective" course I chose to take to replace some of the exempted courses from my Biology degree. I've always wanted to take this course and since there weren't anymore CPSC courses I could take or any BIOL courses to take for my breadth requirement, I chose this.
It was a nice break from my CPSC courses though and I found it to be a very interesting course. We learned all about sustainability and our food system. There were required weekly online discussion questions we all had to answer, based on readings, so there is quite a bit of work associated with this course. What I really liked was that the professor didn't expect us to memorize all the details from the papers or notes we had, but simply wanted us to be able to think critically and apply what we've read to our questions. There were also two field trips, one to a dairy farm and one to the Greater Vancouver Food Bank.
I have to admit that I didn't really care for organic, or free-trade before because I'm poor, but this course has definitely changed my outlook on the food system.
There weren't any midterms, but there were a couple of big projects and a final exam. The professor makes you think very critically and it always made me nervous whenever I posted on the discussion boards haha, but she's actually really nice.
I'm taking CPSC 110 and 121 in the same term this term, is this okay or is there a lot of things you learn from 110 that you need to know for 121?
110 and 121 don’t really overlap. You learn to write programs systematically in 110 with Dr. Racket while you learn to prove statements (verbal and mathematical) in 121. For 121, you build electrical circuits in the first half of the term in lab, and the other half, you’re working on the computer simulating more complex circuits. Dr. Racket is mentioned a few times in 121 in examples, but I found Java is mentioned more often.
can you register for cpsc 121 in term 1 and cpsc 110 in term 2? I put it like this in my worklist and it worked, but isn't cpsc 110 a prereq or a coreq to cpsc 121?
Co-reqs typically act more like recommendations of what to take, if you test your registration and you don’t encounter any problems, then you can assume it’s fine.