1c330727d9d810a8217d880290430bd498e7cace
haas/spring2026/sysprog/README.md
| ... | ... | @@ -1,20 +1,22 @@ |
| 1 | 1 | # spring2026/sysprog |
| 2 | + |
|
| 2 | 3 | # CSCS2730 Systems Programming |
| 3 | -## Syllabus / Course Homepage |
|
| 4 | 4 | |
| 5 | -* Instructor: Matthew Haas (haas@corning-cc.edu) |
|
| 6 | -* Office: CHM123 |
|
| 7 | -* Office Hours: T 10:00a-10:50a, W 1:30p-2:20p, R 10:00a-12:50p |
|
| 8 | -* In-person meeting details: CHM123 W 2:30p-3:20p |
|
| 9 | -* Class DESIG: sysprog |
|
| 10 | -* Class Chat: #sysprog on discord |
|
| 11 | -* Public Directory: /var/public/fall2025/SYSPROG |
|
| 12 | -* CRN: 30189 |
|
| 13 | -* 'W' Drop Date: April 6, 2026 |
|
| 5 | +## Syllabus / Course Homepage |
|
| 14 | 6 | |
| 15 | -=> https://discord.gg/8eu3nKjUXX Discord invite |
|
| 16 | -=> projects.gmi sysprog projects page |
|
| 17 | -=> https://docs.google.com/document/d/1JsIuYeV5c72l5qaQEFOoNhJDYeaCv60U-kCKMaKzhv4/ SUNY CCC Syllabus Statements |
|
| 7 | +| Instructor: | Matthew Haas (haas@corning-cc.edu) | |
|
| 8 | +| Office: | CHM123 | |
|
| 9 | +| Office Hours: | T 10:00a-10:50a, W 1:30p-2:20p, R 10:00a-12:50p | |
|
| 10 | +| Class Meeting: | Online/Async, CHM123 W 2:30p-3:20p | |
|
| 11 | +| Class DESIG: | `sysprog` | |
|
| 12 | +| Class Chat: | `#sysprog` on discord | |
|
| 13 | +| Public Directory: | `/var/public/fall2025/SYSPROG` | |
|
| 14 | +| CRN: | `30189` | |
|
| 15 | +| 'W' Drop Date: | April 6, 2026 | |
|
| 16 | +| ----------------- | -------------------------------------------------------------- | |
|
| 17 | +| DISCORD invite: | [https://discord.gg/8eu3nKjUXX](https://discord.gg/8eu3nKjUXX) | |
|
| 18 | +| Projects page: | [https://lab46.g7n.org/haas/spring2026/sysprog/projects.md](https://lab46.g7n.org/haas/spring2026/sysprog/projects.md) | |
|
| 19 | +| CCC Syllabus Statements: | [https://docs.google.com/document/d/1JsIuYeV5c72l5qaQEFOoNhJDYeaCv60U-kCKMaKzhv4/](https://docs.google.com/document/d/1JsIuYeV5c72l5qaQEFOoNhJDYeaCv60U-kCKMaKzhv4/) | |
|
| 18 | 20 | |
| 19 | 21 | ## Course Description |
| 20 | 22 | |
| ... | ... | @@ -30,14 +32,14 @@ consent. |
| 30 | 32 | |
| 31 | 33 | Upon completion of this course, students will be able to: |
| 32 | 34 | |
| 33 | -* better understand file I/O for efficient data processing |
|
| 34 | -* utilize capabilities built into the operating system |
|
| 35 | -* write programs that interact with and spawn processes |
|
| 36 | -* use pipes and sockets to communicate and share data |
|
| 37 | -* demonstrate knowledge of concurrency |
|
| 38 | -* design programs that handle signals |
|
| 39 | -* explore efficient solutions to data- and processing- intensive problems |
|
| 40 | -* utilize collaboration of resources to solve problems |
|
| 35 | + * better understand file I/O for efficient data processing |
|
| 36 | + * utilize capabilities built into the operating system |
|
| 37 | + * write programs that interact with and spawn processes |
|
| 38 | + * use pipes and sockets to communicate and share data |
|
| 39 | + * demonstrate knowledge of concurrency |
|
| 40 | + * design programs that handle signals |
|
| 41 | + * explore efficient solutions to data- and processing- intensive problems |
|
| 42 | + * utilize collaboration of resources to solve problems |
|
| 41 | 43 | |
| 42 | 44 | ## Assumptions |
| 43 | 45 | |
| ... | ... | @@ -90,12 +92,12 @@ and knowledge, some derivation of society's and civilization's collective |
| 90 | 92 | body of experience and knowledge), and to be eligible to take a college |
| 91 | 93 | class, yes, SOME prerequisite knowledge is assumed, namely: |
| 92 | 94 | |
| 93 | -* you are functionally literate in English |
|
| 94 | -* you know how to and can/will read (input/consume) |
|
| 95 | -* you know how to and can/will write (output/create/produce) |
|
| 96 | -* you know how to and can/will do math/computations |
|
| 97 | -* you know how to and can/will think |
|
| 98 | -* you know how to and can/will ask questions |
|
| 95 | + * you are functionally literate in English |
|
| 96 | + * you know how to and can/will read (input/consume) |
|
| 97 | + * you know how to and can/will write (output/create/produce) |
|
| 98 | + * you know how to and can/will do math/computations |
|
| 99 | + * you know how to and can/will think |
|
| 100 | + * you know how to and can/will ask questions |
|
| 99 | 101 | |
| 100 | 102 | A student's (or learner's) absolute BEST tool is the question, |
| 101 | 103 | specifically the regular asking of them. You **NEED** to be regularly |
| ... | ... | @@ -144,31 +146,31 @@ Understanding Unix/Linux Programming: A Guide to Theory and Practice |
| 144 | 146 | by Bruce Molay |
| 145 | 147 | Publisher: Prentice Hall |
| 146 | 148 | ISBN: 0-13-008396-8 |
| 147 | -=> http://www.pearsonhighered.com/academic/product/0,3110,0130083968,00.html URL to publisher page of book |
|
| 148 | -=> https://www.pearson.com/us/higher-education/program/Molay-Understanding-UNIX-LINUX-Programming-A-Guide-to-Theory-and-Practice/PGM190781.html Book URL |
|
| 149 | +[Public Book Page](http://www.pearsonhighered.com/academic/product/0,3110,0130083968,00.html) |
|
| 150 | +[Book URL](https://www.pearson.com/us/higher-education/program/Molay-Understanding-UNIX-LINUX-Programming-A-Guide-to-Theory-and-Practice/PGM190781.html) |
|
| 149 | 151 | |
| 150 | 152 | ## Technology Policy |
| 151 | 153 | |
| 152 | 154 | The baseline qualifications for taking this course include you having a proficiency: |
| 153 | 155 | |
| 154 | -* to type on a full-size computer keyboard (104-key or equivalent) |
|
| 155 | -* with basic computing concepts (files, storage, units of information) |
|
| 156 | -* to read instructions and available technical data in relevant theatres and domains |
|
| 156 | + * to type on a full-size computer keyboard (104-key or equivalent) |
|
| 157 | + * with basic computing concepts (files, storage, units of information) |
|
| 158 | + * to read instructions and available technical data in relevant theatres and domains |
|
| 157 | 159 | |
| 158 | 160 | ... and an ability: |
| 159 | 161 | |
| 160 | -* to readily ask questions |
|
| 161 | -* to take notes and later retrieve useful information from them |
|
| 162 | -* to recall important concepts and experiences |
|
| 163 | -* to work on class-related content outside of class |
|
| 162 | + * to readily ask questions |
|
| 163 | + * to take notes and later retrieve useful information from them |
|
| 164 | + * to recall important concepts and experiences |
|
| 165 | + * to work on class-related content outside of class |
|
| 164 | 166 | |
| 165 | 167 | ... and a willingness: |
| 166 | 168 | |
| 167 | -* to attempt solving new and unfamiliar problems |
|
| 168 | -* to encounter new and unfamiliar concepts |
|
| 169 | -* to indulge in new and unfamiliar activities |
|
| 170 | -* to learn in new and unfamiliar ways |
|
| 171 | -* to work on class-related content outside of class |
|
| 169 | + * to attempt solving new and unfamiliar problems |
|
| 170 | + * to encounter new and unfamiliar concepts |
|
| 171 | + * to indulge in new and unfamiliar activities |
|
| 172 | + * to learn in new and unfamiliar ways |
|
| 173 | + * to work on class-related content outside of class |
|
| 172 | 174 | |
| 173 | 175 | ## AI use policy |
| 174 | 176 | |
| ... | ... | @@ -196,13 +198,13 @@ If you insist on using AI, you hereby acknowledge you assume |
| 196 | 198 | responsibility for its inherent perils and hazards it can cause you and |
| 197 | 199 | your progress/success in this class: |
| 198 | 200 | |
| 199 | -* accept that you are putting yourself at risk of deeply sabotaging your learning journey, subjecting yourself to stagnant thought and limited perspectives, as you insulate yourself from the rigors of doing the actual work |
|
| 201 | + * accept that you are putting yourself at risk of deeply sabotaging your learning journey, subjecting yourself to stagnant thought and limited perspectives, as you insulate yourself from the rigors of doing the actual work |
|
| 200 | 202 | |
| 201 | -* accept that you will have to live with the awareness that the instructor and other suitably aware individuals in the course may lose some faith in your humanity |
|
| 203 | + * accept that you will have to live with the awareness that the instructor and other suitably aware individuals in the course may lose some faith in your humanity |
|
| 202 | 204 | |
| 203 | -* accept that, if you pass off AI-generated work as your own, and your work is questioned, **if you are unable to competently demonstrate your understanding, you risk losing any and all credit for that deliverable** |
|
| 205 | +* accept that, if you pass off AI-generated work as your own, and your work is questioned, **if you are unable to competently demonstrate your understanding, you risk losing any and all credit for that deliverable** |
|
| 204 | 206 | |
| 205 | -* YOU are the student, YOU are the one here to do the work and learn. |
|
| 207 | + * YOU are the student, YOU are the one here to do the work and learn. |
|
| 206 | 208 | |
| 207 | 209 | AI prose is increasingly sophisticated and convincing. Yet there is a |
| 208 | 210 | difference between verbosity and competence. Learning to differentiate |
| ... | ... | @@ -214,10 +216,10 @@ when dealing with AI output. |
| 214 | 216 | The grading policy is broken down into 4 areas, totalling 104 points |
| 215 | 217 | (which will account for 100% of the grade): |
| 216 | 218 | |
| 217 | -* Notes/Journal/Writing (13pts) |
|
| 218 | -* Projects (52pts) |
|
| 219 | -* Participation (13pts) |
|
| 220 | -* EoCE (26pts). |
|
| 219 | + * Notes/Journal/Writing (13pts) |
|
| 220 | + * Projects (52pts) |
|
| 221 | + * Participation (13pts) |
|
| 222 | + * EoCE (26pts). |
|
| 221 | 223 | |
| 222 | 224 | Each area, as well as the overall grade, will be evaluated based on a sum |
| 223 | 225 | of accumulated points on each projects out of a sum of total points on |
| ... | ... | @@ -245,15 +247,15 @@ grading unit. |
| 245 | 247 | |
| 246 | 248 | Letter grades are pegged to the following numeric values: |
| 247 | 249 | |
| 248 | -* **A** (99.00+) |
|
| 249 | -* **A-** (93.00-98.99) |
|
| 250 | -* **B+** (87.00-92.99) |
|
| 251 | -* **B** (81.00-86.99) |
|
| 252 | -* **B-** (75.00-80.99) |
|
| 253 | -* **C+** (69.00-74.99) |
|
| 254 | -* **C** (63.00-68.99) |
|
| 255 | -* **D** (57.00-62.99) |
|
| 256 | -* **F** ( 0.00-56.99) |
|
| 250 | + * **A** (98.00+) |
|
| 251 | + * **A-** (92.00-97.99) |
|
| 252 | + * **B+** (86.00-91.99) |
|
| 253 | + * **B** (80.00-85.99) |
|
| 254 | + * **B-** (74.00-79.99) |
|
| 255 | + * **C+** (68.00-73.99) |
|
| 256 | + * **C** (62.00-67.99) |
|
| 257 | + * **D** (56.00-61.99) |
|
| 258 | + * **F** ( 0.00-55.99) |
|
| 257 | 259 | |
| 258 | 260 | Any calculated values in excess of two decimal places that may impact the |
| 259 | 261 | result is at the sole evaluatory discretion of the instructor (for |
| ... | ... | @@ -395,11 +397,11 @@ sanctioned for the course). |
| 395 | 397 | |
| 396 | 398 | With that said, some additional aspects to keep in mind: |
| 397 | 399 | |
| 398 | -* e-mails were designed to be plain text; don't make them into web pages |
|
| 399 | -* e-mails should always have an informative subject line |
|
| 400 | -* if you've got non-text files to include in an e-mail, just attach them |
|
| 401 | -* you've got many attachments? archive/compress them, attach the archive |
|
| 402 | -* plain ASCII text (UTF-8) is preferable over any enriched text format |
|
| 400 | + * e-mails were designed to be plain text; don't make them into web pages |
|
| 401 | + * e-mails should always have an informative subject line |
|
| 402 | + * if you've got non-text files to include in an e-mail, just attach them |
|
| 403 | + * you've got many attachments? archive/compress them, attach the archive |
|
| 404 | + * plain ASCII text (UTF-8) is preferable over any enriched text format |
|
| 403 | 405 | |
| 404 | 406 | If appropriate, I also will accept submissions via singing telegram, |
| 405 | 407 | airplane banner, crop circles, creative dance, three part rock aria, etc. |
| ... | ... | @@ -413,11 +415,11 @@ considerations. |
| 413 | 415 | Where applicable, be sure to include the following information on any |
| 414 | 416 | submission: |
| 415 | 417 | |
| 416 | -* Name, |
|
| 417 | -* Course and Section, |
|
| 418 | -* Due Date, |
|
| 419 | -* Assignment # and description, |
|
| 420 | -* Short abstract describing the purpose of your program / assignment. |
|
| 418 | + * Name, |
|
| 419 | + * Course and Section, |
|
| 420 | + * Due Date, |
|
| 421 | + * Assignment # and description, |
|
| 422 | + * Short abstract describing the purpose of your program / assignment. |
|
| 421 | 423 | |
| 422 | 424 | Presentation of this information in a clear and organized fashion will |
| 423 | 425 | make your assignment all the easier to read. You may come up with your |
| ... | ... | @@ -674,10 +676,10 @@ abilities. |
| 674 | 676 | |
| 675 | 677 | For maximum success in the class, please adhere to the following rules: |
| 676 | 678 | |
| 677 | -* start on activities early |
|
| 678 | -* observe/study, read/intuit, and comprehend the subject matter |
|
| 679 | -* play/tinker/experiment with the subject matter (external to projects) |
|
| 680 | -* ask well-informed and copious questions |
|
| 679 | + * start on activities early |
|
| 680 | + * observe/study, read/intuit, and comprehend the subject matter |
|
| 681 | + * play/tinker/experiment with the subject matter (external to projects) |
|
| 682 | + * ask well-informed and copious questions |
|
| 681 | 683 | |
| 682 | 684 | Struggle and problems in the course almost immediately arise when one |
| 683 | 685 | fails to follow one or more of these guidelines. |
| ... | ... | @@ -688,77 +690,77 @@ The following criteria should be kept in mind when contributing content |
| 688 | 690 | to collaborative documentation, the course notes, and any pertinent |
| 689 | 691 | class-related communications: |
| 690 | 692 | |
| 691 | -* Never use a form of a word in its own definition |
|
| 692 | -* Use external hyperlinks only as citations |
|
| 693 | -* Content first, then formatting |
|
| 694 | -* There is only one empire- ours |
|
| 695 | -* Contribute only original content |
|
| 696 | -* Paraphrase and cite existing information |
|
| 697 | -* Do NOT blatantly copy existing information |
|
| 698 | -* A healthy resource is an active resource |
|
| 699 | -* Do not focus on just your contributions |
|
| 700 | -* Mistakes are opportunities for future contributions |
|
| 693 | + * Never use a form of a word in its own definition |
|
| 694 | + * Use external hyperlinks only as citations |
|
| 695 | + * Content first, then formatting |
|
| 696 | + * There is only one empire- ours |
|
| 697 | + * Contribute only original content |
|
| 698 | + * Paraphrase and cite existing information |
|
| 699 | + * Do NOT blatantly copy existing information |
|
| 700 | + * A healthy resource is an active resource |
|
| 701 | + * Do not focus on just your contributions |
|
| 702 | + * Mistakes are opportunities for future contributions |
|
| 701 | 703 | |
| 702 | 704 | ## Topics |
| 703 | 705 | |
| 704 | 706 | The following is a list of the major topics being covered in this course: |
| 705 | 707 | |
| 706 | -* UNIX Systems Programming |
|
| 707 | -* User space |
|
| 708 | -* Kernel, Kernel space |
|
| 709 | -* Users, Files, and the Manual |
|
| 710 | -* File Access (open, read, write, lseek, close) |
|
| 711 | -* File descriptors |
|
| 712 | -* Buffering |
|
| 713 | -* System Calls |
|
| 714 | -* Directories and File Properties |
|
| 715 | -* File Types and File Properties |
|
| 716 | -* Bit Sets and Bit Masks |
|
| 717 | -* User IDs, Group IDs |
|
| 718 | -* Focus on File Systems |
|
| 719 | -* Filesystem Structure; inodes and data blocks |
|
| 720 | -* Directories |
|
| 721 | -* Links |
|
| 722 | -* Connection Control |
|
| 723 | -* Device files |
|
| 724 | -* Race conditions |
|
| 725 | -* Atomic Operations |
|
| 726 | -* Streams |
|
| 727 | -* Terminal Control and Signals |
|
| 728 | -* Blocking vs. Non-Blocking |
|
| 729 | -* Signals |
|
| 730 | -* Event-Driven Programming |
|
| 731 | -* Alarms, Interval Timers |
|
| 732 | -* Reentrant code, critical sections |
|
| 733 | -* Asynchronous input |
|
| 734 | -* Processes and Programs |
|
| 735 | -* UNIX process model, processes |
|
| 736 | -* Parent/Child processes |
|
| 737 | -* Shell Variables and the Environment |
|
| 738 | -* I/O Redirection and Pipes |
|
| 739 | -* I/O Redirection |
|
| 740 | -* Pipes |
|
| 741 | -* Servers and Sockets |
|
| 742 | -* Client/Server model |
|
| 743 | -* Coroutines |
|
| 744 | -* Connections and Protocols |
|
| 745 | -* Server sockets |
|
| 746 | -* Client sockets |
|
| 747 | -* Zombies |
|
| 748 | -* Programming with Datagrams |
|
| 749 | -* TCP vs. UDP |
|
| 750 | -* Distributed Systems |
|
| 751 | -* UNIX domain sockets |
|
| 752 | -* Threads |
|
| 753 | -* Multithreading |
|
| 754 | -* Creating/destroying threads |
|
| 755 | -* Sharing data between threads |
|
| 756 | -* Synchronizing data |
|
| 757 | -* Inter Process Communication |
|
| 758 | -* Named pipes |
|
| 759 | -* Shared memory |
|
| 760 | -* File locks |
|
| 761 | -* Semaphores |
|
| 708 | + * UNIX Systems Programming |
|
| 709 | + * User space |
|
| 710 | + * Kernel, Kernel space |
|
| 711 | + * Users, Files, and the Manual |
|
| 712 | + * File Access (open, read, write, lseek, close) |
|
| 713 | + * File descriptors |
|
| 714 | + * Buffering |
|
| 715 | + * System Calls |
|
| 716 | + * Directories and File Properties |
|
| 717 | + * File Types and File Properties |
|
| 718 | + * Bit Sets and Bit Masks |
|
| 719 | + * User IDs, Group IDs |
|
| 720 | + * Focus on File Systems |
|
| 721 | + * Filesystem Structure; inodes and data blocks |
|
| 722 | + * Directories |
|
| 723 | + * Links |
|
| 724 | + * Connection Control |
|
| 725 | + * Device files |
|
| 726 | + * Race conditions |
|
| 727 | + * Atomic Operations |
|
| 728 | + * Streams |
|
| 729 | + * Terminal Control and Signals |
|
| 730 | + * Blocking vs. Non-Blocking |
|
| 731 | + * Signals |
|
| 732 | + * Event-Driven Programming |
|
| 733 | + * Alarms, Interval Timers |
|
| 734 | + * Reentrant code, critical sections |
|
| 735 | + * Asynchronous input |
|
| 736 | + * Processes and Programs |
|
| 737 | + * UNIX process model, processes |
|
| 738 | + * Parent/Child processes |
|
| 739 | + * Shell Variables and the Environment |
|
| 740 | + * I/O Redirection and Pipes |
|
| 741 | + * I/O Redirection |
|
| 742 | + * Pipes |
|
| 743 | + * Servers and Sockets |
|
| 744 | + * Client/Server model |
|
| 745 | + * Coroutines |
|
| 746 | + * Connections and Protocols |
|
| 747 | + * Server sockets |
|
| 748 | + * Client sockets |
|
| 749 | + * Zombies |
|
| 750 | + * Programming with Datagrams |
|
| 751 | + * TCP vs. UDP |
|
| 752 | + * Distributed Systems |
|
| 753 | + * UNIX domain sockets |
|
| 754 | + * Threads |
|
| 755 | + * Multithreading |
|
| 756 | + * Creating/destroying threads |
|
| 757 | + * Sharing data between threads |
|
| 758 | + * Synchronizing data |
|
| 759 | + * Inter Process Communication |
|
| 760 | + * Named pipes |
|
| 761 | + * Shared memory |
|
| 762 | + * File locks |
|
| 763 | + * Semaphores |
|
| 762 | 764 | |
| 763 | 765 | ## Student Understanding and Agreement of Syllabus Terms |
| 764 | 766 | |
| ... | ... | @@ -766,18 +768,18 @@ By reading through this document, participating in the class chat, |
| 766 | 768 | utilizing class resources, and performing the various class activities |
| 767 | 769 | and projects, you understand and consent: |
| 768 | 770 | |
| 769 | -* to the rules, policies governing your status as a student at SUNY CCC. |
|
| 770 | -* to the structure, policies, and nature of the course as laid out here. |
|
| 771 | -* to having an adequate understanding of course prerequisite knowledge. |
|
| 772 | -* to maintain a respectful, inquisitive, well-behaved, and learning-oriented focus as you participate and go through the course. |
|
| 773 | -* to practice (and further cultivate, as needed) the fundamental aspects of a student taking this course, which includes being able and willing: |
|
| 774 | -* to read, comprehend and work with the material and information inherent to the course. |
|
| 775 | -* to write and express your thoughts in coherent, descriptive sentences. |
|
| 776 | -* willing to analyze, problem solve, debug, troubleshoot, ideate, creatively, and logically/rationally think. |
|
| 777 | -* willing to compute and transact in number concepts (literal, symbolic or abstract) and any related units in their various processes. |
|
| 778 | -* to, upon facing uncertainty, confusion, or lack of understanding, will ask copious, well-informed, and well-intending questions to clarify your state of understanding. |
|
| 779 | -* if cause for issue rises, you will bring it to my attention so that it may be best addressed as locally and pertinently as possible to the course and its educational environment. |
|
| 780 | -* participate in the course with a focus on curiosity, discovering, exploring, learning, and understanding. |
|
| 781 | -* starting early on deliverables so that ample time is available for discovering, exploring, learning, and asking any questions as needed. |
|
| 782 | -* that, as a student, a genuine learning experience necessarily involves some level of unfamiliarity, which may invoke discomfort. |
|
| 783 | -* that your learning and the nature of the course is an inherently asynchronous thing. It is your responsibility to manage your time, so that you can have adequate time to ask questions and accomplish your own tasks. |
|
| 771 | + * to the rules, policies governing your status as a student at SUNY CCC. |
|
| 772 | + * to the structure, policies, and nature of the course as laid out here. |
|
| 773 | + * to having an adequate understanding of course prerequisite knowledge. |
|
| 774 | + * to maintain a respectful, inquisitive, well-behaved, and learning-oriented focus as you participate and go through the course. |
|
| 775 | + * to practice (and further cultivate, as needed) the fundamental aspects of a student taking this course, which includes being able and willing: |
|
| 776 | + * to read, comprehend and work with the material and information inherent to the course. |
|
| 777 | + * to write and express your thoughts in coherent, descriptive sentences. |
|
| 778 | + * willing to analyze, problem solve, debug, troubleshoot, ideate, creatively, and logically/rationally think. |
|
| 779 | + * willing to compute and transact in number concepts (literal, symbolic or abstract) and any related units in their various processes. |
|
| 780 | + * to, upon facing uncertainty, confusion, or lack of understanding, will ask copious, well-informed, and well-intending questions to clarify your state of understanding. |
|
| 781 | + * if cause for issue rises, you will bring it to my attention so that it may be best addressed as locally and pertinently as possible to the course and its educational environment. |
|
| 782 | + * participate in the course with a focus on curiosity, discovering, exploring, learning, and understanding. |
|
| 783 | + * starting early on deliverables so that ample time is available for discovering, exploring, learning, and asking any questions as needed. |
|
| 784 | + * that, as a student, a genuine learning experience necessarily involves some level of unfamiliarity, which may invoke discomfort. |
|
| 785 | + * that your learning and the nature of the course is an inherently asynchronous thing. It is your responsibility to manage your time, so that you can have adequate time to ask questions and accomplish your own tasks. |