CSE 291 Syllabus

Course Meetings

Lecture: 5:00 - 6:20 Mondays and Wednesdays (SOLIS 104)

Course Description

This course explores both foundational and contemporary topics in storage systems including SSD and disk-based storage devices; hardware-based aggregation such as RAID; network-based solutions such as storage area networks (SANs); file system integration at the OS and user levels, including VFS and FUSE; network and distributed file systems; storage for relational and NoSQL databases; Distributed Hash Tables; and higher-level concerns including consistency and replication.

Prerequisites

An upper-level undergraduate or gradaute project course in software systems, e.g. networking, OS, etc.

Textbook

There is no required textbook. Readings will regularly be assigned.

Web Site

http://cseweb.ucsd.edu/classes/sp17/cse291-a/

Instructors

Name: Gregory Kesden
Email: gkesden@eng.ucsd.edu
Url: http://cseweb.ucsd.edu/~gkesden
Office: CSE 2126
Office phone: 858-534-3854
Office hours: Please see schedule on Web for updated information: http://cseweb.ucsd.edu/~gkesden/schedule.html

Please note:
Office hours are times that I do my best to reserve exclusively for "drop in - no appointment" meetings with students, but I am often available at times other than office hours. Please don't hesitate to call or drop by at other times, or to request an appointment. Office hours are convenient -- if they are convenient for you. If not, please, please, please email or call for an appointment, or just take your chances and drop by - you can find my schedule on the Web.

Please remember -- I'm here to help. I appreciate the opportunity to serve you. Do give me the chance.

Please note that my office phone rolls to my cellphone 24x7. Please feel free to call it anytime. I turn it off on those rare occasions when I prefer not to be disturbed.

I am "gkesden" on many of the popular IM systems (AIM, MSN, GTalk, Skype, Yahoo). Please feel free to ping me.

Course Attendance

Attendance is expected at all classes. You are responsible for everything conveyed during class, even if you are absent. It is suggested that you make friends with your classmates -- they can be helpful should you miss class. In the event that you miss class, you should contact one of these individuals promptly to ask for help. The course staff is not responsible to help you with material or procedural announcements from which you opted out by electively missing class.

The instructor may take attendance at any time, up to once per lecture, and penalize anyone absent up to 3% of their final course grade per recorded absence.

Need Help?

I can't stress enough that the course staff, the instructors and TAs, are dedicated to providing you the highest possible levels of support: inside of the classroom and outside. Please, if you need help, do ask.

Important: It is strongly suggested that you email all of us with questions. This will assure you of the fastest possible answers. You can do this very easily by using the cse-291-staff@googlegroups.com mailing list.

Assignments and Grading

  • Exams: 40% (20% mid-term, 20%-final)
  • Homework: 25% (Approximately 4)
  • Term Project: 35%

Important note: Because of the importance of understanding both the theoretical and hands-on elements of systems, students must pass all three components of the course (homeworks, exams, and the projects) in order to receive a passing grade for the course. This does not affect the actual letter grade assignment unless one of the components is not completed to a passing standard.

Grade Corrections

We try to be very, very careful about scoring your work and maintaining your grades. But, we are human and will make mistakes. If you have any questions about grading, please see any member of the course staff.

If possible, s/he will help you "on the spot". But, if s/he want to discuss the issue with other members of the staff, which does occur in many cases, he or she might make a copy of your work and/or ask you to write down or email your concerns. Please don't be alarmed -- this is just to try to ensure correctness and consistency among staffers, as well as prevent miscommunication. If you are asked to provide a copy of the work or feedback in question, or to provide your concerns in writing or email, you are required to do this before your concern can be addressed.

Please keep copies of all of your graded work, electronic submissions, and electronic feedback, until you receive your final course grade and are satisfied that it is correct. Without the original work and the grading information, it is more difficult and time consuming to correct errors.

In general, grading concerns should be addressed within one (1) week. In the special case of the final exam, they should be addressed before the end of the next regular academic quarter (fall, winter, spring). The course staff, at its discretion, may refuse to reconsider grades outside of this time period.

Should concerns arise outside of these time periods, but during the quarter, please do contact any member of the course staff -- we want to be reasonable and will do our best, within ourt discretion, to help. Should concerns occur after the end of the quarter, please contact the instructor.

Collaboration

It is suggested that you form study groups as soon as possible. These groups generally work best if there are between three and five people involved, but sometimes pairs or slightly larger groups can work well. Typically the most effective study groups meet once per week for a few hours, or a couple of times each week for a couple of hours each meeting. For study groups to be effective, each member must work indivudally with the material in-between meetings such that s/he has something to contribute as well as questions to drive the discussion.

Unless otherwise specified, all assignments should be completed individually. In other words, it is okay to collaborate in studying the course material, but the "writing on the page" or the "code in the lab", as examples, should be your own "thought product".

If portions of your individual assignments have been significantly influenced by someone else, you should prominently give them credit for their contribution. Proper attribution is critically important -- and is an absolute defense against charges of "Academic Dishonesty".

Failure to provide proper recognition for the contributions of others towards any graded work may be, at the discretion of course staff, considered Academic Dishonesty under the applicable campus and university policies.

Late Work

You have four (4) "Late Days" for use on assignments this quarter. You can use one day on each of four assignments, four days on one assignment, &c. There are no fractional late days -- an assignment 1 second late requires the use of a full late day.

These late days are not "procrastination days". They are instead designed much like "personal days" at work to handle the little things that come up during the quarter: short illnesses, injuries, visiting family or friends, a burst of work in other classes, doctors vists, &c.

The use of these days is completely at your discretion -- but, once they are gone, they are gone. That's it. The course staff cannot give you more. Late work is not accepted, other than through the use of "Late Days".

There is, of course, the possibility that exceptions to this policy will arise. We certainly hope that nothing incapacitating will happen to any of you. But, in the event that there is some major life event including major medical issues, emotional problems, family problems, &c, the course staff stands ready to work with you, as appropriate.

But, because these events are major events that likely will affect more than one class, we refer these circumstances to other campus officials, typically academic advisors and/or college deans.

The use of late days on the last project may be limited to ensure the ability of students to prepare for final exams. Stay tuned.

Electronically Mediated Communication

You are not permitted to engage in any electronically mediated communication during class. No TXTing. No IMing. No email. No surfing the Web. No net games. No talking on your cell phone. You get the idea: If something is being communicated and anything even vaguely electronic is involved, it isn't allowed. If you are not comfortable with this -- find a different section or course.

Any student found to be violating this policy may be counted as absent for the day and penalized up to 3% of their final course grade (See the section on attendance).

Recording

High-fidelity recordings of class, including any audio and/or video recordings, regardless of the media or format, and regardless of the intended or actual use, are not permitted without prior written permission of the instructor. The class will be notified in advance should any such recording be approved. If you are not comfortable with this -- find a different section or course. Students have no right to record classes under any University policy.

Any student found to be violating this policy may be counted as absent for the day and penalized up to 3% of their final course grade (See the section on attendance).

This policy is intended to protect the privacy of the students. No student should be concerned about potential employers finding video on the Web of them asking questions or otherwise participating in discussions in class. This is an educational environment, not a recruting test.

Podcasts

This quarter, the instructor is experimenting with the campus-managed podcasts. Should attendance or class participation drop, or should the instructor otherwise believe that they are not in the best interest of learning, they may be discontinued and/or become unavailable, temporarily or permanently, without prior notice. Please attend class. Having said that, enjoy them (while they last?)