Penguin
Diff: WaikatoCourseDescriptions
EditPageHistoryDiffInfoLikePages

Differences between current version and predecessor to the previous major change of WaikatoCourseDescriptions.

Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History

Newer page: version 44 Last edited on Thursday, June 25, 2009 9:25:08 pm by ShaneHowearth
Older page: version 39 Last edited on Sunday, September 28, 2003 12:38:26 pm by AristotlePagaltzis Revert
@@ -13,9 +13,9 @@
 ; COMP10{3A,4B} : The two compulsory introduction to programming courses. Taught using a mangled heap of [C] and [C++]. Many people believe this course should be taught in [Java]. Also has a concept side where CS topics such as logical operations, binary, basic sorting etc etc are introduced. 
 ; COMP123 __The Computing Experience__ : Do not underestimate the workload of this first year bunny course. It is very popular with BA students. This is a good thing if you are a male [ComputerScience] student. 
 ; COMP1{30A, 34B} __Programming {1, 2}__ : Similar to COMP103/104 but the focus is on Software Enginering rather than computer science. The major difference is that these papers have a lightweight introduction to formal methods and refinement of specifications. This course is taken by people wanting a BE in software enginering and scholarship winners. The COMP130 code used to refer to the paper Special Topics in Programming which is no longer offered. 
 ; COMP140 __Foundations of Computer Science__ : A lot of stuff that sounds cool, but isn't. 140 is compulsory. Most of the smartest people I know failed it. It is __unbelievably__ boring. If you can help it, don't go to any of the lectures, but go to all the tutorials. (Second opinion: this stuff is the closest you get to computer science (rather than programming) in first year. Learn this stuff the easy way or learn it later the hard way.) %%% %%% ''Overall lecture attendance was low (10 out of 150+ students per lecture!). Those that did attend fell asleep, and even the cameraman who was filming the lecturer fell asleep at some stage! Hopefully this paper has improved in recent years. -- MarcelVanDeSteeg'' 
-; COMP153 __Practical Programming__ : VisualBasic programming for idiots. People who can't handle 103/104 do this paper, and continue onto 258. (Second opinion: great for people doing computer science so they can put together fancy [Excel] packages.) 
+; COMP153 __Practical Programming__ : VisualBasic programming for idiots. People who can't handle 103/104 do this paper, and continue onto 258. (Second opinion: great for people doing computer science so they can put together fancy MicrosoftExcel packages.) 
 ; ENEL111 __Introduction to Electronics__ : Good paper, was a year long paper but now compressed into A semester. 
  
 !!Level 2 (Second Year) Papers 
  
@@ -26,11 +26,11 @@
 ; COMP223 __Information Discovery__ : This is a great course if you have better things to do than attend lectures. It has less workload than 123 and it would have to be impossible to fail this course unless you forget to turn up to the lab to collect your stamp every couple of weeks. 
 ; COMP224 __Computer Graphic Design__ : This used to be a great course when Steve Franks was still teaching it. He is not teaching it anymore, but you might still learn something if you are interested in computer graphic design. At the very least you'll get a pretty portfolio out of it. Note that there is no pre-req. for this paper. If you can handle COMP123 then you can do this paper. 
 ; COMP233 __Internet Applications__ : This course used to be 333 a couple of years ago. Now it's about PHP and MySQL and stuff. Sample exam question: "Write JavaScript code to pop up an ad window when you load the page." Seriously. ''Note that this course is not COMP333, it was introduced I believe in order to move some material from COMP333 to second year and to introduce more content in COMP333 in 2003.'' 
 ; COMP240 __Mathematical Foundations of ComputerScience__ : Once you've done 140 you'll know why you don't want to do 240. As the name says, take 140 and add maths. Covers lots of fundamental algorithms and math that you'll need umm...somewhere. Pathfinding, fast fourier transforms, oh yeah, all the good stuff. 
-; COMP234 __Hotuku M ori__ : Hmmyeswell. 
+; COMP234 __Hotuku M??? ori__ : Hmmyeswell. 
 ; COMP258 __Engineering Usable Systems__ : A follow on from 153. More VB practical programming. 
-; ENEL211 __Digital Technology: Theory and Design__ : Good paper. Digital electronics. Quite easy and more enjoyable for a CS student than 205. 
+; ENEL211 __Digital Technology - Theory and Design__ : Good paper. Digital electronics. Quite easy and more enjoyable for a CS student than 205. 
  
  
 !!Level 3 (Third Year) Papers 
  
@@ -61,8 +61,10 @@
 That aside, your fourth year is probably going to be your best year in CS. Everything starts making sense, and you begin to understand 
 why you were made to do 140 and 240 as a new undergrad. You might not be thankful for this, but most CS students have problems expressing gratitude anyway. 
  
 4th year would be great if you could do it earlier. A lot of people tire of university by the end of 3rd year and unfortunately if you want to get a degree, then go out and work for a bit, then come back and do your 4th year, you can't really. You have to do a '5th year' because you are a graduate already. Very tricky. 
+  
+It should be pointed out there are 4 ways to get access to the 4/500 level papers, B.Sc.(Hons), P.G.Dip, BCMS/BCMS(Hons), and first year of M.Sc.  
  
 ; COMP401 ??? : ??? 
 ; COMP404 __Advanced Graphics and Multimedia__ : The first half solely focuses on the fundamentals (and mathematics - ugh) of computer graphics. Covers all the fundamental algorithms in detail. The second half focuses on digital image processing, and relates more to optical character recognition etc. Surprisingly, very much a programmers paper. Lots of nifty [C]/[C++] coding to do. Useful paper if you ever want to write your own implementation of OpenGL. 
 ; COMP410 __Programming Languages and [Compiler]s__ : When I did it (in 2001) the goal was to write a compiler for a language you make up. A really fun course. Unfortunately it tends to clash with people doing 420. It doesn't seem to clash with people doing 420 any longer. It is broken up between programming languages and compilers now. You will at least have to write a compiler that produces basic assembly code and perhaps more. The programming languages bit of the course could be on any programming language, it was [Haskell] in 2002. 
@@ -71,12 +73,18 @@
 ; COMP416 __Topics in [ArtificialIntelligence]__ : Not so much artificial intelligence as machine learning. This is the course where you just write algorithms for the Weka framework every other week and test them against better algorithms. 
 ; COMP417 __Text Storage and Retrieval__ : A great course if you are interested in compression and search engines. Taught by Ian Witten. Follows on from 317 but isn't quite as great. 
 ; COMP420 __Report of an Investigation__ : 4th year honours paper. A double weighted paper based 100% on an internal research project that takes 8 - 12 months. Normally the first true introduction to self motivated research and serious report writing for a CS student. ''If someone says "I'm doing my 420" then you nod a bit, and then ask them why they are wasting their time talking to you'' 
 ; COMP424 - __Topics in Software Engineering__ : Formal methods paper. Z, Z and more Z. Read through 'The way of Z' by jacky and you'll know exactly what to expect in this paper. Essential if you plan to work on very large or mission critical projects. 
-; COMP434 - __Software Design__ : Split into two parts. Covers writing reusable software components. In 2003 the first half involved developing [JavaBeans ] that interacted with the Weka project. The second half is an introduction to Microsofts [COM] model and writing components using the [VisualStudio] [IDE]. (Yay, VisualBasic programming in 4th year - not!) 
+; COMP434 - __Software Design__ : Split into two parts. Covers writing reusable software components. In 2003 the first half involved developing [Java ]Beans that interacted with the Weka project. The second half is an introduction to Microsofts [COM] model and writing components using the [VisualStudio] [IDE]. (Yay, VisualBasic programming in 4th year - not!) 
  
 !!Higher level courses 
  
-Above and beyond these courses are the [MSc] and [PhD], which are viewed by the university as single course degrees. 
+Above and beyond these courses are the [MSc] and [PhD], which are viewed by the university as single course degrees. For [MSc] and [PhD] courses, three things matter:  
+# Your supervisor(s).  
+# Your research group. Being part of a research group is a distinct advanage, it gives you a peer group to talk things over with, it creates opportunities to learn from others mistakes and it compensates when your supervisor is out of the country.  
+# Your topic. You're going to be studying this for the next X years. Find one that you think is still going to be interesting in that long, preferable not a current "bright light" whose shine may have faded in a few years.  
+  
+Most current [MSc] and [PhD] students have plenty of advice for those just starting out, feel free to ask them (and feel free to ignore it, we all did).  
+  
  
 ---- 
 Any other CS students feel free to add descriptions / experiences AddToMe