What is collaborative problem solving (and why are we doing it in this course)?
Throughout the semester, we will work through a number of collaborative problem-solving tasks designed to give you opportunities to apply skills and concepts covered in the class.
A large body of computing education research indicates that collaborative problem-solving strengthens your understanding of concepts we’re covering in the course while also creating space to build other kinds of collaboration, communication, etc. skills. If you’re interested in learning more about this research, let Prof. Walden know- I’m happy to share more about why the course is designed this way!
NOTE: I know experiences with group work can vary widely. One aspect of creating a rich collaborative learning environment involves clear expectations and frameworks that can help facilitate effective work in groups--that’s partly my (Prof. Walden’s) job. The other aspect of effective collaboration involves your preparation and active engagement. This kind of process-oriented, guided-inquiry learning is most effective when students are interacting with and learning from each other.
Practically, that means that we’ll spend in-class time applying the concepts we’re covering that week in real-world scenarios that benefit from multiple perspectives and forms of expertise to come up with a workable solution.
What this will typically look like:
Class forms small groups & decides on group roles
Prof. Walden introduces the prompt/task/problem
Class works in small groups to develop a conceptual understanding of the problem space
Class works in small groups to develop a technical/programmatic solution
Small groups work with other small groups to refine their solution/response
Each group submits documentation of their work process
Typically, documentation from these collaborative work sessions will be due on Canvas at the end of class. How the groups submit documentation of their collaborative in-class work may vary from week to week.
Sometimes it might look like solving a problem with a clear solution
Other times it might involve a set of activities with reflection questions
Other times it might involve developing a more complex program
The instructor will provide clear instructions on what you’re expected to document (and how/where). The extent of the collaborative work will happen during class meeting time. That is, you are not expected to meet or work with your group outside class time.
If your group is not able to complete a task or solve a problem during class time, make sure everyone in the group has access to shared materials. Folks can continue working on the problem/task on their own and submit their work as part of the individual lab notebook, making sure to credit the contributions of other group members.
Part #1 Activities¶
This set of activities gives students an opportunity to build skills with moving across binary, hexadecimal, and decimal systems, under the umbrella of ASCII. This version of the activity involved a scavenger hunt that ended with each student getting a mini rubber duck and a poem from a poetry bot.
Part #2 Activities¶
This set of activities focuses on file formats and character encoding.
Students will need to download three different files:
hello_world.txthello_world.rtfhello_world.docx