Course Syllabus
|
PREREQUISITES This is an advanced course. You must have object-oriented programming skills equal at least to a full year’s class on that topic. You must also have at least a year of industrial programming experience. You must be fluent in either C# (ideally) or Visual Basic. If you know Java well, you are probably close enough to C# to make it through this class with some extra effort. All class sample code will be shown in C# unless a guest lecturer insists on presenting otherwise. TEXTBOOK AND NOTES This class covers a great deal of territory, so no single textbook can cover it all. The primary textbook for this class is Introducing Microsoft .NET (Microsoft Press), written by your instructor. You do not need to buy it. PDF files of all the chapters we will cover will be provided in the Course Materials section of this web site. This class will also cover many topics which this book does not address. Electronic notes will be provided for these. FIRST NIGHT PREREQUISITES Because of the amount of material we have to cover, I'm delivering a full lecture and homework assignment the first night. Therefore, you must have completed the following preparations BEFORE the first night's class:
HARDWARE AND SOFTWARE This course requires extensive programming homework. Harvard provides some .NET computers at its 53 Church St facility, but you will want to have your own hardware and software development environment. Get the biggest meanest fastest PC you can find, with all the RAM and disk in the world. We recommend Windows 7, any flavor. We will reluctantly do our best with Windows 8. Anyone wanting to try Windows 10, feel free. We will be standardizing on Microsoft Visual Studio 2015. The free Community editions from Microsoft's web site will suffice. We reserve the right to require you to add service packs and updates as we discover the necessity. Supported languages are C# and Visual Basic. TOPICS AND SCHEDULE WARNING: This list of topics is ALWAYS subject to change, even after the class starts, based on late-breaking or quickly evolving technologies, or availability of guest speakers.
HOMEWORK AND GRADING You learn how to program by programming. In this course, you will learn a great deal. You will work for the entire term on the same application, which is a distributed application simulating a police department dispatcher. You will start with a very basic app and add more features to it as the course progresses. At the end you will have a serviceable app, which you can demonstrate to prospective employers when they ask how much you know about .NET. The advantages of such a cumulative assignment are many. The primary disadvantage is that if you fall behind, you are in big trouble. Try very hard not to do this. ALL STUDENTS ARE RESPONSIBLE FOR READING, UNDERSTANDING, AND COMPLYING WITH THE ACADEMIC RULES AND REGULATIONS PUBLISHED IN THE EXTENSION SCHOOL CATALOG, INCLUDING BUT NOT LIMITED TO ACADEMIC HONESTY. This class is graded on programming homework assignments, of which there are 10. These are designed to take approximately 15 hours of work for the median student in this class. Keep in mind that whatever the median time turns out to be, exactly half of you will take longer than that. Since the world of .NET is changing so quickly, particularly in the compact device and cloud arena, the homework assignments are currently being refined and will be posted when they are ready. I reserve the right to change them at any time up to the end of class of the night on which they are assigned. If you miss class, check the web site. We will drop the lowest grade of the 11 graded homeworks, which means that you get to skip or seriously botch one of them. The arithmetic mean of the remaining 10 will be calculated, and your grade computed according to the table below:
It is likely that one at least one assignment you will score less than 100%. You may elect to fix bugs or add features and resubmit one homework assignment which will be regraded without penalty. Each homework assignment has a specific due date, generally at the class following the one at which they are assigned. The homework is due before midnight on that day. You may turn in one assignment up to a week late without penalty. After that, late homeworks will be penalized 10% per week or part thereof. In order to keep me from having to play Solomon, further extensions will only be granted in cases of serious life- or health-threatening emergency. If you or yours are sick or hurt, we’ll cut you some slack. ANY OTHER CAUSE, INCLUDING BUT NOT LIMITED TO BUSINESS PROBLEMS OR WORKLOAD, TRAVEL, OR COMPUTER BREAKDOWNS, DO NOT, REPEATNOT, COUNT, SO DON'T ASK. WEATHER-RELATED EXTENSIONS SHALL BE AUTOMATICALLY GRANTED IF AND ONLY IF CLASS IS OFFICIALLY CANCELLED BY HARVARD. Homework shall be submitted via this web site only. Instructions will be posted at the beginning of class.
CELL PHONE POLICY All cell phones, beepers, pagers, and other audible communication devices shall be turned off before the beginning of class and shall remain off for the duration of class. Setting them to vibrate is NOT sufficient, as leaving to take a call and then returning is disruptive in and of itself. If you cannot do without your connectivity for two hours, then don't come to class. If such a device emits any sort of noise, or if the carrier of such a device leaves the class to handle a silent call, for any reason other than a medical emergency, the carrier of said device shall be ejected from class for the remainder of that evening. A medical emergency is defined as a situation of a medical nature that is of such importance that you need to leave class immediately to attend to it. If that thing rings, or even buzzes, you're out of there for the night, one way or the other. |
Course Summary:
| Date | Details | Due |
|---|---|---|