Posted: Thu Oct 29, 2009 4:39 pm Post subject: Computer Science and McMaster University
A user on these forums PM'd me asking how the Computer Science program at McMaster University (he read in the forums that I attended McMaster). So in response to him, and to any grade 12 student and/or any other post-secondary student wishing to transfer to Computer Science and are considering McMaster, I would like to share my opinion about the program available at McMaster. Now I, myself, just entered first year in September so I won't be to share my thoughts about the complete program, but I can update as I go along.
I won't quote to many facts as they can be found by reading through McMaster's website (http://www.mcmaster.ca). However, I will share my opinions from a students perspective. If there is any other questions you may have about McMaster, I can try my best to answer them, or share my thoughts about.
Like most universities, McMaster offers on-campus residence. I think there about 11 or 12 residence buildings in total. They are mostly in the same location so travel between residence buildings shouldn't take that long. I believe you would be able to choose from a person bedroom to I think a 4 or 5 person bedroom. There is also a female-only residence building (I don't know about male-only) if any female wants to live on-campus in a more closed environment.
The rooms in my residence building (McKay) are for both male and female students, and are mostly two person bedrooms (with the exception of I think just the Community Advisors). For a two person bedroom they are of a fair size, but of course they will not give you the flexibility of an actual apartment/house. On each floor of McKay there is a common room (where students can go to socialize, watch TV, study, etc.) and one kitchen. We are allowed to have a small fridge in our rooms, so if you need a place to store any kind of food/drink than you will be able to do that.
You are required to purchase a meal plan if you decide to live in residence. My meal plan was about $2900 (which is about $20-$25 a day) However, there are smaller and larger plans you can pick from, and you can add more to it if you wish latter on.
As for on campus food, there are many small cafe's within a lot of study buildings so if you need a quick meal, or coffee, you can visit one of them on your way to class and get what you need to "survive" your lectures/tutorials. For more complete meals there is the Commons Marketplace that serves a wider variety of food including: fast food, pizza and pasta, sandwiches, Asian-style, vegetarian, etc. Commons Marketplace is pretty close to most residence buildings, so if you need to get a meal quickly during study periods you should be able to. On the other hand, if you want more fancy dinning experience, or need a place to party, you can find those on campus too.
McMaster has about 3 libraries on campus that you can use to study, or get information. Some students (like me) like to study in their rooms, or in the common room, but if you need a more quiet place to study you can go to one of McMaster's libraries. If you need a more open, but still not entirely quiet, you can go to McMaster's Student Center (MUSC) where you can find some lounges on the second floor.
So far I haven't had to travel to far away from McKay to get to my classes (about 5-10 minutes or so). However, there are some buildings that may take you 10-15 minutes to get to from residence depending on how fast you walk, and how close your residence building is to University Avenue (the street within the McMaster campus that most buildings are around).
My tuition was about $7000 excluding my meal plan and any extra costs.
The Computer Science program is a direct-entry program listed under the Engineering facility. The program itself counts for 30 units, 15 of which is required (4 courses) and 15 available for electives.
As Computer Science is apart of the Engineering facility you are required to take an engineering safety (ENGINEER 1A00) course before you graduate, and you will need to take Engineering Mathematics 1 (MATH 1Z04) and Engineering Mathematics 2 (MATH 1ZZ5) as two of your required courses. The Engineering Safety course does not count towards the total number of units you need to take, and is a pass/fail course. The other required courses are Introduction to Programming (COMP SCI 1MD3) and Mathematics for Computing (COMP SCI 1FC3). You can pick your electives from this list: http://registrar.mcmaster.ca/CALENDAR/current/pg103.html.
So far the only required courses I have been taking are Engineering Mathematics 1 (MATH 1Z04) and Introduction to Programming (COMP SCI 1MD3).
COMP SCI 1MD3 should be fairly easy for anyone that has taken Computer Science courses in high school. My instructor for this course was Professor F. Franek and uses Java as the language of choice. Professor Franek is a pretty good instructor, but his tests and exams can be tricky if you have not studied the material properly (ei. not just memorizing everything). His tests and exams are partly multiple choice, and partly programming (written), questions. He likes to provide multiple choice questions that force you to actually think of an answer (which is of course good for learning).
The course overall is really not that bad so far. It focuses on the theory of Computer Science (programming) and Professor Franek demonstrates that using Java. The course goes over when variables are, what statements are (if statements, loops, assignment, etc.), what methods are, what objects and classes are and ends with more complex topics such as searching and sorting. Professor Franek uses the ACM framework to help demonstrate these concepts. It is a very easy-to-use, simple and elegant environment to work with.
Class sizes for this course are pretty small. I would say about 80 or so students are in my section (not really sure if there are multiple sections).
Engineering Mathematics 1 is the more challenging course if you have taken Computer Science courses in high school. My instructor for this course was Professor K. Schulze; which again a pretty good instructor in my opinion. If you took Calculus and Vectors in grade 12 you may find that some of the material in the beginning is easier than you may have suspected. However, depending on how you were taught Calculus you may find it hard dealing with limits a lot in the beginning (my Calculus teacher did not focus too much on limits after derivatives came into play; this course emphasis' the importance of limits a lot more).
You will find some overlapping topics compare to Calculus and Vectors in high school which including limits, derivatives and curve sketching, but (at least for me) you will also find some unique topics including hyperbolic functions (cosh, sinh, tanh, etc.), implicit differentiation, differential equations and our most recent topic, sigma notation. Tests for this course are also multiple choice, so you won't have to show a full solution/proof, but because of this you really need to know how to solve a variety of problems. However, you are given a bunch of suggested problems and if you need help there are a lot of resources you can take advantage of. So far, there have been no questions on our tests that involve solving a problem, but that doesn't mean you should skip problem solving all together as it useful for Computer Science in general.
The class size for this course is about 900 students, so it is quite big.
I don't want to scare anyone away just because of the math portion, but if you do struggle in math you will most likely have to study that a lot more. However, if you are good at Computer Science than you may have more time to do so.
I haven't taken COMP SCI 1FC3 or MATH 1ZZ5 yet, but from the course descriptions:
COMP SCI 1FC3:
"Introduction to logic and proof techniques; functions, relations, and sets; counting; trees and graphs; concepts are illustrated using computational tools."
"The definite integral, techniques of integration, parametrized curves, partial derivatives, multiple integrals, complex numbers, vector spaces, systems of linear equations, matrices, determinants, applications."
I will share my thoughts about those courses when I take them.
There are some other non-required Computer Science courses that you can take. These include: Computer Based Problem Solving (COMP SCI 1MA3) and Elementary Computer Use (COMP SCI 1TA3). From the course outlines:
COMP SCI 1MA3:
"A first course in computer science, focusing on the practice of problem solving, in the context of interesting software applications. Problem formulation, problem decomposition, procedural formulation of problem solution."
COMP SCI 1TA3:
"Organization of microcomputers (hardware and operating systems) and overview of computer communications; introduction to information exchange using word processing/presentation software, the Internet and Web pages; problem solving using electronic spreadsheets and database applications."
I was unable to take COMP SCI 1MA3 as it was full, but I would recommend taking all four Computer Science courses as they will get you better prepared for what McMaster (and probably other universities) offer in future years. I haven't take COMP SCI 1TA3 yet, but I will make an update when I do (second term).
Other than that you are free to select any course from this list http://registrar.mcmaster.ca/CALENDAR/current/pg103.html as one of your electives. If you want some fun, relaxed or helpful classes I would recommend taking GREEK 1Z03 and PSYCH 1X03. Dr. D. McLean teaches GREEK 1Z03 and by far he connects with the students a lot more, and tries to make his classes fun for the students. However, GREEK 1Z03 focuses on Ancient Greek, as opposed to Modern Greek, so you will probably not be able to use your knowledge to communicate too well to Greek speaking citizens. The class size for this course is pretty small; about 60 students in total.
PSYCH 1X03 is an online Psychology course that has helped me get prepared for research papers (I don't think you will have to do this in first Computer Science, but it helps for the future) and at the same time allows for flexibility. As the lectures are online you are not required to come to any class. However, you do have to come to once a week tutorial, and there are biweekly quizes (6 questions) that you have to take. Overall it has been a good course to take. There are a lot of students registered currently in this course (I think about 3200) so you will most likely be able to find other students to study with (which can make it easier to handle).
You do have the option to take part in a co-op program if you want hands-on experience.
Overall McMaster is a good university to study at. I am not able to compare McMaster to other universities, but I can say that McMaster had more to offer than I thought it did.
If anyone has any other questions about McMatser, please feel free to ask them.
Posted: Thu Oct 29, 2009 7:10 pm Post subject: Re: Computer Science and McMaster University
So the math is doable, it's just that if you weren't the strongest in high school, you may struggle?
Posted: Fri Oct 30, 2009 4:24 pm Post subject: RE:Computer Science and McMaster University
Yes. If you are able to enter the course with at least a good understanding of the basic concepts you can focus more on how to use those concepts to solve problems, and come up with the right answer. Depending on your other courses you may find it hard to do this effectively, while also keeping up with your other courses.
What I think makes the course harder is that tests are all multiple choice. You will not get part marks for solutions, so you really need to know the material, and how to effectively apply it.
As long as you know how to solve problems without memorizing the solution (you should know how to take the derivative of function, how to calculate limits, etc. but not the entire solution) I think you will do well.
My opinion of the course is based on my transition from high school to university. So my evaluation of the course includes the change in workload. However, if you already know how to deal with university workloads, than you may find the course easier to handle.
Posted: Fri Oct 30, 2009 7:21 pm Post subject: Re: Computer Science and McMaster University
How did you do in Calc and Functions in H.S? Also, are there any labs?
Posted: Fri Oct 30, 2009 10:50 pm Post subject: RE:Computer Science and McMaster University
I wasn't the best at Calculus in high school, but I understood enough of the concepts, and was able to apply my knowledge to most problems I had to solve. Coming to university though, I have found that the course deals with a lot of functions involving exponentials, which I find challenging compared to the polynomials I had to deal with in high school.
There are labs, but they are not scheduled on your timetable. Instead, they are more like an assignment that you can do at any time during the assessment period. Maple 11 is used for the labs, and, so far, the labs have showed us how to use Maple to solve Calculus related problems. For example, finding the derivative of complex functions, calculating intersections; points of inflection; turning points; etc. and being able to graph these functions using Maple.
There are no scheduled tutorials either. Instead, my professor uses the Friday of every week as a problem session where he will go over any questions the students might have.
Posted: Wed Nov 18, 2009 8:34 pm Post subject: RE:Computer Science and McMaster University
If you wouldn't mind, could you possibly post your gr 12 marks, or just give a general sense of the admission averages? Also, how does Mcmaster look at extra curriculars? Thanks
Posted: Wed Nov 18, 2009 11:58 pm Post subject: RE:Computer Science and McMaster University
I think the average rose about 3% from last year. As for me my overall average was in the lower 80's. I don't believe McMaster weighs admission based on any particular mark, just as long as you meet the admission average (don't quote me on this).
Also it seems Calculus and Vectors is now a required course for Computer Science now, which is good as it will help for Engineering Mathematics 1.
When I applied I did not have to prove that I had any extra curriculars, so I don't think McMaster looks at extra curriculars that much (if at all). I don't know for sure so don't take my word for it.
By the way here are some additional links regarding Computer Science at McMatser:
Posted: Fri Nov 20, 2009 11:45 am Post subject: Re: Computer Science and McMaster University
If anyone is curious about 1MA3, there are a few things to consider. This course is not something that is particularly difficult in general, but it does require on-the-spot problem solving skills. The tests are not very difficult, and are actually quite short (between 3 and 5 questions to be done in 50 minutes), but you must apply a great amount of problem solving, as suggests the course's title. The majority of the class is spent on the creation and application of algorithms, and you learn Python coding language along the way, which is sort of a no-brainer.
Now, I will mention that the course started off with a little over 100 students. After we started moving on from number base conversions (which is also extremely easy) to algorithms, quite a few students dropped the course and we went to about 95 students. The first midterm's average grade was a failing grade, but I believe that it was mostly due to the fact that the students didn't really know what to expect. The second midterm covered almost the exact same material, yet the average was a 75%. I'm assuming this is because 49 students dropped the course... Meaning that only the determined ones were left.
Don't let this intimidate you, though. Honestly, not much material is covered throughout the term and there should only be one or two somewhat easy assignments along the way. You just have to make sure you can quickly solve problems and be able to create solutions in a step-by-step manner. Also, there's a lab and tutorial each week for the class, and they are usually worth going to. You cover most of the Python material in those classes, and may learn a thing or two about longer problem solving, but you can definitely skip them every once in a while.
Aside from base conversions and algorithmic study, a bit of computer architecture (basic stuff, i.e. how computer components work, but at the most basic level) is covered as well. Dr. Sekerinski usually teaches this course, and he is a very knowledgeable professor. Taking this course really does help with 1MD3 in the sense that any problem solving you do in 1MA3 will sometimes even directly help in the assignments from 1MD3.
If I were to say anything about McMaster's computer science program in general, I would have to say that it seems very applicable and quite easy. In saying that, it is quite slow to start. I did not take any computer science courses in high school and I am able to stay very far ahead in the classes. 1MD3 uses Java as an example language, and you could probably cover all of the material in one day without a problem (all of the notes are on Dr. Franek's website at the beginning of the term). My only complaint is that the first year surely does not seem to prepare you for a co-op placement in the first summer term. I am not completely sure about that, but I feel as if I have to do a lot of learning on my own in the beginning to ensure that I can do the placement this summer, though a first-year co-op is not really necessary seeing that you only need 12 months of co-op to graduate (i.e. 3 summer terms).
Overall, great course and great program. I recommend highly to anyone pursuing the field.
Posted: Fri Nov 20, 2009 2:10 pm Post subject: RE:Computer Science and McMaster University
Doesn't 1FC3 also cover numbers in different bases? I remember talking to a student that took that course, and said it covers hexadecimal numbers. I haven't taken the course yet (next term I will be though) so I am not quite sure if the course covers numbers in different bases or not.
I would definately say that first year Computer Science courses are pretty easy, but I think that may be because McMaster is trying to make sure students have enough knowledge to continue with the program.
Regarding coop I do not think any first year student would be properly prepared to take a junior level job, and employers excepting coop students should know this. Depending on your course load you should be able to extend your knowledge of computers on your own using resources you can find on the Internet. If you want some programming books I saw some at Titles (the bookstore at McMaster) that may be able to help you out. I think there were about 4 "programming for dummies" books (no offence implied).
I personally like the easy going of first year, as it gives me the ability to think about my future, get up to speed with how the university works, get a feel about how I should approach university, etc. Of course ones choice in universities greatly depends on their personal needs.
Posted: Fri Nov 20, 2009 4:13 pm Post subject: Re: Computer Science and McMaster University
I have a friend in Engineering I at Mac, and he's not having the greatest time with the Eng. Math I. He was probably one of the better math students at my school (better than myself anyways). Should I be discouraged? (and yeah, I know one of my above posts is very similar to this.)
Posted: Fri Nov 20, 2009 9:07 pm Post subject: RE:Computer Science and McMaster University
I think that if you are willing to work hard, and are able to cope with writing multiple choice tests than you should gives the program a shot. As long as you know how to solve the problems, and are able to explain why the solution to a problem is correct, than you should do fine.
Like I said all the tests are multiple choice, so if you make one mistake in your calculations it could mean the difference between the right answer, and a wrong answer that appears in your list of answers.
I don't want to say that you should be discouraged, but at the same time I would exercise caution if you were not that great at math.
As long as you are able to understand, and apply, the theory to most problems you should be okay. You should not be memorizing the solutions to problems too much. For example knowing that the derivative of x^2 is 2x is great, but unless you know why the solution is correct you would probably not be able to differentiate more complicated expressions.
If this were high school I would say give it a shot, and if you had trouble with the course than you could just not pursue that specific topic. However, I know that university costs money, and if you do struggle in a course you could end up wasting money.
I would try to get in contact with other Engineering students at McMaster (if possible) or try contacting some of the professors teaching Eng. Math 1 (I don't which professors are teaching Eng. Math 2) and see if they have any other opinions about the course(s).
You will find the e-mail addresses of each professor teaching the course, and also find out more information about how the tests that we wrote so far (find the link for suggested problems 1-4, and look at the sample tests).
Hopefully you can find out more about the course, and its difficulty.
Posted: Mon Nov 23, 2009 12:17 pm Post subject: Re: Computer Science and McMaster University
Last question; do they restrict you from moving on to Level II if you don't meet certain requirements?
Posted: Tue Nov 24, 2009 1:56 pm Post subject: Re: Computer Science and McMaster University
Yes, 1FC3 does cover a lot of the math-related material that is covered in 1MA3, such as number base conversion and logic theory (though the latter is not very complicated in 1MA3, and after looking at some of the previous 1FC3 course material, it doesn't seem very complicated or thorough in there either). 1MA3 just mostly stresses the algorithmic nature of programming, and covers a little bit of everything aside from that.
And yes, there are restrictions that disallow you from continuing into a Level II program, though they aren't very harsh. You basically just have to pass 1MD3, 1FC3, and the two math courses, 1Z04 and 1ZZ5. Even if you only pass each with a 50%, I believe you can still continue on into Level II. Apparently you only need a CA of 4.0 to pass into Level II, so yes, just a pass in all courses (including your electives) should suffice. Also, it depends on whether you're wanting to continue into Honours Computer Science or Business Informatics. If you are trying for the business portion, there are an additional two requisite courses you must pass, I believe.
Personally, I'm just very excited to go into second year. I mean, the easygoing nature of Level I Comp Sci is nice, but I'd like to be able to go beyond what I'm easily able to find on the internet. But since it is easygoing, I can take a good portion of time learning languages on my own. Currently, I'm trying to learn C++ and Java, which are, thankfully, quite similar. EA Games co-op requires both those languages... Hopefully it all works out.
Posted: Wed Dec 02, 2009 9:54 pm Post subject: Re: Computer Science and McMaster University
I was just reading this thread and you guys make McMaster sound really interesting to be in. I'm in grade 12 right now and I was considering McMaster for my third university choice, but before I make a final decision, could you lighten me up by answering a few questions?
I've read from somewhere that you need to take some kind of english course (or test?)... not that it really bothers me, but is it true?
another question: for the engineering courses you must have credits on before graduating, the engineering safety course you were taking about... for anyone that has took this course... what was the main focus of this course ? For the engineering math, is it all mathematics (ie. calculus) or does it involve the sciences as well? Do you like that course in terms of workload and actual understanding and applications of the things you learn in there?
I've been wanting to apply to the computer science programs in McMaster, but the fact that you need to take engineering courses makes me feel uncomfortable.
Posted: Thu Dec 03, 2009 11:24 am Post subject: RE:Computer Science and McMaster University
I did not have to take a special English course (aside from the usual grade 12 English course), or any test to get into the program. However, if you are referring to the test during faculty day, it is really just a "scare you, not important at all" kind of test. The minute you start writing the test you realize that it is not real as students are constantly interrupting the test, and the supervisors are acting strange. Anyways, it is nothing to worry bout, and, unless it was changed for this year, there is no special course or test you have to take.
The Engineering Safety course is a non-credit course that you have to take before graduate. I have not taken the course as it shows up on my timetable as "to be announced." The only other Engineering course you take in first year are Engineering Mathematics 1 and 2, which really just focus on applying mathematics to more technical fields as opposed to science or more mathematical fields. Overall I would say that Engineering Mathematics 1 applied the mathematics similar to any regular math class except it gives you some applications towards more technical aspects. For example, thinking of functions as machines (you give the machine some input, and it does something with that input; just like a mathematical function).
First year Computer Science at McMaster is really an introductory program. McMaster assumes that any student entering the program has not taken any Computer Science related courses, and knows very little about how computers work. For this reason, the courses you take in first year can be pretty slow. Therefore, if you have taken Computer Science courses before, or know a thing or two about programming and computers, than you may find the workload pretty easy to deal with.
Because first year focuses on introducing Computer Science you would use the knowledge gained in first year to progress through the rest of the program. I would not expect any first year Computer Science at McMaster to know how to apply their knowledge properly, because first year students are assumed to know nothing about Computer Science.
If you have taken Computer Science courses before you probably already know one or two major applications of Computer Science. However, if you have not taken any Computer Science courses than I would suggest that if you do apply to McMaster and decide to attend the university, that you focus on learning the foundations and worry about the applications latter on.
The only similarities you have in common with first year engineers are the two math courses, and the safety course (for Business Informatics I think you may have one two courses in common with some first year engineers). Most of your first year timetable will be filled with electives. So you get to choose a lot of the courses you take in first year. I would suggest using your electives to check out possible minors you might declare, as you do have quite a few courses you can choose as electives.
Don't be afraid of the program just because you will be taking some Engineering based courses. You will still be focusing on Computer Science, even though the program is apart of the Engineering faculty.
Overall I have liked first year, even though have only taken on Computer Science so far.