CS429/529 FAQ - Spring 2012

What do I have to know to take this class?

We'll cover this in the first lecture. But for the record, here are some things that would be very useful to know when you walk in: If you have had all of these at the undergraduate level, you should be ok in this course. (Though you might have to do some catching up.)

What's the difference between 429 and 529?

If you're taking the class for undergrad credit, I don't expect novel research-grade ideas from you. So I won't require you to devise your own final project -- I'll come up with one for you. (This also means that you don't have to do the proposal, background literature, etc.)

If you're taking the class for grad credit, I am looking for research-grade ideas and skill development, so you'll come up with your own idea for the final project, including the proposal and so on.

I may also assign additional homework problems to the grad students, depending on the topics we're tackling at the time.

When is stuff due?

All assignments are due at the beginning of class on the due date. Not the middle or the end. (I.e., you have incentive to actually be in class on time. ;-)

Can I hand stuff in on paper?

Sure. I welcome that. Do please either write clearly and legibly, or type (word process) it. If I can't read it, I can't grade it.

Can I turn stuff in electronically?

Absolutely. Save trees! Of course, it may be harder for me to mark up your answers in informative ways, but I'll give it my best.

Shiny! I'll ship you my AmigaEdit 1.3 file right away!

NOOOOOOO!!!!

Please format your submission reasonably nicely and send it in either PDF, PostScript, HTML, or plain ASCII. Please do not send non-portable document formats.

I DO NOT ACCEPT MS-WORD DOCUMENTS.

You may send me MIME attachments, Zip-compressed archives, or tar/gzip archives if you wish. If you send me an archive (.zip or .tar.gz), please set it up to create a subdirectory for its files, named with your last name and the assignment (e.g., ``lane_hw3''). This prevents your files from clobbering someone else's files.

Ok, so when is electronic stuff due?

Your submission must arrive in my mailbox (as measured by my computer's clock) by the beginning of class on the specified day.

What programming languages do I need to work in?

I don't care. No, really. I want to see that you can turn high level math and algorithms into functioning code in some language. I don't really care which one.

But don't abuse this. If you find some language where ``build a support vector classifier'' is a primitive, atomic operation, that kind-of defeats the point. Be reasonable. If you have a question, ask.

My motto is: ``Use the right tool for the job.'' (My other motto is: "All programming languages suck; they just suck differently." But that's a different rant for a different class.)

So you can, like, read every programming language in existence?

Absolutely! How else do you think you get to be a CS professor?

Well, ok, not so much.

The truth is --- I'm not going to read your code in depth at all. This is a graduate (or nearly so) advanced pre-research course. It's not a software engineering course. If you want me to grade your code, take CS351. I only ask you to turn in your code so that (a) I can tell that you wrote it and (b) I can tell that nobody else wrote it for you. If your results look alien, I might look in more depth to see if I can figure out what went wrong, but really, I mostly care about the results themselves.

So what do I turn in for programming projects?

When an assignment (including the final project) includes programming, you should turn in a full copy of your code with the rest of the assignment. You can email code separately from a paper hand-in of results if you like.

What if I really, really have to turn something in late?

Ok, life happens. We can't all be on time all of the time. So there's slack built into the system. (Thanks to Dave Ackley for the slack mechanic.)

Here's the deal: Say an assignment is due at the beginning of class (12:30 PM) on Tues, Mar 20, 2012. By 12:35 or so, it's late. From then 'til 12:30 PM on the 21st, it's 1 day late. From 12:30 PM on the 21st 'til 12:30 PM on the 23rd, it's 2 days late. And so on.

Every day late knocks off 33% of the grade value. So if, in that example, you turned your homework in at 11:53 AM on Wed, Mar 21st, it would be 1 day late. Suppose the ``face grade'' of the assignment is 83/100. Then the ``final grade'' for the assignment would be 0.67*83=55.61/100.

33% per day? You call that slack?

No, here's the slack bit. Everybody gets 3 free ``slack days'' for the whole semester. One slack day wipes out one late day. So, basically, you get three free late days over the course of the semester.

When do I tell you where I want to assign the slack days?

You don't. At the end of the semester, I'll go back and put in slack days in such a way as to maximize your grade.

Are leftover slack days worth anything?

Yes, leftover slack days can be redeemed at the end of the semester for an unspecified amount of beneficence points.

What if my iguana dies or my car is struck by lightning in Montana over spring break or I'm kidnapped by aliens or something else that takes more than three days?

Well, we'll all hope for no emergencies that take more than 3 days. Slack days are intended to cover things like colds, broken leg while skiing, etc. (Corollary: don't try to spend slack days early or unwisely. You may need them for the Martian Death Flu in March.) But life does happen. If you have a real, serious emergency, please come talk to me. I'll be happy to work with you if you have something big happen in life.

Can I work with other people in the class on homework and stuff?

Absolutely! You're smarter as a group than you are as individuals. And you're all adults now. I encourage you to work with other people in the class.

Define: ``work with''

You are allowed/encouraged to:

Wow. That's pretty broad. What's left for me to do?

Ultimately, you have to prove to me that you understand what's going on. So:

It's all so confusing!

Be at peace, grasshopper. If you have any questions about anything --- what's allowed, what you need to do for some assignment, whatever --- please ask. I'm happy to help fill things in. And I'm much happier to clarify policy beforehand than to have to take ``corrective action'' afterward.

So just remember --- if you're confused: ask first.

Is there anything else I should know?

The Dark Side of the FAQ

I know of this great web site with all the answers posted! And there's some k3wl warz3 sites with all the code!

Ok, I shouldn't have to say this to people at your level. But this comes up occasionally, so it's worth being very clear up front:
Dishonest behaviors, including but not limited to plagiarism, copying of another student's work (or providing your own to another), group consultation on individual projects or work, copying solutions from the web, etc., will not be tolerated.

My general feeling is that being caught cheating should be more painful than not having done the assignment at all. Therefore, I will generally at least assign a negative penalty equal to the full value of the assignment if I discover someone cheating on an assignment. I.e., if an assignment is worth 10% of the final grade, the individual would receive not zero credit for the assignment, but -10%.


Check that out again: It is better to not do the assignment than to cheat on it.

Oh, and just so you know: I don't withdraw-pass people I find cheating in my class. After an incident of cheating, your options are finish the class and take the grade you earn, or withdraw-fail.

That's still not clear. Can you give me some examples?

Ok, I really hate to belabor this point, but it seems to come up at least once every semester. Just to be absolutely, crystal clear on this, here are some examples of behaviors that are NOT ALLOWED and are CONSIDERED CHEATING. Yes, all of these are actual incidents that I have faced in the past. No, I will not accept any excuses about them.

Yeah, but I'm really smart. I can get away with it!

Yeah, whatever. If you're smart enough not to get caught, then you're smart enough to not to have to cheat in the first place.