forked from c4cs/c4cs.github.io
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
371 lines (319 loc) · 15.2 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
---
layout: default
---
<div class="jumbotron">
<p>This 1-credit seminar is designed to teach the essentials of using a
computer effectively for EECS students. While the target audience is CS/CE/DS
students, any student wishing to learn how to use their computer much more
effectively is encouraged to join. Topics covered include shells, environment,
scripting, build systems, compilers, debugging tools, and version control. The
end of the course will be open to student input for interesting topics to
cover.</p>
</div>
<div class="alert alert-info">
<h3 style="margin-top: 0px; font-weight: bold;">Updates</h3>
{% comment %} Do math on unix timstamps to process in liquid {% endcomment %}
{% assign onemonthago = 'now' | date: '%s' | minus: 2592000 %}
{% for update in site.updates %}
{% if update.categories contains 'f18' %}
{% comment %} No int filter, use benign math to coerce from string {% endcomment %}
{% assign update_date = update.date | date: '%s' | times: 1 %}
{% if update_date > onemonthago %}
{{ update.output }}
{% endif %}
{% endif %}
{% endfor %}
<!--<p><a onclick='$("#old-updates").show(); $(this).hide()'>[+] Show older updates</a></p>-->
<div id="old-updates" style="display: none">
{% for update in site.updates %}
{% if update.categories contains 'f18' %}
{% comment %} No int filter, use benign math to coerce from string {% endcomment %}
{% assign update_date = update.date | date: '%s' | times: 1 %}
{% if update_date <= onemonthago %}
{{ update.output }}
{% endif %}
{% endif %}
{% endfor %}
</div><!-- old-updates -->
</div>
<hr />
{% assign anchor_text="Course Pre-Requisites" %}
{% assign anchor_name="prereqs" %}
{% assign anchor_html_entity="h2" %}
{% include anchor.html %}
<p>The only enforced pre-requisite for this course is ENGN 101/151 or
EECS 182/183, however it is strongly advised that students have either
taken or are concurrently enrolled in EECS 280.</p>
<p>It is expected that students are currently enrolled in at least one course
involving non-trivial software projects (e.g. EECS 280 or 281). If you are
not enrolled in a programming course this term, you must have previously taken a
programming course where you still have access to the projects you have
completed.</p>
{% assign anchor_text="Syllabus & Essential Info" %}
{% assign anchor_name="syllabus" %}
{% include anchor.html %}
{% assign anchor_text="Course Staff" %}
{% assign anchor_name="staff" %}
{% assign anchor_html_entity="h3" %}
{% include anchor.html %}
<p>
For general issues, e-mail the course staff at <a href="mailto:[email protected]">[email protected]</a>.
For sensitive issues, please e-mail Marcus directly.
</p>
<div class="table-responsive">
<table class="table staff-table">
<tr>
<td><img alt="@marcus-darden" class="avatar" src="https://avatars1.githubusercontent.com/u/1323862?v=3&s=120"></td>
<td><img src="/static/img/samkhan-square.jpg" alt="Samiur Khan" /></td>
<td><img src="/static/img/cyanliu-square.jpg" alt="Christina Liu"/></td>
<td><img src="/static/img/amrith-square.jpg" alt="Amrit Hariharan"/></td>
<td><img src="/static/img/sltries-square.jpg" alt="Stevie Triesenberg"/></td>
<td><img src="/static/img/tarunsk-square.jpg" alt="Tarun Khubchandani"/></td>
</tr>
<tr>
<td>Marcus Darden</td>
<td>Samiur Khan</td>
<td>Christina Liu</td>
<td>Amrit Hariharan</td>
<td>Stevie Triesenberg</td>
<td>Tarun Khubchandani</td>
</tr>
<tr>
<td><a href="mailto:[email protected]">[email protected]</a></td>
<td><a href="mailto:[email protected]">[email protected]</a></td>
<td><a href="mailto:[email protected]">[email protected]</a></td>
<td><a href="mailto:[email protected]">[email protected]</a></td>
<td><a href="mailto:[email protected]">[email protected]</a></td>
<td><a href="mailto:[email protected]">[email protected]</a></td>
</tr>
</table>
</div>
{% assign anchor_text="Course Resources" %}
{% assign anchor_name="resources" %}
{% include anchor.html %}
<h4>Course Q&A / Forum – <a href="https://piazza.com/umich/fall2018/eecs398c4csf18" target="_blank">Piazza</a></h4>
<h4>Assignment Submission & Grades – <a
href="https://www.gradescope.com/courses/24368" target="_blank">Gradescope</a></h4>
<ul><li>Gradescope entry code: <code>MBBY38</code></li></ul>
<!--
<p>For most questions, please use <a href="https://piazza.com/class/ij1jghks3dr59n" target="_blank">piazza</a>
so that all students may benefit from the question and answer. To reach the course staff, please e-mail
<a href="mailto:[email protected]">[email protected]</a>.
-->
<p>To borrow a CSE laptop for the semester, contact Don Winsor at <a href="mailto:[email protected]">[email protected]</a>.</p>
{% assign anchor_text="Course Meeting Time and Location" %}
{% assign anchor_name="times" %}
{% include anchor.html %}
<dl class="dl-horizontal">
<dt>Section 002 (26357)</dt>
<dd>1670 BEYSTER, Friday 2:00PM — 3:30PM</dd>
<dt>Section 003 (33882)</dt>
<dd>1013 DOW, Friday 10:30AM — 12:00PM</dd>
</dl>
<div id='calendar-loading'>Loading calendar...</div>
<div id='calendar'></div>
<a href="https://calendar.google.com/calendar/embed?src=4a0vvtkg11f6g0qs2er37gkkf8%40group.calendar.google.com&ctz=America/New_York" class="pull-right" target="_blank">Google Calendar link</a>
{% assign anchor_text="Schedule" %}
{% assign anchor_name="schedule" %}
{% assign anchor_html_entity="h3" %}
{% include anchor.html %}
<div class="alert alert-warning">
<span class="glyphicon glyphicon-warning-sign"></span>
The syllabus is subject to change in response to
feedback and class needs throughout the term.
</div>
<div class="table-responsive">
<table class="table">
<tr>
<th style="min-width: 190px;" colspan="2"></th>
<th style="min-width: 300px;">Topic</th>
<th style="min-width: 400px;">Lecture Materials</th>
</tr>
{% for week in site.syllabus %}
{% if week.categories contains 'f18' %}
{{ week.output }}
{% endif %}
{% endfor %}
</table>
</div><!-- table-responsive -->
<!--
<p>Some suggestions for special topics lectures:</p>
<ul>
<li>cron jobs</li>
<li>Python, Perl, <insert pet scripting language here>, ...</li>
<li>Personal Security / Integrity - disk encryption, pgp, etc</li>
<li>Packaging (how to get your program into apt-get repositories)</li>
<li>Internet basics (routing, AS's, DNS, UDP, TCP, etc etc)</li>
<li>Internet tools, (nc, dig, nslookup, whois, etc)</li>
<li>LaTeX</li>
<li>Postscript</li>
</ul>
-->
{% assign anchor_text="Attendance, Grading, and Homework" %}
{% assign anchor_name="grading" %}
{% assign anchor_html_entity="h2" %}
{% include anchor.html %}
<p>
This course is graded on a straight scale, it will not be curved. There are a
total of 100 possible points in this course. You are expected to earn 40 points
from Homework, 30 points from Attendance and Participation, and 30 points from
Advanced Exercises, however each section has modest opportunity for extra credit
that can cover missing points elsewhere.
</p>
<p>As the semester progresses, if you'd like to see how you're doing you can enter
your scores into this <a href="progressEval.html">table</a>.</p>
<p><small><em>Range notation [90,93) means 90 is included and 93 is not</em></small></p>
{% assign anchor_text="Final Grades" %}
{% assign anchor_name="syllabus-grades" %}
{% assign anchor_html_entity="h3" %}
{% include anchor.html %}
<div class="table-responsive">
<table class="table grade-table">
<tr>
<th></th>
<th>A+<br /><small>>100</small></th>
<th>A<br /><small>[93,100]</small></th>
<th>A-<br /><small>[90,93)</small></th>
<th>B+<br /><small>[86.7,90)</small></th>
<th>B<br /><small>[83.3,86.7)</small></th>
<th>B-<br /><small>[80,83.3)</small></th>
<th>C+<br /><small>[76.7,80)</small></th>
<th>C<br /><small>[73.3,76.7)</small></th>
<th>C-<br /><small>[70,73.3)</small></th>
<th>D+<br /><small>[66.7,70)</small></th>
<th>D<br /><small>[63.3,66.7)</small></th>
<th>D-<br /><small>[60,63.3)</small></th>
<th>F<br /><small>[0,60)</small></th>
</tr>
</table>
</div>
{% assign anchor_text="Homework (40% / 40 points)" %}
{% assign anchor_name="syllabus-homework" %}
{% assign anchor_html_entity="h3" %}
{% include anchor.html %}
<p>There are 12 homework assignments in the course. Each homework assignment is
worth 4 points. Any points over 40 points are worth half their value, that is
if a student completes all 12 assignments with a perfect score, their total
points earned from homework will be
40 + (0.5×8) = 44.</p>
<p>Late assignments will not be accepted. Notice that one can miss/skip up to
two assignments and still receive the full 40 homework points.</p>
<h4>Homework Effort and Grading</h4>
<p>This is a 1 credit course and the homeworks are designed to be
commensurate with that. Each assignment should take 60–90 minutes on
average. The goal of the homeworks is to reinforce concepts introduced in
lecture and to give hands-on experience.</p>
<p>We will give each homework a “raw” grade in Gradescope, which
will then convert to a final score using the following conversion:</p>
<dl class="dl-horizontal">
<dt>[0,0.25] → 0 points</dt><dd>No / very little effort</dd>
<dt>(0.25,2] → 2 points<dd>Some effort, but not quite there</dd>
<dt>(2,4] → 4 points<dd>Solid effort, completed successfully</dd>
</dl>
<p>The idea here is that homework does not have to 100% perfect to receive full
credit. In addition, course staff can be a little “nit-picky”,
taking off tenths of points to draw your attention to corrections and suggestions
without actually penalizing your grade.</p>
<h4>Grading Issues / Regrade Requests</h4>
Regrades are handled on <a href="https://www.gradescope.com/courses/24368" target="_blank">Gradescope</a>.
We will close regrade requests roughly one week after assignments are returned.
{% assign anchor_text="Attendance and Participation (30% / 30 points)" %}
{% assign anchor_name="syllabus-attendance" %}
{% assign anchor_html_entity="h3" %}
{% include anchor.html %}
<p>Attendance is required for this course.
<strong>Bring your laptop to every lecture.</strong>
Lectures will include some quick quizzes used both to verify comprehension and
attendance.
Generally, correct answers will be worth full credit and incorrect answers half
credit (you were there, but didn’t get it right).
Generally, we will ask at least three questions during class. Not all questions
may count for attendance credit.
We reserve the right to experiment with this mechanism a bit throughout the
semester and vary when and how we ask questions or validate attendance.
</p>
<p>Each week can earn up to 3 attendance and participation points. Any points
over 30 points are worth half their value, that is if a student attends and
participates for all 12 weeks, their total points earned from attendance and
participation will be
30 + (0.5×6) = 33.</p>
<p>Notice that you can miss up to two weeks without any penalty. This is by
design to accommodate unexpected illness, emergencies, travel for interviews, or
any other situations.
Please do not ask for excused absences for one-off issues that are already
covered by this policy.
If extenuating circumstances cause you to miss more than two weeks, please
contact us and we can work something out.
</p>
<p>We will not count attendance for the first week of class.</p>
{% assign anchor_text="Advanced Exercises (30% / 30 points)" %}
{% assign anchor_name="syllabus-advanced" %}
{% assign anchor_html_entity="h3" %}
{% include anchor.html %}
<p>Each week (except the first and last) will have at least one advanced
exercise option. The intention is to give a guided exploration of topics that
people find most interesting. These advanced exercises will also be a little
more time consuming (2-3 hours), have a little less guidance, and require you to
research and discover a little on your own. Over the course of the semester,
you are expected to do three of the advanced exercises.</p>
<p>Advanced exercises may <strong>only</strong> be submitted at office hours,
which can be viewed from the course calendar at the top of the page. Advanced
exercises come with a deadline roughly two weeks after they are released,
however it is <strong>your</strong> responsibility to ensure you select an
office hours session to attend before the deadline.</p>
<p><small>We will aim to announce any changes to the regular office hours
schedule at least one week in advance (via Piazza and the updated course
calendar), however sometimes life happens, in which case we may adjust
deadlines if necessary.</small></p>
<h4>Advanced Exercises Grading</h4>
<p>The advanced exercises are graded on a simple all or nothing system, either
you did the whole thing or you did not.</p>
<p>The class is divided into four sections, <em>Introduction and Basics</em>,
<em>Being Efficient</em>, <em>Developing</em>, and <em>Standing on the
Shoulders of Giants</em>. To encourage you to get started early and spread the
advanced exercises load across the semester, the first advanced exercise you
submit from each section is worth 10 points. Another advanced exercise in the
same section is worth 5 points. If you do one advanced exercise from each
section, the final section's first advanced exercise is worth half: 5 points. If
a student completes all 11 advanced exercise, they will earn
(10 + 5) + (10 + 5 + 5) + (10 + 5 + 5 ) + (5 + 5 + 5) = 70 points.
<p>
Completing advanced exercises 2 or more days prior to the due date will result
in 2 extra credit points being awarded for the assignment. Completing advanced
exercises 1 day prior to the due date will result in 1 extra credit point being
awarded for the assignment.
</p>
{% assign anchor_text="Engineering Honor Code" %}
{% assign anchor_name="honor-code" %}
{% assign anchor_html_entity="h3" %}
{% include anchor.html %}
<p>
To review the current Engineering Honor Code, refer to the Honor Council
page on the <a href="http://ossa.engin.umich.edu/honor-council/" target="_blank">
Office of Student Support and Accountability website</a>.
</p>
<!--
<h2><a class="anchor" name="links"></a>Useful Links / Resources</h2>
<ul>
<li><a href="http://stackoverflow.com">Stack Overflow</a>: Got a
problem? Try searching here instead of Google. Odds favor this site will
be the first result anyway, and it's answers are much more complete,
readable, and useful</li>
<li><a href="http://c-faq.com/index.html">comp.lang.c FAQ</a>: Next time
you're bored, don't Facebook or reddit; instead skim a
section. It's really interesting material, presented in short, easy
snippets</li>
</ul>
-->
<hr />
{% assign anchor_text="Course Archives" %}
{% assign anchor_name="archives" %}
{% assign anchor_html_entity="h2" %}
{% include anchor.html %}
<ul>
<li><a href="/archive/w16/">Winter 2016</a></li>
<li><a href="/archive/f16/">Fall 2016</a></li>
<li><a href="/archive/w17/">Winter 2017</a></li>
<li><a href="/archive/f17/">Fall 2017</a></li>
<li><a href="/archive/w18/">Winter 2018</a></li>
</ul>