March 6, 2009I've finally come up with a curve for assignment 2 (sorry for the delay). You guys did much better than I was expecting, so it won't be curved quite as severely as I thought it would be. That's your punishment for doing well. If you received x/50, your new mark will be (x+7/47). E.g., if you get 35/50=70%, your new mark will be 42/47=89.4%.
Here's the dynamically sized lookup table we did in tutorial.
March 4, 2009Updated the course outline to reflect that assignment 3 is due March 12, not March 5.
March 3, 2009I typed up a sample solution to the midterm exam. Answers to multiple choice are given in large, bold font. Answers to other questions are given in a sans serif typeface.
March 2, 2009The Solaris computers I mentioned that you can use in addition to obelix for testing don't seem to be running SSH. You can log on using rlogin. E.g., from obelix, rlogin aldor or rlogin yacc.
February 26, 2009Assignment 2s that came in very late (after the office closed on the Friday before reading week) will take a liiiittle while extra to mark. Sorry about that.
February 25, 2009Lecture is cancelled today. I'm sick. If you're curious about your midterm mark, you can email me. Assignments should definitely be at the I/O counter by the end of the week. In my C tutorial today I was planning on discussing the C pre-processor and breaking up a program into multiple files. You can come to my office hours tomorrow if you want to learn about this, or wait until next week where I'll be doing a little bit of it.
February 12, 2009Assignment 3 is now up. I don't expect you to work on it over the break, but I'll give you the option to at least :). Have a good break everyone!
I put up the code for my server that I used for assignment 1. This should give you some example code to work from for setting up a server socket and accepting connections.
February 11, 2009The exam is in room MC105b today, the usual lecture room.
February 10, 2009Fixed up the notes for Jan 26 and Feb 2. There was an incorrect bit in row 3, column 4 in some of the G matrices used to describe Hamming codes.
In an effort to reduce work load for future assignments, I'm contemplating either giving you guys skeleton code to start working from, or allowing you to work in pairs. If you have any thoughts on the matter, email me about it right away! I'm also planning on allowing Java for future assignments as well
Put up a different version of the January 26 notes with an annotation saying when a bit got flipped during my description of Hamming codes. My lightning bolt didn't show up on the slides! :(
February 9, 2009Since many of you are gunning for part marks (sigh :P), I thought I'd put up the assignment 2 marking scheme early for you to see. Let me know if you have any questions about it.
February 8, 2009As has been helpfully pointed out, it's advised you do not call your compressor compress. There is already a Unix command installed called compress, so when if yours is also called compress, you may accidentally run the standard Unix command instead of your own program!
Just as a follow-up to yesterday's news, if you test out noisify with a value of 0.001, you should be able to correct for noise fairly consistently (if you have to use a number smaller than that, no worries)
February 7, 2009I changed the noisify program (used to test your error correction) to stop putting in bursts of errors. It was kind of mean to do since so many of you are using Hamming codes :P
February 5, 2009Put up the C file we went through yesterday
February 4, 2009Brian ("Sri") will not be at office hours tomorrow (Thursday) as scheduled. If you were planning on going to Sri's office hours, please come to my office (WSC 127) instead. Sorry for the inconvenience!
February 3, 2009I created some test data that's well-suited to RLE. You can find it on GAUL as the file ~mburrel/3357/asn2/good-for-rle.png. The compressed version is just barely smaller than the uncompressed version using the naive RLE encoder I showed in class. If you can make some small tweaks to it to improve RLE's performance on that file, you still have the potential to get 100%.
I've decided to extend the deadline until Monday, February 9. Mostly I felt like a dick for showing the RLE encoder in class and then saying "this is no longer adequate", not thinking that some people may have written something like that for their assignment. If you'd already written something like what I showed you for your compressor, I think you'll find it won't take too much work to tweak it a little (have non-compressed blocks in your stream or something), but now you have until Monday to do it :)
February 2, 2009Added more commentary about how to deal with webpages as input for assignment 2
January 30, 2009Added a question to the assignment 2 commentary regarding working at the bit level vs. the character level
January 28, 2009Put up some sample code for turning 4 bit codes into 5 bit codes (this makes sense if you stayed for the C tutorial on Wednesday)
January 27, 2009Put up a sample solution for assignment 1
January 24, 2009Added more testing data for bonus #1 for assignment 2 (flag of Canada and flag of Iceland)
Fixed a bug in the triangle filling function in tri2pnm (also used for bonus #1 for assignment 2)
January 23, 2009Fixed typos in Jan. 21 notes
January 20, 2009Put assignment 2 up
Fixed typos in Jan. 19 notes (28 bits instead of 24 bits)
January 19, 2009Fixed a typo in the Jan. 12 notes
January 14, 2009Fixed a typo in the sample Makefile (I'd accidentally written ^$ instead of $^)
January 13, 2009Changed Ashfaq's consulting times
January 12, 2009Fixed the link to my "old" teaching page (with the Makefile tutorial).
Wrote up a sample Makefile for you guys to look at. Please don't just copy it verbatim! You're supposed to use it as a starting point.
January 11, 2009Added more "commentary" to assignment 1 regarding how to handle return values in for gmake test.
January 9, 2009Added another bit of "commentary" to the assignment 1 description about how you need 2 rules in your Makefile (for gmake and gmake test).
January 7, 2009Fixed a typo in the assignment 1 description. I had a 145 in the IP address of the testing server when it should have been a 245! (sorry)
Added consulting information for our two TAs
Added a link to an MP3 of the first lecture. I can't promise these will always be available, but I'm going to make a go of it.
January 6, 2009I added an extra note in the "Commentary" section for assignment 1, noting that you will have to cast your pointer when calling connect (if you don't want any compiler warnings)
I added an "example usage" section to assignment 1
It's been pointed out that the server I have running for testing assignment 1 (at address 129.100.16.245) is only consistently accessible on campus. If you're testing your assignment at home, it likely won't be able to connect. I'm currently looking for a better place to host it!
January 5, 2009Assignment 1 has been posted!