This class is being taught at St. Mary's College of Maryland, located on the traditional and ancestral territory of the Chaptico, Piscataway, Yaocomaco, and Pamunkey Native Americans. Growing up in the Maryland public school system I never heard the names of these indigenous people. I encourage those of you who are on campus to take a walk over to Historic St. Mary's City, learn about the Yaocomaco people, and see a recreation of a traditional Yaocomaco village. (Maryland at a Glance)
In this class we will be expanding on the tool set you learned in your earlier computer science classes and gaining a deeper understanding of some of the techniques you already know. There will be a focus on getting information into your program from outside sources, storing large amounts of data, and presenting the results of your program in more user friendly ways.
I am committed to equal opportunity for all students.
Whether you look like the person who developed Voice over IP, the technology that is used to transmit voice over the internet and make technologies such as Skype possible (and therefore all of the remote learning you will be doing this semester possible);
The person who first imagined clicking on a graphic to start a computer program (how you opened the program you are reading this on right now);
The person who, in 2019, used computer algorithms to create the first picture of a black hole;
The person who used an early computer to break German codes during WWII and developed a test for machine intelligence, but was driven to suicide after being prosecuted in 1952 for homosexual acts;
No one shall be treated differently, separately, on the basis of race, religion, national origin, marital status, sex, sexual orientation, gender identity or expression, age, or disability. Discipline will be imposed where appropriate for any act of discrimination.
Assistant Professor of Computer Science
M.Sc. in Computer Science from the University of Victoria, 2016 (This means you should not call me Dr., I have a Master's degree not a Doctorate.)
B.A. in Computer Science and Religious Studies from St. Mary's College of Maryland, 2012
Want to learn more? Visit my website or email me at acwebster@smcm.edu
Q: Why will there be changes?
A: Every class is different and learns at a different pace. The activities I have planned might take a day for one group of students and a couple weeks for another group. There is no way for me to know exactly how long an activity will take with this class so dates might have to be moved around to accommodate different schedules.
Q: Will due dates change?
A: Due dates will only ever move back (unless the class as a whole votes otherwise). To see the most up to date due dates see the Home Page on this website.
Coming into this course I expect you to have learned basic coding tools and be able to write a working program. However since last year was a bit rough in the CS department and we generally assume students will forget quite a bit over the summer anyway we will focus on review for the first few weeks of class.
Review Goals (COSC 130 Objectives)
Students feel confident in:
1. Writing basic programs implementing basic variables (int, char, String, etc.) and data structures (arrays and ArrayLists)
2. Using decision making control structures (if statements) and looping control structures (while and for loops)
3. Using Object Oriented programming to write and call methods in more than one class
4. Creating recursive algorithms
5. Reading and Writing data using File Operations
Once students feel comfortable using the above tools we will start to explore more complex algorithms and data structures. This class is structured differently from the introduction classes, I will not be giving you all of the code you need to complete assignments, instead you will be developing the code you need based on the descriptions I give in class.
Official Overview
In this course you will start to think about more complex programs. We will discuss and program (using JAVA) several fundamental data structures as well as concepts related to the Object Oriented paradigm. You will also gain more familiarity with algorithm complexity analysis in both space and time. Prerequisite: COSC130.
Objectives
At the competition of COSC 201, students will be able to:
1. Data Structures: Use list, tree, and other data structures.
2. Algorithms: Implement sorting and searching algorithms.
3. Working from specifications: Implement a data structure from a specification.
4. Making Choices: Differentiate the efficiency of various data structures.
5. Outside Sources: Construct a programming solution from available, reliable sources.
All graded work should be complete individually unless specifically stated.
Worksheets 10% - As engaged learning in the course, before each class you will watch a lecture video and fill out a google form, these will be graded for completion not correctness. While we will be practicing the concepts presented in the videos more in class, the purpose of these videos is to allow you to be introduced to and digest new concepts at your own pace.
Quizzes 25% - You will take regular quizzes to help you reinforce your skills. At the end of the course the "final exam" will give you an opportunity to regain points on any quiz you have missed or quizzes you didn't score well on. (You can retake however many quizzes you choose at the final exam)
Projects 55% - Projects bring together several different concepts that you have learned so you can see how they fit together.
Participation 10% - Your in class participation, asking questions, and completing in class activities (sticker worksheets) will count 10% towards your final grade.
(See late work policy in the next section)
LATE Project Milestones and final Project Submissions: If you believe your assignment will be late come talk to the professor as soon as possible and we will make a plan for you to get back on track with the submission of your assignment and possible late penalties for those submission options. I don't need to know your reasons for being late, if you don't want to tell me them. With no conversation the late penalty is a 10% reduction in the grade for every 24 hours after the due date that the submission is turned in late and the assignment will not be accepted after one week past the due date.
Project Meeting Absence - Individual meetings will be scheduled by the student in the meeting times provided. If no time slot works for the student because of class or other scheduled conflicts then the student should let the professor know either in class or by email before individual meetings begin so that an alternate time can be arranged. (Note: The majority of the individual meetings will be scheduled during the regularly scheduled class time so this type of conflict is not foreseen to be a major issue) If a personal conflict arises before the scheduled meeting the student should contact the professor as soon as possible to arrange an alternate time slot if one exists. If the student misses the meeting without contacting the professor within 24 hours or does not arrange for a make up meeting the highest grade possible on the project is a 30%.
Quiz Absences - If you are absent from class on a quiz day but are in class on the next class period, ask for a blank quiz so that you can do quiz revisions and earn up to 50% of the points you could have earned on the quiz. You can also make up the points for a missed quiz at the final exam.
ANONYMIZED GRADING: It is important for you to put your name on each assignment you turn in to practice professionalism and I will remove points if it is not present, however I also believe that anonymized grading is important and I use it for all assignments to the fullest extent possible. Anonymized grading requires that I not know the author of the work I grade. I achieve this by opening all of the assignments at once and minimizing the comments at the top of the code or scrolling so that I cannot see your name at the top of the document as I grade. I use anonymized grading to minimize the effect that either my own biases or any preconceived notions of students’ ability influence may have on my judgment of their work.
Note: It is not usually possible for me to use anonymized grading with late work.
Late Video Worksheets: Research shows that flipped classrooms are a good for learning, however the flipped classroom approach only works if students come prepared for class. The worksheets associated with the lecture videos will each be worth 10 points if they are completed before 11:59 the night before the class they are listed as due on. If they are submitted after this time they will be worth 1 point.
Late Sticker Worksheets: Sticker sheets will be turned in every time there is a quiz and at the end of the semester. Stickers for worksheets assigned since the last quiz will be given 2 points. Stickers due but missed at the last quiz but since earned will be given 1 point. Stickers due more than one quiz earlier will not be given any points.
I teach using active learning because “students in classes with traditional lecturing were 1.5 times more likely to fail than were students in classes with active learning” (Active learning increases student performance in science, engineering, and mathematics. Freeman, Eddy, McDonough, Smith, Okoroafor, Jordt, and Wenderoth, 2014). In order for you to benefit from this teaching style you have to be present in class.
If you don’t come you will miss the learning that happened in that class period and the participation points available during the class period. Similarly if you are on social media or doing work for other classes in my class you are not participating and therefore will get no points for the day.
According to the Judicial Procedures for Academic Misconduct in To the Point “plagiarism is the act of appropriating and using the words, ideas, symbols, images, or other works of original expression of others as one’s own without giving credit to the person who created the work.”
This means: you should only be turning in your own work and when you add to or enhance your work with the work of others you must give credit to those other sources, including your past self and other students.
You should not be sharing the code you write for any assignment with other students (unless they have been assigned as your partner or group member).
If you do use code that someone else wrote then you must write a comment in your code with a reference to where you got the code you are using.
For example, if the source was a website your comment should include:
-- the URL,
-- the website name,
-- the date you got the code,
-- an explanation of how many lines of code you used, and
-- what modifications you made to the code.
Any violation of academic integrity will result in an automatic zero for that assignment and will be reported to Academic Services. Severe violations of academic integrity or a second offense will result in a more severe penalty up to, and including, an automatic F in the course.
Don’t just read your notes. Instead:
1. Take notes and try the code in the Videos yourself
2. Quiz yourself
3. Do Practice Problems
4. Study in Groups
5. Spend an hour a day on the material outside of class.
4 classes * 5 days = 20
4 classes * 4 hours/week = 16
Total = 36, which is still less than a 40 hour work week.
6. Follow proven study and learning strategies.
The Writing & Speaking Center will be operating online only for Spring 2021, but it will continue to offer free peer tutoring in writing and speaking. The peer tutors are students themselves, but they have completed extensive hands-on training to learn how to assist their peers at any step of the process (planning, drafting, or revising) for any writing or speaking assignment, and they have also now been trained how to deliver this help via Zoom sessions. Although the peer tutors cannot diagnose issues or make revisions for you, they can work collaboratively with you to discuss ideas, consider options, and find solutions so that you can continue solo. This collaborative approach is one of the best ways to help students develop their abilities because all writers and speakers need audiences—just ask the peer tutors, who often schedule tutorials with each other. If you are unable to attend tutorials via Zoom, the Center will also be providing “Draft Drop-Off” tutorials where you can submit your draft online and receive feedback via e-mail.
To schedule a Zoom or Draft Drop-Off tutorial, please visit the Center’s website (www.smcm.edu/writingcenter) and click the “Make an Appointment” button. The Center’s website also has videos of sample tutorials, helpful handouts on different writing elements, an FAQ section with more information, and details for how to become a tutor. If you need assistance scheduling or have additional questions, please contact the Assistant Director of the Center, Mandy Taylor, at apheatwole@smcm.edu.
Feeling Bad? - Please stay home if you feel at all ill! Regardless of wether you think it is contagious or not, if you do not feel well please stay home and rest. COVID is not the only illness, the flu, strep throat, etc. should also be taken seriously and not passed to the people around you. There are many ways to make up work and points in this class and it is better for everyone if you stay home and rest when you are ill so you can get better sooner.
Masks - I am very grateful to the many thousands of people who worked very hard to develop the COVID vaccine and the tens of thousands of people who organized the distribution of it. The research suggests however that vaccinated people can spread COVID and, in rare cases, catch the disease therefore I will be wearing a mask all semester.
The Wellness Center (240-895-4289) provides numerous confidential health and counseling services including a 24/7 Counseling Helpline and same day/next day connections to counseling by calling 240-895-4289 or emailing the Director at lkscherer@smcm.edu. To learn more about Wellness Center Services please go to their webpage at https://www.smcm.edu/wellness/
Sometimes students feel they need additional resources beyond those available on campus for a variety of reasons. As such, below I’ve included information, websites, and phone numbers for a variety of other mental health related organizations that are available/accessible nationwide. Each of these organizations also has an online chat system which can be found by going to their website and selecting the chat option.
According to RAINN "Among undergraduate students, 26.4% of females and 6.8% of males experience rape or sexual assault through physical force, violence, or incapacitation" (Source) I deeply hope that you do not experience any sort of assault during your college career but please know that if you do, and you talk about it in front of a professor, that professor is legally required to report the assault to the Title IX office, who will then send you an email inviting you to talk about it more.
National organization focused on assisting survivors of all forms of sexual violence.
https://www.rainn.org/
National organization devoted to supported mental & physical health and safety of LGBT+ youth
https://www.thetrevorproject.org/
National organization focused on assisting survivors of relational and domestic violence
Or text START to 88788
https://www.thehotline.org/
https://suicidepreventionlifeline.org/