Appearance
The Syllabus
All SHEEP high school classes have an official syllabus. You will receive an official copy at the start of the school year, but this version should stay up-to-date. I write week numbers down instead of dates because the school calendar tends to shift. If you have questions about what week it is, look at the most recent presentation file posted in Google Classroom.
Because South Carolina says 1 high school credit is 120 hours of work, and we have a maximum of 29 weeks of school, expect over 3 hours of homework per week.
SHEEP Computer Science Syllabus
Week W | Class Time | Homework |
|---|---|---|
| 1 | Introduction, Google Classroom setup, make sure everyone can log in and comment. | Write and turn in: Quick introduction about yourself, what you know about computers, what questions you have about technology. ★ Research one career in computing that interests you; write a paragraph on what that person does and what education the job typically requires. |
| 2 | Binary numbers, counting in different bases, low-level computer storage. | Encoding and decoding exercises - by hand and with tools. ★ Encode and decode a message for your neighbor. |
| 3 | Computer system overview - hardware and software, computer parts and operating systems | Go through your operating system settings, find 5 things you never noticed before, write them in a comment when you turn in your homework. ★ Look at your PC's specs, perform tasks while watching the task manager, and estimate what the most-limiting factor of your computer is. |
| 4 | How the internet works | Draw a diagram with at least 5 steps showing how a webpage travels from a server to your screen. ★ Use traceroute on a website. Identify 3 of the hops and look up where each is physically located. |
| 5 | Write your first web page from scratch | Build an HTML page about yourself or a hobby. Must include at least 2 paragraphs, a working link, and an image. ★ Add a 2nd page and link the two together. |
| 6 | Cybersecurity | Evaluate your own login habits honestly. Write a personal cybersecurity plan with at least 3 specific improvements you will make and why. ★ Explain HTTPS certificates; what happens when one expires? How do we keep them from expiring? |
| 7 | 3D modeling with Tinkercad | Design something 3D-printable in Tinkercad - must be original, consider creating a Christmas gift. |
| 8 | 3D modeling design review | Design review: make corrections, submit for final score, request print. |
| 9 | Google Workspace: Google Drive & Docs - file organization, cloud storage, collaborative editing, and formatting with templates. | Using the MLA format template in Google Docs, write a short letter. ★ Compare MLA formatting to one other style guide (e.g. APA) - what's different, and why might someone prefer one over the other? |
| 10 | Google Workspace: Google Slides & Sheets - building a presentation and basic spreadsheet use. | Make a short Google Slides presentation on what you've learned in this class so far. Keep it handy - you'll be expanding this into your final project at the end of the year ★ Track the weather for a week in a Google Sheet. |
| 11 | Databases: SQLite Introduction | Install DB Browser for SQLite. Create a Students table with names from this class, populate the data, and "select * from Students" to prove it works. ★ Add an order-by clause to sort the records |
| Election Week | ||
| 12 | Databases: Real data analysis: import historic weather data from meteostat | Using the weather data, find the hottest day and average temperature. ★ Get the average temperature by month. |
| 13 | Databases: Advanced queries: joins, groupings, aggregates | Compare and contrast weather from different stations - Summerville vs Charleston, for example. ★ Import NOAA's HURDAT2 hurricane data into a second table and join it against your weather data by date. Note the differences in temperature and precipitation. |
| Holiday Break - resumes January 7 | ||
| 14 | Programming in Python: Intro, making your first program | Showcase a simple "Hello, your-name" program. ★ Expand the program to ask more questions and provide more responses. |
| 15 | Programming in Python: Flow control with conditionals and loops | Make a simple guessing game - "too high" and "too low." ★ Make it fancy (count attempts, etc.) |
| 16 | Programming in Python: Thinking in code | Code project: Let's Make a Deal! Prove the Monty Hall problem. ★ Run the simulation 100,000 times (both switch and stay). Report your results. |
| 17 | Programming in Python: Functions | Rewrite Let's Make a Deal with at least two well-commented functions. ★ Rewrite the simple "Hello" app in functions, also. |
| 18 | Programming in Python: Data collections: lists and dictionaries | Add an array of 1000 random numbers together. ★ Also report: the highest, lowest, and average score. |
| 19 | Bug hunting game (flex week). | Typing practice - 4 hours. |
| Winter break | ||
| 20 | Data + Programming: Algorithmic thinking: dictionaries & indexes vs lists & lookups. | Time a program that looks up items from very large datasets. Repeat multiple times to take an average. ★ Change the data set size and number of search parameters by a small amount to see which has the greater effect. |
| 21 | Group activity: work with a teammate to build a bubble sort together in class. | Make sure your bubble sort works. Each person on the team submits the sort function along with a test proving it correctly sorts a list. ★ Try a second simple sort (selection or insertion) and compare how many comparisons/swaps it takes versus your bubble sort. |
| 22 | AI: definition, understanding. | Think of the 2-3 questions an LLM should get wrong (like "how many r's in strawberry"). ★ Answer: why do frontier AI companies run their models in data centers instead of on individual PCs? |
| 23 | AI: Running locally vs Frontier models | Write a short paper on the difference between a local LLM vs a large public one: differences, tradeoffs, etc. ★ Include how you think AI is profitable for these companies. |
| 24 | AI: Ethics | Write a personal AI use policy for your schoolwork. Be specific about what you will and will not do. ★ Research how 3 different schools (including colleges) handle AI usage. Summarize the different approaches and explain which is best in your opinion. |
| Spring Break | ||
| 25 | Impacts of computing: How computers changed the world. | Then and now: Interview an adult who remembers the world before computers. Ask them what it was like, take notes, and write a short paper (1-3 paragraphs). ★ Research and find something computers were supposed to fix but actually made things harder; write a paragraph. |
| 26 | Impacts of computing: Career study, digital permanence, safety, law, ethics. | Search for your name and/or email online and write a reflection on how a college or employer would react to what they found. Is there anything that needs to change? ★ Research a CS career path that interests you: what is the actual work like, what skills are needed, how much money do they make, and how could you get into that. |
| 27 | Final Project: Introduction & work session. Revisit and expand the presentation you began in week 10 - your final project is to report on everything you've learned this year. | Continue building your presentation. No new homework - be ready to present next week. |
| 28 | Final Project Presentations (part 1 of 2) | Be ready to present if you haven't yet. |
| 29 | Final Project Presentations (part 2 of 2) | |
★ Skill Challenges
23 assignments have a basic homework assignment and a ★ skill challenge assignment.
- Underclassmen (grades 9-10) are not expected to complete these. Any of these challenge assignments completed are counted as bonus points toward the total semester grade.
- Upperclassmen (grades 11-12) are expected to attempt these, and are required to complete at least 10 challenge assignments. Any additional challenge assignments completed are counted as bonus points toward the total semester grade.